@c8y/ngx-components 1022.27.0 → 1022.30.0
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.
- package/context-dashboard/widget-config.component.d.ts +3 -1
- package/context-dashboard/widget-config.component.d.ts.map +1 -1
- package/context-dashboard/widget-config.service.d.ts +14 -8
- package/context-dashboard/widget-config.service.d.ts.map +1 -1
- package/core/dynamic-component/dynamic-component.model.d.ts +26 -0
- package/core/dynamic-component/dynamic-component.model.d.ts.map +1 -1
- package/core/index.d.ts +1 -0
- package/core/index.d.ts.map +1 -1
- package/core/resizable-grid/index.d.ts +2 -0
- package/core/resizable-grid/index.d.ts.map +1 -0
- package/core/resizable-grid/resizable-grid.component.d.ts +114 -0
- package/core/resizable-grid/resizable-grid.component.d.ts.map +1 -0
- package/dashboard-manager/devicemanagement/c8y-ngx-components-dashboard-manager-devicemanagement.d.ts.map +1 -0
- package/dashboard-manager/devicemanagement/index.d.ts +2 -0
- package/dashboard-manager/devicemanagement/index.d.ts.map +1 -0
- package/fesm2022/c8y-ngx-components-alarms.mjs +2 -2
- package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs +27 -15
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-dashboard-manager-devicemanagement.mjs +19 -0
- package/fesm2022/c8y-ngx-components-dashboard-manager-devicemanagement.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-map.mjs +84 -26
- package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components.mjs +332 -1
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/locales/de.po +26 -4
- package/locales/es.po +26 -4
- package/locales/fr.po +26 -4
- package/locales/ja_JP.po +25 -2
- package/locales/ko.po +26 -4
- package/locales/locales.pot +4 -3
- package/locales/nl.po +26 -4
- package/locales/pl.po +26 -4
- package/locales/pt_BR.po +26 -4
- package/locales/zh_CN.po +26 -4
- package/locales/zh_TW.po +26 -4
- package/map/map.service.d.ts +13 -10
- package/map/map.service.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AfterContentInit, OnDestroy } from '@angular/core';
|
|
2
2
|
import { NgForm } from '@angular/forms';
|
|
3
|
-
import { BottomDrawerRef, DynamicComponentDefinition, Widget } from '@c8y/ngx-components';
|
|
3
|
+
import { BottomDrawerRef, DynamicComponentDefinition, Widget, WIDGET_CONFIGURATION_GRID_SIZE } from '@c8y/ngx-components';
|
|
4
4
|
import { Subject } from 'rxjs';
|
|
5
5
|
import { ContextDashboardManagedObject, ContextWidgetConfig } from './context-dashboard.model';
|
|
6
6
|
import { ContextDashboardService } from './context-dashboard.service';
|
|
@@ -21,6 +21,7 @@ export declare class WidgetConfigComponent implements AfterContentInit, OnDestro
|
|
|
21
21
|
context: any;
|
|
22
22
|
componentLabel: string;
|
|
23
23
|
mo: ContextDashboardManagedObject;
|
|
24
|
+
identifier: `${string}-${string}-${string}-${string}-${string}`;
|
|
24
25
|
styling: {
|
|
25
26
|
headerClass: string;
|
|
26
27
|
contentClass: string;
|
|
@@ -72,6 +73,7 @@ export declare class WidgetConfigComponent implements AfterContentInit, OnDestro
|
|
|
72
73
|
readonly description: "The widget has no background.";
|
|
73
74
|
}];
|
|
74
75
|
};
|
|
76
|
+
WIDGET_CONFIGURATION_GRID_SIZE: typeof WIDGET_CONFIGURATION_GRID_SIZE;
|
|
75
77
|
configForm: NgForm;
|
|
76
78
|
/**
|
|
77
79
|
* Used as wrapper component to inject providers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget-config.component.d.ts","sourceRoot":"","sources":["../../context-dashboard/widget-config.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAa,SAAS,EAAa,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,MAAM,EAAe,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,eAAe,EACf,0BAA0B,EAC1B,MAAM,
|
|
1
|
+
{"version":3,"file":"widget-config.component.d.ts","sourceRoot":"","sources":["../../context-dashboard/widget-config.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAa,SAAS,EAAa,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,MAAM,EAAe,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,eAAe,EACf,0BAA0B,EAC1B,MAAM,EAWN,8BAA8B,EAC/B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAO,OAAO,EAAuB,MAAM,MAAM,CAAC;AAEzD,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,EAGpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;;AAKjD,qBAwBa,qBAAsB,YAAW,gBAAgB,EAAE,SAAS;IAkDrE,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,eAAe;IAChB,uBAAuB,EAAE,uBAAuB;IAChD,mBAAmB,EAAE,mBAAmB;IApDjD,YAAY,EAAE,0BAA0B,EAAE,CAAC;IAC3C,UAAU,EAAE,0BAA0B,EAAE,CAAC;IACzC,QAAQ,EAAE,0BAA0B,CAAC;IACrC,aAAa,mBAAiB;IAC9B,UAAU,SAAM;IAChB,OAAO,EAAE,GAAG,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,6BAA6B,CAAC;IAClC,UAAU,sDAAuB;IACjC,OAAO;;;MAGL;IACF,cAAc;;;MAGZ;IACF,OAAO,EAAE,GAAG,CAAC;IACb,YAAY,EAAE,mBAAmB,CAAC;IAClC,SAAS,UAAS;IAClB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAqD;IACpE,8BAA8B,wCAAkC;IAGhE,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,gBAAgB,mCAA6B;IAE7C,IAAI,MAAM,YAET;IAED,IAAI,qBAAqB,IAAI,OAAO,CAEnC;IAED,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAGpB;IAEH,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,OAAO,CAAyB;gBAG9B,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,CAAC,qBAAqB,CAAC,EACxD,uBAAuB,EAAE,uBAAuB,EAChD,mBAAmB,EAAE,mBAAmB;IAG3C,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBzC,cAAc,IAAI,OAAO;IASzB,qBAAqB;IAUf,IAAI;IAwCV,MAAM,CAAC,GAAG,KAAA,EAAE,IAAI,GAAE,QAAQ,GAAG,QAAmB;IA2BhD,MAAM;IAUN,WAAW;IAKX,qBAAqB;IAKf,KAAK;IAMX,QAAQ,CAAC,SAAS,UAAQ;IAiB1B,WAAW,IAAI,IAAI;IAOnB,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,uBAAuB;IAc/B,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,4BAA4B;yCArRzB,qBAAqB;2CAArB,qBAAqB;CA+SjC"}
|
|
@@ -8,6 +8,11 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
export declare class WidgetConfigService {
|
|
9
9
|
private widgetConfigSectionService;
|
|
10
10
|
private _currentConfig$;
|
|
11
|
+
private _instanceId$;
|
|
12
|
+
/**
|
|
13
|
+
* The unique identifier of the current widget instance.
|
|
14
|
+
*/
|
|
15
|
+
instanceId$: Observable<string>;
|
|
11
16
|
/**
|
|
12
17
|
* The preview of the currently selected widget. If `null` no preview is shown
|
|
13
18
|
* (except if the selected widget has no configuration).
|
|
@@ -75,7 +80,7 @@ export declare class WidgetConfigService {
|
|
|
75
80
|
* Updates the configuration of the selected widget.
|
|
76
81
|
* @param change The change to apply to the configuration.
|
|
77
82
|
* @param force If set to true, the configuration will be updated even if no changes are made. Also concurrency checks are ignored and no change is emitted on the component.
|
|
78
|
-
*
|
|
83
|
+
* Use with caution and only if you want to reset the configuration to some default.
|
|
79
84
|
*/
|
|
80
85
|
updateConfig(change: Partial<ContextWidgetConfig>, force?: boolean): void;
|
|
81
86
|
/**
|
|
@@ -86,8 +91,9 @@ export declare class WidgetConfigService {
|
|
|
86
91
|
/**
|
|
87
92
|
* Select a widget
|
|
88
93
|
* @param selected The widget to select.
|
|
94
|
+
* @param identifier An optional unique identifier for the widget instance. Only used if the widget is not new.
|
|
89
95
|
*/
|
|
90
|
-
selectWidget(selected: DynamicComponentDefinition): void;
|
|
96
|
+
selectWidget(selected: DynamicComponentDefinition, identifier?: string): void;
|
|
91
97
|
/**
|
|
92
98
|
* Deselect the currently selected.
|
|
93
99
|
*/
|
|
@@ -95,12 +101,12 @@ export declare class WidgetConfigService {
|
|
|
95
101
|
/**
|
|
96
102
|
* Enables a preview.
|
|
97
103
|
* @param preview If set to true, the view component of the current widget will be taken to render the preview.
|
|
98
|
-
*
|
|
99
|
-
*
|
|
104
|
+
* If set to a DynamicComponentDefinition, the preview will be rendered with the given component.
|
|
105
|
+
* If set to a TemplateRef, the preview will be rendered with the given template.
|
|
100
106
|
*/
|
|
101
107
|
setPreview(preview: true | DynamicComponentDefinition | TemplateRef<any>): void;
|
|
102
108
|
/**
|
|
103
|
-
* By default, no sections are added to the configuration.
|
|
109
|
+
* By default, no sections are added to the configuration. But to ensure
|
|
104
110
|
* backwards compatibility with old plugins, we check if the default asset selector
|
|
105
111
|
* and config section should be shown.
|
|
106
112
|
* @param selectedWidget The currently selected widget.
|
|
@@ -112,9 +118,9 @@ export declare class WidgetConfigService {
|
|
|
112
118
|
* Sections should not be added by default anymore. But to ensure backwards compatibility, we
|
|
113
119
|
* check if the default selector should be shown. We assume that a default selector will be shown
|
|
114
120
|
* when:
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
*
|
|
121
|
+
* 1. The widget has a dynamic component for configuration (which is also deprecated).
|
|
122
|
+
* OR
|
|
123
|
+
* 2. The widget has not disabled the default selector.
|
|
118
124
|
*/
|
|
119
125
|
private isDefaultDeviceSelectorNeeded;
|
|
120
126
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget-config.service.d.ts","sourceRoot":"","sources":["../../context-dashboard/widget-config.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAI3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EAQf,UAAU,EAOX,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EACL,mBAAmB,EAEpB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iDAAiD,CAAC;;AAI7F,qBAGa,mBAAmB;
|
|
1
|
+
{"version":3,"file":"widget-config.service.d.ts","sourceRoot":"","sources":["../../context-dashboard/widget-config.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAI3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EAQf,UAAU,EAOX,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EACL,mBAAmB,EAEpB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iDAAiD,CAAC;;AAI7F,qBAGa,mBAAmB;IAoHlB,OAAO,CAAC,0BAA0B;IAnH9C,OAAO,CAAC,eAAe,CAAkD;IACzE,OAAO,CAAC,YAAY,CAA4C;IAEhE;;OAEG;IACH,WAAW,qBAAoC;IAE/C;;;OAGG;IACH,QAAQ,wEAAmF;IAE3F;;OAEG;IACH,SAAS,8CAAyD;IAElE;;OAEG;IACH,kBAAkB,6CAAwD;IAE1E;;;QAGI;IACJ,IAAI,aAAa,wBAEhB;IAED;;;OAGG;IACH,cAAc,kCAAuC;IAErD;;;;;OAKG;IACH,gBAAgB,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAC,CA+BjD;IAEF;;OAEG;IACH,UAAU,sDAER;IAEF;;OAEG;IACH,UAAU,sBAAoE;IAE9E;;;;;OAKG;IACH,iBAAiB,gEAUf;IAEF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAO;IAC1C,OAAO,CAAC,aAAa,CAAsC;IAC3D,OAAO,CAAC,kBAAkB,CAAuB;IAEjD,OAAO,CAAC,mBAAmB,CAEmC;gBAE1C,0BAA0B,EAAE,0BAA0B;IAmB1E;;;OAGG;IACH,eAAe,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC;IAQnC;;OAEG;IACH,eAAe,CACb,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,mBAAmB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC;IAK9F;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAqB3B;;;;;OAKG;IACH,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,KAAK,UAAQ;IAQhE;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,mBAAmB;IAItC;;;;OAIG;IACH,YAAY,CAAC,QAAQ,EAAE,0BAA0B,EAAE,UAAU,GAAE,MAAa;IAK5E;;OAEG;IACH,cAAc;IAQd;;;;;OAKG;IACH,UAAU,CAAC,OAAO,EAAE,IAAI,GAAG,0BAA0B,GAAG,WAAW,CAAC,GAAG,CAAC;IAIxE;;;;;;;OAOG;IACH,OAAO,CAAC,wBAAwB;IAoChC;;;;;;;OAOG;IACH,OAAO,CAAC,6BAA6B;IAcrC;;;;OAIG;IACH,OAAO,CAAC,6BAA6B;yCAhT1B,mBAAmB;6CAAnB,mBAAmB;CAyT/B"}
|
|
@@ -214,14 +214,40 @@ export interface WidgetDataType {
|
|
|
214
214
|
*/
|
|
215
215
|
import?: (config: any) => any | Promise<any>;
|
|
216
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* The configuration size view is divided into configuration and preview.
|
|
219
|
+
* The configuration can be collapsed, half or full (preview hidden).
|
|
220
|
+
*/
|
|
221
|
+
export declare enum WIDGET_CONFIGURATION_GRID_SIZE {
|
|
222
|
+
COLLAPSED = "0px",
|
|
223
|
+
HALF = "560px",
|
|
224
|
+
FULL = "100%"
|
|
225
|
+
}
|
|
217
226
|
export interface WidgetSettings {
|
|
218
227
|
/**
|
|
219
228
|
* Avoids to show the widget in the "add widget" modal
|
|
220
229
|
*/
|
|
221
230
|
noNewWidgets?: boolean;
|
|
231
|
+
/**
|
|
232
|
+
* Indicates that the widget was upgraded from an angularjs widget.
|
|
233
|
+
*/
|
|
222
234
|
upgrade?: boolean;
|
|
235
|
+
/**
|
|
236
|
+
* The size of the configuration view. If provided as string, it needs to be a valid CSS size (e.g. '400px' or '50%').
|
|
237
|
+
* If not provided, the default size is '560px' (WidgetConfigurationGridSize.HALF).
|
|
238
|
+
*/
|
|
239
|
+
configurationViewGridSize?: WIDGET_CONFIGURATION_GRID_SIZE | string;
|
|
240
|
+
/**
|
|
241
|
+
* The default settings when the widget is added to a dashboard.
|
|
242
|
+
*/
|
|
223
243
|
widgetDefaults?: {
|
|
244
|
+
/**
|
|
245
|
+
* The grid width of the widget when added to a dashboard.
|
|
246
|
+
*/
|
|
224
247
|
_width?: number;
|
|
248
|
+
/**
|
|
249
|
+
* The grid height of the widget when added to a dashboard.
|
|
250
|
+
*/
|
|
225
251
|
_height?: number;
|
|
226
252
|
[key: string]: any;
|
|
227
253
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-component.model.d.ts","sourceRoot":"","sources":["../../../core/dynamic-component/dynamic-component.model.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"dynamic-component.model.d.ts","sourceRoot":"","sources":["../../../core/dynamic-component/dynamic-component.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EAEhB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,wBAEzC,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,yBAAyB,GACjC,0BAA0B,GAC1B,0BAA0B,EAAE,GAC5B,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,eAAe,6CAAqE,CAAC;AAElG;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,eAAe,CAAC,0BAA0B,CAAC,EACvD,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,4HAGtC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,UAAU,CACxB,UAAU,EAAE,eAAe,CAAC,uBAAuB,CAAC,EACpD,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,4HAGtC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,0BAA0B,GAAG,8BAA8B,GAAG,iBAAiB,CAAC;AAE5F,MAAM,MAAM,uBAAuB,GAAG,2BAA2B,GAAG,iBAAiB,CAAC;AAEtF,MAAM,WAAW,8BAA+B,SAAQ,cAAc;IACpE;;;OAGG;IACH,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,2BAA4B,SAAQ,cAAc;IACjE;;;OAGG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,IAAI,CAAC,EAAE,GAAG,CAAC;IACX;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;OAEG;IACH,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAA;KAAE,CAAC;IAC1D;;OAEG;IACH,aAAa,CAAC,EAAE,6BAA6B,CAAC;IAC9C;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,KAAK,yBAAyB,GAAG;IAC/B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,eAAe,CAAC,EAAE,yBAAyB,CAAC;IAC5C;;;OAGG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC,CAAC;IAChD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7C;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAC9C;AAED;;;GAGG;AACH,oBAAY,8BAA8B;IACxC,SAAS,QAAQ;IACjB,IAAI,UAAU;IACd,IAAI,SAAS;CACd;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,yBAAyB,CAAC,EAAE,8BAA8B,GAAG,MAAM,CAAC;IAEpE;;OAEG;IACH,cAAc,CAAC,EAAE;QACf;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,OAAO,CAAC,EAAE;YACR;;;eAGG;YACH,cAAc,CAAC,EAAE,OAAO,CAAC;YACzB;;;eAGG;YACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;YAC3B;;;eAGG;YACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;YAClC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;SACpB,CAAC;QACF;;WAEG;QACH,OAAO,CAAC,EAAE;YACR,EAAE,CAAC,EAAE,MAAM,CAAC;YACZ,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;SACpB,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;IACF;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,uBAAwB,SAAQ,cAAc;IAC7D;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,0BAA0B,CAAC,EAAE,MAAM,IAAI,CAAC;CAIzC;AAED,MAAM,MAAM,iBAAiB,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE/E,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB;;;OAGG;IACH,eAAe,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,mBAAmB,CAAC,EAAE,KAAK,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;;;;;;OAUG;IACH,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,KAAK,CAAC;CACzB;AAED,wBAAgB,uBAAuB,CACrC,mBAAmB,EAAE,iBAAiB,GACrC,mBAAmB,IAAI,qBAAqB,CAE9C;AAED,wBAAgB,wBAAwB,CACtC,mBAAmB,EAAE,iBAAiB,GACrC,mBAAmB,IAAI,sBAAsB,CAE/C;AAED,oBAAY,6BAA6B;IACvC;;OAEG;IACH,UAAU,eAAe;IACzB;;OAEG;IACH,aAAa,kBAAkB;IAC/B;;OAEG;IACH,MAAM,WAAW;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,MAAM,EAAE,GAAG,CAAC;IACZ;;;OAGG;IACH,MAAM,CAAC,EAAE,+BAA+B,CAAC;IACzC;;;OAGG;IACH,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;CAC9E"}
|
package/core/index.d.ts
CHANGED
|
@@ -44,6 +44,7 @@ export * from './core.module';
|
|
|
44
44
|
export * from './wizard/index';
|
|
45
45
|
export * from './time-interval/index';
|
|
46
46
|
export * from './date-time-picker/index';
|
|
47
|
+
export * from './resizable-grid';
|
|
47
48
|
export * from './time-picker/index';
|
|
48
49
|
export * from './asset-types/index';
|
|
49
50
|
export * from './audit-log/index';
|
package/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../core/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../core/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/resizable-grid/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { ElementRef, AfterViewInit, Renderer2, OnChanges, OnDestroy, SimpleChanges, OnInit } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class ResizableGridComponent implements OnInit, AfterViewInit, OnChanges, OnDestroy {
|
|
4
|
+
private renderer;
|
|
5
|
+
/**
|
|
6
|
+
* Initial width of the left column (A). Can be any valid CSS width value (e.g., '50%', '300px').
|
|
7
|
+
*/
|
|
8
|
+
leftColumnWidth: string;
|
|
9
|
+
/**
|
|
10
|
+
* Optional key for localStorage to persist the left column width between sessions.
|
|
11
|
+
*/
|
|
12
|
+
trackId: string | null;
|
|
13
|
+
/**
|
|
14
|
+
* Minimum width (in pixels) before a column is considered collapsed.
|
|
15
|
+
*/
|
|
16
|
+
collapseThreshold: number;
|
|
17
|
+
/**
|
|
18
|
+
* Reference to the left column element.
|
|
19
|
+
*/
|
|
20
|
+
colA: ElementRef<HTMLDivElement>;
|
|
21
|
+
/**
|
|
22
|
+
* Reference to the right column element.
|
|
23
|
+
*/
|
|
24
|
+
colB: ElementRef<HTMLDivElement>;
|
|
25
|
+
/**
|
|
26
|
+
* True if the user is currently resizing the grid.
|
|
27
|
+
*/
|
|
28
|
+
isResizing: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* CSS width value for the left column (A).
|
|
31
|
+
* Used for dynamic styling via HostBinding.
|
|
32
|
+
*/
|
|
33
|
+
private _colAWidth;
|
|
34
|
+
/**
|
|
35
|
+
* Public getter for aria-valuenow
|
|
36
|
+
*/
|
|
37
|
+
get colAWidthPercent(): number;
|
|
38
|
+
/**
|
|
39
|
+
* X position of the mouse when resizing starts.
|
|
40
|
+
*/
|
|
41
|
+
private startX;
|
|
42
|
+
/**
|
|
43
|
+
* Pixel width of column A when resizing starts.
|
|
44
|
+
*/
|
|
45
|
+
private startColAWidthPx;
|
|
46
|
+
/**
|
|
47
|
+
* Last known non-collapsed width of column A (for restore logic).
|
|
48
|
+
*/
|
|
49
|
+
private lastKnownNonCollapsedWidth;
|
|
50
|
+
colAId: string;
|
|
51
|
+
colBId: string;
|
|
52
|
+
private resizeStep;
|
|
53
|
+
/**
|
|
54
|
+
* Creates an instance of ResizableGridComponent.
|
|
55
|
+
* @param renderer Angular Renderer2 for DOM manipulation.
|
|
56
|
+
*/
|
|
57
|
+
constructor(renderer: Renderer2);
|
|
58
|
+
ngOnInit(): void;
|
|
59
|
+
/**
|
|
60
|
+
* Angular lifecycle hook. Sets up initial column width after view initialization.
|
|
61
|
+
*/
|
|
62
|
+
ngAfterViewInit(): void;
|
|
63
|
+
/**
|
|
64
|
+
* Angular lifecycle hook. Handles changes to input properties.
|
|
65
|
+
* @param changes Object containing changed input properties.
|
|
66
|
+
*/
|
|
67
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
68
|
+
/**
|
|
69
|
+
* Angular lifecycle hook. Cleans up cursor style if resizing is active.
|
|
70
|
+
*/
|
|
71
|
+
ngOnDestroy(): void;
|
|
72
|
+
/**
|
|
73
|
+
* Mouse down event handler for starting resize.
|
|
74
|
+
* @param event MouseEvent
|
|
75
|
+
*/
|
|
76
|
+
onMouseDown(event: MouseEvent): void;
|
|
77
|
+
/**
|
|
78
|
+
* Mouse move event handler for resizing columns.
|
|
79
|
+
* @param event MouseEvent
|
|
80
|
+
*/
|
|
81
|
+
onMouseMove(event: MouseEvent): void;
|
|
82
|
+
/**
|
|
83
|
+
* Mouse up event handler for ending resize and applying collapse logic.
|
|
84
|
+
*/
|
|
85
|
+
onMouseUp(): void;
|
|
86
|
+
/**
|
|
87
|
+
* Keyboard event handler for resizing columns with arrow keys.
|
|
88
|
+
* @param event KeyboardEvent
|
|
89
|
+
*/
|
|
90
|
+
onKeyDown(event: KeyboardEvent): void;
|
|
91
|
+
/**
|
|
92
|
+
* Sets up the initial width of the left column, using localStorage if trackId is provided.
|
|
93
|
+
*/
|
|
94
|
+
private setupInitialWidth;
|
|
95
|
+
/**
|
|
96
|
+
* Updates the column A width and handles boundaries.
|
|
97
|
+
* @param targetWidthPx The desired width in pixels for column A.
|
|
98
|
+
* @param applyCollapseImmediately If true, calls checkAndApplyCollapse directly.
|
|
99
|
+
*/
|
|
100
|
+
private updateColumnWidth;
|
|
101
|
+
/**
|
|
102
|
+
* Checks if either column should be collapsed based on their widths and applies the appropriate classes/styles.
|
|
103
|
+
* @param colAWidth Width of column A in pixels
|
|
104
|
+
* @param colBWidth Width of column B in pixels
|
|
105
|
+
*/
|
|
106
|
+
private checkAndApplyCollapse;
|
|
107
|
+
/**
|
|
108
|
+
* Removes collapse/expand classes from both columns.
|
|
109
|
+
*/
|
|
110
|
+
private removeCollapseClasses;
|
|
111
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ResizableGridComponent, never>;
|
|
112
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ResizableGridComponent, "c8y-resizable-grid", never, { "leftColumnWidth": { "alias": "leftColumnWidth"; "required": false; }; "trackId": { "alias": "trackId"; "required": false; }; "collapseThreshold": { "alias": "collapseThreshold"; "required": false; }; }, {}, never, ["[left-pane]", "[right-pane]"], true, never>;
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=resizable-grid.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resizable-grid.component.d.ts","sourceRoot":"","sources":["../../../core/resizable-grid/resizable-grid.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAEV,aAAa,EACb,SAAS,EAET,SAAS,EACT,SAAS,EACT,aAAa,EAGb,MAAM,EACP,MAAM,eAAe,CAAC;;AAIvB,qBAWa,sBAAuB,YAAW,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS;IAoE5E,OAAO,CAAC,QAAQ;IAnE5B;;OAEG;IACM,eAAe,SAAS;IACjC;;OAEG;IACM,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IACvC;;OAEG;IACM,iBAAiB,SAAO;IAEjC;;OAEG;IACgB,IAAI,EAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IACrD;;OAEG;IACgB,IAAI,EAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAErD;;OAEG;IAEH,UAAU,UAAS;IAEnB;;;OAGG;IAEH,OAAO,CAAC,UAAU,CAAS;IAE3B;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,CAK7B;IAED;;OAEG;IACH,OAAO,CAAC,MAAM,CAAK;IACnB;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAAK;IAC7B;;OAEG;IACH,OAAO,CAAC,0BAA0B,CAAuB;IAGzD,MAAM,EAAG,MAAM,CAAC;IAChB,MAAM,EAAG,MAAM,CAAC;IAChB,OAAO,CAAC,UAAU,CAAM;IAExB;;;OAGG;gBACiB,QAAQ,EAAE,SAAS;IAGvC,QAAQ;IAMR;;OAEG;IACH,eAAe;IAIf;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,aAAa;IAMlC;;OAEG;IACH,WAAW;IAMX;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,UAAU;IAgC7B;;;OAGG;IAEH,WAAW,CAAC,KAAK,EAAE,UAAU;IAS7B;;OAEG;IAEH,SAAS;IAeT;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE,aAAa;IAmD9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwBzB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8BzB;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAiC7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;yCA1UlB,sBAAsB;2CAAtB,sBAAsB;CAuVlC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-dashboard-manager-devicemanagement.d.ts","sourceRoot":"","sources":["../../../dashboard-manager/devicemanagement/c8y-ngx-components-dashboard-manager-devicemanagement.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../dashboard-manager/devicemanagement/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,+BAA+B,8HAU3C,CAAC"}
|
|
@@ -2213,7 +2213,7 @@ class AlarmsTypeFilterComponent {
|
|
|
2213
2213
|
return activeFilters.map(filter => filter.filters.type).join(',');
|
|
2214
2214
|
}
|
|
2215
2215
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AlarmsTypeFilterComponent, deps: [{ token: i1$3.AlarmEventSelectorService }, { token: i1.ActivatedRoute }, { token: i1.Router }, { token: i3.ColorService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2216
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: AlarmsTypeFilterComponent, isStandalone: true, selector: "c8y-alarms-type-filter", inputs: { alarms: "alarms", possibleFilters: "possibleFilters", activeFilters: "activeFilters" }, outputs: { onFilterChanged: "onFilterChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"d-flex a-i-center\">\n <div\n class=\"dropdown\"\n title=\"{{ 'Filter by alarm types' | translate }}\"\n dropdown\n #filtersDropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"filtersDropdown.isOpen\"\n (onHidden)=\"resetFilters()\"\n [insideClick]=\"true\"\n >\n <div class=\"input-group fit-w\">\n <div class=\"form-control d-flex a-i-center inner-scroll\">\n <ng-container *ngIf=\"activeFilters.length > 0; else allTypes\">\n <span\n class=\"tag tag--info chip\"\n style=\"max-width: 150px\"\n *ngFor=\"let filter of activeFilters\"\n >\n <button\n class=\"btn btn-xs btn-clean text-10\"\n title=\"{{ 'Remove' | translate }}\"\n type=\"button\"\n (click)=\"$event.stopPropagation(); deselect(filter)\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <span\n class=\"circle-icon-wrapper circle-icon-wrapper--small\"\n [ngStyle]=\"{ 'background-color': filter.color }\"\n >\n <i\n class=\"stroked-icon\"\n c8yIcon=\"bell\"\n ></i>\n </span>\n <span\n class=\"text-truncate text-12 flex-grow\"\n [title]=\"filter.filters.type\"\n [attr.aria-label]=\"filter.filters.type\"\n >\n {{ filter.filters.type }}\n </span>\n </span>\n </ng-container>\n <ng-template #allTypes>\n <span class=\"text-nowrap\">\n {{ 'All alarm types' | translate }}\n </span>\n </ng-template>\n </div>\n <div class=\"input-group-btn input-group-btn--last text-center\">\n <button\n class=\"btn-default btn\"\n [title]=\"'Clear filters' | translate\"\n *ngIf=\"activeFilters.length\"\n (click)=\"deselectAll()\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <button\n class=\"btn-default btn btn--caret\"\n [title]=\"'Alarm types' | translate\"\n data-cy=\"c8y-alarm-type-filter\"\n dropdownToggle\n >\n <i class=\"caret\"></i>\n </button>\n </div>\n </div>\n <div\n class=\"dropdown-menu dropdown-menu-action-bar\"\n style=\"min-width: 250px\"\n *dropdownMenu\n >\n <div class=\"p-16 bg-level-2\">\n <div>\n <p>\n <i\n class=\"text-info m-r-4\"\n [c8yIcon]=\"'info-circle'\"\n ></i>\n <strong translate>The list below may not be complete.</strong>\n </p>\n <p translate>\n Recent alarms are displayed below. Past alarms might not be shown. Optionally you can
|
|
2216
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: AlarmsTypeFilterComponent, isStandalone: true, selector: "c8y-alarms-type-filter", inputs: { alarms: "alarms", possibleFilters: "possibleFilters", activeFilters: "activeFilters" }, outputs: { onFilterChanged: "onFilterChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"d-flex a-i-center\">\n <div\n class=\"dropdown\"\n title=\"{{ 'Filter by alarm types' | translate }}\"\n dropdown\n #filtersDropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"filtersDropdown.isOpen\"\n (onHidden)=\"resetFilters()\"\n [insideClick]=\"true\"\n >\n <div class=\"input-group fit-w\">\n <div class=\"form-control d-flex a-i-center inner-scroll\">\n <ng-container *ngIf=\"activeFilters.length > 0; else allTypes\">\n <span\n class=\"tag tag--info chip\"\n style=\"max-width: 150px\"\n *ngFor=\"let filter of activeFilters\"\n >\n <button\n class=\"btn btn-xs btn-clean text-10\"\n title=\"{{ 'Remove' | translate }}\"\n type=\"button\"\n (click)=\"$event.stopPropagation(); deselect(filter)\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <span\n class=\"circle-icon-wrapper circle-icon-wrapper--small\"\n [ngStyle]=\"{ 'background-color': filter.color }\"\n >\n <i\n class=\"stroked-icon\"\n c8yIcon=\"bell\"\n ></i>\n </span>\n <span\n class=\"text-truncate text-12 flex-grow\"\n [title]=\"filter.filters.type\"\n [attr.aria-label]=\"filter.filters.type\"\n >\n {{ filter.filters.type }}\n </span>\n </span>\n </ng-container>\n <ng-template #allTypes>\n <span class=\"text-nowrap\">\n {{ 'All alarm types' | translate }}\n </span>\n </ng-template>\n </div>\n <div class=\"input-group-btn input-group-btn--last text-center\">\n <button\n class=\"btn-default btn\"\n [title]=\"'Clear filters' | translate\"\n *ngIf=\"activeFilters.length\"\n (click)=\"deselectAll()\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <button\n class=\"btn-default btn btn--caret\"\n [title]=\"'Alarm types' | translate\"\n data-cy=\"c8y-alarm-type-filter\"\n dropdownToggle\n >\n <i class=\"caret\"></i>\n </button>\n </div>\n </div>\n <div\n class=\"dropdown-menu dropdown-menu-action-bar\"\n style=\"min-width: 250px\"\n *dropdownMenu\n >\n <div class=\"p-16 bg-level-2\">\n <div>\n <p>\n <i\n class=\"text-info m-r-4\"\n [c8yIcon]=\"'info-circle'\"\n ></i>\n <strong translate>The list below may not be complete.</strong>\n </p>\n <p translate>\n Recent alarms are displayed below. Past alarms might not be shown. Optionally you can add a custom alarm.\n </p>\n </div>\n </div>\n <c8y-list-group>\n <div class=\"input-group p-t-16 p-b-16 p-r-32 p-l-32 separator-bottom\">\n <input\n class=\"form-control\"\n type=\"text\"\n [placeholder]=\"'Custom alarm type' | translate\"\n [(ngModel)]=\"customAlarmTypeInput\"\n (keydown)=\"confirmWithEnter($event)\"\n />\n <div class=\"input-group-btn\">\n <button\n class=\"btn-dot text-primary\"\n [attr.aria-label]=\"'Add custom alarm' | translate\"\n [tooltip]=\"'Add' | translate\"\n placement=\"top\"\n [delay]=\"500\"\n (click)=\"addCustomAlarmType()\"\n >\n <i c8yIcon=\"plus-circle\"></i>\n </button>\n </div>\n </div>\n\n <c8y-li\n class=\"c8y-list__item__collapse--container-small cdk-drag\"\n style=\"cursor: pointer\"\n *ngFor=\"let alarmType of possibleFilters\"\n (click)=\"toggleAlarmType(alarmType)\"\n >\n <c8y-li-checkbox\n class=\"a-s-center m-t-4 p-r-0 p-l-0\"\n [selected]=\"alarmType.__active\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"toggleAlarmType(alarmType); $event.stopPropagation()\"\n ></c8y-li-checkbox>\n <div class=\"d-flex a-i-center p-l-4\">\n <div class=\"c8y-list__item__colorpicker p-t-0 p-b-0 p-l-0\">\n <div class=\"c8y-colorpicker c8y-colorpicker--alarm\">\n <span\n class=\"circle-icon-wrapper\"\n [ngStyle]=\"{ 'background-color': alarmType.color }\"\n >\n <i\n class=\"stroked-icon\"\n [c8yIcon]=\"'bell'\"\n ></i>\n </span>\n </div>\n </div>\n <span\n class=\"text-truncate text-12 flex-grow\"\n [title]=\"alarmType.label\"\n [attr.aria-label]=\"alarmType.label\"\n >\n {{ alarmType.label }}\n </span>\n <button\n class=\"btn-dot btn-dot--danger\"\n [attr.aria-label]=\"'Remove' | translate\"\n tooltip=\"'Remove' | translate\"\n placement=\"top\"\n *ngIf=\"alarmType.__target === null\"\n [delay]=\"500\"\n (click)=\"removeCustomAlarm(alarmType); $event.stopPropagation()\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </c8y-li>\n <c8y-li *ngIf=\"possibleFilters.length === 0\">\n <c8y-ui-empty-state\n class=\"p-t-8\"\n icon=\"c8y-alarm\"\n [title]=\"'No alarm found' | translate\"\n [subtitle]=\"\n 'There is no alarm to filter. You can still add a custom alarm.' | translate\n \"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n </c8y-li>\n <div class=\"sticky-bottom p-16\">\n <button\n class=\"btn btn-block btn-primary\"\n [disabled]=\"possibleFilters.length === 0\"\n (click)=\"applyFilterChange(); $event.stopPropagation(); filtersDropdown.hide()\"\n translate\n >\n Apply\n </button>\n </div>\n </c8y-list-group>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "component", type: ListGroupComponent, selector: "c8y-list-group" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: ListItemCheckboxComponent, selector: "c8y-list-item-checkbox, c8y-li-checkbox", inputs: ["selected", "indeterminate", "disabled", "displayAsSwitch"], outputs: ["onSelect"] }, { kind: "component", type: EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
|
|
2217
2217
|
}
|
|
2218
2218
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AlarmsTypeFilterComponent, decorators: [{
|
|
2219
2219
|
type: Component,
|
|
@@ -2234,7 +2234,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
2234
2234
|
EmptyStateComponent,
|
|
2235
2235
|
C8yTranslateDirective,
|
|
2236
2236
|
C8yTranslatePipe
|
|
2237
|
-
], template: "<div class=\"d-flex a-i-center\">\n <div\n class=\"dropdown\"\n title=\"{{ 'Filter by alarm types' | translate }}\"\n dropdown\n #filtersDropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"filtersDropdown.isOpen\"\n (onHidden)=\"resetFilters()\"\n [insideClick]=\"true\"\n >\n <div class=\"input-group fit-w\">\n <div class=\"form-control d-flex a-i-center inner-scroll\">\n <ng-container *ngIf=\"activeFilters.length > 0; else allTypes\">\n <span\n class=\"tag tag--info chip\"\n style=\"max-width: 150px\"\n *ngFor=\"let filter of activeFilters\"\n >\n <button\n class=\"btn btn-xs btn-clean text-10\"\n title=\"{{ 'Remove' | translate }}\"\n type=\"button\"\n (click)=\"$event.stopPropagation(); deselect(filter)\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <span\n class=\"circle-icon-wrapper circle-icon-wrapper--small\"\n [ngStyle]=\"{ 'background-color': filter.color }\"\n >\n <i\n class=\"stroked-icon\"\n c8yIcon=\"bell\"\n ></i>\n </span>\n <span\n class=\"text-truncate text-12 flex-grow\"\n [title]=\"filter.filters.type\"\n [attr.aria-label]=\"filter.filters.type\"\n >\n {{ filter.filters.type }}\n </span>\n </span>\n </ng-container>\n <ng-template #allTypes>\n <span class=\"text-nowrap\">\n {{ 'All alarm types' | translate }}\n </span>\n </ng-template>\n </div>\n <div class=\"input-group-btn input-group-btn--last text-center\">\n <button\n class=\"btn-default btn\"\n [title]=\"'Clear filters' | translate\"\n *ngIf=\"activeFilters.length\"\n (click)=\"deselectAll()\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <button\n class=\"btn-default btn btn--caret\"\n [title]=\"'Alarm types' | translate\"\n data-cy=\"c8y-alarm-type-filter\"\n dropdownToggle\n >\n <i class=\"caret\"></i>\n </button>\n </div>\n </div>\n <div\n class=\"dropdown-menu dropdown-menu-action-bar\"\n style=\"min-width: 250px\"\n *dropdownMenu\n >\n <div class=\"p-16 bg-level-2\">\n <div>\n <p>\n <i\n class=\"text-info m-r-4\"\n [c8yIcon]=\"'info-circle'\"\n ></i>\n <strong translate>The list below may not be complete.</strong>\n </p>\n <p translate>\n Recent alarms are displayed below. Past alarms might not be shown. Optionally you can
|
|
2237
|
+
], template: "<div class=\"d-flex a-i-center\">\n <div\n class=\"dropdown\"\n title=\"{{ 'Filter by alarm types' | translate }}\"\n dropdown\n #filtersDropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"filtersDropdown.isOpen\"\n (onHidden)=\"resetFilters()\"\n [insideClick]=\"true\"\n >\n <div class=\"input-group fit-w\">\n <div class=\"form-control d-flex a-i-center inner-scroll\">\n <ng-container *ngIf=\"activeFilters.length > 0; else allTypes\">\n <span\n class=\"tag tag--info chip\"\n style=\"max-width: 150px\"\n *ngFor=\"let filter of activeFilters\"\n >\n <button\n class=\"btn btn-xs btn-clean text-10\"\n title=\"{{ 'Remove' | translate }}\"\n type=\"button\"\n (click)=\"$event.stopPropagation(); deselect(filter)\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <span\n class=\"circle-icon-wrapper circle-icon-wrapper--small\"\n [ngStyle]=\"{ 'background-color': filter.color }\"\n >\n <i\n class=\"stroked-icon\"\n c8yIcon=\"bell\"\n ></i>\n </span>\n <span\n class=\"text-truncate text-12 flex-grow\"\n [title]=\"filter.filters.type\"\n [attr.aria-label]=\"filter.filters.type\"\n >\n {{ filter.filters.type }}\n </span>\n </span>\n </ng-container>\n <ng-template #allTypes>\n <span class=\"text-nowrap\">\n {{ 'All alarm types' | translate }}\n </span>\n </ng-template>\n </div>\n <div class=\"input-group-btn input-group-btn--last text-center\">\n <button\n class=\"btn-default btn\"\n [title]=\"'Clear filters' | translate\"\n *ngIf=\"activeFilters.length\"\n (click)=\"deselectAll()\"\n >\n <i c8yIcon=\"times\"></i>\n </button>\n <button\n class=\"btn-default btn btn--caret\"\n [title]=\"'Alarm types' | translate\"\n data-cy=\"c8y-alarm-type-filter\"\n dropdownToggle\n >\n <i class=\"caret\"></i>\n </button>\n </div>\n </div>\n <div\n class=\"dropdown-menu dropdown-menu-action-bar\"\n style=\"min-width: 250px\"\n *dropdownMenu\n >\n <div class=\"p-16 bg-level-2\">\n <div>\n <p>\n <i\n class=\"text-info m-r-4\"\n [c8yIcon]=\"'info-circle'\"\n ></i>\n <strong translate>The list below may not be complete.</strong>\n </p>\n <p translate>\n Recent alarms are displayed below. Past alarms might not be shown. Optionally you can add a custom alarm.\n </p>\n </div>\n </div>\n <c8y-list-group>\n <div class=\"input-group p-t-16 p-b-16 p-r-32 p-l-32 separator-bottom\">\n <input\n class=\"form-control\"\n type=\"text\"\n [placeholder]=\"'Custom alarm type' | translate\"\n [(ngModel)]=\"customAlarmTypeInput\"\n (keydown)=\"confirmWithEnter($event)\"\n />\n <div class=\"input-group-btn\">\n <button\n class=\"btn-dot text-primary\"\n [attr.aria-label]=\"'Add custom alarm' | translate\"\n [tooltip]=\"'Add' | translate\"\n placement=\"top\"\n [delay]=\"500\"\n (click)=\"addCustomAlarmType()\"\n >\n <i c8yIcon=\"plus-circle\"></i>\n </button>\n </div>\n </div>\n\n <c8y-li\n class=\"c8y-list__item__collapse--container-small cdk-drag\"\n style=\"cursor: pointer\"\n *ngFor=\"let alarmType of possibleFilters\"\n (click)=\"toggleAlarmType(alarmType)\"\n >\n <c8y-li-checkbox\n class=\"a-s-center m-t-4 p-r-0 p-l-0\"\n [selected]=\"alarmType.__active\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"toggleAlarmType(alarmType); $event.stopPropagation()\"\n ></c8y-li-checkbox>\n <div class=\"d-flex a-i-center p-l-4\">\n <div class=\"c8y-list__item__colorpicker p-t-0 p-b-0 p-l-0\">\n <div class=\"c8y-colorpicker c8y-colorpicker--alarm\">\n <span\n class=\"circle-icon-wrapper\"\n [ngStyle]=\"{ 'background-color': alarmType.color }\"\n >\n <i\n class=\"stroked-icon\"\n [c8yIcon]=\"'bell'\"\n ></i>\n </span>\n </div>\n </div>\n <span\n class=\"text-truncate text-12 flex-grow\"\n [title]=\"alarmType.label\"\n [attr.aria-label]=\"alarmType.label\"\n >\n {{ alarmType.label }}\n </span>\n <button\n class=\"btn-dot btn-dot--danger\"\n [attr.aria-label]=\"'Remove' | translate\"\n tooltip=\"'Remove' | translate\"\n placement=\"top\"\n *ngIf=\"alarmType.__target === null\"\n [delay]=\"500\"\n (click)=\"removeCustomAlarm(alarmType); $event.stopPropagation()\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </c8y-li>\n <c8y-li *ngIf=\"possibleFilters.length === 0\">\n <c8y-ui-empty-state\n class=\"p-t-8\"\n icon=\"c8y-alarm\"\n [title]=\"'No alarm found' | translate\"\n [subtitle]=\"\n 'There is no alarm to filter. You can still add a custom alarm.' | translate\n \"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n </c8y-li>\n <div class=\"sticky-bottom p-16\">\n <button\n class=\"btn btn-block btn-primary\"\n [disabled]=\"possibleFilters.length === 0\"\n (click)=\"applyFilterChange(); $event.stopPropagation(); filtersDropdown.hide()\"\n translate\n >\n Apply\n </button>\n </div>\n </c8y-list-group>\n </div>\n </div>\n</div>\n" }]
|
|
2238
2238
|
}], ctorParameters: () => [{ type: i1$3.AlarmEventSelectorService }, { type: i1.ActivatedRoute }, { type: i1.Router }, { type: i3.ColorService }], propDecorators: { alarms: [{
|
|
2239
2239
|
type: Input
|
|
2240
2240
|
}], possibleFilters: [{
|