architwin 1.12.5 → 1.13.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 (45) hide show
  1. package/CORE_FEATURES.md +35 -0
  2. package/lib/architwin.d.ts +96 -5
  3. package/lib/architwin.js +1 -1
  4. package/lib/atwinui/components/toolbar/collapse.d.ts +18 -0
  5. package/lib/atwinui/components/toolbar/collapse.js +62 -0
  6. package/lib/atwinui/components/toolbar/i18n.js +56 -4
  7. package/lib/atwinui/components/toolbar/index.js +11 -1
  8. package/lib/atwinui/components/toolbar/menuBar.d.ts +1 -0
  9. package/lib/atwinui/components/toolbar/menuBar.js +11 -0
  10. package/lib/atwinui/components/toolbar/pipeFormPane.d.ts +31 -0
  11. package/lib/atwinui/components/toolbar/pipeFormPane.js +545 -0
  12. package/lib/atwinui/components/toolbar/pipeListPane.d.ts +19 -0
  13. package/lib/atwinui/components/toolbar/pipeListPane.js +388 -0
  14. package/lib/atwinui/components/toolbar/spaceUserListPane.d.ts +3 -0
  15. package/lib/atwinui/components/toolbar/spaceUserListPane.js +95 -0
  16. package/lib/atwinui/components/toolbar/tagFormPane.d.ts +1 -0
  17. package/lib/atwinui/components/toolbar/tagFormPane.js +4 -1
  18. package/lib/atwinui/components/toolbar/tagIotForm.d.ts +20 -0
  19. package/lib/atwinui/components/toolbar/tagIotForm.js +391 -0
  20. package/lib/atwinui/components/toolbar/tagIotFormPane.d.ts +62 -0
  21. package/lib/atwinui/components/toolbar/tagIotFormPane.js +606 -0
  22. package/lib/atwinui/components/toolbar/tagMessagingPane.js +5 -5
  23. package/lib/atwinui/components/toolbar/usersPane.d.ts +14 -0
  24. package/lib/atwinui/components/toolbar/usersPane.js +273 -0
  25. package/lib/atwinui/components/toolbar/viewingRemoteSpace.d.ts +7 -0
  26. package/lib/atwinui/components/toolbar/viewingRemoteSpace.js +77 -0
  27. package/lib/atwinui/events.d.ts +4 -1
  28. package/lib/atwinui/events.js +96 -15
  29. package/lib/atwinui/helpers.d.ts +15 -0
  30. package/lib/atwinui/helpers.js +49 -0
  31. package/lib/atwinui/index.js +2 -0
  32. package/lib/loaders/curosrMarkerLoader.d.ts +25 -0
  33. package/lib/loaders/curosrMarkerLoader.js +86 -0
  34. package/lib/loaders/index.d.ts +2 -1
  35. package/lib/loaders/index.js +2 -1
  36. package/lib/loaders/pathLoader.d.ts +99 -0
  37. package/lib/loaders/pathLoader.js +451 -0
  38. package/lib/minimap.d.ts +4 -2
  39. package/lib/minimap.js +16 -3
  40. package/lib/types.d.ts +86 -2
  41. package/lib/types.js +39 -0
  42. package/package.json +1 -1
  43. package/static/atwinui.css +263 -0
  44. package/static/map.css +9 -1
  45. package/static/utility.css +81 -1
@@ -0,0 +1,391 @@
1
+ import { IOT_LINKED_SYSTEMS, SPACE_EVENTS } from '../../../types';
2
+ import log from 'loglevel';
3
+ import i18n from './i18n';
4
+ import { dispatchSpaceEvent, _tagIotCategoryTypes, _tagIotDevices } from '../../../architwin';
5
+ import { stringContains } from "../../../utils";
6
+ import { batchAddEventListenerByClassName } from '../../events';
7
+ let selectedIoTCatOption;
8
+ let selectedIoTDeviceOption;
9
+ export let iotTagFormMode = "ADD" /* FORM_MODE.ADD */;
10
+ let tagIotName, iotModelName, iotSerialName, iotMfrName, iotSystemLink;
11
+ let selectedIoTCatId;
12
+ let linkedDevicesArray = [];
13
+ export function renderTagIOTForm() {
14
+ const element = document.createElement('div');
15
+ element.classList.add('at_container');
16
+ element.classList.add('at_w-12');
17
+ element.classList.add('at_h-full');
18
+ element.setAttribute('id', 'at-tag-iot-form-pane');
19
+ element.setAttribute('data-cy', 'at-tag-iot-form-pane');
20
+ element.innerHTML = `
21
+ <div class="at_panel_header">
22
+ <span>${i18n.t('Add IOT Tag')}</span>
23
+ </div>
24
+
25
+ <div class="at_form_container at_scrollable_container at_h-min-70">
26
+ <label for="">${i18n.t('Linked Systems')}</label>
27
+ <div class="at_gap_2" style="display: inline-flex">
28
+ <label class="at_flex at_align_center at_text_xs at_gap_1">
29
+ <input type="radio" id="at-linked-radio-bemac" name="iot-link-system" checked value=${IOT_LINKED_SYSTEMS.BEMAC} selected />
30
+ ${i18n.t("BEMAC")}
31
+ </label>
32
+ <label class="at_flex at_align_center at_text_xs at_gap_1">
33
+ <input type="radio" id="at-linked-radio-hanasys" name="iot-link-system" value=${IOT_LINKED_SYSTEMS.HANASYS} />
34
+ ${i18n.t("HANASYS")}
35
+ </label>
36
+ <label class="at_flex at_align_center at_text_xs at_gap_1">
37
+ <input type="radio" id="at-linked-radio-link" name="iot-link-system" value=${IOT_LINKED_SYSTEMS.URL_LINK} />
38
+ ${i18n.t("URL Link")}
39
+ </label>
40
+ </div>
41
+
42
+ <div class="at_field at_flex_column">
43
+ <label for="">${i18n.t('Category')}</label>
44
+ <div id="at-iot-category-dropdown" data-cy="at-iot-category-dropdown">
45
+ <div id="at-iot-cat-filter-dropdown" class="at_dropdown at_flex at_flex_row at_space_between">
46
+ <div class="at_dropdown_toggle" id="at-iot-selected-cat" data-cy="at-iot-selected-cat">${i18n.t(selectedIoTCatOption)}</div>
47
+ <span class="mdi mdi-chevron-down at_chevron" id="at-iot-cat-filter-chevron" data-cy="at-iot-cat-filter-chevron"></span>
48
+ </div>
49
+
50
+ <div style="position:absolute;">
51
+ <div class="at_dropdown_options" id="at-iot-category-options" data-cy="at-iot-category-options">
52
+
53
+ </div>
54
+ </div>
55
+
56
+ </div>
57
+ </div>
58
+
59
+ <div class="at-field at_flex_row at_justify_between">
60
+ <label for="">${i18n.t('TagName')}</label>
61
+ <input class="at_field_input at_w-full" type="text" name="tag_name" id="at-iot-name-input" data-cy="at-iot-name-input" placeholder="Sample..." />
62
+ </div>
63
+
64
+ <div class="at-field at_flex_row at_justify_between">
65
+ <label for="">${i18n.t('Model Name')}</label>
66
+ <input class="at_field_input at_w-full" type="text" name="model_name" id="at-iot-model-input" data-cy="at-iot-model-input" placeholder="Sample..." />
67
+ </div>
68
+
69
+ <div class="at-field at_flex_row at_justify_between">
70
+ <label for="">${i18n.t('Serial Number')}</label>
71
+ <input class="at_field_input at_w-full" type="text" name="serial_name" id="at-iot-serial-input" data-cy="at-iot-serial-input" placeholder="Sample..." />
72
+ </div>
73
+
74
+ <div class="at-field at_flex_row at_justify_between">
75
+ <label for="">${i18n.t('Manufacturer Site')}</label>
76
+ <input class="at_field_input at_w-full" type="text" name="manufacturer_site" id="at-iot-manufacturer-input" data-cy="at-iot-manufacturer-input" placeholder="Sample..." />
77
+ </div>
78
+
79
+ <div class="at-field at_flex_row at_justify_between" id="at-iot-system-link-container">
80
+ <label for="">${i18n.t('System Link')}</label>
81
+ <input class="at_field_input at_w-full" type="text" name="system_link" id="at-iot-system-link-input" data-cy="at-iot-system-link-input" placeholder="Sample..." />
82
+ </div>
83
+
84
+ <div class="at_button at_ghost" id="at-iot-move-btn" data-cy="at-iot-move-btn" style="top: 4px !important">
85
+ <label for="" style="bottom: 10px !important" class="at_comment_unsend_container">${i18n.t('MoveTag')}</label>
86
+ <span class="mdi mdi-map-marker at_icon" style="bottom: 9px !important"></span>
87
+ </div>
88
+
89
+ <div class="at_field at_flex_column" id="at-iot-device-main-container">
90
+ <label for="">${i18n.t('IoT Devices')}</label>
91
+ <div id="at-iot-devices-dropdown" data-cy="at-iot-devices-dropdown">
92
+ <div id="at-setting-map-filter-dropdown" class="at_dropdown at_flex at_flex_row at_space_between">
93
+ <div class="at_dropdown_toggle" id="at-iot-selected-device" data-cy="at-iot-selected-device">${i18n.t(selectedIoTDeviceOption)}</div>
94
+ <span class="mdi mdi-chevron-down at_chevron" id="at-iot-cat-filter-chevron" data-cy="at-iot-cat-filter-chevron"></span>
95
+ </div>
96
+
97
+ <div style="position:absolute;">
98
+ <div class="at_dropdown_options" id="at-iot-device-options" data-cy="at-iot-device-options">
99
+
100
+ </div>
101
+ </div>
102
+ </div>
103
+
104
+ <div class="at_partition_list_container at_h-min-40" id="at-iot-device-list-container" data-cy="at-iot-device-list-container">
105
+
106
+ <div class="at_partition_item_container at_scrollable_container" id="at-linked-device-container" data-cy="at-linked-device-container">
107
+
108
+ <div class="at_partition_title" id="at-iot-linked-devices">
109
+ <div> </div>
110
+ <label for="">${i18n.t('Linked to Devices')}</label>
111
+ <div> </div>
112
+ </div>
113
+
114
+ </div>
115
+
116
+ </div>
117
+
118
+ </div>
119
+ </div>
120
+
121
+ <div class="at_button_row at_justify_between">
122
+ <div class="at_button at_ghost" style="margin-top: auto;" id="at-cancel-iot-tag-form-btn" data-cy="at-cancel-iot-tag-form-btn" target-pane="at-tag-list-pane">
123
+ <label for="" id="at-cancel-tag-form-btn">${i18n.t('Cancel')}</label>
124
+ </div>
125
+
126
+ <div class="at_button at_ghost" id="at-save-iot-btn" data-cy="at-save-iot-btn">
127
+ <label for="">${i18n.t('Save')}</label>
128
+ </div>
129
+ </div>
130
+ `;
131
+ return element;
132
+ }
133
+ function setSelectedIoTCat(payload) {
134
+ log.info('setSelectedIoTCat()', payload);
135
+ const selectedOption = document.getElementById('at-iot-selected-cat');
136
+ selectedOption.innerText = payload;
137
+ }
138
+ function setSelectedIoTDevice(payload) {
139
+ log.info('setSelectedIoTDevice()', payload);
140
+ const selectedDevice = document.getElementById('at-iot-selected-device');
141
+ selectedDevice.innerText = payload;
142
+ }
143
+ function setInputFields() {
144
+ log.info('setInputFields()');
145
+ tagIotName = document.getElementById('at-iot-name-input');
146
+ iotModelName = document.getElementById('at-iot-model-input');
147
+ iotSerialName = document.getElementById('at-iot-serial-input');
148
+ iotMfrName = document.getElementById('at-iot-manufacturer-input');
149
+ iotSystemLink = document.getElementById('at-iot-system-link-input');
150
+ }
151
+ export function setIotCategoryOptions() {
152
+ log.info('setIotCategoryOptions()');
153
+ dispatchSpaceEvent(SPACE_EVENTS.GET_IOT_CATEGORIES, { payload: 'hello from library' });
154
+ renderIotCategoryDropdownOptions('at-iot-category-options', _tagIotCategoryTypes);
155
+ batchAddEventListenerByClassName('at_iot_cat_option', (event) => {
156
+ //@ts-ignore
157
+ const selectedCat = event.target;
158
+ const dataCy = selectedCat.getAttribute('data-cy');
159
+ const match = dataCy.match(/^at-iot-category-option-(.+)$/);
160
+ const selectedId = match ? match[1] : null;
161
+ selectedIoTCatId = selectedId.toString();
162
+ setSelectedIoTCat(selectedCat.innerText);
163
+ log.info('cat id: ', selectedIoTCatId);
164
+ });
165
+ }
166
+ export function toggleIoTCategoryOptions() {
167
+ log.info('toggleIoTCategoryOptions');
168
+ const catDropdown = document.getElementById('at-iot-category-dropdown');
169
+ const catOptions = document.getElementById('at-iot-category-options');
170
+ catDropdown.addEventListener('click', () => {
171
+ catOptions.classList.toggle('open');
172
+ });
173
+ }
174
+ export function toggleIoTDevicesOptions() {
175
+ log.info('toggleIoTDevicesOptions()');
176
+ const devicesDropdown = document.getElementById('at-iot-devices-dropdown');
177
+ const deviceOptions = document.getElementById('at-iot-device-options');
178
+ devicesDropdown.addEventListener('click', () => {
179
+ deviceOptions.classList.toggle('open');
180
+ });
181
+ }
182
+ export function setSelectedIoTSystemRadio(payload) {
183
+ log.info('setSelectedIoTSystemRadio()', payload);
184
+ const linkedDeviceContainer = document.getElementById('at-iot-device-main-container');
185
+ const systemLinkContainer = document.getElementById('at-iot-system-link-container');
186
+ if (payload === IOT_LINKED_SYSTEMS.URL_LINK) {
187
+ log.info('payload == IOT_LINKED_SYSTEMS.URL_LINK', payload, IOT_LINKED_SYSTEMS.URL_LINK);
188
+ linkedDeviceContainer.style.display = 'none';
189
+ systemLinkContainer.style.display = 'block';
190
+ }
191
+ else {
192
+ linkedDeviceContainer.style.display = 'block';
193
+ systemLinkContainer.style.display = 'none';
194
+ }
195
+ }
196
+ export function clearIoTDropdowns() {
197
+ log.info('clearIoTDropdowns()');
198
+ const catDropdown = document.getElementById('at-iot-selected-cat');
199
+ const devicesDropdown = document.getElementById('at-iot-selected-device');
200
+ catDropdown.innerText = 'No Selection';
201
+ devicesDropdown.innerText = 'Select Device';
202
+ }
203
+ // Initializes Form Data, but current this is only Add Mode
204
+ export function initIoTFormData() {
205
+ log.info('initIoTFormData()');
206
+ // Add Mode
207
+ iotTagFormMode = "ADD" /* FORM_MODE.ADD */;
208
+ log.info('initIoTFormData() Mode: ', iotTagFormMode);
209
+ if (tagIotName === null || tagIotName == undefined) {
210
+ log.info('initIoTFormData() tagname check', tagIotName);
211
+ setInputFields();
212
+ }
213
+ tagIotName.value = '';
214
+ iotModelName.value = '';
215
+ iotSerialName.value = '';
216
+ iotMfrName.value = '';
217
+ iotSystemLink.value = '';
218
+ }
219
+ export function renderIotCategoryDropdownOptions(elementId, items) {
220
+ const element = document.getElementById(elementId);
221
+ if (!element) {
222
+ console.error("Parameter element is undefined");
223
+ return;
224
+ }
225
+ if (!items) {
226
+ console.error("Parameter items is undefined");
227
+ return;
228
+ }
229
+ const isFilterDropdown = stringContains(elementId, 'filter');
230
+ //Clear previosly appended children
231
+ element.innerHTML = ``;
232
+ const selectedIotCategoryOption = document.getElementById(isFilterDropdown ? 'at-iot-category-filter-dropdown-toggle' : 'at-iot-category-dropdown-toggle');
233
+ if (selectedIotCategoryOption) {
234
+ selectedIotCategoryOption.textContent = `${i18n.t('NoSelection')}`;
235
+ selectedIoTCatOption = undefined;
236
+ }
237
+ //Add the no selection option
238
+ const noSelection = document.createElement('div');
239
+ noSelection.classList.add('at_option');
240
+ noSelection.setAttribute('iot-category-uuid', '');
241
+ noSelection.setAttribute('dropdown-type', 'iotcategory');
242
+ noSelection.innerHTML = `
243
+ <span class="mdi mdi-circle-slice-1"></span> ${i18n.t('NoSelection')}
244
+ `;
245
+ noSelection.onclick = () => {
246
+ selectCatOption(noSelection, isFilterDropdown ? 'at-iot-category-filter-dropdown-toggle' : 'at-iot-category-filter-dropdown-toggle');
247
+ };
248
+ element.appendChild(noSelection);
249
+ if (items.length <= 0) {
250
+ console.log("No items to render");
251
+ return;
252
+ }
253
+ items.forEach(item => {
254
+ const option = createCatOptionElement(item, 'iotcategory');
255
+ element.appendChild(option);
256
+ });
257
+ }
258
+ function createCatOptionElement(item, dropdownType) {
259
+ console.log("createCatOptionElement()");
260
+ const option = document.createElement('div');
261
+ option.style.display = 'flex';
262
+ option.style.flexDirection = 'row';
263
+ option.style.justifyContent = 'left';
264
+ option.style.alignItems = 'center';
265
+ option.style.gap = '2px';
266
+ option.classList.add('at_option');
267
+ option.classList.add('at_iot_cat_option');
268
+ option.setAttribute('iot-category-uuid', item.uuid);
269
+ option.setAttribute('dropdown-type', dropdownType);
270
+ option.setAttribute('data-cy', `at-iot-category-option-${item.uuid}`);
271
+ if (dropdownType == 'category') {
272
+ option.innerHTML = `
273
+ <span class="at_colored-indicator"></span>
274
+ ${item.name}
275
+ `;
276
+ return option;
277
+ }
278
+ option.innerHTML = `
279
+ ${item.json_data.iconURL === 'button.png' || item.json_data.iconURL === undefined ? `
280
+ <img class="at_avatar_xs" style="display:inline-block" src="https://cdn.jsdelivr.net/npm/architwin@latest/static/images/button.png"/>
281
+ ` : `
282
+ <img class="at_avatar_xs" style="display:inline-block" src="${item.json_data.iconURL}"/>
283
+ `}
284
+ ${item.name}`;
285
+ return option;
286
+ }
287
+ function selectCatOption(option, elementId) {
288
+ log.info('selectCatOption()', option, elementId);
289
+ }
290
+ export function setIotDeviceOptions() {
291
+ log.info('setIotDeviceOptions()');
292
+ dispatchSpaceEvent(SPACE_EVENTS.GET_IOT_DEVICES, { payload: 'hello from library' });
293
+ renderIotDeviceDropdownOptions('at-iot-device-options', _tagIotDevices);
294
+ batchAddEventListenerByClassName('at_iot_dev_option', (event) => {
295
+ //@ts-ignore
296
+ const selectedDev = event.target;
297
+ setSelectedIoTDevice(selectedDev.innerText);
298
+ });
299
+ }
300
+ export function renderIotDeviceDropdownOptions(elementId, items) {
301
+ const element = document.getElementById(elementId);
302
+ if (!element) {
303
+ console.error("Parameter element is undefined");
304
+ return;
305
+ }
306
+ if (!items) {
307
+ console.error("Parameter items is undefined");
308
+ return;
309
+ }
310
+ const isFilterDropdown = stringContains(elementId, 'filter');
311
+ //Clear previosly appended children
312
+ element.innerHTML = ``;
313
+ const selectedIotDeviceOption = document.getElementById(isFilterDropdown ? 'at-iot-device-filter-dropdown-toggle' : 'at-iot-device-dropdown-toggle');
314
+ if (selectedIotDeviceOption) {
315
+ selectedIotDeviceOption.textContent = `${i18n.t('SelectDevice')}`;
316
+ selectedIoTDeviceOption = undefined;
317
+ }
318
+ //Add the no selection option
319
+ const selectDevice = document.createElement('div');
320
+ selectDevice.classList.add('at_iot_dev_option');
321
+ selectDevice.setAttribute('iot-device-uuid', '');
322
+ selectDevice.setAttribute('dropdown-type', 'iotdevice');
323
+ selectDevice.innerHTML = `
324
+ <span></span> ${i18n.t('SelectDevice')}
325
+ `;
326
+ selectDevice.onclick = () => {
327
+ log.info('@caroline onClick');
328
+ selectDeviceOption(selectDevice, isFilterDropdown ? 'at-iot-device-filter-dropdown-toggle' : 'at-iot-device-filter-dropdown-toggle');
329
+ };
330
+ element.appendChild(selectDevice);
331
+ if (items.length <= 0) {
332
+ console.log("No items to render");
333
+ return;
334
+ }
335
+ items.forEach(item => {
336
+ const option = createDeviceOptionElement(item, 'iotdevice');
337
+ element.appendChild(option);
338
+ });
339
+ }
340
+ function selectDeviceOption(option, elementId) {
341
+ log.info('@caroline selectDeviceOption()', option, elementId);
342
+ }
343
+ function createDeviceOptionElement(item, dropdownType) {
344
+ console.log("createDeviceOptionElement()", item, dropdownType);
345
+ const option = document.createElement('div');
346
+ option.style.display = 'flex';
347
+ option.style.flexDirection = 'row';
348
+ option.style.justifyContent = 'left';
349
+ option.style.alignItems = 'center';
350
+ option.style.gap = '2px';
351
+ option.classList.add('at_option');
352
+ option.classList.add('at_iot_dev_option');
353
+ option.setAttribute('iot-category-uuid', item.uuid);
354
+ option.setAttribute('dropdown-type', dropdownType);
355
+ option.setAttribute('data-cy', `at-iot-category-option-${item.uuid}`);
356
+ if (dropdownType == 'category') {
357
+ option.innerHTML = `
358
+ <span class="at_colored-indicator"></span>
359
+ ${item.name}
360
+ `;
361
+ return option;
362
+ }
363
+ option.innerHTML = `
364
+ <span>${item.name}</span>
365
+ `;
366
+ return option;
367
+ }
368
+ export function getIotTagFormData() {
369
+ if (!tagIotName) {
370
+ setInputFields();
371
+ }
372
+ const formData = {
373
+ tagName: tagIotName.value,
374
+ modelName: iotModelName.value,
375
+ serialName: iotSerialName.value,
376
+ tagMf: iotMfrName.value,
377
+ tagCategoryId: selectedIoTCatId,
378
+ systemLink: iotSystemLink.value
379
+ };
380
+ return formData;
381
+ }
382
+ // function renderLinkedDevices(payload) {
383
+ // log.info('displayLinkedDevices()', payload)
384
+ // return `
385
+ // <li class="at_room_tree_child">
386
+ // <div id="at-linked-device-${payload.uuid}" class="at_flex at_space_between">
387
+ // <span id="at-linked-device-${payload.uuid}"> ${i18n.t(`${payload.name}`)} </span>
388
+ // </div>
389
+ // </li>
390
+ // `
391
+ // }
@@ -0,0 +1,62 @@
1
+ import { FORM_MODE, ITagIOTCategory, TAG_TYPE, DeviceInfo } from '../../../types';
2
+ export declare let iotTagFormMode: FORM_MODE;
3
+ export declare let selectedIoTSystem: string;
4
+ export declare let selectedIotTag: any;
5
+ export declare function renderTagIOTFormPane(): HTMLDivElement;
6
+ export declare function setIotCategoryOptions(): void;
7
+ export declare function toggleIoTCategoryOptions(): void;
8
+ export declare function toggleIoTDevicesOptions(): void;
9
+ /**
10
+ * Sets Radio Button of the IoT's the Linked System
11
+ *
12
+ */
13
+ export declare function setSelectedIoTSystemRadio(payload: string): void;
14
+ /**
15
+ * Clears dropdowns for both Category and Devices
16
+ *
17
+ */
18
+ export declare function clearIoTDropdowns(): void;
19
+ /**
20
+ * Initializes Form Data
21
+ * for both Add and Edit Modes
22
+ *
23
+ */
24
+ export declare function initIoTFormData(tagId?: string): void;
25
+ export declare function renderIotCategoryDropdownOptions(elementId: string, items: Array<ITagIOTCategory>): void;
26
+ export declare function setIotDeviceOptions(): void;
27
+ export declare function renderIotDeviceDropdownOptions(elementId: string, items: Array<DeviceInfo>): void;
28
+ /**
29
+ * Gets IoT TagData and used in events.ts
30
+ *
31
+ *
32
+ *
33
+ */
34
+ export declare function getIotTagFormData(): {
35
+ name: string;
36
+ modelName: string;
37
+ serialNumber: string;
38
+ tagMf: string;
39
+ tagCategoryId: string;
40
+ systemLink?: string;
41
+ linkedDevices?: DeviceInfo[];
42
+ iotSystem: string;
43
+ tag_type: TAG_TYPE;
44
+ };
45
+ /**
46
+ * Clears all Fields Input Fields including the Linked Devices Table
47
+ *
48
+ */
49
+ export declare function clearIotFields(): void;
50
+ /**
51
+ * Sets the form mode for the IOT form.
52
+ * - The form mode can be one of the predefined FORM_MODE values (e.g., ADD, EDIT, etc.).
53
+ *
54
+ * @param {FORM_MODE} formType - The type of form mode to set.
55
+ */
56
+ export declare function setIoTFormMode(formType: FORM_MODE): void;
57
+ /**
58
+ * Gets the current form mode for the IOT form.
59
+ *
60
+ * @returns {FORM_MODE} - The current form mode.
61
+ */
62
+ export declare function getPartitionFormMode(): FORM_MODE;