@c8y/ngx-components 1023.71.1 → 1023.75.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/asset-properties/index.d.ts +19 -1
  2. package/asset-properties/index.d.ts.map +1 -1
  3. package/cockpit-config/index.d.ts +4 -3
  4. package/cockpit-config/index.d.ts.map +1 -1
  5. package/context-dashboard/index.d.ts +202 -4
  6. package/context-dashboard/index.d.ts.map +1 -1
  7. package/datapoints-export-selector/index.d.ts +8 -1
  8. package/datapoints-export-selector/index.d.ts.map +1 -1
  9. package/device-profile/index.d.ts +8 -1
  10. package/device-profile/index.d.ts.map +1 -1
  11. package/events/cockpit/index.d.ts +6 -0
  12. package/events/cockpit/index.d.ts.map +1 -0
  13. package/events/devicemanagement/index.d.ts +6 -0
  14. package/events/devicemanagement/index.d.ts.map +1 -0
  15. package/events/events-timeline/index.d.ts +10 -10
  16. package/events/events-timeline/index.d.ts.map +1 -1
  17. package/events/index.d.ts +363 -5
  18. package/events/index.d.ts.map +1 -1
  19. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +1 -1
  20. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
  21. package/fesm2022/c8y-ngx-components-alarms.mjs +1 -1
  22. package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
  23. package/fesm2022/c8y-ngx-components-asset-properties.mjs +2 -2
  24. package/fesm2022/c8y-ngx-components-asset-properties.mjs.map +1 -1
  25. package/fesm2022/c8y-ngx-components-auth-configuration.mjs +1 -1
  26. package/fesm2022/c8y-ngx-components-auth-configuration.mjs.map +1 -1
  27. package/fesm2022/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs +1 -1
  28. package/fesm2022/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs.map +1 -1
  29. package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs +2 -2
  30. package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs.map +1 -1
  31. package/fesm2022/c8y-ngx-components-cockpit-config.mjs +8 -11
  32. package/fesm2022/c8y-ngx-components-cockpit-config.mjs.map +1 -1
  33. package/fesm2022/{c8y-ngx-components-computed-asset-properties-alarm-count-config.component-CPLDClTp.mjs → c8y-ngx-components-computed-asset-properties-alarm-count-config.component-DX9Rgjgl.mjs} +2 -2
  34. package/fesm2022/{c8y-ngx-components-computed-asset-properties-alarm-count-config.component-CPLDClTp.mjs.map → c8y-ngx-components-computed-asset-properties-alarm-count-config.component-DX9Rgjgl.mjs.map} +1 -1
  35. package/fesm2022/{c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-9be_iMQg.mjs → c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-CRpLJ5H7.mjs} +8 -8
  36. package/fesm2022/{c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-9be_iMQg.mjs.map → c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-CRpLJ5H7.mjs.map} +1 -1
  37. package/fesm2022/{c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-B2em01_W.mjs → c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-2rDsrxcs.mjs} +2 -2
  38. package/fesm2022/{c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-B2em01_W.mjs.map → c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-2rDsrxcs.mjs.map} +1 -1
  39. package/fesm2022/{c8y-ngx-components-computed-asset-properties-event-count-config.component-CQuGa1RI.mjs → c8y-ngx-components-computed-asset-properties-event-count-config.component-BJNoqWZf.mjs} +2 -2
  40. package/fesm2022/{c8y-ngx-components-computed-asset-properties-event-count-config.component-CQuGa1RI.mjs.map → c8y-ngx-components-computed-asset-properties-event-count-config.component-BJNoqWZf.mjs.map} +1 -1
  41. package/fesm2022/{c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-CkmurxJv.mjs → c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-DYac6foX.mjs} +3 -3
  42. package/fesm2022/{c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-CkmurxJv.mjs.map → c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-DYac6foX.mjs.map} +1 -1
  43. package/fesm2022/{c8y-ngx-components-computed-asset-properties-last-measurement-config.component-CTK9zNUh.mjs → c8y-ngx-components-computed-asset-properties-last-measurement-config.component-3yTe6lIr.mjs} +3 -3
  44. package/fesm2022/{c8y-ngx-components-computed-asset-properties-last-measurement-config.component-CTK9zNUh.mjs.map → c8y-ngx-components-computed-asset-properties-last-measurement-config.component-3yTe6lIr.mjs.map} +1 -1
  45. package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs +1 -1
  46. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-DsCDppJx.mjs → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-C7yXSDYC.mjs} +3 -3
  47. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-DsCDppJx.mjs.map → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-C7yXSDYC.mjs.map} +1 -1
  48. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-RdLW5nde.mjs → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-w8N16Z3t.mjs} +4 -4
  49. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-RdLW5nde.mjs.map → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-w8N16Z3t.mjs.map} +1 -1
  50. package/fesm2022/c8y-ngx-components-context-dashboard.mjs +561 -21
  51. package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  52. package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs +2 -2
  53. package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs.map +1 -1
  54. package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs +1 -1
  55. package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs.map +1 -1
  56. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +1 -1
  57. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
  58. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +41 -8
  59. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
  60. package/fesm2022/c8y-ngx-components-device-profile.mjs +38 -12
  61. package/fesm2022/c8y-ngx-components-device-profile.mjs.map +1 -1
  62. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs +1 -1
  63. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs.map +1 -1
  64. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +1 -1
  65. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs.map +1 -1
  66. package/fesm2022/c8y-ngx-components-ecosystem.mjs +1 -1
  67. package/fesm2022/c8y-ngx-components-ecosystem.mjs.map +1 -1
  68. package/fesm2022/c8y-ngx-components-events-cockpit.mjs +54 -0
  69. package/fesm2022/c8y-ngx-components-events-cockpit.mjs.map +1 -0
  70. package/fesm2022/c8y-ngx-components-events-devicemanagement.mjs +79 -0
  71. package/fesm2022/c8y-ngx-components-events-devicemanagement.mjs.map +1 -0
  72. package/fesm2022/c8y-ngx-components-events-events-timeline.mjs +30 -23
  73. package/fesm2022/c8y-ngx-components-events-events-timeline.mjs.map +1 -1
  74. package/fesm2022/c8y-ngx-components-events.mjs +1080 -4
  75. package/fesm2022/c8y-ngx-components-events.mjs.map +1 -1
  76. package/fesm2022/c8y-ngx-components-file-preview.mjs +48 -41
  77. package/fesm2022/c8y-ngx-components-file-preview.mjs.map +1 -1
  78. package/fesm2022/c8y-ngx-components-files-repository.mjs +1 -1
  79. package/fesm2022/c8y-ngx-components-files-repository.mjs.map +1 -1
  80. package/fesm2022/c8y-ngx-components-global-context.mjs +68 -34
  81. package/fesm2022/c8y-ngx-components-global-context.mjs.map +1 -1
  82. package/fesm2022/c8y-ngx-components-interval-picker.mjs +3 -3
  83. package/fesm2022/c8y-ngx-components-interval-picker.mjs.map +1 -1
  84. package/fesm2022/c8y-ngx-components-location.mjs +1 -1
  85. package/fesm2022/c8y-ngx-components-location.mjs.map +1 -1
  86. package/fesm2022/c8y-ngx-components-operation-picker.mjs +1 -1
  87. package/fesm2022/c8y-ngx-components-operation-picker.mjs.map +1 -1
  88. package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs +1 -1
  89. package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs.map +1 -1
  90. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs +1 -1
  91. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs.map +1 -1
  92. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs +1 -1
  93. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs.map +1 -1
  94. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +5 -5
  95. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs.map +1 -1
  96. package/fesm2022/c8y-ngx-components-protocol-opcua.mjs +2 -2
  97. package/fesm2022/c8y-ngx-components-protocol-opcua.mjs.map +1 -1
  98. package/fesm2022/c8y-ngx-components-remote-access-shared.mjs +1 -1
  99. package/fesm2022/c8y-ngx-components-remote-access-shared.mjs.map +1 -1
  100. package/fesm2022/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs +1 -1
  101. package/fesm2022/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs.map +1 -1
  102. package/fesm2022/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs +1 -1
  103. package/fesm2022/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs.map +1 -1
  104. package/fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs +1 -1
  105. package/fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs.map +1 -1
  106. package/fesm2022/c8y-ngx-components-repository-firmware.mjs +1 -1
  107. package/fesm2022/c8y-ngx-components-repository-firmware.mjs.map +1 -1
  108. package/fesm2022/c8y-ngx-components-static-assets-modal.mjs +1 -1
  109. package/fesm2022/c8y-ngx-components-static-assets-modal.mjs.map +1 -1
  110. package/fesm2022/c8y-ngx-components-time-context.mjs +1 -1
  111. package/fesm2022/c8y-ngx-components-time-context.mjs.map +1 -1
  112. package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs +1 -1
  113. package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs.map +1 -1
  114. package/fesm2022/c8y-ngx-components-widgets-definitions-event-list.mjs +39 -1
  115. package/fesm2022/c8y-ngx-components-widgets-definitions-event-list.mjs.map +1 -1
  116. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs +76 -4
  117. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs.map +1 -1
  118. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +1 -1
  119. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs.map +1 -1
  120. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs +1 -1
  121. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs.map +1 -1
  122. package/fesm2022/c8y-ngx-components-widgets-implementations-events.mjs +236 -0
  123. package/fesm2022/c8y-ngx-components-widgets-implementations-events.mjs.map +1 -0
  124. package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs +271 -31
  125. package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs.map +1 -1
  126. package/fesm2022/c8y-ngx-components-widgets-implementations-image.mjs +1 -1
  127. package/fesm2022/c8y-ngx-components-widgets-implementations-image.mjs.map +1 -1
  128. package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs +1 -1
  129. package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs.map +1 -1
  130. package/fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs +1 -1
  131. package/fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs.map +1 -1
  132. package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs +1 -1
  133. package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs.map +1 -1
  134. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +1 -1
  135. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
  136. package/fesm2022/c8y-ngx-components.mjs +248 -26
  137. package/fesm2022/c8y-ngx-components.mjs.map +1 -1
  138. package/file-preview/index.d.ts +7 -6
  139. package/file-preview/index.d.ts.map +1 -1
  140. package/global-context/index.d.ts +3 -0
  141. package/global-context/index.d.ts.map +1 -1
  142. package/index.d.ts +106 -11
  143. package/index.d.ts.map +1 -1
  144. package/locales/de.po +117 -3
  145. package/locales/es.po +117 -3
  146. package/locales/fr.po +117 -3
  147. package/locales/ja_JP.po +117 -3
  148. package/locales/ko.po +117 -3
  149. package/locales/locales.pot +117 -3
  150. package/locales/nl.po +117 -3
  151. package/locales/pl.po +117 -3
  152. package/locales/pt_BR.po +117 -3
  153. package/locales/zh_CN.po +117 -3
  154. package/locales/zh_TW.po +117 -3
  155. package/package.json +1 -1
  156. package/widgets/definitions/event-list/index.d.ts +44 -1
  157. package/widgets/definitions/event-list/index.d.ts.map +1 -1
  158. package/widgets/implementations/alarms/index.d.ts +2 -0
  159. package/widgets/implementations/alarms/index.d.ts.map +1 -1
  160. package/widgets/implementations/events/index.d.ts +89 -0
  161. package/widgets/implementations/events/index.d.ts.map +1 -0
  162. package/widgets/implementations/html-widget/index.d.ts +69 -9
  163. package/widgets/implementations/html-widget/index.d.ts.map +1 -1
@@ -1,21 +1,24 @@
1
1
  import { Router } from '@angular/router';
2
- import { WidgetSettings, AppStateService, Permissions, Alert, OptionsService, ClipboardService } from '@c8y/ngx-components';
3
- import { WidgetConfigService } from '@c8y/ngx-components/context-dashboard';
2
+ import { WidgetSettings, AppStateService, Permissions, Alert, AlertService, OptionsService, ClipboardService, DashboardChildComponent } from '@c8y/ngx-components';
3
+ import { ContextWidgetConfig, AssetPropertyMappings, WidgetConfigService, WidgetConfigNotification, AssetPropertyMappingsService } from '@c8y/ngx-components/context-dashboard';
4
4
  import { CockpitConfig } from '@c8y/ngx-components/cockpit-config';
5
+ import * as rxjs from 'rxjs';
5
6
  import { Subject, Observable } from 'rxjs';
6
7
  import { IManagedObject, IIdentified } from '@c8y/client';
7
- import { InterpolationParameters, Translation } from '@ngx-translate/core';
8
+ import { InterpolationParameters, Translation, TranslateService } from '@ngx-translate/core';
8
9
  import * as i0 from '@angular/core';
9
10
  import { OnChanges, OnDestroy, SimpleChanges, TemplateRef } from '@angular/core';
10
11
  import { ToolCallPart } from '@c8y/ngx-components/ai';
12
+ import { PresetName, GlobalContextState, GLOBAL_CONTEXT_DISPLAY_MODE } from '@c8y/ngx-components/global-context';
11
13
  import { AssetPropertyType } from '@c8y/ngx-components/asset-properties';
12
14
  import { EditorComponent } from '@c8y/ngx-components/editor';
13
15
  import * as Monaco from 'monaco-editor';
14
16
 
15
- interface HtmlWidgetConfig {
17
+ interface HtmlWidgetConfig extends ContextWidgetConfig {
16
18
  device?: IIdentified | null;
17
19
  config: HtmlWidget;
18
20
  settings?: WidgetSettings;
21
+ properties?: AssetPropertyMappings;
19
22
  /**
20
23
  * On HTML WIdget 1.0 this property was used to store the HTML code.
21
24
  * It is not used anymore, but we need to keep it for backward compatibility.
@@ -28,7 +31,6 @@ type C8yProperties = Array<PathProperty | ComputedProperty>;
28
31
  interface HtmlWidget {
29
32
  css: string;
30
33
  code: string;
31
- props?: C8yProperties;
32
34
  options: HtmlWidgetOptions;
33
35
  legacy: boolean;
34
36
  devMode: boolean;
@@ -40,6 +42,7 @@ interface HtmlWidgetOptions {
40
42
  }
41
43
  interface WebcomponentContext extends HTMLElement {
42
44
  c8yContext: IManagedObject;
45
+ c8yProperties?: Record<string, unknown>;
43
46
  c8yTranslate: (key: string | string[], interpolateParams?: InterpolationParameters) => Translation;
44
47
  }
45
48
  interface PathProperty {
@@ -54,7 +57,7 @@ interface ComputedProperty {
54
57
  query: string;
55
58
  reducer?: string;
56
59
  }
57
- declare const INITIAL_HTML_FORMATTED = "<div>\n <h2>Hello from <span class=\"branded\">HTML widget</span></h2>\n <p class=\"m-b-8 m-t-16\">\n ${this.c8yTranslate('You can use HTML and Javascript template literals here:')} <br>\n ${this.c8yContext ? this.c8yTranslate('Device {{deviceName}} selected', { deviceName: this.c8yContext.name }) : this.c8yTranslate('No device selected')}\n </p>\n\n <a class=\"btn btn-primary m-b-16\" href=\"#/group\">${this.c8yTranslate('Go to groups')}</a>\n\n <p>\n Use the CSS editor to customize the CSS. You can use <span class=\"text-bold\">any design-token CSS variable</span> in there.\n </p>\n\n <p>\n Note that you are only able to translate strings using the c8yTranslate method if they are written in English and their translations are available in the loaded standard or custom translation resources.\n </p>\n</div>";
60
+ declare const INITIAL_HTML_FORMATTED = "<div>\n <h2>Hello from <span class=\"branded\">HTML widget</span></h2>\n\n <p class=\"m-t-16\">\n ${this.c8yTranslate('You can use HTML and JavaScript template literals:')}\n </p>\n\n <p class=\"m-t-16\">\n <b>Context properties:</b> Access the assigned asset's properties via <code>c8yContext</code>: <br>\n <tt>${this.c8yContext ? this.c8yTranslate('Selected asset: {{ assetName }}', { assetName: this.c8yContext.name }) : this.c8yTranslate('No asset selected')}</tt>\n </p>\n \n <p class=\"m-t-16\">\n <b>Asset properties:</b> Use \"Asset properties\" to select other properties (incl. computed ones) and access their values via <code>c8yProperties</code>: <br>\n <i>Last updated:</i> <tt>${this.c8yProperties?.lastUpdated || '-'}</tt> <br>\n <i>Last device message:</i> <tt>${this.c8yProperties?.lastDeviceMessage || '-'}</tt>\n </p>\n\n <p class=\"m-t-16\">\n <b>Styles:</b> Use the CSS editor to customize styles. You can use <span class=\"text-bold\">any design-token CSS variable</span> in there.\n </p>\n\n <p class=\"m-t-16\">\n <b>Translations:</b> Use the <code>c8yTranslate('text {{ var }}', { var: value })</code> function to translate strings.\n <i>Note: texts must be written in English and their translations must be available in the loaded standard or custom translation resources.</i>\n </p>\n\n <p class=\"m-t-16\">\n <b>Buttons:</b> Use other HTML elements like buttons: <br>\n <a class=\"btn btn-primary m-t-8\" href=\"#/group\">${this.c8yTranslate('Go to groups')}</a>\n </p>\n</div>";
58
61
  declare const INITIAL_CSS_FORMATTED = "\n:host > div {\n padding: var(--c8y-root-component-padding-default);\n}\nspan.branded { \n color: var(--brand-primary, var(--c8y-brand-primary)); \n}";
59
62
  declare const defaultWebComponentName = "DefaultWebComponent";
60
63
  declare const defaultWebComponentAttributeNameContext = "c8yContext";
@@ -68,6 +71,7 @@ declare class HtmlWidgetConfigService {
68
71
  widgetConfigService: WidgetConfigService;
69
72
  appState: AppStateService;
70
73
  destroy$: Subject<void>;
74
+ readonly notify$: Observable<WidgetConfigNotification>;
71
75
  init$: Observable<HtmlWidget>;
72
76
  config$: Observable<HtmlWidget>;
73
77
  codeEditorChangeConfig$: Observable<HtmlWidget>;
@@ -121,6 +125,7 @@ declare class HtmlAiChatToolDetailsComponent {
121
125
  declare class HtmlFrameComponent implements OnChanges, OnDestroy {
122
126
  config: HtmlWidget;
123
127
  device: IManagedObject | IIdentified;
128
+ propertyValues$: Observable<Record<string, unknown>>;
124
129
  /**
125
130
  * If set to true, it will be ensured that a unique hash is generated
126
131
  * for every webcomponent. This is useful if configured as otherwise it might
@@ -131,6 +136,7 @@ declare class HtmlFrameComponent implements OnChanges, OnDestroy {
131
136
  alerts: Alert[];
132
137
  private sanitizer;
133
138
  private translateService;
139
+ private moRealtime;
134
140
  private destroy$;
135
141
  private hostElement;
136
142
  private reload$;
@@ -152,15 +158,24 @@ declare class HtmlFrameComponent implements OnChanges, OnDestroy {
152
158
  private generateHash;
153
159
  private createDefaultWebcomponentCode;
154
160
  static ɵfac: i0.ɵɵFactoryDeclaration<HtmlFrameComponent, never>;
155
- static ɵcmp: i0.ɵɵComponentDeclaration<HtmlFrameComponent, "c8y-html-frame", never, { "config": { "alias": "config"; "required": false; }; "device": { "alias": "device"; "required": false; }; "useSalt": { "alias": "useSalt"; "required": false; }; }, {}, never, never, true, never>;
161
+ static ɵcmp: i0.ɵɵComponentDeclaration<HtmlFrameComponent, "c8y-html-frame", never, { "config": { "alias": "config"; "required": false; }; "device": { "alias": "device"; "required": false; }; "propertyValues$": { "alias": "propertyValues$"; "required": false; }; "useSalt": { "alias": "useSalt"; "required": false; }; }, {}, never, never, true, never>;
156
162
  }
157
163
 
158
164
  declare class HtmlWidgetConfigComponent implements OnDestroy {
159
165
  set htmlPreviewTemplate(template: TemplateRef<any>);
166
+ alert: AlertService;
160
167
  options: OptionsService;
161
168
  htmlWidgetConfigService: HtmlWidgetConfigService;
162
169
  widgetConfigService: WidgetConfigService;
170
+ assetPropertyMappings: AssetPropertyMappingsService;
171
+ controls: PresetName;
172
+ private readonly destroyRef;
173
+ private realtimeControl$;
174
+ propertyValues$: rxjs.Observable<Record<string, unknown>>;
175
+ globalContextState$: rxjs.Observable<GlobalContextState>;
176
+ constructor();
163
177
  ngOnDestroy(): void;
178
+ private handleRename;
164
179
  static ɵfac: i0.ɵɵFactoryDeclaration<HtmlWidgetConfigComponent, never>;
165
180
  static ɵcmp: i0.ɵɵComponentDeclaration<HtmlWidgetConfigComponent, "c8y-html-widget-config", never, {}, {}, never, never, true, never>;
166
181
  }
@@ -179,11 +194,49 @@ declare class HtmlWidgetPropertiesSelectorComponent {
179
194
  }
180
195
 
181
196
  declare class HtmlWidgetComponent {
182
- config: HtmlWidgetConfig;
197
+ config: i0.InputSignal<HtmlWidgetConfig>;
198
+ private realtimeControl$;
199
+ propertyValues$: i0.Signal<rxjs.Observable<Record<string, unknown>>>;
200
+ private dashboardChild;
201
+ displayMode: i0.WritableSignal<"config" | "dashboard" | "view_and_config">;
202
+ contextConfig: i0.WritableSignal<GlobalContextState>;
203
+ isLoading: i0.WritableSignal<boolean>;
204
+ /**
205
+ * Controls link state to global context:
206
+ * - true/undefined: Widget follows global time context
207
+ * - false: Widget uses local state, ignores global changes
208
+ * Set to false when user is interacting (scrolling, zooming) to prevent interruption
209
+ */
210
+ isLinkedToGlobal: i0.WritableSignal<boolean>;
211
+ readonly GLOBAL_CONTEXT_DISPLAY_MODE: typeof GLOBAL_CONTEXT_DISPLAY_MODE;
212
+ readonly PRESET_NAME: {
213
+ readonly DEFAULT: "default";
214
+ readonly ALARM_LIST: "alarmList";
215
+ readonly CHART: "chart";
216
+ readonly LIVE_ONLY: "liveOnly";
217
+ readonly AUTO_REFRESH_ONLY: "autoRefreshOnly";
218
+ readonly AUTO_REFRESH_ONLY_CONFIG: "autoRefreshOnlyConfig";
219
+ readonly HISTORY_ONLY: "historyOnly";
220
+ readonly ALARM_LIST_CONFIG: "alarmListConfig";
221
+ readonly ALARM_LIST_LEGACY: "alarmListLegacy";
222
+ readonly KPI: "kpi";
223
+ readonly KPI_CONFIG: "kpiConfig";
224
+ readonly DATA_POINTS_LIST: "dataPointsList";
225
+ readonly DATA_POINTS_LIST_CONFIG: "dataPointsListConfig";
226
+ readonly DATAPOINTS_GRAPH: "datapointsGraph";
227
+ readonly DATAPOINTS_GRAPH_CONFIG: "datapointsGraphConfig";
228
+ };
229
+ private assetPropertiesMappings;
183
230
  ngOnInit(): void;
231
+ onContextChange(event: {
232
+ context: GlobalContextState;
233
+ diff: GlobalContextState;
234
+ }): void;
235
+ getDashboardChild(): DashboardChildComponent;
236
+ private shouldEnableRealtime;
184
237
  private mapLegacyConfig;
185
238
  static ɵfac: i0.ɵɵFactoryDeclaration<HtmlWidgetComponent, never>;
186
- static ɵcmp: i0.ɵɵComponentDeclaration<HtmlWidgetComponent, "c8y-html-widget", never, { "config": { "alias": "config"; "required": false; }; }, {}, never, never, true, never>;
239
+ static ɵcmp: i0.ɵɵComponentDeclaration<HtmlWidgetComponent, "c8y-html-widget", never, { "config": { "alias": "config"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
187
240
  }
188
241
 
189
242
  declare const legacyTemplate: (html: string, deviceId?: string | number, deviceName?: string) => string;
@@ -195,6 +248,9 @@ declare class WidgetCodeEditorComponent implements OnDestroy {
195
248
  config: HtmlWidget;
196
249
  editorComponent: EditorComponent;
197
250
  configService: HtmlWidgetConfigService;
251
+ translate: TranslateService;
252
+ private widgetConfigService;
253
+ propertyKeys$: rxjs.Observable<string[]>;
198
254
  editor: Monaco.editor.IStandaloneCodeEditor;
199
255
  isAutoSaveEnabled: boolean;
200
256
  language: 'html' | 'css' | 'javascript';
@@ -207,6 +263,7 @@ declare class WidgetCodeEditorComponent implements OnDestroy {
207
263
  readonly BUTTON_ENABLE_AUTOSAVE_LABEL: "Enable auto save`An action you can do on the html widget editor`";
208
264
  readonly TAB_OUTLET_NAME = "html-widget-tab-outlet";
209
265
  private destroy$;
266
+ private suggestionProviders;
210
267
  ngOnDestroy(): void;
211
268
  ngOnChanges(changes: SimpleChanges): void;
212
269
  loadCode(): void;
@@ -217,6 +274,9 @@ declare class WidgetCodeEditorComponent implements OnDestroy {
217
274
  undo(): void;
218
275
  changeCode($event: string): void;
219
276
  saveCode(codeStr?: string): void;
277
+ insertPropertyAtCursor(key: string): void;
278
+ private registerPropertySuggestions;
279
+ private getFormattedPropertyExpression;
220
280
  static ɵfac: i0.ɵɵFactoryDeclaration<WidgetCodeEditorComponent, never>;
221
281
  static ɵcmp: i0.ɵɵComponentDeclaration<WidgetCodeEditorComponent, "c8y-widget-code-editor", never, { "mode": { "alias": "mode"; "required": false; }; "config": { "alias": "config"; "required": false; }; }, {}, never, never, true, never>;
222
282
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sources":["../../../../widgets/implementations/html-widget/html-widget.model.ts","../../../../widgets/implementations/html-widget/html-widget-config.service.ts","../../../../widgets/implementations/html-widget/advanced-settings/advanced-settings.component.ts","../../../../widgets/implementations/html-widget/html-ai-chat-tool-details.component.ts","../../../../widgets/implementations/html-widget/html-frame/html-frame.component.ts","../../../../widgets/implementations/html-widget/html-widget-config.component.ts","../../../../widgets/implementations/html-widget/html-widget-properties-selector/html-widget-properties-selector.component.ts","../../../../widgets/implementations/html-widget/html-widget.component.ts","../../../../widgets/implementations/html-widget/legacy-template.ts","../../../../widgets/implementations/html-widget/webcomponent-template.ts","../../../../widgets/implementations/html-widget/widget-code-editor-section/widget-code-editor.component.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":";;;;;;;;;;;;;;;AAKE;;;AAIA;;;;;AAKG;;AAEJ;AAEK;;;;;;;;;AAUL;;;;AAKA;AAEK;;AAEJ;AAID;;;;;;AAOA;;;;;;AAOA;AAED;AAiBA;AAQA;AAEA;;AC3DA;;;;AAGmD;AAAoB;AACrE;AACA;AACA;AAEA;AAgBA;AAEA;AAoBA;AAEA;AAkBA;;;;;AA2CA;AAaA;;;AAsBD;;AC7JD;AAOE;AACA;AACA;AACA;AAEA;;;AAMA;AAIA;;;;AAyBM;;;AAMP;;AC3DD;;;AAQ0D;AACxD;AACA;AAEA;AAEA;;AAEG;;AAKH;;;AAWD;;ACHD;;AAYE;AAEA;;;;;AAKG;AAEH;;;;;;;;;;;AAmCA;AAKA;;;;;AAsFA;AAUA;AAeA;AAaA;AASA;;AAiBA;;;AAuBD;;ACnQD;;AAeE;AACA;AACA;AAEA;;;AAMD;;ACvBD;AAiBE;AACA;AAEA;;;;AAIG;;;;AAcJ;;AC5CD;;AASE;AAMA;;;AAgBD;;ACrCD;;ACEA;;ACYA;AAmBE;;;AAOA;AAEA;AACA;AACA;;AAEA;;;;;;;;AAeA;AAKA;;AAgCA;AAKA;;;;;AA0BA;;;AAQD;;;"}
1
+ {"version":3,"file":"index.d.ts","sources":["../../../../widgets/implementations/html-widget/html-widget.model.ts","../../../../widgets/implementations/html-widget/html-widget-config.service.ts","../../../../widgets/implementations/html-widget/advanced-settings/advanced-settings.component.ts","../../../../widgets/implementations/html-widget/html-ai-chat-tool-details.component.ts","../../../../widgets/implementations/html-widget/html-frame/html-frame.component.ts","../../../../widgets/implementations/html-widget/html-widget-config.component.ts","../../../../widgets/implementations/html-widget/html-widget-properties-selector/html-widget-properties-selector.component.ts","../../../../widgets/implementations/html-widget/html-widget.component.ts","../../../../widgets/implementations/html-widget/legacy-template.ts","../../../../widgets/implementations/html-widget/webcomponent-template.ts","../../../../widgets/implementations/html-widget/widget-code-editor-section/widget-code-editor.component.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":";;;;;;;;;;;;;;;;AAQM;AACJ;;;;AAKA;;;;;AAKG;;AAEJ;AAEK;;;;;;;;AASL;;;;AAKA;AAEK;;;AAGJ;AAID;;;;;;AAOA;;;;;;AAOA;AAED;AAgCA;AAQA;AAEA;;AC3EA;;;;AAGmD;AAAoB;AACrE;AACA;AACA;AACA;AAEA;AAgBA;AAEA;AAoBA;AAEA;AAkBA;;;;;AA2CA;AAaA;;;AAsBD;;AClKD;AAOE;AACA;AACA;AACA;AAEA;;;AAMA;AAIA;;;;AAyBM;;;AAMP;;AC3DD;;;AAQ0D;AACxD;AACA;AAEA;AAEA;;AAEG;;AAKH;;;AAWD;;ACHD;;AAYE;;AAKA;;;;;AAKG;AAEH;;;;;;;;;;;;AAoCA;AAKA;;;;;AAsFA;AAUA;AAeA;AA0BA;AASA;;AAiBA;;;AAuBD;;ACpQD;;AAsBE;AACA;AACA;AACA;AACA;;AAEA;;AAQA;AAKA;;AAgBA;AAOA;;;AAeD;;AC7FD;AAiBE;AACA;AAEA;;;;AAIG;;;;AAcJ;;AC9BD;AAYE;;AAEA;;AAQA;AACA;AACA;AACA;;;;;AAKG;AACH;;AAGA;;;;;;;;;;;;;;;;AAAmC;;AAInC;;;;AA8BgF;AAMhF;AAIA;AAKA;;;AAgBD;;ACvHD;;ACEA;;ACmBA;AAqBE;;;AAOA;AACA;;AAGA;AAIA;AACA;AACA;;AAEA;;;;;;;;;AAgBA;AAMA;;AAgCA;AAKA;;;;;AA8BA;;AA4BA;AAwGA;;;AAKD;;;"}