Commit 8daf57df39375671f5c94523a290c2a13beed339

Authored by Kalutka Zhenya
Committed by Andrew Shvayka
1 parent 2ee3a855

Update service-completion.models()

... ... @@ -15,19 +15,93 @@
15 15 ///
16 16
17 17 import { FunctionArg, FunctionArgType, TbEditorCompletions } from '@shared/models/ace/completion.models';
  18 +import {Asset} from "@shared/models/asset.models";
  19 +import {AttributeData} from "@shared/models/telemetry/telemetry.models";
  20 +import {BaseData} from "@shared/models/base-data";
  21 +import {EntityId} from "@shared/models/id/entity-id";
  22 +import {AliasFilterType, EntityAlias, EntityAliasFilterResult} from "@shared/models/alias.models";
  23 +import {Datasource} from "@shared/models/widget.models";
  24 +import {AliasInfo, StateParams} from "@core/api/widget-api.models";
  25 +import {ImportEntityData} from "@shared/models/entity.models";
  26 +
18 27
19 28 export const entityIdHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/id/entity-id.ts#L20">EntityId</a>';
20 29
  30 +export const baseDataHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/base-data.ts#L22">Base data</a>';
  31 +
  32 +export const alarmDataHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/query/query.models.ts#L573">Alarm data</a>';
  33 +
  34 +export const alarmDataQueryHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/query/query.models.ts#L558">Alarm data query</a>';
  35 +
  36 +export const attributeScopeHref ='<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/telemetry/telemetry.models.ts#L37">Attribute scope</a>';
  37 +
21 38 export const entityTypeHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/entity-type.models.ts#L36">EntityType</a>';
22 39
23 40 export const pageDataHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/page/page-data.ts#L17">PageData</a>';
24 41
25 42 export const deviceInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/device.models.ts#L33">DeviceInfo</a>';
26 43
  44 +export const assetInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/asset.models.ts#L32">AssetInfo</a>'
  45 +
  46 +export const entityViewInfoHref = '<a href = "https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/entity-view.models.ts#L47">EntityViewInfo</a>';
  47 +
  48 +export const entityRelationsQueryHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/relation.models.ts#L69">EntityRelationsQuery</a>';
  49 +
  50 +export const entityRelationInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/relation.models.ts#L87">EntityRelationInfo</a>';
  51 +
  52 +export const dashboardInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/dashboard.models.ts#L25">DashboardInfo</a>';
  53 +
27 54 export const deviceHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/device.models.ts#L24">Device</a>';
28 55
  56 +export const assetHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/asset.models.ts#L23">Asset</a>';
  57 +
  58 +export const entityViewHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/entity-view.models.ts#L35">entityView</a>';
  59 +
  60 +export const entityRelationHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/relation.models.ts#L79">Entity relation</a>';
  61 +
  62 +export const dashboardHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/dashboard.models.ts#L102">Dashboard</a>';
  63 +
  64 +export const customerHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/customer.model.ts#L21">Customer</a>';
  65 +
  66 +export const attributeDataHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/telemetry/telemetry.models.ts#L76">Attribute Data</a>';
  67 +
  68 +export const userHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/user.model.ts#L23">User</a>';
  69 +
  70 +export const entityDataHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/query/query.models.ts#L567">Entity data</a>';
  71 +
  72 +export const entityDataQueryHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/query/query.models.ts#L555">Entity Data Query</a>';
  73 +
29 74 export const deviceCredentialsHref = '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/device.models.ts#L50">DeviceCredentials</a>';
30 75
  76 +export const entityFilterHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/query/query.models.ts#L487">Entity filter</a>';
  77 +
  78 +export const entityInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/entity.models.ts#L20">Entity info</a>';
  79 +
  80 +export const aliasEntityTypeHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/entity-type.models.ts#L51">Alias Entity Type</a>';
  81 +
  82 +export const aliasFilterTypeHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/entity-type.models.ts#L51">Alias filter type</a>';
  83 +
  84 +export const entityAliasHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/alias.models.ts#L150">Entity alias</a>';
  85 +
  86 +export const dataKeyTypeHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/telemetry/telemetry.models.ts#L27">Data key type</a>';
  87 +
  88 +export const subscriptionInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/core/api/widget-api.models.ts#L155">Subscription info</a>';
  89 +
  90 +export const dataSourceHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/widget.models.ts#L257">Datasource</a>';
  91 +
  92 +export const stateParamsHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/core/api/widget-api.models.ts#L129">State params</a>';
  93 +
  94 +export const aliasInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/core/api/widget-api.models.ts#L88">Alias info</a>';
  95 +
  96 +export const entityAliasFilterHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/alias.models.ts#L134">Entity alias filter</a>'
  97 +
  98 +export const entityAliasFilterResultHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/alias.models.ts#L158">Entity alias filter result</a>'
  99 +
  100 +export const importEntityDataHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/entity.models.ts#L28">Import entity data</a>'
  101 +
  102 +export const importEntitiesResultInfoHref = '<a href="https://github.com/thingsboard/thingsboard/blob/master/ui-ngx/src/app/shared/models/entity.models.ts#L42">Import entities result info</a>'
  103 +
  104 +
31 105 export const pageLinkArg: FunctionArg = {
32 106 name: 'pageLink',
33 107 type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/page/page-link.ts#L68">PageLink</a>',
... ... @@ -48,6 +122,13 @@ export function observableReturnType(objectType: string): FunctionArgType {
48 122 };
49 123 }
50 124
  125 +export function observableReturnTypeVariable(variableType: string): FunctionArgType {
  126 + return {
  127 + type: `Observable&lt;${variableType}&gt;`,
  128 + description: `An <code>Observable</code> of <code>${variableType}</code> variable.`
  129 + };
  130 +}
  131 +
51 132 export function observableVoid(): FunctionArgType {
52 133 return {
53 134 type: `Observable&lt;void&gt;`,
... ... @@ -62,6 +143,21 @@ export function observableArrayReturnType(objectType: string): FunctionArgType {
62 143 };
63 144 }
64 145
  146 +export function observableBaseDataReturnType(objectType: string): FunctionArgType {
  147 + return {
  148 + type: `Observable&lt;${baseDataHref}&lt;${objectType}&gt;&gt;`,
  149 + description: `An <code>Observable</code> of page result as a <code>${baseDataHref}</code> holding array of <code>${objectType}</code> objects.`
  150 + };
  151 +}
  152 +
  153 +export function observableArrayBaseDataReturnType(objectType: string): FunctionArgType {
  154 + return {
  155 + type: `Observable&lt;Array&lt;${baseDataHref}&lt;${objectType}&gt;&gt;&gt;`,
  156 + description: `An <code>Observable</code> of page result as a <code>${baseDataHref}</code> holding array of <code>${objectType}</code> objects.`
  157 + };
  158 +}
  159 +
  160 +
65 161 export function observablePageDataReturnType(objectType: string): FunctionArgType {
66 162 return {
67 163 type: `Observable&lt;${pageDataHref}&lt;${objectType}&gt;&gt;`,
... ... @@ -69,6 +165,8 @@ export function observablePageDataReturnType(objectType: string): FunctionArgTyp
69 165 };
70 166 }
71 167
  168 +
  169 +
72 170 export const serviceCompletions: TbEditorCompletions = {
73 171 deviceService: {
74 172 description: 'Device Service API<br>' +
... ... @@ -110,7 +208,7 @@ export const serviceCompletions: TbEditorCompletions = {
110 208 description: 'Get devices by ids',
111 209 meta: 'function',
112 210 args: [
113   - { name: 'deviceIds', type: 'Array<string>', description: 'List of device ids'},
  211 + { name: 'deviceIds', type: `Array&lt;string&gt;`, description: 'List of device ids'},
114 212 requestConfigArg
115 213 ],
116 214 return: observableArrayReturnType(deviceHref)
... ... @@ -269,61 +367,1011 @@ export const serviceCompletions: TbEditorCompletions = {
269 367 description: 'Asset Service API<br>' +
270 368 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/asset.service.ts#L29">AssetService</a> for API reference.',
271 369 meta: 'service',
272   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/asset.service.ts#L29">AssetService</a>'
  370 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/asset.service.ts#L29">AssetService</a>',
  371 + children: {
  372 + getTenantAssetInfos: {
  373 + description: 'Get tenant asset',
  374 + meta: 'function',
  375 + args: [
  376 + pageLinkArg,
  377 + {name: 'type', type: 'string', optional: true, description: 'Asset type'},
  378 + requestConfigArg
  379 + ],
  380 + return: observablePageDataReturnType(assetInfoHref)
  381 + },
  382 + getCustomerAssetInfos: {
  383 + description: 'Get customer assets',
  384 + meta: 'function',
  385 + args: [
  386 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  387 + pageLinkArg,
  388 + {name: 'type', type: 'string', optional: true, description: 'Asset type'},
  389 + requestConfigArg
  390 + ],
  391 + return: observablePageDataReturnType(assetInfoHref)
  392 + },
  393 + getAsset: {
  394 + description: 'Get asset by id',
  395 + meta: 'function',
  396 + args: [
  397 + {name: 'assetId', type: 'string', description: 'Id of the asset'},
  398 + requestConfigArg
  399 + ],
  400 + return: observableReturnType(assetHref)
  401 + },
  402 + getAssets: {
  403 + description: 'Get assets by ids',
  404 + meta: 'function',
  405 + args: [
  406 + {name: 'assetIds', type: `Array&lt;string&gt;`, description: 'Ids of the assets'},
  407 + requestConfigArg
  408 + ],
  409 + return: observableArrayReturnType(assetHref)
  410 + },
  411 + getAssetInfo: {
  412 + description: 'Get asset info by id',
  413 + meta: 'function',
  414 + args: [
  415 + {name: 'assetId', type: 'string', description: 'Id of the assets'},
  416 + requestConfigArg
  417 + ],
  418 + return: observableReturnType(assetInfoHref)
  419 + },
  420 + saveAsset: {
  421 + description: 'Save asset',
  422 + meta: 'function',
  423 + args: [
  424 + {name: 'asset', type: assetHref, description: 'Asset object to save'},
  425 + requestConfigArg
  426 + ],
  427 + return: observableReturnType(assetHref)
  428 + },
  429 + deleteAsset: {
  430 + description: 'Delete asset by id',
  431 + meta: 'function',
  432 + args: [
  433 + {name: 'assetId', type: 'string', description: 'Id of the asset'},
  434 + requestConfigArg
  435 + ],
  436 + return: observableVoid()
  437 + },
  438 + getAssetTypes: {
  439 + description: 'Get all available assets types',
  440 + meta: 'function',
  441 + args: [
  442 + requestConfigArg
  443 + ],
  444 + return: observableArrayReturnType('<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/entity-type.models.ts#L295">EntitySubtype</a>')
  445 + },
  446 + makeAssetPublic: {
  447 + description: 'Make asset public (available from public dashboard)',
  448 + meta: 'function',
  449 + args: [
  450 + {name: 'assetId', type: 'string', description: 'Id of the asset'},
  451 + requestConfigArg
  452 + ],
  453 + return: observableReturnType(assetHref)
  454 + },
  455 + assignAssetToCustomer: {
  456 + description: 'Assign asset to specific customer',
  457 + meta: 'function',
  458 + args: [
  459 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  460 + {name: 'assetId', type: 'string', description: 'Id of the asset'},
  461 + requestConfigArg
  462 + ],
  463 + return: observableReturnType(assetHref)
  464 + },
  465 + unassignAssetFromCustomer: {
  466 + description: 'Unassign asset from any customer',
  467 + meta: 'function',
  468 + args: [
  469 + {name: 'assetId', type: 'string', description: 'Id of the asset'},
  470 + requestConfigArg
  471 + ],
  472 + return: observableVoid()
  473 + },
  474 + findByQuery: {
  475 + description: 'Find assets by search query',
  476 + meta: 'function',
  477 + args: [
  478 + {
  479 + name: 'query',
  480 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/asset.models.ts#L37">AssetSearchQuery</a>',
  481 + description: 'Asset search query object'
  482 + },
  483 + requestConfigArg
  484 + ],
  485 + return: observableArrayReturnType(assetHref)
  486 + },
  487 + findByName: {
  488 + description: 'Find asset by name',
  489 + meta: 'function',
  490 + args: [
  491 + {
  492 + name: 'assetName', type: 'string',
  493 + description: 'Search asset name'
  494 + },
  495 + requestConfigArg
  496 + ],
  497 + return: observableReturnType(assetHref)
  498 + },
  499 + },
273 500 },
274 501 entityViewService: {
275 502 description: 'EntityView Service API<br>' +
276 503 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity-view.service.ts#L29">EntityViewService</a> for API reference.',
277 504 meta: 'service',
278   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity-view.service.ts#L29">EntityViewService</a>'
  505 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity-view.service.ts#L29">EntityViewService</a>',
  506 + children: {
  507 + getTenantEntityViewInfos: {
  508 + description: 'Get tenant entity view infos',
  509 + meta: 'function',
  510 + args: [
  511 + pageLinkArg,
  512 + {name: 'type', type: 'string', optional: true, description: 'Entity view type'},
  513 + requestConfigArg
  514 + ],
  515 + return: observablePageDataReturnType(entityViewInfoHref)
  516 + },
  517 + getCustomerEntityViewInfos: {
  518 + description: 'Get customer entities view infos by id',
  519 + meta: 'function',
  520 + args: [
  521 + { name: 'customerId', type: 'string', description: 'Id of the customer'},
  522 + pageLinkArg,
  523 + { name: 'type', type: 'string', optional: true, description: 'Entity view type'},
  524 + requestConfigArg
  525 + ],
  526 + return: observablePageDataReturnType(entityViewInfoHref)
  527 + },
  528 + getEntityView: {
  529 + description: 'Get entity view by id',
  530 + meta: 'function',
  531 + args: [
  532 + { name: 'entityViewId', type: 'string', description: 'Id of the entity view'},
  533 + requestConfigArg
  534 + ],
  535 + return: observableReturnType(entityViewHref)
  536 + },
  537 + getEntityViewInfo: {
  538 + description: 'Get entity view info by id',
  539 + meta: 'function',
  540 + args: [
  541 + {name: 'entityViewId', type: 'string', description: 'Id of the entities view'},
  542 + requestConfigArg
  543 + ],
  544 + return: observableReturnType(entityViewInfoHref)
  545 + },
  546 + saveEntityView: {
  547 + description: 'Save entity view',
  548 + meta: 'function',
  549 + args: [
  550 + {name: 'entityView', type: entityViewHref, description: 'Entity view object to save'},
  551 + requestConfigArg
  552 + ],
  553 + return: observableReturnType(entityViewHref)
  554 + },
  555 + deleteEntityView: {
  556 + description: 'Delete entity view by id',
  557 + meta: 'function',
  558 + args: [
  559 + {name: 'entityViewId', type: 'string', description: 'Id of the entity view'},
  560 + requestConfigArg
  561 + ],
  562 + return: observableVoid()
  563 + },
  564 + getEntityViewTypes: {
  565 + description: 'Get all available entity view types',
  566 + meta: 'function',
  567 + args: [
  568 + requestConfigArg
  569 + ],
  570 + return: observableArrayReturnType('<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/entity-type.models.ts#L295">EntitySubtype</a>')
  571 + },
  572 + makeEntityViewPublic: {
  573 + description: 'Make entity view public (available from public dashboard)',
  574 + meta: 'function',
  575 + args: [
  576 + {name: 'entityViewId', type: 'string', description: 'Id of the entity view'},
  577 + requestConfigArg
  578 + ],
  579 + return: observableReturnType(entityViewHref)
  580 + },
  581 + assignEntityViewToCustomer: {
  582 + description: 'Assign entity view to specific customer',
  583 + meta: 'function',
  584 + args: [
  585 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  586 + {name: 'entityViewId', type: 'string', description: 'Id of the entity viewId'},
  587 + requestConfigArg
  588 + ],
  589 + return: observableReturnType(entityViewHref)
  590 + },
  591 + unassignEntityViewFromCustomer: {
  592 + description: 'Unassign entity view from any customer',
  593 + meta: 'function',
  594 + args: [
  595 + {name: 'entityViewId', type: 'string', description: 'Id of the entity view'},
  596 + requestConfigArg
  597 + ],
  598 + return: observableVoid()
  599 + },
  600 + findByQuery: {
  601 + description: 'Find entities view by search query',
  602 + meta: 'function',
  603 + args: [
  604 + {
  605 + name: 'query',
  606 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/shared/models/asset.models.ts#L37">AssetSearchQuery</a>',
  607 + description: 'Asset search query object'
  608 + },
  609 + requestConfigArg
  610 + ],
  611 + return: observableArrayReturnType(entityViewHref)
  612 + },
  613 + }
279 614 },
280 615 customerService: {
281 616 description: 'Customer Service API<br>' +
282 617 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/customer.service.ts#L28">CustomerService</a> for API reference.',
283 618 meta: 'service',
284   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/customer.service.ts#L28">CustomerService</a>'
  619 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/customer.service.ts#L28">CustomerService</a>',
  620 + children: {
  621 + getCustomer: {
  622 + description: 'Get customer by id',
  623 + meta: 'function',
  624 + args: [
  625 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  626 + requestConfigArg
  627 + ],
  628 + return: observableReturnType(customerHref)
  629 + },
  630 + getCustomers: {
  631 + description: 'Get customers by ids',
  632 + meta: 'function',
  633 + args: [
  634 + pageLinkArg,
  635 + requestConfigArg
  636 + ],
  637 + return: observablePageDataReturnType(customerHref)
  638 + },
  639 + saveCustomer: {
  640 + description: 'Save customer',
  641 + meta: 'function',
  642 + args: [
  643 + {name: 'customer', type: customerHref, description: 'Customer object to save'},
  644 + requestConfigArg
  645 + ],
  646 + return: observableReturnType(customerHref)
  647 + },
  648 + deleteCustomer: {
  649 + description: 'Delete customer by id',
  650 + meta: 'function',
  651 + args: [
  652 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  653 + requestConfigArg
  654 + ],
  655 + return: observableVoid()
  656 + },
  657 + }
285 658 },
286 659 dashboardService: {
287 660 description: 'Dashboard Service API<br>' +
288 661 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/dashboard.service.ts#L32">DashboardService</a> for API reference.',
289 662 meta: 'service',
290   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/dashboard.service.ts#L32">DashboardService</a>'
291   - },
292   - userService: {
293   - description: 'User Service API<br>' +
294   - 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/user.service.ts#L29">UserService</a> for API reference.',
295   - meta: 'service',
296   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/user.service.ts#L29">UserService</a>'
297   - },
298   - attributeService: {
299   - description: 'Attribute Service API<br>' +
300   - 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/attribute.service.ts#L28">AttributeService</a> for API reference.',
301   - meta: 'service',
302   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/attribute.service.ts#L28">AttributeService</a>'
303   - },
304   - entityRelationService: {
305   - description: 'Entity Relation Service API<br>' +
306   - 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity-relation.service.ts#L27">EntityRelationService</a> for API reference.',
307   - meta: 'service',
308   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity-relation.service.ts#L27">EntityRelationService</a>'
309   - },
310   - entityService: {
311   - description: 'Entity Service API<br>' +
312   - 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity.service.ts#L64">EntityService</a> for API reference.',
313   - meta: 'service',
314   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity.service.ts#L64">EntityService</a>'
315   - },
316   - dialogs: {
317   - description: 'Dialogs Service API<br>' +
318   - 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/services/dialog.service.ts#L39">DialogService</a> for API reference.',
319   - meta: 'service',
320   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/services/dialog.service.ts#L39">DialogService</a>'
321   - },
322   - customDialog: {
323   - description: 'Custom Dialog Service API<br>' +
324   - 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/modules/home/components/widget/dialog/custom-dialog.service.ts#L33">CustomDialogService</a> for API reference.',
325   - meta: 'service',
326   - type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/modules/home/components/widget/dialog/custom-dialog.service.ts#L33">CustomDialogService</a>'
  663 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/dashboard.service.ts#L32">DashboardService</a>',
  664 + children: {
  665 + getTenantDashboards: {
  666 + description: 'Get tenant dashboard',
  667 + meta: 'function',
  668 + args: [
  669 + pageLinkArg,
  670 + requestConfigArg
  671 + ],
  672 + return: observablePageDataReturnType(dashboardInfoHref)
  673 + },
  674 + getTenantDashboardsByTenantId: {
  675 + description: 'Get tenant dashboards by id',
  676 + meta: 'function',
  677 + args: [
  678 + {name: 'tenantId', type: 'string', description: 'Id of the tenant'},
  679 + pageLinkArg
  680 + ],
  681 + return: observablePageDataReturnType(dashboardInfoHref)
  682 + },
  683 + getCustomerDashboards: {
  684 + description: 'Get customer dashboard by id',
  685 + meta: 'function',
  686 + args: [
  687 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  688 + pageLinkArg,
  689 + requestConfigArg
  690 + ],
  691 + return: observablePageDataReturnType(dashboardInfoHref)
  692 + },
  693 + getDashboard: {
  694 + description: 'Get dashboard by id',
  695 + meta: 'function',
  696 + args: [
  697 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  698 + requestConfigArg
  699 + ],
  700 + return: observableReturnType(dashboardHref)
  701 + },
  702 + getDashboardInfo: {
  703 + description: 'Get dashboard info by id',
  704 + meta: 'function',
  705 + args: [
  706 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  707 + requestConfigArg
  708 + ],
  709 + return: observableReturnType(dashboardInfoHref)
  710 + },
  711 + saveDashboard: {
  712 + description: 'Save dashboard',
  713 + meta: 'function',
  714 + args: [
  715 + {name: 'dashboard', type: dashboardHref, description: 'Dashboard object to save'},
  716 + requestConfigArg
  717 + ],
  718 + return: observableReturnType(dashboardHref)
  719 + },
  720 + deleteDashboard: {
  721 + description: 'Delete dashboard by id',
  722 + meta: 'function',
  723 + args: [
  724 + {name: 'dashboardId', type: 'string', description: 'Id of the entity view'},
  725 + requestConfigArg
  726 + ],
  727 + return: observableVoid()
  728 + },
  729 + assignDashboardToCustomer: {
  730 + description: 'Assign dashboard to specific customer',
  731 + meta: 'function',
  732 + args: [
  733 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  734 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  735 + requestConfigArg
  736 + ],
  737 + return: observableReturnType(dashboardHref)
  738 + },
  739 + unassignDashboardFromCustomer: {
  740 + description: 'Unassign dashboard from any customer',
  741 + meta: 'function',
  742 + args: [
  743 + {name: 'customerId', type: 'string', description: 'Id of the customer'},
  744 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  745 + requestConfigArg
  746 + ],
  747 + return: observableVoid()
  748 + },
  749 + makeDashboardPublic: {
  750 + description: 'Make dashboard public by id',
  751 + meta: 'function',
  752 + args: [
  753 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  754 + requestConfigArg
  755 + ],
  756 + return: observableReturnType(dashboardHref)
  757 + },
  758 + makeDashboardPrivate: {
  759 + description: 'Make dashboard private by id',
  760 + meta: 'function',
  761 + args: [
  762 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  763 + requestConfigArg
  764 + ],
  765 + return: observableReturnType(dashboardHref)
  766 + },
  767 + updateDashboardCustomers: {
  768 + description: 'Update dashboard by id',
  769 + meta: 'function',
  770 + args: [
  771 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  772 + {name: 'customerIds', type: `Array&lt;string&gt;`, description: 'Ids of the customers'},
  773 + requestConfigArg
  774 + ],
  775 + return: observableReturnType(dashboardHref)
  776 + },
  777 + addDashboardCustomers: {
  778 + description: 'Add dashboard customers by ids',
  779 + meta: 'function',
  780 + args: [
  781 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  782 + {name: 'customerIds', type: `Array&lt;string&gt;`, description: 'Ids of the customers'},
  783 + requestConfigArg
  784 + ],
  785 + return: observableReturnType(dashboardHref)
  786 + },
  787 + removeDashboardCustomers: {
  788 + description: 'Remove dashboard customers dy ids',
  789 + meta: 'function',
  790 + args: [
  791 + {name: 'dashboardId', type: 'string', description: 'Id of the dashboard'},
  792 + {name: 'customerIds', type: `Array&lt;string&gt;`, description: 'Id of the customers'},
  793 + requestConfigArg
  794 + ],
  795 + return: observableArrayReturnType(dashboardHref)
  796 + },
  797 + getPublicDashboardLink: {
  798 + description: 'Get public dashboard link',
  799 + meta: 'function',
  800 + args: [
  801 + {name: 'dashboard', type: dashboardInfoHref, description: 'dashboard info'},
  802 + ],
  803 + return: {
  804 + type: `string|null`,
  805 + description: `Returns dashboard url`
  806 + }
  807 + },
  808 + getServerTimeDiff: {
  809 + description: 'remove dashboard customers ',
  810 + meta: 'function',
  811 + args: [
  812 + ],
  813 + return: observableReturnTypeVariable('number')
  814 + },
  815 + }
  816 + },
  817 + userService: {
  818 + description: 'User Service API<br>' +
  819 + 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/user.service.ts#L29">UserService</a> for API reference.',
  820 + meta: 'service',
  821 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/user.service.ts#L29">UserService</a>',
  822 + children: {
  823 + getUsers: {
  824 + description: 'Get users',
  825 + meta: 'function',
  826 + args: [
  827 + pageLinkArg,
  828 + requestConfigArg
  829 + ],
  830 + return: observablePageDataReturnType(userHref)
  831 + },
  832 + getTenantAdmins: {
  833 + description: 'Get tenant admins by id',
  834 + meta: 'function',
  835 + args: [
  836 + {name: 'tenantId', type: 'string', description: 'Id of the tenant'},
  837 + pageLinkArg,
  838 + requestConfigArg
  839 + ],
  840 + return: observablePageDataReturnType(userHref)
  841 + },
  842 + getCustomerUsers: {
  843 + description: 'Get customer users by id',
  844 + meta: 'function',
  845 + args: [
  846 + {name: 'customerId', type: 'string', description: 'id of the customer'},
  847 + pageLinkArg,
  848 + requestConfigArg
  849 + ],
  850 + return: observablePageDataReturnType(userHref)
  851 + },
  852 + getUser: {
  853 + description: 'Get user by id',
  854 + meta: 'function',
  855 + args: [
  856 + {name: 'userId', type: 'string', description: 'id of the user'},
  857 + requestConfigArg
  858 + ],
  859 + return: observableReturnType(userHref)
  860 + },
  861 + saveUser: {
  862 + description: 'Save user',
  863 + meta: 'function',
  864 + args: [
  865 + {name: 'user', type: userHref, description: 'User object to save'},
  866 + requestConfigArg
  867 + ],
  868 + return: observableReturnType(userHref)
  869 + },
  870 + deleteUser: {
  871 + description: 'Delete user by id',
  872 + meta: 'function',
  873 + args: [
  874 + {name: 'userId', type: 'string', description: 'Id of the user'},
  875 + requestConfigArg
  876 + ],
  877 + return: observableVoid()
  878 + },
  879 + setUserCredentialsEnabled: {
  880 + description: 'Set user credentials enabled by id',
  881 + meta: 'function',
  882 + args: [
  883 + {name: 'userId', type: 'string', description: 'Id of the user'},
  884 + {name: 'userCredentialsEnabled', type: 'boolean', description: 'User credentials enabled'},
  885 + requestConfigArg
  886 + ],
  887 + return: observableReturnType(userHref)
  888 + },
  889 + getActivationLink: {
  890 + description: 'Get activation link by id',
  891 + meta: 'function',
  892 + args: [
  893 + {name: 'userId', type: 'string', description: 'Id of the user'},
  894 + requestConfigArg
  895 + ],
  896 + return:observableReturnTypeVariable('string')
  897 + },
  898 + sendActivationEmail: {
  899 + description: 'Send activation email',
  900 + meta: 'function',
  901 + args: [
  902 + {name: 'email', type: 'string', description: 'Email of the user'},
  903 + requestConfigArg
  904 + ],
  905 + return: observableVoid()
  906 + },
  907 + }
  908 + },
  909 + entityRelationService: {
  910 + description: 'Entity Relation Service API<br>' +
  911 + 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity-relation.service.ts#L27">EntityRelationService</a> for API reference.',
  912 + meta: 'service',
  913 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity-relation.service.ts#L27">EntityRelationService</a>',
  914 + children: {
  915 + saveRelation: {
  916 + description: 'Save relation',
  917 + meta: 'function',
  918 + args: [
  919 + {name: 'relation', type: entityRelationHref, description: 'Relation object to save'},
  920 + requestConfigArg
  921 + ],
  922 + return: observableReturnType(entityRelationHref)
  923 + },
  924 + deleteRelation: {
  925 + description: 'Delete relation by ids',
  926 + meta: 'function',
  927 + args: [
  928 + {name: 'fromId', type: entityIdHref, description: 'From-id'},
  929 + {name: 'relationType', type: 'string', description: 'Relation type'},
  930 + {name: 'toId', type: entityIdHref, description: 'To-id'},
  931 + requestConfigArg
  932 + ],
  933 + return: observableVoid()
  934 + },
  935 + deleteRelations: {
  936 + description: 'Delete relations by entity id',
  937 + meta: 'function',
  938 + args: [
  939 + {name: 'entityId', type: entityIdHref, description: 'Id to the entity'},
  940 + {name: 'relationType', type: 'string', description: 'Relation type'},
  941 + requestConfigArg
  942 + ],
  943 + return: observableVoid()
  944 + },
  945 + getRelation: {
  946 + description: 'Get relation by ids',
  947 + meta: 'function',
  948 + args: [
  949 + {name: 'fromId', type: entityIdHref, description: 'From-id'},
  950 + {name: 'relationType', type: 'string', description: 'Relation type'},
  951 + {name: 'toId', type: entityIdHref, description: 'To-id'},
  952 + requestConfigArg
  953 + ],
  954 + return: observableReturnType(entityRelationHref)
  955 + },
  956 + findByFrom: {
  957 + description: 'Find by from-id',
  958 + meta: 'function',
  959 + args: [
  960 + {name: 'fromId', type: entityIdHref, description: 'From-id'},
  961 + requestConfigArg
  962 + ],
  963 + return: observableArrayReturnType(entityRelationHref)
  964 + },
  965 + findInfoByFrom: {
  966 + description: 'Find info by from-id',
  967 + meta: 'function',
  968 + args: [
  969 + {name: 'fromId', type: entityIdHref, description: 'From-id'},
  970 + requestConfigArg
  971 + ],
  972 + return: observableArrayReturnType(entityRelationInfoHref)
  973 + },
  974 + findByFromAndType: {
  975 + description: 'Find by from-id and relation type',
  976 + meta: 'function',
  977 + args: [
  978 + {name: 'fromId', type: entityIdHref, description: 'From-id'},
  979 + {name: 'relationType', type: 'string', description: 'Relation type'},
  980 + requestConfigArg
  981 + ],
  982 + return: observableArrayReturnType(entityRelationHref)
  983 + },
  984 + findByTo: {
  985 + description: 'Find by to-id',
  986 + meta: 'function',
  987 + args: [
  988 + {name: 'toId', type: entityIdHref, description: 'To-id'},
  989 + requestConfigArg
  990 + ],
  991 + return: observableArrayReturnType(entityRelationHref)
  992 + },
  993 + findInfoByTo: {
  994 + description: 'Find info by to-id',
  995 + meta: 'function',
  996 + args: [
  997 + {name: 'toId', type: entityIdHref, description: 'To-id'},
  998 + requestConfigArg
  999 + ],
  1000 + return: observableArrayReturnType(entityRelationInfoHref)
  1001 + },
  1002 + findByToAndType: {
  1003 + description: 'Find by to-id and relation type',
  1004 + meta: 'function',
  1005 + args: [
  1006 + {name: 'toId', type: entityIdHref, description: 'To-id'},
  1007 + {name: 'relationType', type: 'string', description: 'Relation type'},
  1008 + requestConfigArg
  1009 + ],
  1010 + return: observableArrayReturnType(entityRelationHref)
  1011 + },
  1012 + findByQuery: {
  1013 + description: 'Find by query',
  1014 + meta: 'function',
  1015 + args: [
  1016 + {name: 'query', type: entityRelationsQueryHref, description: 'Query'},
  1017 + requestConfigArg
  1018 + ],
  1019 + return: observableArrayReturnType(entityRelationHref)
  1020 + },
  1021 + findInfoByQuery: {
  1022 + description: 'Find info by query',
  1023 + meta: 'function',
  1024 + args: [
  1025 + {name: 'query', type: entityRelationsQueryHref, description: 'Query'},
  1026 + requestConfigArg
  1027 + ],
  1028 + return: observableArrayReturnType(entityRelationInfoHref)
  1029 + },
  1030 + }
  1031 + },
  1032 + attributeService: {
  1033 + description: 'Attribute Service API<br>' +
  1034 + 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/attribute.service.ts#L28">AttributeService</a> for API reference.',
  1035 + meta: 'service',
  1036 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/attribute.service.ts#L28">AttributeService</a>',
  1037 + children: {
  1038 + getEntityAttributes: {
  1039 + description: 'Get entity attributes by id',
  1040 + meta: 'function',
  1041 + args: [
  1042 + {name: 'entityId', type: entityIdHref, description: 'Id of the entity'},
  1043 + {name: 'attributeScope', type: attributeScopeHref, description: 'Atribute scope'},
  1044 + {name: 'keys', type:`Array&lt;string&gt;`, description: 'Array of the keys'},
  1045 + requestConfigArg
  1046 + ],
  1047 + return: observableArrayReturnType(attributeDataHref)
  1048 + },
  1049 + deleteEntityAttributes: {
  1050 + description: 'Delete entity attributes by id',
  1051 + meta: 'function',
  1052 + args: [
  1053 + {name: 'entityId', type: entityIdHref, description: 'Id of the entity'},
  1054 + {name: 'attributeScope', type: attributeScopeHref, description: 'Atribute scope'},
  1055 + {name: 'attributes', type: `array&lt;${attributeDataHref}&gt;`, description: 'Array of the attributes'},
  1056 + requestConfigArg
  1057 + ],
  1058 + return: observableReturnTypeVariable('any')
  1059 + },
  1060 + deleteEntityTimeseries: {
  1061 + description: 'Delete entity timeseries by id',
  1062 + meta: 'function',
  1063 + args: [
  1064 + {name: 'entityId', type: entityIdHref, description: 'Id of the entity'},
  1065 + {name: 'timeseries', type: `Array&lt;${attributeDataHref}&gt;>`, description: 'Array of the timeseries'},
  1066 + {name: 'deleteAllDataForKeys', type: 'boolean',optional: true, description: 'Delete all data for keys'},
  1067 + requestConfigArg
  1068 + ],
  1069 + return:observableReturnTypeVariable('any')
  1070 + },
  1071 + saveEntityAttributes: {
  1072 + description: 'Save entity attributes',
  1073 + meta: 'function',
  1074 + args: [
  1075 + {name: 'entityId', type: entityIdHref, description: 'Id of the entity'},
  1076 + {name: 'attributeScope', type: attributeScopeHref, description: 'Attribute scope'},
  1077 + {name: 'attributes', type: 'Array&lt;${attributeDataHref}&gt;>', description: 'Array of the attributes'},
  1078 + requestConfigArg
  1079 + ],
  1080 + return: observableReturnTypeVariable('any')
  1081 + },
  1082 + saveEntityTimeseries: {
  1083 + description: 'Save entity timeseries',
  1084 + meta: 'function',
  1085 + args: [
  1086 + {name: 'entityId', type: entityIdHref, description: 'Id of the entity'},
  1087 + {name: 'timeseriesScope', type: 'string', description: 'Timeseries scope'},
  1088 + {name: 'timeseries', type: `Array&lt;attributeDataHref&gt;`, description: 'Array of the timeseries'},
  1089 + requestConfigArg
  1090 + ],
  1091 + return:observableReturnTypeVariable('any')
  1092 + },
  1093 + }
  1094 + },
  1095 + entityService: {
  1096 + description: 'Entity Service API<br>' +
  1097 + 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity.service.ts#L64">EntityService</a> for API reference.',
  1098 + meta: 'service',
  1099 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/http/entity.service.ts#L64">EntityService</a>',
  1100 + children: {
  1101 + getEntity: {
  1102 + description: 'Get entity by id',
  1103 + meta: 'function',
  1104 + args: [
  1105 + {name: 'entityType', type: entityTypeHref, description: 'Entity type'},
  1106 + {name: 'entityId', type: 'string', description: 'Id of the entity'},
  1107 + requestConfigArg
  1108 + ],
  1109 + return:observableBaseDataReturnType(entityIdHref)
  1110 + },
  1111 + getEntities: {
  1112 + description: 'Get entities by ids',
  1113 + meta: 'function',
  1114 + args: [
  1115 + {name: 'entityType', type: entityTypeHref, description: 'Entity type'},
  1116 + {name: 'entityIds', type: `Array&lt;string&gt;`, description: 'Ids of the entities'},
  1117 + requestConfigArg
  1118 + ],
  1119 + return:observableArrayBaseDataReturnType(entityIdHref)
  1120 + },
  1121 + getEntitiesByNameFilter: {
  1122 + description: 'Get entities by name filter',
  1123 + meta: 'function',
  1124 + args: [
  1125 + {name: 'entityType', type: entityTypeHref, description: 'Entity type'},
  1126 + {name: 'entityNameFilter', type: 'string', description: 'Name filter of the entity'},
  1127 + {name: 'pageSize', type: 'number', description: 'Size of the page'},
  1128 + {name: 'subType', type: 'string',optional: true, description: 'Subtype'},
  1129 + requestConfigArg
  1130 + ],
  1131 + return:observableArrayBaseDataReturnType(entityIdHref)
  1132 + },
  1133 + findEntityDataByQuery: {
  1134 + description: 'Find entity data by query',
  1135 + meta: 'function',
  1136 + args: [
  1137 + {name: 'query', type: entityDataQueryHref, description: 'Query'},
  1138 +
  1139 + requestConfigArg
  1140 + ],
  1141 + return:observablePageDataReturnType(entityDataHref)
  1142 + },
  1143 + findAlarmDataByQuery: {
  1144 + description: 'Find alarm data by query',
  1145 + meta: 'function',
  1146 + args: [
  1147 + {name: 'query', type: alarmDataQueryHref, description: 'Query'},
  1148 + requestConfigArg
  1149 + ],
  1150 + return:observablePageDataReturnType(alarmDataHref)
  1151 + },
  1152 + findEntityInfosByFilterAndName: {
  1153 + description: 'Find entity infos by filter and name',
  1154 + meta: 'function',
  1155 + args: [
  1156 + {name: 'filter', type: entityFilterHref, description: 'Filter of the entity'},
  1157 + {name: 'searchText', type: 'string', description: 'Search text'},
  1158 + requestConfigArg
  1159 + ],
  1160 + return:observablePageDataReturnType(entityInfoHref)
  1161 + },
  1162 + findSingleEntityInfoByEntityFilter: {
  1163 + description: 'Find single entity infos by filter of the entity ',
  1164 + meta: 'function',
  1165 + args: [
  1166 + {name: 'filter', type: entityFilterHref, description: 'Filter of the entity'},
  1167 + {name: 'searchText', type: 'string', description: 'search text'},
  1168 + requestConfigArg
  1169 + ],
  1170 + return:observableReturnType(entityInfoHref)
  1171 + },
  1172 + getAliasFilterTypesByEntityTypes: {
  1173 + description: 'Get alias filter types by entity type',
  1174 + meta: 'function',
  1175 + args: [
  1176 + {name: 'entityTypes', type:`Array&lt;${entityTypeHref}|${aliasEntityTypeHref}&gt;`, description: 'Entity types'},
  1177 + {name: 'searchText', type: 'string', description: 'Search text'}
  1178 + ],
  1179 + return:{
  1180 + type:`Array&lt;${aliasFilterTypeHref}$gt;`,
  1181 + description:`Array of ${aliasFilterTypeHref} objects`
  1182 + }
  1183 + },
  1184 + filterAliasByEntityTypes: {
  1185 + description: 'Filter alias by entity type',
  1186 + meta: 'function',
  1187 + args: [
  1188 + {name: 'entityAlias', type:entityAliasHref, description: 'Alias of the entity'},
  1189 + {name: 'entityTypes', type:`Array&lt;${entityTypeHref}|${aliasEntityTypeHref}&gt;`, description: 'Entity types'}
  1190 + ],
  1191 + return:{
  1192 + type:'boolean',
  1193 + description:`Returns <code>boolean</code> variable based on the filter`
  1194 + }
  1195 + },
  1196 + prepareAllowedEntityTypesList: {
  1197 + description: 'Prepare allowed types of the entity list',
  1198 + meta: 'function',
  1199 + args: [
  1200 + {name: 'allowedEntityTypes', type:`Array&lt;${entityTypeHref}|${aliasEntityTypeHref}&gt;`, description: 'Entity types'},
  1201 + {name: 'useAliasEntityTypes', type:'boolean', description: 'Use alias entity types'},
  1202 + ],
  1203 + return:{
  1204 + type:`Array&lt;${entityTypeHref}|${aliasEntityTypeHref}&gt;`,
  1205 + description:`Returns entity types array`
  1206 + }
  1207 + },
  1208 + getEntityKeys: {
  1209 + description: 'Get entity keys by id',
  1210 + meta: 'function',
  1211 + args: [
  1212 + {name: 'entityId', type:entityIdHref, description: 'id of the entity'},
  1213 + {name: 'query', type:'string', description: 'Query'},
  1214 + {name: 'type', type:dataKeyTypeHref, description: 'Query'},
  1215 + requestConfigArg
  1216 + ],
  1217 + return:{
  1218 + type:`Observable&lt;Array&lt;string&gt;&gt;`,
  1219 + description:`An <code>Observable</code> of <code>string</code> variable.`
  1220 + }
  1221 + //observableArrayReturnType('string')
  1222 + },
  1223 + createDatasourcesFromSubscriptionsInfo: {
  1224 + description: 'Create database from subscriptions info',
  1225 + meta: 'function',
  1226 + args: [
  1227 + {name: 'subscriptionsInfo', type:'array<subscriptionInfoHref>', description: 'Subscriptions info'}
  1228 + ],
  1229 + return:{
  1230 + type:`Array&lt;${dataSourceHref}&gt;`,
  1231 + description:`Array of <code>${dataSourceHref}</code> objects`
  1232 + }
  1233 + },
  1234 + createAlarmSourceFromSubscriptionInfo: {
  1235 + description: 'Create alarm source from subscriptions info',
  1236 + meta: 'function',
  1237 + args: [
  1238 + {name: 'subscriptionInfo', type:subscriptionInfoHref, description: 'Subscription info'}
  1239 + ],
  1240 + return:{
  1241 + type:`${dataSourceHref}`,
  1242 + description:`<code>${dataSourceHref}</code> object`
  1243 + }
  1244 + },
  1245 + resolveAlias: {
  1246 + description: 'Resolve alias',
  1247 + meta: 'function',
  1248 + args: [
  1249 + {name: 'entityAlias', type:entityAliasHref, description: 'Alias of the entity'},
  1250 + {name: 'stateParams', type:stateParamsHref, description: 'State params'},
  1251 + ],
  1252 + return:observableReturnType(aliasInfoHref)
  1253 + },
  1254 + resolveAliasFilter: {
  1255 + description: 'Resolve alias filter',
  1256 + meta: 'function',
  1257 + args: [
  1258 + {name: 'filter', type:entityAliasFilterHref, description: 'Entity alias filter'},
  1259 + {name: 'stateParams', type:stateParamsHref, description: 'State params'},
  1260 + ],
  1261 + return:observableReturnType(entityAliasFilterResultHref)
  1262 + },
  1263 + checkEntityAlias: {
  1264 + description: 'Check entity alias',
  1265 + meta: 'function',
  1266 + args: [
  1267 + {name: 'entityAlias', type:entityAliasHref, description: 'Alias of the entity'},
  1268 + ],
  1269 + return:observableReturnTypeVariable('boolean')
  1270 + // observableReturnType('boolean')
  1271 + },
  1272 + saveEntityParameters: {
  1273 + description: 'Save entity parameters',
  1274 + meta: 'function',
  1275 + args: [
  1276 + {name: 'entityType', type:entityTypeHref, description: 'Entity type'},
  1277 + {name: 'entityData', type:importEntityDataHref, description: 'Data of the entity'},
  1278 + {name: 'update', type:'boolean', description: 'Update'},
  1279 + requestConfigArg
  1280 + ],
  1281 + return:observableReturnType(importEntitiesResultInfoHref)
  1282 + },
  1283 + saveEntityData: {
  1284 + description: 'Save entity data',
  1285 + meta: 'function',
  1286 + args: [
  1287 + {name: 'entityId', type:entityIdHref, description: 'Id of the entity'},
  1288 + {name: 'entityData', type:importEntityDataHref, description: 'Data of the entity'},
  1289 + requestConfigArg
  1290 + ],
  1291 + return:observableReturnTypeVariable('any')
  1292 +
  1293 + //observableReturnType('any')
  1294 + },
  1295 + }
  1296 + },
  1297 + dialogs: {
  1298 + description: 'Dialogs Service API<br>' +
  1299 + 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/services/dialog.service.ts#L39">DialogService</a> for API reference.',
  1300 + meta: 'service',
  1301 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/core/services/dialog.service.ts#L39">DialogService</a>',
  1302 + children: {
  1303 + confirm: {
  1304 + description: 'Confirm',
  1305 + meta: 'function',
  1306 + args: [
  1307 + {name: 'title', type:'string', description: 'Title'},
  1308 + {name: 'message', type:'string', description: 'Message'},
  1309 + {name: 'cancel', type:'string',optional: true, description: 'Cancel'},
  1310 + {name: 'ok', type:'string',optional: true, description: 'Ok'},
  1311 + {name: 'fullscreen', type:'boolean',optional: true, description: 'Fullscreen'},
  1312 + ],
  1313 + return:observableReturnTypeVariable('boolean')
  1314 + },
  1315 + alert: {
  1316 + description: 'Alert',
  1317 + meta: 'function',
  1318 + args: [
  1319 + {name: 'title', type:'string', description: 'Title'},
  1320 + {name: 'message', type:'string', description: 'Message'},
  1321 + {name: 'ok', type:'string',optional: true, description: 'Ok'},
  1322 + {name: 'fullscreen', type:'boolean',optional: true, description: 'Fullscreen'},
  1323 + ],
  1324 + return:observableReturnTypeVariable('boolean')
  1325 + },
  1326 + colorPicker: {
  1327 + description: 'Color picker',
  1328 + meta: 'function',
  1329 + args: [
  1330 + {name: 'color', type:'string', description: 'Сolor'},
  1331 + ],
  1332 + return:observableReturnTypeVariable('string')
  1333 + },
  1334 + materialIconPicker: {
  1335 + description: 'Material icon picker',
  1336 + meta: 'function',
  1337 + args: [
  1338 + {name: 'icon', type:'string', description: 'Icon'},
  1339 + ],
  1340 + return:observableReturnTypeVariable('string')
  1341 + },
  1342 + forbidden: {
  1343 + description: 'Forbidden',
  1344 + meta: 'function',
  1345 + args: [
  1346 + ],
  1347 + return:observableReturnTypeVariable('boolean')
  1348 + },
  1349 + todo: {
  1350 + description: 'To do',
  1351 + meta: 'function',
  1352 + args: [
  1353 + ],
  1354 + return:observableReturnTypeVariable('any')
  1355 + },
  1356 + }
  1357 + },
  1358 + customDialog: {
  1359 + description: 'Custom Dialog Service API<br>' +
  1360 + 'See <a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/modules/home/components/widget/dialog/custom-dialog.service.ts#L33">CustomDialogService</a> for API reference.',
  1361 + meta: 'service',
  1362 + type: '<a href="https://github.com/thingsboard/thingsboard/blob/13e6b10b7ab830e64d31b99614a9d95a1a25928a/ui-ngx/src/app/modules/home/components/widget/dialog/custom-dialog.service.ts#L33">CustomDialogService</a>',
  1363 + children:{
  1364 + customDialog: {
  1365 + description: 'Custom Dialog',
  1366 + meta: 'function',
  1367 + args: [
  1368 + {name: 'template', type:'string', description: 'Template'},
  1369 + {name: 'controller', type:'void', description: 'Controller'},
  1370 + {name: 'data', type:'any', description: 'Data'},
  1371 + ],
  1372 + return:observableReturnTypeVariable('any')
  1373 + },
  1374 + }
327 1375 },
328 1376 date: {
329 1377 description: 'Date Pipe<br>Formats a date value according to locale rules.<br>' +
... ...