d2
Version:
Javascript library for DHIS2
1,024 lines • 54.4 kB
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>analytics/AnalyticsRequestPropertiesMixin.js - Documentation</title>
<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>
<label for="nav-trigger" class="overlay"></label>
<nav >
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="GeoFeatures.html">GeoFeatures</a></li><li></li><li><a href="module-analytics.Analytics.html">Analytics</a><ul class='methods'><li data-type='method'><a href="module-analytics.Analytics.html#.getAnalytics">getAnalytics</a></li></ul></li><li><a href="module-analytics.AnalyticsAggregate.html">AnalyticsAggregate</a><ul class='methods'><li data-type='method'><a href="module-analytics.AnalyticsAggregate.html#get">get</a></li><li data-type='method'><a href="module-analytics.AnalyticsAggregate.html#getDataValueSet">getDataValueSet</a></li><li data-type='method'><a href="module-analytics.AnalyticsAggregate.html#getDebugSql">getDebugSql</a></li><li data-type='method'><a href="module-analytics.AnalyticsAggregate.html#getRawData">getRawData</a></li></ul></li><li><a href="module-analytics.AnalyticsEvents.html">AnalyticsEvents</a><ul class='methods'><li data-type='method'><a href="module-analytics.AnalyticsEvents.html#get">get</a></li><li data-type='method'><a href="module-analytics.AnalyticsEvents.html#getAggregate">getAggregate</a></li><li data-type='method'><a href="module-analytics.AnalyticsEvents.html#getCluster">getCluster</a></li><li data-type='method'><a href="module-analytics.AnalyticsEvents.html#getCount">getCount</a></li><li data-type='method'><a href="module-analytics.AnalyticsEvents.html#getQuery">getQuery</a></li></ul></li><li><a href="module-analytics.AnalyticsRequest.html">AnalyticsRequest</a><ul class='methods'><li data-type='method'><a href="module-analytics.AnalyticsRequest.html#fromModel">fromModel</a></li></ul></li><li><a href="module-api.Api.html">Api</a><ul class='methods'><li data-type='method'><a href="module-api.Api.html#get">get</a></li><li data-type='method'><a href="module-api.Api.html#patch">patch</a></li><li data-type='method'><a href="module-api.Api.html#post">post</a></li><li data-type='method'><a href="module-api.Api.html#setBaseUrl">setBaseUrl</a></li><li data-type='method'><a href="module-api.Api.html#setDefaultHeaders">setDefaultHeaders</a></li><li data-type='method'><a href="module-api.Api.html#setUnauthorizedCallback">setUnauthorizedCallback</a></li><li data-type='method'><a href="module-api.Api.html#update">update</a></li></ul></li><li><a href="module-current-user.CurrentUser.html">CurrentUser</a><ul class='methods'><li data-type='method'><a href="module-current-user.CurrentUser.html#.create">create</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#canCreate">canCreate</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#canCreatePrivate">canCreatePrivate</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#canCreatePublic">canCreatePublic</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#canDelete">canDelete</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#canUpdate">canUpdate</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#getDataViewOrganisationUnits">getDataViewOrganisationUnits</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#getOrganisationUnits">getOrganisationUnits</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#getUserGroupIds">getUserGroupIds</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#getUserGroups">getUserGroups</a></li><li data-type='method'><a href="module-current-user.CurrentUser.html#getUserRoles">getUserRoles</a></li></ul></li><li><a href="module-current-user.UserAuthorities.html">UserAuthorities</a><ul class='methods'><li data-type='method'><a href="module-current-user.UserAuthorities.html#.create">create</a></li><li data-type='method'><a href="module-current-user.UserAuthorities.html#has">has</a></li></ul></li><li><a href="module-current-user.UserDataStore.html">UserDataStore</a><ul class='methods'><li data-type='method'><a href="module-current-user.UserDataStore.html#.getUserDataStore">getUserDataStore</a></li><li data-type='method'><a href="module-current-user.UserDataStore.html#create">create</a></li><li data-type='method'><a href="module-current-user.UserDataStore.html#delete">delete</a></li><li data-type='method'><a href="module-current-user.UserDataStore.html#get">get</a></li><li data-type='method'><a href="module-current-user.UserDataStore.html#getAll">getAll</a></li><li data-type='method'><a href="module-current-user.UserDataStore.html#has">has</a></li></ul></li><li><a href="module-current-user.UserDataStoreNamespace.html">UserDataStoreNamespace</a><ul class='methods'><li data-type='method'><a href="module-current-user.UserDataStoreNamespace.html#delete">delete</a></li><li data-type='method'><a href="module-current-user.UserDataStoreNamespace.html#get">get</a></li><li data-type='method'><a href="module-current-user.UserDataStoreNamespace.html#getKeys">getKeys</a></li><li data-type='method'><a href="module-current-user.UserDataStoreNamespace.html#set">set</a></li><li data-type='method'><a href="module-current-user.UserDataStoreNamespace.html#update">update</a></li></ul></li><li><a href="module-current-user.UserSettings.html">UserSettings</a><ul class='methods'><li data-type='method'><a href="module-current-user.UserSettings.html#all">all</a></li><li data-type='method'><a href="module-current-user.UserSettings.html#get">get</a></li><li data-type='method'><a href="module-current-user.UserSettings.html#set">set</a></li></ul></li><li><a href="module-datastore.DataStore.html">DataStore</a><ul class='methods'><li data-type='method'><a href="module-datastore.DataStore.html#.getDataStore">getDataStore</a></li><li data-type='method'><a href="module-datastore.DataStore.html#create">create</a></li><li data-type='method'><a href="module-datastore.DataStore.html#delete">delete</a></li><li data-type='method'><a href="module-datastore.DataStore.html#get">get</a></li><li data-type='method'><a href="module-datastore.DataStore.html#getAll">getAll</a></li><li data-type='method'><a href="module-datastore.DataStore.html#has">has</a></li></ul></li><li><a href="module-datastore.DataStoreNamespace.html">DataStoreNamespace</a><ul class='methods'><li data-type='method'><a href="module-datastore.DataStoreNamespace.html#delete">delete</a></li><li data-type='method'><a href="module-datastore.DataStoreNamespace.html#get">get</a></li><li data-type='method'><a href="module-datastore.DataStoreNamespace.html#getKeys">getKeys</a></li><li data-type='method'><a href="module-datastore.DataStoreNamespace.html#getMetaData">getMetaData</a></li><li data-type='method'><a href="module-datastore.DataStoreNamespace.html#set">set</a></li><li data-type='method'><a href="module-datastore.DataStoreNamespace.html#update">update</a></li></ul></li><li><a href="module-i18n-I18n.html">I18n</a><ul class='methods'><li data-type='method'><a href="module-i18n-I18n.html#.getI18n">getI18n</a></li><li data-type='method'><a href="module-i18n-I18n.html#addSource">addSource</a></li><li data-type='method'><a href="module-i18n-I18n.html#addStrings">addStrings</a></li><li data-type='method'><a href="module-i18n-I18n.html#getTranslation">getTranslation</a></li><li data-type='method'><a href="module-i18n-I18n.html#getUntranslatedStrings">getUntranslatedStrings</a></li><li data-type='method'><a href="module-i18n-I18n.html#isTranslated">isTranslated</a></li><li data-type='method'><a href="module-i18n-I18n.html#load">load</a></li></ul></li><li><a href="module-model.Filter.html">Filter</a><ul class='methods'><li data-type='method'><a href="module-model.Filter.html#.getFilter">getFilter</a></li><li data-type='method'><a href="module-model.Filter.html#equals">equals</a></li><li data-type='method'><a href="module-model.Filter.html#ilike">ilike</a></li><li data-type='method'><a href="module-model.Filter.html#in">in</a></li><li data-type='method'><a href="module-model.Filter.html#like">like</a></li><li data-type='method'><a href="module-model.Filter.html#notEqual">notEqual</a></li><li data-type='method'><a href="module-model.Filter.html#notIn">notIn</a></li><li data-type='method'><a href="module-model.Filter.html#nToken">nToken</a></li><li data-type='method'><a href="module-model.Filter.html#on">on</a></li><li data-type='method'><a href="module-model.Filter.html#operator">operator</a></li><li data-type='method'><a href="module-model.Filter.html#token">token</a></li></ul></li><li><a href="module-model.Filters.html">Filters</a><ul class='methods'><li data-type='method'><a href="module-model.Filters.html#.getFilters">getFilters</a></li><li data-type='method'><a href="module-model.Filters.html#getFilterList">getFilterList</a></li><li data-type='method'><a href="module-model.Filters.html#getFilters">getFilters</a></li><li data-type='method'><a href="module-model.Filters.html#getQueryFilterValues">getQueryFilterValues</a></li><li data-type='method'><a href="module-model.Filters.html#list">list</a></li><li data-type='method'><a href="module-model.Filters.html#logicMode">logicMode</a></li><li data-type='method'><a href="module-model.Filters.html#on">on</a></li></ul></li><li><a href="module-model.Model.html">Model</a><ul class='methods'><li data-type='method'><a href="module-model.Model.html#.create">create</a></li></ul></li><li><a href="module-model.ModelBase.html">ModelBase</a><ul class='methods'><li data-type='method'><a href="module-model.ModelBase.html#create">create</a></li><li data-type='method'><a href="module-model.ModelBase.html#delete">delete</a></li><li data-type='method'><a href="module-model.ModelBase.html#getCollectionChildren">getCollectionChildren</a></li><li data-type='method'><a href="module-model.ModelBase.html#getCollectionChildrenPropertyNames">getCollectionChildrenPropertyNames</a></li><li data-type='method'><a href="module-model.ModelBase.html#getDirtyChildren">getDirtyChildren</a></li><li data-type='method'><a href="module-model.ModelBase.html#getDirtyPropertyNames">getDirtyPropertyNames</a></li><li data-type='method'><a href="module-model.ModelBase.html#getEmbeddedObjectCollectionPropertyNames">getEmbeddedObjectCollectionPropertyNames</a></li><li data-type='method'><a href="module-model.ModelBase.html#getReferenceProperties">getReferenceProperties</a></li><li data-type='method'><a href="module-model.ModelBase.html#hasDirtyChildren">hasDirtyChildren</a></li><li data-type='method'><a href="module-model.ModelBase.html#isDirty">isDirty</a></li><li data-type='method'><a href="module-model.ModelBase.html#resetDirtyState">resetDirtyState</a></li><li data-type='method'><a href="module-model.ModelBase.html#save">save</a></li><li data-type='method'><a href="module-model.ModelBase.html#toJSON">toJSON</a></li><li data-type='method'><a href="module-model.ModelBase.html#validate">validate</a></li></ul></li><li><a href="module-model.ModelCollection.html">ModelCollection</a><ul class='methods'><li data-type='method'><a href="module-model.ModelCollection.html#add">add</a></li><li data-type='method'><a href="module-model.ModelCollection.html#clear">clear</a></li><li data-type='method'><a href="module-model.ModelCollection.html#toArray">toArray</a></li></ul></li><li><a href="module-model.ModelCollectionProperty.html">ModelCollectionProperty</a><ul class='methods'><li data-type='method'><a href="module-model.ModelCollectionProperty.html#.create">create</a></li><li data-type='method'><a href="module-model.ModelCollectionProperty.html#add">add</a></li><li data-type='method'><a href="module-model.ModelCollectionProperty.html#isDirty">isDirty</a></li><li data-type='method'><a href="module-model.ModelCollectionProperty.html#remove">remove</a></li><li data-type='method'><a href="module-model.ModelCollectionProperty.html#resetDirtyState">resetDirtyState</a></li><li data-type='method'><a href="module-model.ModelCollectionProperty.html#save">save</a></li><li data-type='method'><a href="module-model.ModelCollectionProperty.html#updateDirty">updateDirty</a></li></ul></li><li><a href="module-model.ModelDefinition.html">ModelDefinition</a><ul class='methods'><li data-type='method'><a href="module-model.ModelDefinition.html#.createFromSchema">createFromSchema</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#create">create</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#delete">delete</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#get">get</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#getOwnedPropertyNames">getOwnedPropertyNames</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#getTranslatableProperties">getTranslatableProperties</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#getTranslatablePropertiesWithKeys">getTranslatablePropertiesWithKeys</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#isTranslatable">isTranslatable</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#list">list</a></li><li data-type='method'><a href="module-model.ModelDefinition.html#save">save</a></li></ul></li><li><a href="module-model.ModelDefinitions.html">ModelDefinitions</a><ul class='methods'><li data-type='method'><a href="module-model.ModelDefinitions.html#add">add</a></li><li data-type='method'><a href="module-model.ModelDefinitions.html#mapThroughDefinitions">mapThroughDefinitions</a></li></ul></li><li><a href="module-model.ModelValidation.html">ModelValidation</a><ul class='methods'><li data-type='method'><a href="module-model.ModelValidation.html#.getModelValidation">getModelValidation</a></li><li data-type='method'><a href="module-model.ModelValidation.html#validate">validate</a></li><li data-type='method'><a href="module-model.ModelValidation.html#validateAgainstSchema">validateAgainstSchema</a></li></ul></li><li><a href="module-model.Pager.html">Pager</a><ul class='methods'><li data-type='method'><a href="module-model.Pager.html#getNextPage">getNextPage</a></li><li data-type='method'><a href="module-model.Pager.html#getPreviousPage">getPreviousPage</a></li><li data-type='method'><a href="module-model.Pager.html#goToPage">goToPage</a></li><li data-type='method'><a href="module-model.Pager.html#hasNextPage">hasNextPage</a></li><li data-type='method'><a href="module-model.Pager.html#hasPreviousPage">hasPreviousPage</a></li></ul></li><li><a href="module-system.System.html">System</a><ul class='methods'><li data-type='method'><a href="module-system.System.html#.compareVersions">compareVersions</a></li><li data-type='method'><a href="module-system.System.html#.getSystem">getSystem</a></li><li data-type='method'><a href="module-system.System.html#.isVersionCompatible">isVersionCompatible</a></li><li data-type='method'><a href="module-system.System.html#.parseVersionString">parseVersionString</a></li><li data-type='method'><a href="module-system.System.html#installAppVersion">installAppVersion</a></li><li data-type='method'><a href="module-system.System.html#loadAppStore">loadAppStore</a></li><li data-type='method'><a href="module-system.System.html#loadInstalledApps">loadInstalledApps</a></li><li data-type='method'><a href="module-system.System.html#reloadApps">reloadApps</a></li><li data-type='method'><a href="module-system.System.html#setInstalledApps">setInstalledApps</a></li><li data-type='method'><a href="module-system.System.html#setSystemInfo">setSystemInfo</a></li><li data-type='method'><a href="module-system.System.html#uninstallApp">uninstallApp</a></li><li data-type='method'><a href="module-system.System.html#uploadApp">uploadApp</a></li></ul></li><li><a href="module-system.SystemConfiguration.html">SystemConfiguration</a><ul class='methods'><li data-type='method'><a href="module-system.SystemConfiguration.html#all">all</a></li><li data-type='method'><a href="module-system.SystemConfiguration.html#get">get</a></li></ul></li><li><a href="module-system.SystemSettings.html">SystemSettings</a><ul class='methods'><li data-type='method'><a href="module-system.SystemSettings.html#all">all</a></li><li data-type='method'><a href="module-system.SystemSettings.html#get">get</a></li></ul></li></ul><h3>Modules</h3><ul><li><a href="module-analytics.html">analytics</a></li><li><a href="module-api.html">api</a></li><li><a href="module-current-user.html">current-user</a></li><li><a href="module-d2.html">d2</a><ul class='members'><li data-type='member'><a href="module-d2.html#.config">config</a></li></ul><ul class='methods'><li data-type='method'><a href="module-d2.html#.getInstance">getInstance</a></li><li data-type='method'><a href="module-d2.html#.getManifest">getManifest</a></li><li data-type='method'><a href="module-d2.html#.init">init</a></li><li data-type='method'><a href="module-d2.html#~getUserSettings">getUserSettings</a></li></ul></li><li><a href="module-datastore.html">datastore</a></li><li><a href="module-i18n.html">i18n</a></li><li><a href="module-lib_check.html">lib/check</a><ul class='methods'><li data-type='method'><a href="module-lib_check.html#.checkDefined">checkDefined</a></li><li data-type='method'><a href="module-lib_check.html#.isValidUid">isValidUid</a></li></ul></li><li><a href="module-lib_utils.html">lib/utils</a><ul class='methods'><li data-type='method'><a href="module-lib_utils.html#.customEncodeURIComponent">customEncodeURIComponent</a></li><li data-type='method'><a href="module-lib_utils.html#.pick">pick</a></li></ul></li><li><a href="module-model.html">model</a></li><li><a href="module-period_generators.html">period/generators</a><ul class='methods'><li data-type='method'><a href="module-period_generators.html#.createPeriodGeneratorsForLocale">createPeriodGeneratorsForLocale</a></li></ul></li><li><a href="module-system.html">system</a></li><li><a href="module-uid.html">uid</a><ul class='methods'><li data-type='method'><a href="module-uid.html#.generateUid">generateUid</a></li><li data-type='method'><a href="module-uid.html#.isValidUid">isValidUid</a></li></ul></li></ul><h3>Namespaces</h3><ul><li><a href="module-d2.init-d2.html">d2</a></li></ul><h3>Tutorials</h3><ul><li><a href="tutorial-FAQ.html">FAQ</a></li><li><a href="tutorial-overview.html">overview</a></li></ul><h3>Global</h3><ul><li><a href="global.html#addDataDimension">addDataDimension</a></li><li><a href="global.html#addDataFilter">addDataFilter</a></li><li><a href="global.html#addDimension">addDimension</a></li><li><a href="global.html#addFilter">addFilter</a></li><li><a href="global.html#addOrgUnitDimension">addOrgUnitDimension</a></li><li><a href="global.html#addOrgUnitFilter">addOrgUnitFilter</a></li><li><a href="global.html#addPeriodDimension">addPeriodDimension</a></li><li><a href="global.html#addPeriodFilter">addPeriodFilter</a></li><li><a href="global.html#byOrgUnit">byOrgUnit</a></li><li><a href="global.html#computeWeekBasedPeriod">computeWeekBasedPeriod</a></li><li><a href="global.html#getAll">getAll</a></li><li><a href="global.html">getGeoFeatures</a></li><li><a href="global.html">isValidDisplayName</a></li><li><a href="global.html">isValidOrgUnit</a></li><li><a href="global.html">isValidOrgUnitGroup</a></li><li><a href="global.html">isValidOrgUnitLevel</a></li><li><a href="global.html">isValidUserOrgUnit</a></li><li><a href="global.html#withAggregateData">withAggregateData</a></li><li><a href="global.html#withAggregationType">withAggregationType</a></li><li><a href="global.html#withApprovalLevel">withApprovalLevel</a></li><li><a href="global.html#withAsc">withAsc</a></li><li><a href="global.html#withBbox">withBbox</a></li><li><a href="global.html#withClusterSize">withClusterSize</a></li><li><a href="global.html#withCollapseDataDimensions">withCollapseDataDimensions</a></li><li><a href="global.html#withColumns">withColumns</a></li><li><a href="global.html#withCoordinateField">withCoordinateField</a></li><li><a href="global.html#withCoordinatesOnly">withCoordinatesOnly</a></li><li><a href="global.html#withDesc">withDesc</a></li><li><a href="global.html#withDisplayProperty">withDisplayProperty</a></li><li><a href="global.html#withEndDate">withEndDate</a></li><li><a href="global.html#withEventStatus">withEventStatus</a></li><li><a href="global.html#withFormat">withFormat</a></li><li><a href="global.html#withHideEmptyColumns">withHideEmptyColumns</a></li><li><a href="global.html#withHideEmptyRows">withHideEmptyRows</a></li><li><a href="global.html#withHierarchyMeta">withHierarchyMeta</a></li><li><a href="global.html#withIgnoreLimit">withIgnoreLimit</a></li><li><a href="global.html#withIncludeClusterPoints">withIncludeClusterPoints</a></li><li><a href="global.html#withIncludeMetadataDetails">withIncludeMetadataDetails</a></li><li><a href="global.html#withIncludeNumDen">withIncludeNumDen</a></li><li><a href="global.html#withInputIdScheme">withInputIdScheme</a></li><li><a href="global.html#withLimit">withLimit</a></li><li><a href="global.html#withMeasureCriteria">withMeasureCriteria</a></li><li><a href="global.html#withOuMode">withOuMode</a></li><li><a href="global.html#withOutputIdScheme">withOutputIdScheme</a></li><li><a href="global.html#withOutputType">withOutputType</a></li><li><a href="global.html#withPage">withPage</a></li><li><a href="global.html#withPageSize">withPageSize</a></li><li><a href="global.html#withParameters">withParameters</a></li><li><a href="global.html#withPath">withPath</a></li><li><a href="global.html#withPreAggregationMeasureCriteria">withPreAggregationMeasureCriteria</a></li><li><a href="global.html#withProgram">withProgram</a></li><li><a href="global.html#withProgramStatus">withProgramStatus</a></li><li><a href="global.html#withRelativePeriodDate">withRelativePeriodDate</a></li><li><a href="global.html#withRows">withRows</a></li><li><a href="global.html#withShowHierarchy">withShowHierarchy</a></li><li><a href="global.html#withSkipData">withSkipData</a></li><li><a href="global.html#withSkipMeta">withSkipMeta</a></li><li><a href="global.html#withSkipRounding">withSkipRounding</a></li><li><a href="global.html#withSortOrder">withSortOrder</a></li><li><a href="global.html#withStage">withStage</a></li><li><a href="global.html#withStartDate">withStartDate</a></li><li><a href="global.html#withTableLayout">withTableLayout</a></li><li><a href="global.html#withUserOrgUnit">withUserOrgUnit</a></li><li><a href="global.html#withValue">withValue</a></li></ul>
</nav>
<div id="main">
<h1 class="page-title">analytics/AnalyticsRequestPropertiesMixin.js</h1>
<section>
<article>
<pre class="prettyprint source linenums"><code>/* eslint no-console: 0 */
import AnalyticsRequest from './AnalyticsRequest'
/**
* @private
* @description
* AnalyticsRequest properties mixin function
*
* @param {*} base The base class to mix onto
* @return {module:analytics.AnalyticsRequestPropertiesMixin} The mixin class
*/
/**
* @private
* @description
* AnalyticsRequest properties mixin
*
* @alias module:analytics.AnalyticsRequestPropertiesMixin
*/
const AnalyticsRequestPropertiesMixin = base =>
class extends base {
/**
* Sets the query parameters of the request
*
* @param {!Object} parameters The query parameters to add/modify to the request
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withParameters({ completedOnly: true, aggregationType: 'AVERAGE' });
*/
withParameters(params) {
if (params) {
this.parameters = {
...this.parameters,
...params,
}
}
return new AnalyticsRequest(this)
}
/**
* Sets the URL path for the request.
* It appends the given path to the request's URL.
*
* @param {!String} path The path of the response
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withPath('aggregate');
*/
withPath(path) {
if (path) {
this.path = path
}
return new AnalyticsRequest(this)
}
/**
* Sets the response format for the request.
* It appends the file extension to the request's path.
*
* @param {String} [format=json] The format of the response
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withFormat('xml');
*/
withFormat(format = 'json') {
this.format = format
return new AnalyticsRequest(this)
}
/**
* Adds the aggregationType query parameter to the request.
*
* @param {String} aggregationType The aggregationType value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withAggregationType('SUM');
*/
withAggregationType(value) {
const aggregationType = value.toUpperCase()
const aggregationTypes = new Set([
'AVERAGE',
'AVERAGE_SUM_ORG_UNIT',
'COUNT',
'LAST',
'LAST_AVERAGE_ORG_UNIT',
'MIN',
'MAX',
'STDDEV',
'SUM',
'VARIANCE',
])
if (aggregationTypes.has(aggregationType)) {
this.parameters.aggregationType = aggregationType
} else if (aggregationType !== 'DEFAULT') {
console.warn(
`d2.analytics.request.withAggregationType(): "${value}" not listed as possible value`
)
this.parameters.aggregationType = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the measureCriteria query parameter to the request.
*
* @param {!String} measureCriteria The measureCriteria value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withMeasureCriteria('GE:10;LT:50');
*/
withMeasureCriteria(criteria) {
if (criteria) {
this.parameters.measureCriteria = criteria
}
return new AnalyticsRequest(this)
}
/**
* Adds the preAggregationMeasureCriteria query parameter to the request.
*
* @param {!String} preAggregationMeasureCriteria The preAggregationMeasureCriteria value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withPreAggregationMeasureCriteria('GE:10;LT:50');
*/
withPreAggregationMeasureCriteria(criteria) {
if (criteria) {
this.parameters.preAggregationMeasureCriteria = criteria
}
return new AnalyticsRequest(this)
}
/**
* Adds the skipMeta query parameter to the request.
*
* @param {Boolean} [skipMeta=true] The skipMeta value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withSkipMeta();
*/
withSkipMeta(flag = true) {
this.parameters.skipMeta = flag
return new AnalyticsRequest(this)
}
/**
* Adds the skipData query parameter to the request.
*
* @param {Boolean} [skipData=true] The skipData value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withSkipData();
*/
withSkipData(flag = true) {
this.parameters.skipData = flag
return new AnalyticsRequest(this)
}
/**
* Adds the hierarchyMeta query parameter to the request.
*
* @param {Boolean} [hierarchyMeta=true] The hierarchyMeta value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withHierarchyMeta();
*/
withHierarchyMeta(flag = true) {
this.parameters.hierarchyMeta = flag
return new AnalyticsRequest(this)
}
/**
* Adds the ignoreLimit query parameter to the request.
*
* @param {Boolean} [ignoreLimit=true] The ignoreLimit value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withIgnoreLimit();
*/
withIgnoreLimit(flag = true) {
this.parameters.ignoreLimit = flag
return new AnalyticsRequest(this)
}
/**
* Adds the tableLayout query parameter to the request.
*
* @param {Boolean} [tableLayout=true] The tableLayout value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withTableLayout();
*/
withTableLayout(flag = true) {
this.parameters.tableLayout = flag
return new AnalyticsRequest(this)
}
/**
* Adds the hideEmptyRows query parameter to the request.
*
* @param {Boolean} [hideEmptyRows=true] The hideEmptyRows value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withHideEmptyRows();
*/
withHideEmptyRows(flag = true) {
this.parameters.hideEmptyRows = flag
return new AnalyticsRequest(this)
}
/**
* Adds the hideEmptyColumns query parameter to the request.
*
* @param {Boolean} [hideEmptyColumns=true] The hideEmptyColumns value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withHideEmptyColumns();
*/
withHideEmptyColumns(flag = true) {
this.parameters.hideEmptyColumns = flag
return new AnalyticsRequest(this)
}
/**
* Adds the showHierarchy query parameter to the request.
*
* @param {Boolean} [showHierarchy=true] The showHierarchy value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withShowHierarchy();
*/
withShowHierarchy(flag = true) {
this.parameters.showHierarchy = flag
return new AnalyticsRequest(this)
}
/**
* Adds the includeNumDen query parameter to the request.
*
* @param {Boolean} [includeNumDen=true] The includeNumDen value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withIncludeNumDen();
*/
withIncludeNumDen(flag = true) {
this.parameters.includeNumDen = flag
return new AnalyticsRequest(this)
}
/**
* Adds the includeMetadataDetails query parameter to the request.
*
* @param {Boolean} [includeMetadataDetails=true] The includeMetadataDetails value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withIncludeMetadataDetails();
*/
withIncludeMetadataDetails(flag = true) {
this.parameters.includeMetadataDetails = flag
return new AnalyticsRequest(this)
}
/**
* Adds the displayProperty query parameter to the request.
*
* @param {!String} displayProperty The displayProperty value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withDisplayProperty('SHORTNAME');
*/
withDisplayProperty(value) {
const displayProperty = value.toUpperCase()
const displayProperties = new Set(['NAME', 'SHORTNAME'])
if (displayProperties.has(displayProperty)) {
this.parameters.displayProperty = displayProperty
} else {
console.warn(
`d2.analytics.request.withDisplayProperty(): "${value}" not listed as possible value`
)
this.parameters.displayProperty = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the displayProperty query parameter to the request.
*
* @param {!String} displayProperty The displayProperty value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withDisplayProperty('SHORTNAME');
*/
withOutputIdScheme(scheme) {
if (scheme) {
this.parameters.outputIdScheme = scheme
}
return new AnalyticsRequest(this)
}
/**
* Adds the inputIdScheme query parameter to the request.
*
* @param {!String} inputIdScheme The inputIdScheme value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withInputIdScheme('CODE');
*/
withInputIdScheme(scheme) {
if (scheme) {
this.parameters.inputIdScheme = scheme
}
return new AnalyticsRequest(this)
}
/**
* Adds the approvalLevel query parameter to the request.
*
* @param {!String} approvalLevel The approvalLevel value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withApprovalLevel('');
*/
withApprovalLevel(level) {
if (level) {
this.parameters.approvalLevel = level
}
return new AnalyticsRequest(this)
}
/**
* Adds the relativePeriodDate query parameter to the request.
*
* @param {!String} relativePeriodDate The relativePeriodDate value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withRelativePeriodDate('LAST_12_MONTHS');
*/
withRelativePeriodDate(date) {
if (date) {
this.parameters.relativePeriodDate = date
}
return new AnalyticsRequest(this)
}
/**
* Adds the userOrgUnit query parameter to the request.
*
* @param {!String} userOrgUnit The userOrgUnit value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withUserOrgUnit('O6uvpzGd5pu');
*/
withUserOrgUnit(orgUnit) {
if (orgUnit) {
this.parameters.userOrgUnit = orgUnit
}
return new AnalyticsRequest(this)
}
/**
* Adds the columns query parameter to the request.
*
* @param {!String} columns The dimensions identifiers (separated by ;)
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withColumns('dx;ou');
*/
withColumns(dimensions) {
if (dimensions) {
this.parameters.columns = dimensions
}
return new AnalyticsRequest(this)
}
/**
* Adds the rows query parameter to the request.
*
* @param {!String} rows The dimensions identifiers (separated by ;)
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withRows('pe');
*/
withRows(dimensions) {
if (dimensions) {
this.parameters.rows = dimensions
}
return new AnalyticsRequest(this)
}
/**
* Adds the startDate query parameter to the request.
*
* @param {!String} startDate The startDate value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withStartDate('2017-11-28');
*/
withStartDate(date) {
if (date) {
this.parameters.startDate = date
}
return new AnalyticsRequest(this)
}
/**
* Adds the endDate query parameter to the request.
*
* @param {!String} endDate The endDate value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withEndDate('2017-12-31');
*/
withEndDate(date) {
if (date) {
this.parameters.endDate = date
}
return new AnalyticsRequest(this)
}
/**
* Sets the program for the request.
* It appends the program id to the request's path.
*
* @param {!String} program The program id
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withProgram('eBAyeGv0exc');
*/
withProgram(program) {
if (program) {
this.program = program
}
return new AnalyticsRequest(this)
}
/**
* Adds the stage query parameter to the request.
*
* @param {!String} stage The stage value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withStage('Zj7UnCAulEk');
*/
withStage(stage) {
if (stage) {
this.parameters.stage = stage
}
return new AnalyticsRequest(this)
}
/**
* Adds the eventStatus query parameter to the request.
*
* @param {!String} eventStatus The eventStatus value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withEventStatus('COMPLETED');
*/
withEventStatus(value) {
const eventStatus = value.toUpperCase()
const eventStatuses = new Set([
'ACTIVE',
'COMPLETED',
'SCHEDULED',
'OVERDUE',
'SKIPPED',
])
if (eventStatuses.has(eventStatus)) {
this.parameters.eventStatus = eventStatus
} else {
console.warn(
`d2.analytics.request.withEventStatus(): "${value}" not listed as possible value`
)
this.parameters.eventStatus = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the programStatus query parameter to the request.
*
* @param {!String} programStatus The programStatus value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withProgramStatus('COMPLETED');
*/
withProgramStatus(value) {
const programStatus = value.toUpperCase()
const programStatuses = new Set([
'ACTIVE',
'COMPLETED',
'CANCELLED',
])
if (programStatuses.has(programStatus)) {
this.parameters.programStatus = programStatus
} else {
console.warn(
`d2.analytics.request.withProgramStatus(): "${value}" not listed as possible value`
)
this.parameters.programStatus = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the ouMode query parameter to the request.
*
* @param {!String} ouMode The ouMode value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withOuMode('CHILDREN');
*/
withOuMode(value) {
const ouMode = value.toUpperCase()
const ouModes = new Set(['DESCENDANTS', 'CHILDREN', 'SELECTED'])
if (ouModes.has(ouMode)) {
this.parameters.ouMode = ouMode
} else {
console.warn(
`d2.analytics.request.withOuMode(): "${value}" not listed as possible value`
)
this.parameters.ouMode = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the asc query parameter to the request.
*
* @param {!String} value The dimensions to be sorted ascending
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withAsc('EVENTDATE');
*/
withAsc(value) {
if (value) {
this.parameters.asc = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the desc query parameter to the request.
*
* @param {!String} value The dimensions to be sorted descending
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withDesc('OUNAME');
*/
withDesc(value) {
if (value) {
this.parameters.desc = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the coordinatesOnly query parameter to the request.
*
* @param {Boolean} [coordinatesOnly=true] The coordinatesOnly value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withCoordinatesOnly();
*/
withCoordinatesOnly(flag = true) {
this.parameters.coordinatesOnly = flag
return new AnalyticsRequest(this)
}
/**
* Adds the page query parameter to the request.
*
* @param {!Number} [page=1] The page number
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withPage(2);
*/
withPage(page = 1) {
this.parameters.page = page
return new AnalyticsRequest(this)
}
/**
* Adds the pageSize query parameter to the request.
*
* @param {!Number} [size=50] The number of items per page
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withPageSize(10);
*/
withPageSize(size = 50) {
this.parameters.pageSize = size
return new AnalyticsRequest(this)
}
/**
* Adds the value query parameter to the request.
*
* @param {!String} value A data element or attribute identifier
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withValue('UXz7xuGCEhU');
*/
withValue(value) {
// must be a data element or attribute of numeric value type
if (value) {
this.parameters.value = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the sortOrder query parameter to the request.
*
* @param {!String} sortOrder The sortOrder value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withSortOrder('DESC');
*/
withSortOrder(value) {
const sortOrder = value.toUpperCase()
const sortOrders = new Set(['ASC', 'DESC'])
if (sortOrders.has(sortOrder)) {
this.parameters.sortOrder = sortOrder
} else {
console.warn(
`d2.analytics.request.withSortOrder(): "${value}" not listed as possible value`
)
this.parameters.sortOrder = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the limit query parameter to the request.
*
* @param {!Number} limit The maximum number of records to return
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withLimit('5000');
*/
withLimit(value) {
if (value) {
const limit = value > 10000 ? 10000 : value
this.parameters.limit = limit
}
return new AnalyticsRequest(this)
}
/**
* Adds the outputType query parameter to the request.
*
* @param {!String} outputType The output type
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withOutputType('ENROLLMENT');
*/
withOutputType(value) {
const type = value.toUpperCase()
const outputTypes = new Set([
'EVENT',
'ENROLLMENT',
'TRACKED_ENTITY_INSTANCE',
])
if (outputTypes.has(type)) {
this.parameters.outputType = type
} else {
console.warn(
`d2.analytics.request.withOutputType(): "${value}" not listed as possible value`
)
this.parameters.outputType = value
}
return new AnalyticsRequest(this)
}
/**
* Adds the collapseDataDimensions query parameter to the request.
*
* @param {Boolean} [collapseDataDimensions=true] The collapseDataDimensions value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withCollapseDataDimensions();
*/
withCollapseDataDimensions(flag = true) {
this.parameters.collapseDataDimensions = flag
return new AnalyticsRequest(this)
}
/**
* Adds the skipRounding query parameter to the request.
*
* @param {Boolean} [skipRounding=true] The skipRounding value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withSkipRounding();
*/
withSkipRounding(flag = true) {
this.parameters.skipRounding = flag
return new AnalyticsRequest(this)
}
/**
* Adds the aggregateData query parameter to the request.
*
* @param {Boolean} [aggregateData=true] The aggregateData value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withAggregateData();
*/
withAggregateData(flag = true) {
this.parameters.aggregateData = flag
return new AnalyticsRequest(this)
}
/**
* Adds the clusterSize query parameter to the request.
*
* @param {!Number} clusterSize The size of cluster in meters
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withClusterSize(1000);
*/
withClusterSize(size) {
if (size) {
this.parameters.clusterSize = size
}
return new AnalyticsRequest(this)
}
/**
* Adds the coordinateField query parameter to the request.
*
* @param {!String} [coordinateField=EVENT] The field to base geospatial event analytics on
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withCoordinateField('<attribute-id>');
*/
withCoordinateField(field = 'EVENT') {
// EVENT, <attribute-id>, <dataelement-id>
this.parameters.coordinateField = field
return new AnalyticsRequest(this)
}
/**
* Adds the bbox query parameter to the request.
*
* @param {!String} bbox The bounding box coordinates in the format "min lng, min lat, max lng, max lat"
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withBbox('11.1768827285209, 60.141691309755, 11.1694071634997, 60.287796722512');
*/
withBbox(bbox) {
if (bbox) {
this.parameters.bbox = bbox
}
return new AnalyticsRequest(this)
}
/**
* Adds the includeClusterPoints query parameter to the request.
*
* @param {Boolean} [includeClusterPoints=true] The includeClusterPoints value
*
* @returns {AnalyticsRequest} A new instance of the class for chaining purposes
*
* @example
* const req = new d2.analytics.request()
* .withIncludeClusterPoints();
*/
withIncludeClusterPoints(flag = true) {
this.parameters.includeClusterPoints = flag
return new AnalyticsRequest(this)
}
}
export default AnalyticsRequestPropertiesMixin
</code></pre>
</article>
</section>
</div>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.6</a> on Thu Nov 18 2021 08:51:53 GMT+0000 (Coordinated Universal Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
</footer>
<script>prettyPrint();</script>
<script src="scripts/linenumber.js"></script>
</body>
</html>