@wavemaker/app-ng-runtime 11.4.0-next.28152 → 11.4.0-rc.5339
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.
- app-ng-runtime/build-task/basic/tree/tree.build.d.ts +1 -2
- app-ng-runtime/build-task/bundles/index.umd.js +8 -10
- app-ng-runtime/build-task/bundles/index.umd.js.map +1 -1
- app-ng-runtime/build-task/esm2015/basic/tree/tree.build.js +3 -4
- app-ng-runtime/build-task/esm2015/data/form/form-field/form-field.build.js +2 -2
- app-ng-runtime/build-task/esm2015/navigation/popover/popover.build.js +3 -3
- app-ng-runtime/build-task/fesm2015/index.js +8 -10
- app-ng-runtime/build-task/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/base/bundles/index.umd.js +29 -4
- app-ng-runtime/components/base/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/base/esm2015/public_api.js +2 -2
- app-ng-runtime/components/base/esm2015/utils/widget-utils.js +22 -4
- app-ng-runtime/components/base/esm2015/widgets/common/base/base-field-validations.js +3 -2
- app-ng-runtime/components/base/esm2015/widgets/common/dialog/dialog.service.js +7 -1
- app-ng-runtime/components/base/fesm2015/index.js +30 -6
- app-ng-runtime/components/base/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/base/index.metadata.json +1 -1
- app-ng-runtime/components/base/public_api.d.ts +1 -1
- app-ng-runtime/components/base/utils/widget-utils.d.ts +8 -1
- app-ng-runtime/components/basic/tree/bundles/index.umd.js +280 -256
- app-ng-runtime/components/basic/tree/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/basic/tree/esm2015/public_api.js +2 -2
- app-ng-runtime/components/basic/tree/esm2015/tree.component.js +322 -0
- app-ng-runtime/components/basic/tree/esm2015/tree.module.js +3 -3
- app-ng-runtime/components/basic/tree/fesm2015/index.js +260 -248
- app-ng-runtime/components/basic/tree/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/basic/tree/index.metadata.json +1 -1
- app-ng-runtime/components/basic/tree/public_api.d.ts +1 -1
- app-ng-runtime/components/basic/tree/tree.component.d.ts +34 -0
- app-ng-runtime/components/containers/tabs/bundles/index.umd.js +39 -23
- app-ng-runtime/components/containers/tabs/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/containers/tabs/esm2015/tab-pane/tab-pane.component.js +8 -1
- app-ng-runtime/components/containers/tabs/esm2015/tabs.animator.js +33 -13
- app-ng-runtime/components/containers/tabs/fesm2015/index.js +40 -13
- app-ng-runtime/components/containers/tabs/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/containers/tabs/tabs.animator.d.ts +5 -1
- app-ng-runtime/components/data/form/bundles/index.umd.js +37 -13
- app-ng-runtime/components/data/form/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/form/esm2015/form-field/form-field.directive.js +26 -7
- app-ng-runtime/components/data/form/esm2015/form.component.js +10 -5
- app-ng-runtime/components/data/form/fesm2015/index.js +34 -10
- app-ng-runtime/components/data/form/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/form/index.metadata.json +1 -1
- app-ng-runtime/components/data/list/bundles/index.umd.js +52 -43
- app-ng-runtime/components/data/list/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/list/esm2015/list.component.js +52 -43
- app-ng-runtime/components/data/list/fesm2015/index.js +51 -42
- app-ng-runtime/components/data/list/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/list/index.metadata.json +1 -1
- app-ng-runtime/components/data/list/list.component.d.ts +1 -1
- app-ng-runtime/components/data/pagination/bundles/index.umd.js +22 -5
- app-ng-runtime/components/data/pagination/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/pagination/esm2015/pagination.component.js +23 -6
- app-ng-runtime/components/data/pagination/fesm2015/index.js +22 -5
- app-ng-runtime/components/data/pagination/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/pagination/index.metadata.json +1 -1
- app-ng-runtime/components/data/pagination/pagination.component.d.ts +1 -0
- app-ng-runtime/components/data/table/bundles/index.umd.js +64 -12
- app-ng-runtime/components/data/table/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/table/esm2015/table.component.js +63 -13
- app-ng-runtime/components/data/table/esm2015/table.props.js +3 -1
- app-ng-runtime/components/data/table/fesm2015/index.js +64 -12
- app-ng-runtime/components/data/table/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/table/index.metadata.json +1 -1
- app-ng-runtime/components/data/table/table.component.d.ts +9 -0
- app-ng-runtime/components/dialogs/default/base-dialog.d.ts +1 -0
- app-ng-runtime/components/dialogs/default/bundles/index.umd.js +17 -3
- app-ng-runtime/components/dialogs/default/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/dialogs/default/esm2015/base-dialog.js +18 -5
- app-ng-runtime/components/dialogs/default/fesm2015/index.js +17 -4
- app-ng-runtime/components/dialogs/default/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/dialogs/default/index.metadata.json +1 -1
- app-ng-runtime/components/input/epoch/base-date-time.component.d.ts +1 -0
- app-ng-runtime/components/input/epoch/bundles/index.umd.js +78 -35
- app-ng-runtime/components/input/epoch/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/input/epoch/date-time/date-time-picker.component.d.ts +1 -0
- app-ng-runtime/components/input/epoch/esm2015/base-date-time.component.js +55 -31
- app-ng-runtime/components/input/epoch/esm2015/date/date.component.js +3 -3
- app-ng-runtime/components/input/epoch/esm2015/date-time/date-time-picker.component.js +31 -11
- app-ng-runtime/components/input/epoch/esm2015/date-time/date-time.component.js +2 -2
- app-ng-runtime/components/input/epoch/fesm2015/index.js +87 -43
- app-ng-runtime/components/input/epoch/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/input/epoch/index.metadata.json +1 -1
- app-ng-runtime/components/navigation/menu/bundles/index.umd.js +25 -19
- app-ng-runtime/components/navigation/menu/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/navigation/menu/esm2015/menu-dropdown-item/menu-dropdown-item.component.js +15 -5
- app-ng-runtime/components/navigation/menu/esm2015/menu.component.js +14 -19
- app-ng-runtime/components/navigation/menu/fesm2015/index.js +25 -20
- app-ng-runtime/components/navigation/menu/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/navigation/menu/index.metadata.json +1 -1
- app-ng-runtime/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +7 -4
- app-ng-runtime/components/navigation/menu/menu.component.d.ts +3 -7
- app-ng-runtime/components/navigation/popover/bundles/index.umd.js +3 -1
- app-ng-runtime/components/navigation/popover/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/navigation/popover/esm2015/popover.component.js +5 -3
- app-ng-runtime/components/navigation/popover/fesm2015/index.js +4 -2
- app-ng-runtime/components/navigation/popover/fesm2015/index.js.map +1 -1
- app-ng-runtime/core/bundles/index.umd.js +7 -1
- app-ng-runtime/core/bundles/index.umd.js.map +1 -1
- app-ng-runtime/core/esm2015/services/pagination.service.js +8 -2
- app-ng-runtime/core/fesm2015/index.js +7 -1
- app-ng-runtime/core/fesm2015/index.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/bundles/index.umd.js +24 -6
- app-ng-runtime/mobile/components/page/default/bundles/index.umd.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/esm2015/page.directive.js +20 -3
- app-ng-runtime/mobile/components/page/default/fesm2015/index.js +19 -2
- app-ng-runtime/mobile/components/page/default/fesm2015/index.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/index.metadata.json +1 -1
- app-ng-runtime/mobile/components/page/default/page.directive.d.ts +4 -1
- app-ng-runtime/package.json +1 -1
- app-ng-runtime/scripts/datatable/datatable.js +86 -36
- app-ng-runtime/scripts/tree-keyboard-navigation/keyboard-navigation.js +251 -0
- app-ng-runtime/variables/bundles/index.umd.js +14 -4
- app-ng-runtime/variables/bundles/index.umd.js.map +1 -1
- app-ng-runtime/variables/esm2015/manager/action/notification-action.manager.js +5 -6
- app-ng-runtime/variables/esm2015/service/variables.service.js +8 -1
- app-ng-runtime/variables/fesm2015/index.js +11 -5
- app-ng-runtime/variables/fesm2015/index.js.map +1 -1
- app-ng-runtime/variables/index.metadata.json +1 -1
- app-ng-runtime/variables/service/variables.service.d.ts +4 -0
- app-ng-runtime/components/basic/tree/esm2015/tree.directive.js +0 -310
- app-ng-runtime/components/basic/tree/tree.directive.d.ts +0 -35
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { BaseActionManager } from './base-action.manager';
|
|
2
|
-
import { VARIABLE_CONSTANTS } from '../../constants/variables.constants';
|
|
3
2
|
import { initiateCallback, toasterService, dialogService } from '../../util/variable/variables.utils';
|
|
4
3
|
export class NotificationActionManager extends BaseActionManager {
|
|
5
4
|
onToasterClick(variable) {
|
|
@@ -31,9 +30,9 @@ export class NotificationActionManager extends BaseActionManager {
|
|
|
31
30
|
}
|
|
32
31
|
}
|
|
33
32
|
notifyViaDialog(variable, options) {
|
|
34
|
-
const commonPageDialogId = 'Common' + _.capitalize(variable.operation) + 'Dialog',
|
|
33
|
+
const commonPageDialogId = 'Common' + _.capitalize(variable.operation) + 'Dialog', dialogId = commonPageDialogId;
|
|
35
34
|
const closeCallBackFn = () => initiateCallback('onOk', variable, options.data);
|
|
36
|
-
dialogService.open(dialogId,
|
|
35
|
+
dialogService.open(dialogId, undefined, {
|
|
37
36
|
notification: {
|
|
38
37
|
'title': options.title || variable.dataBinding.title,
|
|
39
38
|
'text': options.message || variable.dataBinding.text,
|
|
@@ -42,12 +41,12 @@ export class NotificationActionManager extends BaseActionManager {
|
|
|
42
41
|
'alerttype': options.alerttype || variable.dataBinding.alerttype || 'information',
|
|
43
42
|
onOk: () => {
|
|
44
43
|
// Close the action dialog after triggering onOk callback event
|
|
45
|
-
dialogService.close(dialogId,
|
|
44
|
+
dialogService.close(dialogId, undefined, closeCallBackFn);
|
|
46
45
|
},
|
|
47
46
|
onCancel: () => {
|
|
48
47
|
initiateCallback('onCancel', variable, options.data);
|
|
49
48
|
// Close the action dialog after triggering onCancel callback event
|
|
50
|
-
dialogService.close(dialogId,
|
|
49
|
+
dialogService.close(dialogId, undefined);
|
|
51
50
|
},
|
|
52
51
|
onClose: () => {
|
|
53
52
|
initiateCallback('onClose', variable, options.data);
|
|
@@ -128,4 +127,4 @@ export class NotificationActionManager extends BaseActionManager {
|
|
|
128
127
|
return variable.dataBinding.cancelButtonText;
|
|
129
128
|
}
|
|
130
129
|
}
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWFjdGlvbi5tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFyaWFibGVzL3NyYy9tYW5hZ2VyL2FjdGlvbi9ub3RpZmljYXRpb24tYWN0aW9uLm1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUl0RyxNQUFNLE9BQU8seUJBQTBCLFNBQVEsaUJBQWlCO0lBRXBELGNBQWMsQ0FBQyxRQUFRO1FBQzNCLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVPLGFBQWEsQ0FBQyxRQUFRO1FBQzFCLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxPQUFPO1FBQ3RDLE1BQU0sSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFDOUUsSUFBSSxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQ25ELEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxFQUNyQixhQUFhLEdBQUcsUUFBUSxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLGVBQWUsSUFBSSxjQUFjLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxF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LFFBQVEsRUFBRSxRQUFRO1FBQ2pDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUN0QixRQUFRLENBQUMsV0FBVyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7U0FDNUM7UUFDRCxPQUFPLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBUTtRQUNqQixPQUFPLFFBQVEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO0lBQzFDLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBUSxFQUFFLFNBQVM7UUFDNUIsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3ZCLFFBQVEsQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztTQUM5QztRQUNELE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDMUMsQ0FBQztJQUVELG1CQUFtQixDQUFDLFFBQVE7UUFDeEIsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDO0lBQ2pELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsSUFBSTtRQUM5QixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbEIsUUFBUSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7U0FDaEQ7UUFDRCxPQUFPLFFBQVEsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUM7SUFDakQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUFjdGlvbk1hbmFnZXIgfSBmcm9tICcuL2Jhc2UtYWN0aW9uLm1hbmFnZXInO1xuaW1wb3J0IHsgVkFSSUFCTEVfQ09OU1RBTlRTIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3ZhcmlhYmxlcy5jb25zdGFudHMnO1xuaW1wb3J0IHsgaW5pdGlhdGVDYWxsYmFjaywgdG9hc3RlclNlcnZpY2UsIGRpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi91dGlsL3ZhcmlhYmxlL3ZhcmlhYmxlcy51dGlscyc7XG5cbmRlY2xhcmUgY29uc3QgXztcblxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbkFjdGlvbk1hbmFnZXIgZXh0ZW5kcyBCYXNlQWN0aW9uTWFuYWdlciB7XG5cbiAgICBwcml2YXRlIG9uVG9hc3RlckNsaWNrKHZhcmlhYmxlKSB7XG4gICAgICAgIGluaXRpYXRlQ2FsbGJhY2soJ29uQ2xpY2snLCB2YXJpYWJsZSwgJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25Ub2FzdGVySGlkZSh2YXJpYWJsZSkge1xuICAgICAgICBpbml0aWF0ZUNhbGxiYWNrKCdvbkhpZGUnLCB2YXJpYWJsZSwgJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbm90aWZ5VmlhVG9hc3Rlcih2YXJpYWJsZSwgb3B0aW9ucykge1xuICAgICAgICBjb25zdCB0eXBlID0gKG9wdGlvbnMuY2xhc3MgfHwgdmFyaWFibGUuZGF0YUJpbmRpbmcuY2xhc3MgfHwgJ2luZm8nKS50b0xvd2VyQ2FzZSgpLFxuICAgICAgICAgICAgYm9keSA9IG9wdGlvbnMubWVzc2FnZSB8fCB2YXJpYWJsZS5kYXRhQmluZGluZy50ZXh0LFxuICAgICAgICAgICAgdGl0bGUgPSBvcHRpb25zLnRpdGxlLFxuICAgICAgICAgICAgcG9zaXRpb25DbGFzcyA9ICd0b2FzdC0nICsgKG9wdGlvbnMucG9zaXRpb24gfHwgdmFyaWFibGUuZGF0YUJpbmRpbmcudG9hc3RlclBvc2l0aW9uIHx8ICdib3R0b20gcmlnaHQnKS5yZXBsYWNlKCcgJywgJy0nKSxcbiAgICAgICAgICAgIHBhcnRpYWxQYWdlID0gdmFyaWFibGUuZGF0YUJpbmRpbmcucGFnZSxcbiAgICAgICAgICAgIERFRkFVTFRfRFVSQVRJT04gPSAzMDAwO1xuICAgICAgICBsZXQgZHVyYXRpb24gPSBwYXJzZUludChvcHRpb25zLmR1cmF0aW9uIHx8IHZhcmlhYmxlLmRhdGFCaW5kaW5nLmR1cmF0aW9uLCBudWxsKSxcbiAgICAgICAgICAgIHRvYXN0ZXI7XG5cbiAgICAgICAgLy8gZHVyYXRpb25cbiAgICAgICAgaWYgKCFkdXJhdGlvbikge1xuICAgICAgICAgICAgZHVyYXRpb24gPSAoZHVyYXRpb24gIT09IDAgJiYgdHlwZSA9PT0gJ3N1Y2Nlc3MnKSA/IERFRkFVTFRfRFVSQVRJT04gOiAwO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YXJpYWJsZS5kYXRhQmluZGluZy5jb250ZW50ICYmIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNvbnRlbnQgPT09ICdwYWdlJyAmJiBwYXJ0aWFsUGFnZSkge1xuICAgICAgICAgICAgdG9hc3RlciA9IHRvYXN0ZXJTZXJ2aWNlLnNob3dDdXN0b20ocGFydGlhbFBhZ2UsIHtwb3NpdGlvbkNsYXNzOiBwb3NpdGlvbkNsYXNzLCB0aW1lT3V0OiBkdXJhdGlvbixcbiAgICAgICAgICAgICAgICBwYXJ0aWFsUGFyYW1zOiB2YXJpYWJsZS5fYmluZGRhdGFTZXQsIGNvbnRleHQ6IHZhcmlhYmxlLl9jb250ZXh0fSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0b2FzdGVyID0gdG9hc3RlclNlcnZpY2Uuc2hvdyh0eXBlLCB0aXRsZSwgYm9keSB8fCBudWxsLCB7cG9zaXRpb25DbGFzczogcG9zaXRpb25DbGFzcywgdGltZU91dDogZHVyYXRpb24sIGVuYWJsZUh0bWw6IHRydWV9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGNhbGxiYWNrc1xuICAgICAgICBpZiAodmFyaWFibGUub25DbGljaykge1xuICAgICAgICAgICAgdG9hc3Rlci5vblRhcC5zdWJzY3JpYmUoIHRoaXMub25Ub2FzdGVyQ2xpY2suYmluZCh0aGlzLCB2YXJpYWJsZSkgKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodmFyaWFibGUub25IaWRlKSB7XG4gICAgICAgICAgICB0b2FzdGVyLm9uSGlkZGVuLnN1YnNjcmliZSggdGhpcy5vblRvYXN0ZXJIaWRlLmJpbmQodGhpcywgdmFyaWFibGUpICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG5vdGlmeVZpYURpYWxvZyh2YXJpYWJsZSwgb3B0aW9ucykge1xuICAgICAgICBjb25zdCBjb21tb25QYWdlRGlhbG9nSWQgPSAnQ29tbW9uJyArIF8uY2FwaXRhbGl6ZSh2YXJpYWJsZS5vcGVyYXRpb24pICsgJ0RpYWxvZycsXG4gICAgICAgICAgICB2YXJpYWJsZU93bmVyID0gdmFyaWFibGUub3duZXIsXG4gICAgICAgICAgICBkaWFsb2dJZCA9ICh2YXJpYWJsZU93bmVyID09PSBWQVJJQUJMRV9DT05TVEFOVFMuT1dORVIuQVBQICkgPyBjb21tb25QYWdlRGlhbG9nSWQgOiAnbm90aWZpY2F0aW9uJyArIHZhcmlhYmxlLm9wZXJhdGlvbiArICdkaWFsb2cnO1xuICAgICAgICBjb25zdCBjbG9zZUNhbGxCYWNrRm4gPSAoKSA9PiBpbml0aWF0ZUNhbGxiYWNrKCdvbk9rJywgdmFyaWFibGUsIG9wdGlvbnMuZGF0YSk7XG4gICAgICAgIGRpYWxvZ1NlcnZpY2Uub3BlbihkaWFsb2dJZCwgIHZhcmlhYmxlLl9jb250ZXh0LCB7XG4gICAgICAgICAgICBub3RpZmljYXRpb246IHtcbiAgICAgICAgICAgICAgICAndGl0bGUnIDogb3B0aW9ucy50aXRsZSB8fCB2YXJpYWJsZS5kYXRhQmluZGluZy50aXRsZSxcbiAgICAgICAgICAgICAgICAndGV4dCcgOiBvcHRpb25zLm1lc3NhZ2UgfHwgdmFyaWFibGUuZGF0YUJpbmRpbmcudGV4dCxcbiAgICAgICAgICAgICAgICAnb2tCdXR0b25UZXh0JyA6IG9wdGlvbnMub2tCdXR0b25UZXh0IHx8IHZhcmlhYmxlLmRhdGFCaW5kaW5nLm9rQnV0dG9uVGV4dCB8fCAnT0snLFxuICAgICAgICAgICAgICAgICdjYW5jZWxCdXR0b25UZXh0JyA6IG9wdGlvbnMuY2FuY2VsQnV0dG9uVGV4dCB8fCB2YXJpYWJsZS5kYXRhQmluZGluZy5jYW5jZWxCdXR0b25UZXh0IHx8ICdDQU5DRUwnLFxuICAgICAgICAgICAgICAgICdhbGVydHR5cGUnIDogb3B0aW9ucy5hbGVydHR5cGUgfHwgdmFyaWFibGUuZGF0YUJpbmRpbmcuYWxlcnR0eXBlIHx8ICdpbmZvcm1hdGlvbicsXG4gICAgICAgICAgICAgICAgb25PazogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBDbG9zZSB0aGUgYWN0aW9uIGRpYWxvZyBhZnRlciB0cmlnZ2VyaW5nIG9uT2sgY2FsbGJhY2sgZXZlbnRcbiAgICAgICAgICAgICAgICAgICAgZGlhbG9nU2VydmljZS5jbG9zZShkaWFsb2dJZCwgdmFyaWFibGUuX2NvbnRleHQsIGNsb3NlQ2FsbEJhY2tGbik7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBvbkNhbmNlbDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpbml0aWF0ZUNhbGxiYWNrKCdvbkNhbmNlbCcsIHZhcmlhYmxlLCBvcHRpb25zLmRhdGEpO1xuICAgICAgICAgICAgICAgICAgICAvLyBDbG9zZSB0aGUgYWN0aW9uIGRpYWxvZyBhZnRlciB0cmlnZ2VyaW5nIG9uQ2FuY2VsIGNhbGxiYWNrIGV2ZW50XG4gICAgICAgICAgICAgICAgICAgIGRpYWxvZ1NlcnZpY2UuY2xvc2UoZGlhbG9nSWQsIHZhcmlhYmxlLl9jb250ZXh0KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIG9uQ2xvc2U6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaW5pdGlhdGVDYWxsYmFjaygnb25DbG9zZScsIHZhcmlhYmxlLCBvcHRpb25zLmRhdGEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBQVUJMSUMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuXG4gICAgbm90aWZ5KHZhcmlhYmxlLCBvcHRpb25zLCBzdWNjZXNzLCBlcnJvcikge1xuICAgICAgICBjb25zdCBvcGVyYXRpb24gPSB2YXJpYWJsZS5vcGVyYXRpb247XG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuXG4gICAgICAgIGlmIChvcGVyYXRpb24gPT09ICd0b2FzdCcpIHtcbiAgICAgICAgICAgIHRoaXMubm90aWZ5VmlhVG9hc3Rlcih2YXJpYWJsZSwgb3B0aW9ucyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm5vdGlmeVZpYURpYWxvZyh2YXJpYWJsZSwgb3B0aW9ucyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRNZXNzYWdlKHZhcmlhYmxlKSB7XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy50ZXh0O1xuICAgIH1cblxuICAgIHNldE1lc3NhZ2UodmFyaWFibGUsIHRleHQpIHtcbiAgICAgICAgaWYgKF8uaXNTdHJpbmcodGV4dCkpIHtcbiAgICAgICAgICAgIHZhcmlhYmxlLmRhdGFCaW5kaW5nLnRleHQgPSB0ZXh0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy50ZXh0O1xuICAgIH1cblxuICAgIGdldE9rQnV0dG9uVGV4dCh2YXJpYWJsZSkge1xuICAgICAgICByZXR1cm4gdmFyaWFibGUuZGF0YUJpbmRpbmcub2tCdXR0b25UZXh0O1xuICAgIH1cbiAgICBzZXRPa0J1dHRvblRleHQodmFyaWFibGUsIHRleHQpIHtcbiAgICAgICAgaWYgKF8uaXNTdHJpbmcodGV4dCkpIHtcbiAgICAgICAgICAgIHZhcmlhYmxlLmRhdGFCaW5kaW5nLm9rQnV0dG9uVGV4dCA9IHRleHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLm9rQnV0dG9uVGV4dDtcbiAgICB9XG5cbiAgICBnZXRUb2FzdGVyRHVyYXRpb24odmFyaWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmR1cmF0aW9uO1xuICAgIH1cblxuICAgIHNldFRvYXN0ZXJEdXJhdGlvbih2YXJpYWJsZSwgZHVyYXRpb24pIHtcbiAgICAgICAgdmFyaWFibGUuZGF0YUJpbmRpbmcuZHVyYXRpb24gPSBkdXJhdGlvbjtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmR1cmF0aW9uO1xuICAgIH1cblxuICAgIGdldFRvYXN0ZXJDbGFzcyh2YXJpYWJsZSkge1xuICAgICAgICByZXR1cm4gdmFyaWFibGUuZGF0YUJpbmRpbmcuY2xhc3M7XG4gICAgfVxuXG4gICAgc2V0VG9hc3RlckNsYXNzKHZhcmlhYmxlLCB0eXBlKSB7XG4gICAgICAgIGlmIChfLmlzU3RyaW5nKHR5cGUpKSB7XG4gICAgICAgICAgICB2YXJpYWJsZS5kYXRhQmluZGluZy5jbGFzcyA9IHR5cGU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNsYXNzO1xuICAgIH1cblxuICAgIGdldFRvYXN0ZXJQb3NpdGlvbih2YXJpYWJsZSkge1xuICAgICAgICByZXR1cm4gdmFyaWFibGUuZGF0YUJpbmRpbmcuY2xhc3M7XG4gICAgfVxuXG4gICAgc2V0VG9hc3RlclBvc2l0aW9uKHZhcmlhYmxlLCBwb3NpdGlvbikge1xuICAgICAgICBpZiAoXy5pc1N0cmluZyhwb3NpdGlvbikpIHtcbiAgICAgICAgICAgIHZhcmlhYmxlLmRhdGFCaW5kaW5nLnBvc2l0aW9uID0gcG9zaXRpb247XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLnBvc2l0aW9uO1xuICAgIH1cblxuICAgIGdldEFsZXJ0VHlwZSh2YXJpYWJsZSkge1xuICAgICAgICByZXR1cm4gdmFyaWFibGUuZGF0YUJpbmRpbmcuYWxlcnR0eXBlO1xuICAgIH1cblxuICAgIHNldEFsZXJ0VHlwZSh2YXJpYWJsZSwgYWxlcnR0eXBlKSB7XG4gICAgICAgIGlmIChfLmlzU3RyaW5nKGFsZXJ0dHlwZSkpIHtcbiAgICAgICAgICAgIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmFsZXJ0dHlwZSA9IGFsZXJ0dHlwZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFyaWFibGUuZGF0YUJpbmRpbmcuYWxlcnR0eXBlO1xuICAgIH1cblxuICAgIGdldENhbmNlbEJ1dHRvblRleHQodmFyaWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNhbmNlbEJ1dHRvblRleHQ7XG4gICAgfVxuXG4gICAgc2V0Q2FuY2VsQnV0dG9uVGV4dCh2YXJpYWJsZSwgdGV4dCkge1xuICAgICAgICBpZiAoXy5pc1N0cmluZyh0ZXh0KSkge1xuICAgICAgICAgICAgdmFyaWFibGUuZGF0YUJpbmRpbmcuY2FuY2VsQnV0dG9uVGV4dCA9IHRleHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNhbmNlbEJ1dHRvblRleHQ7XG4gICAgfVxufVxuIl19
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWFjdGlvbi5tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFyaWFibGVzL3NyYy9tYW5hZ2VyL2FjdGlvbi9ub3RpZmljYXRpb24tYWN0aW9uLm1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUl0RyxNQUFNLE9BQU8seUJBQTBCLFNBQVEsaUJBQWlCO0lBRXBELGNBQWMsQ0FBQyxRQUFRO1FBQzNCLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVPLGFBQWEsQ0FBQyxRQUFRO1FBQzFCLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxPQUFPO1FBQ3RDLE1BQU0sSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFDOUUsSUFBSSxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQ25ELEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxFQUNyQixhQUFhLEdBQUcsUUFBUSxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLGVBQWUsSUFBSSxjQUFjLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUN6SCxXQUFXLEdBQUcsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQ3ZD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QVMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFFBQVEsRUFBRSxTQUFTO1FBQzVCLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN2QixRQUFRLENBQUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7U0FDOUM7UUFDRCxPQUFPLFFBQVEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO0lBQzFDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxRQUFRO1FBQ3hCLE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqRCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUk7UUFDOUIsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2xCLFFBQVEsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1NBQ2hEO1FBQ0QsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDO0lBQ2pELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VBY3Rpb25NYW5hZ2VyIH0gZnJvbSAnLi9iYXNlLWFjdGlvbi5tYW5hZ2VyJztcbmltcG9ydCB7IFZBUklBQkxFX0NPTlNUQU5UUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy92YXJpYWJsZXMuY29uc3RhbnRzJztcbmltcG9ydCB7IGluaXRpYXRlQ2FsbGJhY2ssIHRvYXN0ZXJTZXJ2aWNlLCBkaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXRpbC92YXJpYWJsZS92YXJpYWJsZXMudXRpbHMnO1xuXG5kZWNsYXJlIGNvbnN0IF87XG5cbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25BY3Rpb25NYW5hZ2VyIGV4dGVuZHMgQmFzZUFjdGlvbk1hbmFnZXIge1xuXG4gICAgcHJpdmF0ZSBvblRvYXN0ZXJDbGljayh2YXJpYWJsZSkge1xuICAgICAgICBpbml0aWF0ZUNhbGxiYWNrKCdvbkNsaWNrJywgdmFyaWFibGUsICcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uVG9hc3RlckhpZGUodmFyaWFibGUpIHtcbiAgICAgICAgaW5pdGlhdGVDYWxsYmFjaygnb25IaWRlJywgdmFyaWFibGUsICcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG5vdGlmeVZpYVRvYXN0ZXIodmFyaWFibGUsIG9wdGlvbnMpIHtcbiAgICAgICAgY29uc3QgdHlwZSA9IChvcHRpb25zLmNsYXNzIHx8IHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNsYXNzIHx8ICdpbmZvJykudG9Mb3dlckNhc2UoKSxcbiAgICAgICAgICAgIGJvZHkgPSBvcHRpb25zLm1lc3NhZ2UgfHwgdmFyaWFibGUuZGF0YUJpbmRpbmcudGV4dCxcbiAgICAgICAgICAgIHRpdGxlID0gb3B0aW9ucy50aXRsZSxcbiAgICAgICAgICAgIHBvc2l0aW9uQ2xhc3MgPSAndG9hc3QtJyArIChvcHRpb25zLnBvc2l0aW9uIHx8IHZhcmlhYmxlLmRhdGFCaW5kaW5nLnRvYXN0ZXJQb3NpdGlvbiB8fCAnYm90dG9tIHJpZ2h0JykucmVwbGFjZSgnICcsICctJyksXG4gICAgICAgICAgICBwYXJ0aWFsUGFnZSA9IHZhcmlhYmxlLmRhdGFCaW5kaW5nLnBhZ2UsXG4gICAgICAgICAgICBERUZBVUxUX0RVUkFUSU9OID0gMzAwMDtcbiAgICAgICAgbGV0IGR1cmF0aW9uID0gcGFyc2VJbnQob3B0aW9ucy5kdXJhdGlvbiB8fCB2YXJpYWJsZS5kYXRhQmluZGluZy5kdXJhdGlvbiwgbnVsbCksXG4gICAgICAgICAgICB0b2FzdGVyO1xuXG4gICAgICAgIC8vIGR1cmF0aW9uXG4gICAgICAgIGlmICghZHVyYXRpb24pIHtcbiAgICAgICAgICAgIGR1cmF0aW9uID0gKGR1cmF0aW9uICE9PSAwICYmIHR5cGUgPT09ICdzdWNjZXNzJykgPyBERUZBVUxUX0RVUkFUSU9OIDogMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodmFyaWFibGUuZGF0YUJpbmRpbmcuY29udGVudCAmJiB2YXJpYWJsZS5kYXRhQmluZGluZy5jb250ZW50ID09PSAncGFnZScgJiYgcGFydGlhbFBhZ2UpIHtcbiAgICAgICAgICAgIHRvYXN0ZXIgPSB0b2FzdGVyU2VydmljZS5zaG93Q3VzdG9tKHBhcnRpYWxQYWdlLCB7cG9zaXRpb25DbGFzczogcG9zaXRpb25DbGFzcywgdGltZU91dDogZHVyYXRpb24sXG4gICAgICAgICAgICAgICAgcGFydGlhbFBhcmFtczogdmFyaWFibGUuX2JpbmRkYXRhU2V0LCBjb250ZXh0OiB2YXJpYWJsZS5fY29udGV4dH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdG9hc3RlciA9IHRvYXN0ZXJTZXJ2aWNlLnNob3codHlwZSwgdGl0bGUsIGJvZHkgfHwgbnVsbCwge3Bvc2l0aW9uQ2xhc3M6IHBvc2l0aW9uQ2xhc3MsIHRpbWVPdXQ6IGR1cmF0aW9uLCBlbmFibGVIdG1sOiB0cnVlfSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjYWxsYmFja3NcbiAgICAgICAgaWYgKHZhcmlhYmxlLm9uQ2xpY2spIHtcbiAgICAgICAgICAgIHRvYXN0ZXIub25UYXAuc3Vic2NyaWJlKCB0aGlzLm9uVG9hc3RlckNsaWNrLmJpbmQodGhpcywgdmFyaWFibGUpICk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZhcmlhYmxlLm9uSGlkZSkge1xuICAgICAgICAgICAgdG9hc3Rlci5vbkhpZGRlbi5zdWJzY3JpYmUoIHRoaXMub25Ub2FzdGVySGlkZS5iaW5kKHRoaXMsIHZhcmlhYmxlKSApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlWaWFEaWFsb2codmFyaWFibGUsIG9wdGlvbnMpIHtcbiAgICAgICAgY29uc3QgY29tbW9uUGFnZURpYWxvZ0lkID0gJ0NvbW1vbicgKyBfLmNhcGl0YWxpemUodmFyaWFibGUub3BlcmF0aW9uKSArICdEaWFsb2cnLFxuICAgICAgICAgICAgZGlhbG9nSWQgPSBjb21tb25QYWdlRGlhbG9nSWQ7XG4gICAgICAgIGNvbnN0IGNsb3NlQ2FsbEJhY2tGbiA9ICgpID0+IGluaXRpYXRlQ2FsbGJhY2soJ29uT2snLCB2YXJpYWJsZSwgb3B0aW9ucy5kYXRhKTtcbiAgICAgICAgZGlhbG9nU2VydmljZS5vcGVuKGRpYWxvZ0lkLCB1bmRlZmluZWQsIHtcbiAgICAgICAgICAgIG5vdGlmaWNhdGlvbjoge1xuICAgICAgICAgICAgICAgICd0aXRsZScgOiBvcHRpb25zLnRpdGxlIHx8IHZhcmlhYmxlLmRhdGFCaW5kaW5nLnRpdGxlLFxuICAgICAgICAgICAgICAgICd0ZXh0JyA6IG9wdGlvbnMubWVzc2FnZSB8fCB2YXJpYWJsZS5kYXRhQmluZGluZy50ZXh0LFxuICAgICAgICAgICAgICAgICdva0J1dHRvblRleHQnIDogb3B0aW9ucy5va0J1dHRvblRleHQgfHwgdmFyaWFibGUuZGF0YUJpbmRpbmcub2tCdXR0b25UZXh0IHx8ICdPSycsXG4gICAgICAgICAgICAgICAgJ2NhbmNlbEJ1dHRvblRleHQnIDogb3B0aW9ucy5jYW5jZWxCdXR0b25UZXh0IHx8IHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNhbmNlbEJ1dHRvblRleHQgfHwgJ0NBTkNFTCcsXG4gICAgICAgICAgICAgICAgJ2FsZXJ0dHlwZScgOiBvcHRpb25zLmFsZXJ0dHlwZSB8fCB2YXJpYWJsZS5kYXRhQmluZGluZy5hbGVydHR5cGUgfHwgJ2luZm9ybWF0aW9uJyxcbiAgICAgICAgICAgICAgICBvbk9rOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIENsb3NlIHRoZSBhY3Rpb24gZGlhbG9nIGFmdGVyIHRyaWdnZXJpbmcgb25PayBjYWxsYmFjayBldmVudFxuICAgICAgICAgICAgICAgICAgICBkaWFsb2dTZXJ2aWNlLmNsb3NlKGRpYWxvZ0lkLCB1bmRlZmluZWQsIGNsb3NlQ2FsbEJhY2tGbik7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBvbkNhbmNlbDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpbml0aWF0ZUNhbGxiYWNrKCdvbkNhbmNlbCcsIHZhcmlhYmxlLCBvcHRpb25zLmRhdGEpO1xuICAgICAgICAgICAgICAgICAgICAvLyBDbG9zZSB0aGUgYWN0aW9uIGRpYWxvZyBhZnRlciB0cmlnZ2VyaW5nIG9uQ2FuY2VsIGNhbGxiYWNrIGV2ZW50XG4gICAgICAgICAgICAgICAgICAgIGRpYWxvZ1NlcnZpY2UuY2xvc2UoZGlhbG9nSWQsIHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBvbkNsb3NlOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGluaXRpYXRlQ2FsbGJhY2soJ29uQ2xvc2UnLCB2YXJpYWJsZSwgb3B0aW9ucy5kYXRhKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogUFVCTElDICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cblxuICAgIG5vdGlmeSh2YXJpYWJsZSwgb3B0aW9ucywgc3VjY2VzcywgZXJyb3IpIHtcbiAgICAgICAgY29uc3Qgb3BlcmF0aW9uID0gdmFyaWFibGUub3BlcmF0aW9uO1xuICAgICAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcblxuICAgICAgICBpZiAob3BlcmF0aW9uID09PSAndG9hc3QnKSB7XG4gICAgICAgICAgICB0aGlzLm5vdGlmeVZpYVRvYXN0ZXIodmFyaWFibGUsIG9wdGlvbnMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5ub3RpZnlWaWFEaWFsb2codmFyaWFibGUsIG9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0TWVzc2FnZSh2YXJpYWJsZSkge1xuICAgICAgICByZXR1cm4gdmFyaWFibGUuZGF0YUJpbmRpbmcudGV4dDtcbiAgICB9XG5cbiAgICBzZXRNZXNzYWdlKHZhcmlhYmxlLCB0ZXh0KSB7XG4gICAgICAgIGlmIChfLmlzU3RyaW5nKHRleHQpKSB7XG4gICAgICAgICAgICB2YXJpYWJsZS5kYXRhQmluZGluZy50ZXh0ID0gdGV4dDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFyaWFibGUuZGF0YUJpbmRpbmcudGV4dDtcbiAgICB9XG5cbiAgICBnZXRPa0J1dHRvblRleHQodmFyaWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLm9rQnV0dG9uVGV4dDtcbiAgICB9XG4gICAgc2V0T2tCdXR0b25UZXh0KHZhcmlhYmxlLCB0ZXh0KSB7XG4gICAgICAgIGlmIChfLmlzU3RyaW5nKHRleHQpKSB7XG4gICAgICAgICAgICB2YXJpYWJsZS5kYXRhQmluZGluZy5va0J1dHRvblRleHQgPSB0ZXh0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy5va0J1dHRvblRleHQ7XG4gICAgfVxuXG4gICAgZ2V0VG9hc3RlckR1cmF0aW9uKHZhcmlhYmxlKSB7XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy5kdXJhdGlvbjtcbiAgICB9XG5cbiAgICBzZXRUb2FzdGVyRHVyYXRpb24odmFyaWFibGUsIGR1cmF0aW9uKSB7XG4gICAgICAgIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmR1cmF0aW9uID0gZHVyYXRpb247XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy5kdXJhdGlvbjtcbiAgICB9XG5cbiAgICBnZXRUb2FzdGVyQ2xhc3ModmFyaWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNsYXNzO1xuICAgIH1cblxuICAgIHNldFRvYXN0ZXJDbGFzcyh2YXJpYWJsZSwgdHlwZSkge1xuICAgICAgICBpZiAoXy5pc1N0cmluZyh0eXBlKSkge1xuICAgICAgICAgICAgdmFyaWFibGUuZGF0YUJpbmRpbmcuY2xhc3MgPSB0eXBlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy5jbGFzcztcbiAgICB9XG5cbiAgICBnZXRUb2FzdGVyUG9zaXRpb24odmFyaWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNsYXNzO1xuICAgIH1cblxuICAgIHNldFRvYXN0ZXJQb3NpdGlvbih2YXJpYWJsZSwgcG9zaXRpb24pIHtcbiAgICAgICAgaWYgKF8uaXNTdHJpbmcocG9zaXRpb24pKSB7XG4gICAgICAgICAgICB2YXJpYWJsZS5kYXRhQmluZGluZy5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy5wb3NpdGlvbjtcbiAgICB9XG5cbiAgICBnZXRBbGVydFR5cGUodmFyaWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmFsZXJ0dHlwZTtcbiAgICB9XG5cbiAgICBzZXRBbGVydFR5cGUodmFyaWFibGUsIGFsZXJ0dHlwZSkge1xuICAgICAgICBpZiAoXy5pc1N0cmluZyhhbGVydHR5cGUpKSB7XG4gICAgICAgICAgICB2YXJpYWJsZS5kYXRhQmluZGluZy5hbGVydHR5cGUgPSBhbGVydHR5cGU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmFsZXJ0dHlwZTtcbiAgICB9XG5cbiAgICBnZXRDYW5jZWxCdXR0b25UZXh0KHZhcmlhYmxlKSB7XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy5jYW5jZWxCdXR0b25UZXh0O1xuICAgIH1cblxuICAgIHNldENhbmNlbEJ1dHRvblRleHQodmFyaWFibGUsIHRleHQpIHtcbiAgICAgICAgaWYgKF8uaXNTdHJpbmcodGV4dCkpIHtcbiAgICAgICAgICAgIHZhcmlhYmxlLmRhdGFCaW5kaW5nLmNhbmNlbEJ1dHRvblRleHQgPSB0ZXh0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YXJpYWJsZS5kYXRhQmluZGluZy5jYW5jZWxCdXR0b25UZXh0O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -8,6 +8,12 @@ import { wmSetDependency, BaseAction, getTarget, setValueToNode, getTargetNodeKe
|
|
|
8
8
|
import { setDependency, simulateFileDownload } from '../util/variable/variables.utils';
|
|
9
9
|
import { MetadataService } from './metadata-service/metadata.service';
|
|
10
10
|
import { VARIABLE_CONSTANTS } from '../constants/variables.constants';
|
|
11
|
+
import { appManager } from '../util/variable/variables.utils';
|
|
12
|
+
export class Formatter {
|
|
13
|
+
format(value, format) {
|
|
14
|
+
return appManager.getPipe('date').transform(value, format);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
11
17
|
export class VariablesService {
|
|
12
18
|
constructor(httpService, metadataService, navigationService, routerService, toasterService, oAuthService, securityService, dialogService) {
|
|
13
19
|
this.httpService = httpService;
|
|
@@ -131,6 +137,7 @@ export class VariablesService {
|
|
|
131
137
|
if (this.isVariableSeperated(variablesJson, variableName)) {
|
|
132
138
|
this.processBinding(varInstance, scope, 'dataBinding', this.getBindSourceTarget(varInstance));
|
|
133
139
|
varInstance.httpService = this.httpService;
|
|
140
|
+
varInstance.dateFormatter = new Formatter();
|
|
134
141
|
varInstance.subscribe('afterInvoke', () => $invokeWatchers(true));
|
|
135
142
|
if (varInstance.category === 'wm.LiveVariable' && varInstance.operation === 'read') {
|
|
136
143
|
processFilterExpBindNode(varInstance._context, varInstance.filterExpressions, varInstance);
|
|
@@ -183,4 +190,4 @@ VariablesService.ctorParameters = () => [
|
|
|
183
190
|
{ type: SecurityService },
|
|
184
191
|
{ type: AbstractDialogService }
|
|
185
192
|
];
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFibGVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy92YXJpYWJsZXMvc3JjL3NlcnZpY2UvdmFyaWFibGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekMsT0FBTyxFQUNILE1BQU0sRUFDTixXQUFXLEVBQ1gscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUNuQix5QkFBeUIsRUFDekIsc0JBQXNCLEVBQUUsd0JBQXdCLEVBQUUsZUFBZSxFQUNwRSxNQUFNLFVBQVUsQ0FBQztBQUNsQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0SSxPQUFPLEVBQUMsYUFBYSxFQUFFLG9CQUFvQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBS3RFLE1BQU0sT0FBTyxnQkFBZ0I7SUFFekIsWUFDWSxXQUFnQyxFQUNoQyxlQUFnQyxFQUNoQyxpQkFBNEMsRUFDNUMsYUFBcUIsRUFDckIsY0FBc0MsRUFDdEMsWUFBMEIsRUFDMUIsZUFBZ0MsRUFDaEMsYUFBb0M7UUFQcEMsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQ2hDLG9CQUFlLEdB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RUQsa0JBQWtCLENBQUMsSUFBSSxFQUFFLEdBQUc7UUFDeEIsYUFBYSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN6QixlQUFlLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7OztZQXBMSixVQUFVOzs7WUFmUCxtQkFBbUI7WUFVZCxlQUFlO1lBVHBCLHlCQUF5QjtZQVBwQixNQUFNO1lBUVgsc0JBQXNCO1lBRWpCLFlBQVk7WUFDWixlQUFlO1lBTnBCLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7XG4gICAgJHdhdGNoLFxuICAgICRwYXJzZUV2ZW50LFxuICAgIEFic3RyYWN0RGlhbG9nU2VydmljZSxcbiAgICBBYnN0cmFjdEh0dHBTZXJ2aWNlLFxuICAgIEFic3RyYWN0TmF2aWdhdGlvblNlcnZpY2UsXG4gICAgQWJzdHJhY3RUb2FzdGVyU2VydmljZSwgcHJvY2Vzc0ZpbHRlckV4cEJpbmROb2RlLCAkaW52b2tlV2F0Y2hlcnMsIGdldENsb25lZE9iamVjdFxufSBmcm9tICdAd20vY29yZSc7XG5pbXBvcnQgeyBPQXV0aFNlcnZpY2UgfSBmcm9tICdAd20vb0F1dGgnO1xuaW1wb3J0IHsgU2VjdXJpdHlTZXJ2aWNlIH0gZnJvbSAnQHdtL3NlY3VyaXR5JztcblxuaW1wb3J0IHsgVmFyaWFibGVGYWN0b3J5IH0gZnJvbSAnLi4vZmFjdG9yeS92YXJpYWJsZS5mYWN0b3J5JztcbmltcG9ydCB7IHdtU2V0RGVwZW5kZW5jeSwgQmFzZUFjdGlvbiwgZ2V0VGFyZ2V0LCBzZXRWYWx1ZVRvTm9kZSwgZ2V0VGFyZ2V0Tm9kZUtleSwgaW50ZXJuYWxCb3VuZE5vZGVNYXAgfSBmcm9tICdAd2F2ZW1ha2VyL3ZhcmlhYmxlcyc7XG5pbXBvcnQge3NldERlcGVuZGVuY3ksIHNpbXVsYXRlRmlsZURvd25sb2FkfSBmcm9tICcuLi91dGlsL3ZhcmlhYmxlL3ZhcmlhYmxlcy51dGlscyc7XG5pbXBvcnQgeyBNZXRhZGF0YVNlcnZpY2UgfSBmcm9tICcuL21ldGFkYXRhLXNlcnZpY2UvbWV0YWRhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBWQVJJQUJMRV9DT05TVEFOVFMgfSBmcm9tICcuLi9jb25zdGFudHMvdmFyaWFibGVzLmNvbnN0YW50cyc7XG5cbmRlY2xhcmUgY29uc3QgXztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFZhcmlhYmxlc1NlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaHR0cFNlcnZpY2U6IEFic3RyYWN0SHR0cFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbWV0YWRhdGFTZXJ2aWNlOiBNZXRhZGF0YVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmF2aWdhdGlvblNlcnZpY2U6IEFic3RyYWN0TmF2aWdhdGlvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGVyU2VydmljZTogUm91dGVyLFxuICAgICAgICBwcml2YXRlIHRvYXN0ZXJTZXJ2aWNlOiBBYnN0cmFjdFRvYXN0ZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIG9BdXRoU2VydmljZTogT0F1dGhTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHNlY3VyaXR5U2VydmljZTogU2VjdXJpdHlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IEFic3RyYWN0RGlhbG9nU2VydmljZVxuICAgICkge1xuICAgICAgICAvLyBzZXQgZXh0ZXJuYWwgZGVwZW5kZW5jaWVzLCB0byBiZSB1c2VkIGFjcm9zcyB2YXJpYWJsZSBjbGFzc2VzLCBtYW5hZ2VycyBhbmQgdXRpbHNcbiAgICAgICAgc2V0RGVwZW5kZW5jeSgnaHR0cCcsIHRoaXMuaHR0cFNlcnZpY2UpO1xuICAgICAgICBzZXREZXBlbmRlbmN5KCdtZXRhZGF0YScsIHRoaXMubWV0YWRhdGFTZXJ2aWNlKTtcbiAgICAgICAgc2V0RGVwZW5kZW5jeSgnbmF2aWdhdGlvblNlcnZpY2UnLCB0aGlzLm5hdmlnYXRpb25TZXJ2aWNlKTtcbiAgICAgICAgc2V0RGVwZW5kZW5jeSgncm91dGVyJywgdGhpcy5yb3V0ZXJTZXJ2aWNlKTtcbiAgICAgICAgc2V0RGVwZW5kZW5jeSgndG9hc3RlcicsIHRoaXMudG9hc3RlclNlcnZpY2UpO1xuICAgICAgICBzZXREZXBlbmRlbmN5KCdvQXV0aCcsIHRoaXMub0F1dGhTZXJ2aWNlKTtcbiAgICAgICAgc2V0RGVwZW5kZW5jeSgnc2VjdXJpdHknLCB0aGlzLnNlY3VyaXR5U2VydmljZSk7XG4gICAgICAgIHNldERlcGVuZGVuY3koJ2RpYWxvZycsIHRoaXMuZGlhbG9nU2VydmljZSk7XG4gICAgICAgIHdtU2V0RGVwZW5kZW5jeSgnb0F1dGgnLCB0aGlzLm9BdXRoU2VydmljZSk7XG4gICAgICAgIHdtU2V0RGVwZW5kZW5jeSgnc2VjdXJpdHknLCB0aGlzLnNlY3VyaXR5U2VydmljZSk7XG4gICAgICAgIHdtU2V0RGVwZW5kZW5jeSgnbWV0YWRhdGEnLCB0aGlzLm1ldGFkYXRhU2VydmljZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9vcCB0aHJvdWdoIGEgY29sbGVjdGlvbiBvZiB2YXJpYWJsZXMvYWN0aW9uc1xuICAgICAqIHRyaWdnZXIgY2FuY2VsIG9uIGVhY2ggKG9mIGV4aXN0cylcbiAgICAgKiBAcGFyYW0gY29sbGVjdGlvblxuICAgICAqL1xuICAgIGJ1bGtDYW5jZWwoY29sbGVjdGlvbikge1xuICAgICAgICBPYmplY3Qua2V5cyhjb2xsZWN0aW9uKS5mb3JFYWNoKG5hbWUgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFyaWFibGUgPSBjb2xsZWN0aW9uW25hbWVdO1xuICAgICAgICAgICAgaWYgKF8uaXNGdW5jdGlvbih2YXJpYWJsZS5jYW5jZWwpKSB7XG4gICAgICAgICAgICAgICAgdmFyaWFibGUuY2FuY2VsKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGxvb3BzIG92ZXIgdGhlIHZhcmlhYmxlL2FjdGlvbnMgY29sbGVjdGlvbiBhbmQgdHJpZ2dlciBpbnZva2Ugb24gaXQgaWYgc3RhcnRVcGRhdGUgb24gaXQgaXMgdHJ1ZVxuICAgICAqIEBwYXJhbSBjb2xsZWN0aW9uXG4gICAgICovXG4gICAgdHJpZ2dlclN0YXJ0VXBkYXRlKGNvbGxlY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKFxuICAgICAgICAgICAgT2JqZWN0LmtleXMoY29sbGVjdGlvbilcbiAgICAgICAgICAgICAgICAubWFwKG5hbWUgPT4gY29sbGVjdGlvbltuYW1lXSlcbiAgICAgICAgICAgICAgICAuZmlsdGVyKCB2YXJpYWJsZSA9PiB2YXJpYWJsZT8uc3RhcnRVcGRhdGUgJiYgdmFyaWFibGUuaW52b2tlKVxuICAgICAgICAgICAgICAgIC5tYXAodmFyaWFibGUgPT4gdmFyaWFibGUuaW52b2tlKCkpXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIHByb2Nlc3NCaW5kRXhwKGQ6IGFueSwgc2NvcGU6IGFueSwgdmFyaWFibGUpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGdldFRhcmdldCh2YXJpYWJsZSksXG4gICAgICAgICAgICB0YXJnZXROb2RlS2V5ID0gZ2V0VGFyZ2V0Tm9kZUtleShkLnRhcmdldCksXG4gICAgICAgICAgICBydW5Nb2RlID0gdHJ1ZTtcbiAgICAgICAgbGV0IHYgPSBfLmlzQXJyYXkoZC52YWx1ZSkgPyBkLnZhbHVlWzBdIDogZC52YWx1ZTtcbiAgICAgICAgaWYgKHYpIHtcbiAgICAgICAgICAgIGlmICh2LnN0YXJ0c1dpdGggJiYgdi5zdGFydHNXaXRoKCdiaW5kOicpKSB7XG4gICAgICAgICAgICAgICAgdiA9ICR3YXRjaCh2LnJlcGxhY2UoJ2JpbmQ6JywgJycpLCBzY29wZSwge30sIHZhcmlhYmxlLmludm9rZU9uUGFyYW1DaGFuZ2UuYmluZCh2YXJpYWJsZSwgZCksIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsICgpID0+IHZhcmlhYmxlLmlzTXV0ZWQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICghXy5pc1VuZGVmaW5lZChkLnZhbHVlKSkge1xuICAgICAgICAgICAgICAgIHNldFZhbHVlVG9Ob2RlKGQudGFyZ2V0LCBkLCByb290LCB2YXJpYWJsZSwgZC52YWx1ZSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgaWYgKHJ1bk1vZGUgJiYgcm9vdCAhPT0gdGFyZ2V0Tm9kZUtleSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWludGVybmFsQm91bmROb2RlTWFwLmhhcyh2YXJpYWJsZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsQm91bmROb2RlTWFwLnNldCh2YXJpYWJsZSwge30pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF8uc2V0KGludGVybmFsQm91bmROb2RlTWFwLmdldCh2YXJpYWJsZSksIFsgdmFyaWFibGUubmFtZSwgcm9vdCwgZC50YXJnZXQgXSwgZC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuYW1lOiBkLnRhcmdldCxcbiAgICAgICAgICAgIHZhbHVlOiB2XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJvY2Vzc0JpbmRpbmcodmFyaWFibGU6IGFueSwgY29udGV4dDogYW55LCBiaW5kU291cmNlPzogc3RyaW5nLCBiaW5kVGFyZ2V0Pzogc3RyaW5nKSB7XG4gICAgICAgIGJpbmRTb3VyY2UgPSBiaW5kU291cmNlIHx8ICdkYXRhQmluZGluZyc7XG4gICAgICAgIGJpbmRUYXJnZXQgPSBiaW5kVGFyZ2V0IHx8ICdkYXRhQmluZGluZyc7XG5cbiAgICAgICAgY29uc3QgYmluZE1hcCA9IHZhcmlhYmxlW2JpbmRTb3VyY2VdO1xuICAgICAgICB2YXJpYWJsZVtiaW5kU291cmNlXSA9IHt9O1xuICAgICAgICB2YXJpYWJsZVsnX2JpbmQnICsgYmluZFNvdXJjZV0gPSBiaW5kTWFwO1xuICAgICAgICBpZiAoIWJpbmRNYXAgfHwgIV8uaXNBcnJheShiaW5kTWFwKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGJpbmRNYXAuZm9yRWFjaCggKG5vZGUpID0+IHtcbiAgICAgICAgICAgIC8qIGZvciBzdGF0aWMgdmFyaWFibGUgY2hhbmdlIHRoZSBiaW5kaW5nIHdpdGggdGFyZ2V0ICdkYXRhQmluZGluZycgdG8gJ2RhdGFTZXQnLCBhcyB0aGUgcmVzdWx0cyBoYXZlIHRvIHJlZmxlY3QgZGlyZWN0bHkgaW4gdGhlIGRhdGFTZXQgKi9cbiAgICAgICAgICAgIGlmICh2YXJpYWJsZS5jYXRlZ29yeSA9PT0gJ3dtLlZhcmlhYmxlJyAmJiBub2RlLnRhcmdldCA9PT0gJ2RhdGFCaW5kaW5nJykge1xuICAgICAgICAgICAgICAgIG5vZGUudGFyZ2V0ID0gJ2RhdGFTZXQnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5wcm9jZXNzQmluZEV4cChub2RlLCBjb250ZXh0LCB2YXJpYWJsZSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGlzVmFyaWFibGVTZXBlcmF0ZWQodmFyaWFibGVzSnNvbiwgdmFyaWFibGVOYW1lKSB7XG4gICAgICAgIHJldHVybiB2YXJpYWJsZXNKc29uW3ZhcmlhYmxlTmFtZV0uY2F0ZWdvcnkgPT09ICd3bS5WYXJpYWJsZScgfHwgdmFyaWFibGVzSnNvblt2YXJpYWJsZU5hbWVdLmNhdGVnb3J5ID09PSAnd20uU2VydmljZVZhcmlhYmxlJyB8fFxuICAgICAgICAgICAgdmFyaWFibGVzSnNvblt2YXJpYWJsZU5hbWVdLmNhdGVnb3J5ID09PSAnd20uTGl2ZVZhcmlhYmxlJyB8fCB2YXJpYWJsZXNKc29uW3ZhcmlhYmxlTmFtZV0uY2F0ZWdvcnkgPT09ICd3bS5DcnVkVmFyaWFibGUnXG4gICAgfVxuXG4gICAgZ2V0QmluZFNvdXJjZVRhcmdldCh2YXJpYWJsZSkge1xuICAgICAgICBpZiAodmFyaWFibGUuY2F0ZWdvcnkgPT09ICd3bS5MaXZlVmFyaWFibGUnKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFyaWFibGUub3BlcmF0aW9uID09PSAncmVhZCcgPyAnZmlsdGVyRmllbGRzJyA6ICdpbnB1dEZpZWxkcyc7XG4gICAgICAgIH0gZWxzZSBpZiAodmFyaWFibGUuY2F0ZWdvcnkgPT09ICd3bS5Nb2RlbFZhcmlhYmxlJykge1xuICAgICAgICAgICAgcmV0dXJuICdkYXRhU2V0JztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAnZGF0YUJpbmRpbmcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGFrZXMgdGhlIHJhdyB2YXJpYWJsZXMgYW5kIGFjdGlvbnMganNvbiBhcyBpbnB1dFxuICAgICAqIEluaXRpYWxpemUgdGhlIHZhcmlhYmxlIGFuZCBhY3Rpb24gaW5zdGFuY2VzIHRocm91Z2ggdGhlIGZhY3RvcnlcbiAgICAgKiBjb2xsZWN0IHRoZSB2YXJpYWJsZXMgYW5kIGFjdGlvbnMgaW4gc2VwYXJhdGUgbWFwcyBhbmQgcmV0dXJuIHRoZSBjb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IHBhZ2VcbiAgICAgKiBAcGFyYW0gdmFyaWFibGVzSnNvblxuICAgICAqIEBwYXJhbSBzY29wZVxuICAgICAqIEByZXR1cm5zIHtWYXJpYWJsZXMgLCBBY3Rpb25zfVxuICAgICAqL1xuICAgIHJlZ2lzdGVyKHBhZ2U6IHN0cmluZywgdmFyaWFibGVzSnNvbjogYW55LCBzY29wZTogYW55KSB7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlSW5zdGFuY2VzID0ge1xuICAgICAgICAgICAgVmFyaWFibGVzOiB7fSxcbiAgICAgICAgICAgIEFjdGlvbnM6IHt9LFxuICAgICAgICAgICAgY2FsbGJhY2s6IHRoaXMudHJpZ2dlclN0YXJ0VXBkYXRlXG4gICAgICAgIH07XG4gICAgICAgIGxldCB2YXJJbnN0YW5jZTtcblxuICAgICAgICBmb3IgKGNvbnN0IHZhcmlhYmxlTmFtZSBpbiB2YXJpYWJsZXNKc29uKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJhbXM6IGFueSA9IHt9O1xuICAgICAgICAgICAgdmFySW5zdGFuY2UgPSBWYXJpYWJsZUZhY3RvcnkuY3JlYXRlKHZhcmlhYmxlc0pzb25bdmFyaWFibGVOYW1lXSwgc2NvcGUpO1xuICAgICAgICAgICAgdmFySW5zdGFuY2UuaW5pdCgpO1xuICAgICAgICAgICBpZiAodGhpcy5pc1ZhcmlhYmxlU2VwZXJhdGVkKHZhcmlhYmxlc0pzb24sIHZhcmlhYmxlTmFtZSkpIHtcbiAgICAgICAgICAgICAgIHRoaXMucHJvY2Vzc0JpbmRpbmcodmFySW5zdGFuY2UsIHNjb3BlLCAnZGF0YUJpbmRpbmcnLCB0aGlzLmdldEJpbmRTb3VyY2VUYXJnZXQodmFySW5zdGFuY2UpKTtcbiAgICAgICAgICAgICAgIHZhckluc3RhbmNlLmh0dHBTZXJ2aWNlID0gdGhpcy5odHRwU2VydmljZTtcbiAgICAgICAgICAgICAgIHZhckluc3RhbmNlLnN1YnNjcmliZSgnYWZ0ZXJJbnZva2UnLCAoKSA9PiAkaW52b2tlV2F0Y2hlcnModHJ1ZSkpO1xuICAgICAgICAgICAgICAgaWYgKHZhckluc3RhbmNlLmNhdGVnb3J5ID09PSAnd20uTGl2ZVZhcmlhYmxlJyAmJiB2YXJJbnN0YW5jZS5vcGVyYXRpb24gPT09ICdyZWFkJykge1xuICAgICAgICAgICAgICAgICAgIHByb2Nlc3NGaWx0ZXJFeHBCaW5kTm9kZSh2YXJJbnN0YW5jZS5fY29udGV4dCwgdmFySW5zdGFuY2UuZmlsdGVyRXhwcmVzc2lvbnMsIHZhckluc3RhbmNlKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIGlmICh2YXJJbnN0YW5jZS5jYXRlZ29yeSA9PT0gJ3dtLkNydWRWYXJpYWJsZScgfHwgdmFySW5zdGFuY2UuY2F0ZWdvcnkgPT09ICd3bS5TZXJ2aWNlVmFyaWFibGUnKSB7XG4gICAgICAgICAgICAgICAgICAgdmFySW5zdGFuY2Uuc2ltdWxhdGVGaWxlRG93bmxvYWQgPSBzaW11bGF0ZUZpbGVEb3dubG9hZDtcbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICB9XG5cbiAgICAgICAgICAgaWYgKHRoaXMuaXNWYXJpYWJsZVNlcGVyYXRlZCh2YXJpYWJsZXNKc29uLCB2YXJpYWJsZU5hbWUpIHx8IHZhcmlhYmxlc0pzb25bdmFyaWFibGVOYW1lXS5jYXRlZ29yeSA9PT0gJ3dtLlRpbWVyVmFyaWFibGUnKSB7XG4gICAgICAgICAgICAgICBmb3IgKGNvbnN0IGUgaW4gVkFSSUFCTEVfQ09OU1RBTlRTLkVWRU5UKSB7XG4gICAgICAgICAgICAgICAgICAgaWYgKHZhckluc3RhbmNlW1ZBUklBQkxFX0NPTlNUQU5UUy5FVkVOVFtlXV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgdmFySW5zdGFuY2VbVkFSSUFCTEVfQ09OU1RBTlRTLkVWRU5UW2VdXSA9ICRwYXJzZUV2ZW50KHZhckluc3RhbmNlW1ZBUklBQkxFX0NPTlNUQU5UUy5FVkVOVFtlXV0pO1xuICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgIC8vIGlmIGFjdGlvbiB0eXBlLCBwdXQgaXQgaW4gQWN0aW9ucyBuYW1lc3BhY2VcbiAgICAgICAgICAgIGlmICh2YXJJbnN0YW5jZSBpbnN0YW5jZW9mIEJhc2VBY3Rpb24pIHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZUluc3RhbmNlcy5BY3Rpb25zW3ZhcmlhYmxlTmFtZV0gPSB2YXJJbnN0YW5jZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdmFyaWFibGVJbnN0YW5jZXMuVmFyaWFibGVzW3ZhcmlhYmxlTmFtZV0gPSB2YXJJbnN0YW5jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGlmIHRoZSBjb250ZXh0IGhhcyBvbkRlc3Ryb3kgbGlzdGVuZXIsIHN1YnNjcmliZSB0aGUgZXZlbnQgYW5kIHRyaWdnZXIgY2FuY2VsIG9uIGFsbCB2YXJpYmFsZXNcbiAgICAgICAgaWYgKHNjb3BlLnJlZ2lzdGVyRGVzdHJveUxpc3RlbmVyKSB7XG4gICAgICAgICAgICBzY29wZS5yZWdpc3RlckRlc3Ryb3lMaXN0ZW5lcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5idWxrQ2FuY2VsKHZhcmlhYmxlSW5zdGFuY2VzLlZhcmlhYmxlcyk7XG4gICAgICAgICAgICAgICAgdGhpcy5idWxrQ2FuY2VsKHZhcmlhYmxlSW5zdGFuY2VzLkFjdGlvbnMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdmFyaWFibGVJbnN0YW5jZXM7XG4gICAgfVxuXG4gICAgZGVzdHJveSgpIHtcbiAgICB9XG5cbiAgICByZWdpc3RlckRlcGVuZGVuY3kobmFtZSwgcmVmKSB7XG4gICAgICAgIHNldERlcGVuZGVuY3kobmFtZSwgcmVmKTtcbiAgICAgICAgd21TZXREZXBlbmRlbmN5KG5hbWUsIHJlZik7XG4gICAgfVxufVxuIl19
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFibGVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy92YXJpYWJsZXMvc3JjL3NlcnZpY2UvdmFyaWFibGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekMsT0FBTyxFQUNILE1BQU0sRUFDTixXQUFXLEVBQ1gscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUNuQix5QkFBeUIsRUFDekIsc0JBQXNCLEVBQUUsd0JBQXdCLEVBQUUsZUFBZSxFQUNwRSxNQUFNLFVBQVUsQ0FBQztBQUNsQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0SSxPQUFPLEVBQUMsYUFBYSxFQUFFLG9CQUFvQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUc1RCxNQUFNLE9BQU8sU0FBUztJQUNsQixNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU07UUFDaEIsT0FBUSxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxD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QkFBdUIsRUFBRTtZQUMvQixLQUFLLENBQUMsdUJBQXVCLENBQUMsR0FBRyxFQUFFO2dCQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQy9DLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLGlCQUFpQixDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPO0lBQ1AsQ0FBQztJQUVELGtCQUFrQixDQUFDLElBQUksRUFBRSxHQUFHO1FBQ3hCLGFBQWEsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDekIsZUFBZSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDOzs7WUFyTEosVUFBVTs7O1lBdkJQLG1CQUFtQjtZQVVkLGVBQWU7WUFUcEIseUJBQXlCO1lBUHBCLE1BQU07WUFRWCxzQkFBc0I7WUFFakIsWUFBWTtZQUNaLGVBQWU7WUFOcEIscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtcbiAgICAkd2F0Y2gsXG4gICAgJHBhcnNlRXZlbnQsXG4gICAgQWJzdHJhY3REaWFsb2dTZXJ2aWNlLFxuICAgIEFic3RyYWN0SHR0cFNlcnZpY2UsXG4gICAgQWJzdHJhY3ROYXZpZ2F0aW9uU2VydmljZSxcbiAgICBBYnN0cmFjdFRvYXN0ZXJTZXJ2aWNlLCBwcm9jZXNzRmlsdGVyRXhwQmluZE5vZGUsICRpbnZva2VXYXRjaGVycywgZ2V0Q2xvbmVkT2JqZWN0XG59IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IE9BdXRoU2VydmljZSB9IGZyb20gJ0B3bS9vQXV0aCc7XG5pbXBvcnQgeyBTZWN1cml0eVNlcnZpY2UgfSBmcm9tICdAd20vc2VjdXJpdHknO1xuXG5pbXBvcnQgeyBWYXJpYWJsZUZhY3RvcnkgfSBmcm9tICcuLi9mYWN0b3J5L3ZhcmlhYmxlLmZhY3RvcnknO1xuaW1wb3J0IHsgd21TZXREZXBlbmRlbmN5LCBCYXNlQWN0aW9uLCBnZXRUYXJnZXQsIHNldFZhbHVlVG9Ob2RlLCBnZXRUYXJnZXROb2RlS2V5LCBpbnRlcm5hbEJvdW5kTm9kZU1hcCB9IGZyb20gJ0B3YXZlbWFrZXIvdmFyaWFibGVzJztcbmltcG9ydCB7c2V0RGVwZW5kZW5jeSwgc2ltdWxhdGVGaWxlRG93bmxvYWR9IGZyb20gJy4uL3V0aWwvdmFyaWFibGUvdmFyaWFibGVzLnV0aWxzJztcbmltcG9ydCB7IE1ldGFkYXRhU2VydmljZSB9IGZyb20gJy4vbWV0YWRhdGEtc2VydmljZS9tZXRhZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IFZBUklBQkxFX0NPTlNUQU5UUyB9IGZyb20gJy4uL2NvbnN0YW50cy92YXJpYWJsZXMuY29uc3RhbnRzJztcbmltcG9ydCB7YXBwTWFuYWdlcn0gZnJvbSAnLi4vdXRpbC92YXJpYWJsZS92YXJpYWJsZXMudXRpbHMnO1xuaW1wb3J0IHsgRGF0ZUZvcm1hdHRlciB9IGZyb20gJ0B3YXZlbWFrZXIvdmFyaWFibGVzJztcblxuZXhwb3J0IGNsYXNzIEZvcm1hdHRlciBpbXBsZW1lbnRzIERhdGVGb3JtYXR0ZXIge1xuICAgIGZvcm1hdCh2YWx1ZSwgZm9ybWF0KSB7XG4gICAgICAgIHJldHVybiAgYXBwTWFuYWdlci5nZXRQaXBlKCdkYXRlJykudHJhbnNmb3JtKHZhbHVlLCBmb3JtYXQpO1xuICAgIH1cbn1cblxuZGVjbGFyZSBjb25zdCBfO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVmFyaWFibGVzU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBodHRwU2VydmljZTogQWJzdHJhY3RIdHRwU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBtZXRhZGF0YVNlcnZpY2U6IE1ldGFkYXRhU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBuYXZpZ2F0aW9uU2VydmljZTogQWJzdHJhY3ROYXZpZ2F0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXJTZXJ2aWNlOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IEFic3RyYWN0VG9hc3RlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgb0F1dGhTZXJ2aWNlOiBPQXV0aFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgc2VjdXJpdHlTZXJ2aWNlOiBTZWN1cml0eVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZGlhbG9nU2VydmljZTogQWJzdHJhY3REaWFsb2dTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIC8vIHNldCBleHRlcm5hbCBkZXBlbmRlbmNpZXMsIHRvIGJlIHVzZWQgYWNyb3NzIHZhcmlhYmxlIGNsYXNzZXMsIG1hbmFnZXJzIGFuZCB1dGlsc1xuICAgICAgICBzZXREZXBlbmRlbmN5KCdodHRwJywgdGhpcy5odHRwU2VydmljZSk7XG4gICAgICAgIHNldERlcGVuZGVuY3koJ21ldGFkYXRhJywgdGhpcy5tZXRhZGF0YVNlcnZpY2UpO1xuICAgICAgICBzZXREZXBlbmRlbmN5KCduYXZpZ2F0aW9uU2VydmljZScsIHRoaXMubmF2aWdhdGlvblNlcnZpY2UpO1xuICAgICAgICBzZXREZXBlbmRlbmN5KCdyb3V0ZXInLCB0aGlzLnJvdXRlclNlcnZpY2UpO1xuICAgICAgICBzZXREZXBlbmRlbmN5KCd0b2FzdGVyJywgdGhpcy50b2FzdGVyU2VydmljZSk7XG4gICAgICAgIHNldERlcGVuZGVuY3koJ29BdXRoJywgdGhpcy5vQXV0aFNlcnZpY2UpO1xuICAgICAgICBzZXREZXBlbmRlbmN5KCdzZWN1cml0eScsIHRoaXMuc2VjdXJpdHlTZXJ2aWNlKTtcbiAgICAgICAgc2V0RGVwZW5kZW5jeSgnZGlhbG9nJywgdGhpcy5kaWFsb2dTZXJ2aWNlKTtcbiAgICAgICAgd21TZXREZXBlbmRlbmN5KCdvQXV0aCcsIHRoaXMub0F1dGhTZXJ2aWNlKTtcbiAgICAgICAgd21TZXREZXBlbmRlbmN5KCdzZWN1cml0eScsIHRoaXMuc2VjdXJpdHlTZXJ2aWNlKTtcbiAgICAgICAgd21TZXREZXBlbmRlbmN5KCdtZXRhZGF0YScsIHRoaXMubWV0YWRhdGFTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBsb29wIHRocm91Z2ggYSBjb2xsZWN0aW9uIG9mIHZhcmlhYmxlcy9hY3Rpb25zXG4gICAgICogdHJpZ2dlciBjYW5jZWwgb24gZWFjaCAob2YgZXhpc3RzKVxuICAgICAqIEBwYXJhbSBjb2xsZWN0aW9uXG4gICAgICovXG4gICAgYnVsa0NhbmNlbChjb2xsZWN0aW9uKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKGNvbGxlY3Rpb24pLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YXJpYWJsZSA9IGNvbGxlY3Rpb25bbmFtZV07XG4gICAgICAgICAgICBpZiAoXy5pc0Z1bmN0aW9uKHZhcmlhYmxlLmNhbmNlbCkpIHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZS5jYW5jZWwoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9vcHMgb3ZlciB0aGUgdmFyaWFibGUvYWN0aW9ucyBjb2xsZWN0aW9uIGFuZCB0cmlnZ2VyIGludm9rZSBvbiBpdCBpZiBzdGFydFVwZGF0ZSBvbiBpdCBpcyB0cnVlXG4gICAgICogQHBhcmFtIGNvbGxlY3Rpb25cbiAgICAgKi9cbiAgICB0cmlnZ2VyU3RhcnRVcGRhdGUoY29sbGVjdGlvbikge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhjb2xsZWN0aW9uKVxuICAgICAgICAgICAgICAgIC5tYXAobmFtZSA9PiBjb2xsZWN0aW9uW25hbWVdKVxuICAgICAgICAgICAgICAgIC5maWx0ZXIoIHZhcmlhYmxlID0+IHZhcmlhYmxlPy5zdGFydFVwZGF0ZSAmJiB2YXJpYWJsZS5pbnZva2UpXG4gICAgICAgICAgICAgICAgLm1hcCh2YXJpYWJsZSA9PiB2YXJpYWJsZS5pbnZva2UoKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvY2Vzc0JpbmRFeHAoZDogYW55LCBzY29wZTogYW55LCB2YXJpYWJsZSkge1xuICAgICAgICBjb25zdCByb290ID0gZ2V0VGFyZ2V0KHZhcmlhYmxlKSxcbiAgICAgICAgICAgIHRhcmdldE5vZGVLZXkgPSBnZXRUYXJnZXROb2RlS2V5KGQudGFyZ2V0KSxcbiAgICAgICAgICAgIHJ1bk1vZGUgPSB0cnVlO1xuICAgICAgICBsZXQgdiA9IF8uaXNBcnJheShkLnZhbHVlKSA/IGQudmFsdWVbMF0gOiBkLnZhbHVlO1xuICAgICAgICBpZiAodikge1xuICAgICAgICAgICAgaWYgKHYuc3RhcnRzV2l0aCAmJiB2LnN0YXJ0c1dpdGgoJ2JpbmQ6JykpIHtcbiAgICAgICAgICAgICAgICB2ID0gJHdhdGNoKHYucmVwbGFjZSgnYmluZDonLCAnJyksIHNjb3BlLCB7fSwgdmFyaWFibGUuaW52b2tlT25QYXJhbUNoYW5nZS5iaW5kKHZhcmlhYmxlLCBkKSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgKCkgPT4gdmFyaWFibGUuaXNNdXRlZCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCFfLmlzVW5kZWZpbmVkKGQudmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgc2V0VmFsdWVUb05vZGUoZC50YXJnZXQsIGQsIHJvb3QsIHZhcmlhYmxlLCBkLnZhbHVlLCB0cnVlKTtcbiAgICAgICAgICAgICAgICBpZiAocnVuTW9kZSAmJiByb290ICE9PSB0YXJnZXROb2RlS2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghaW50ZXJuYWxCb3VuZE5vZGVNYXAuaGFzKHZhcmlhYmxlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxCb3VuZE5vZGVNYXAuc2V0KHZhcmlhYmxlLCB7fSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXy5zZXQoaW50ZXJuYWxCb3VuZE5vZGVNYXAuZ2V0KHZhcmlhYmxlKSwgWyB2YXJpYWJsZS5uYW1lLCByb290LCBkLnRhcmdldCBdLCBkLnZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5hbWU6IGQudGFyZ2V0LFxuICAgICAgICAgICAgdmFsdWU6IHZcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcm9jZXNzQmluZGluZyh2YXJpYWJsZTogYW55LCBjb250ZXh0OiBhbnksIGJpbmRTb3VyY2U/OiBzdHJpbmcsIGJpbmRUYXJnZXQ/OiBzdHJpbmcpIHtcbiAgICAgICAgYmluZFNvdXJjZSA9IGJpbmRTb3VyY2UgfHwgJ2RhdGFCaW5kaW5nJztcbiAgICAgICAgYmluZFRhcmdldCA9IGJpbmRUYXJnZXQgfHwgJ2RhdGFCaW5kaW5nJztcblxuICAgICAgICBjb25zdCBiaW5kTWFwID0gdmFyaWFibGVbYmluZFNvdXJjZV07XG4gICAgICAgIHZhcmlhYmxlW2JpbmRTb3VyY2VdID0ge307XG4gICAgICAgIHZhcmlhYmxlWydfYmluZCcgKyBiaW5kU291cmNlXSA9IGJpbmRNYXA7XG4gICAgICAgIGlmICghYmluZE1hcCB8fCAhXy5pc0FycmF5KGJpbmRNYXApKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgYmluZE1hcC5mb3JFYWNoKCAobm9kZSkgPT4ge1xuICAgICAgICAgICAgLyogZm9yIHN0YXRpYyB2YXJpYWJsZSBjaGFuZ2UgdGhlIGJpbmRpbmcgd2l0aCB0YXJnZXQgJ2RhdGFCaW5kaW5nJyB0byAnZGF0YVNldCcsIGFzIHRoZSByZXN1bHRzIGhhdmUgdG8gcmVmbGVjdCBkaXJlY3RseSBpbiB0aGUgZGF0YVNldCAqL1xuICAgICAgICAgICAgaWYgKHZhcmlhYmxlLmNhdGVnb3J5ID09PSAnd20uVmFyaWFibGUnICYmIG5vZGUudGFyZ2V0ID09PSAnZGF0YUJpbmRpbmcnKSB7XG4gICAgICAgICAgICAgICAgbm9kZS50YXJnZXQgPSAnZGF0YVNldCc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NCaW5kRXhwKG5vZGUsIGNvbnRleHQsIHZhcmlhYmxlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgaXNWYXJpYWJsZVNlcGVyYXRlZCh2YXJpYWJsZXNKc29uLCB2YXJpYWJsZU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlc0pzb25bdmFyaWFibGVOYW1lXS5jYXRlZ29yeSA9PT0gJ3dtLlZhcmlhYmxlJyB8fCB2YXJpYWJsZXNKc29uW3ZhcmlhYmxlTmFtZV0uY2F0ZWdvcnkgPT09ICd3bS5TZXJ2aWNlVmFyaWFibGUnIHx8XG4gICAgICAgICAgICB2YXJpYWJsZXNKc29uW3ZhcmlhYmxlTmFtZV0uY2F0ZWdvcnkgPT09ICd3bS5MaXZlVmFyaWFibGUnIHx8IHZhcmlhYmxlc0pzb25bdmFyaWFibGVOYW1lXS5jYXRlZ29yeSA9PT0gJ3dtLkNydWRWYXJpYWJsZSdcbiAgICB9XG5cbiAgICBnZXRCaW5kU291cmNlVGFyZ2V0KHZhcmlhYmxlKSB7XG4gICAgICAgIGlmICh2YXJpYWJsZS5jYXRlZ29yeSA9PT0gJ3dtLkxpdmVWYXJpYWJsZScpIHtcbiAgICAgICAgICAgIHJldHVybiB2YXJpYWJsZS5vcGVyYXRpb24gPT09ICdyZWFkJyA/ICdmaWx0ZXJGaWVsZHMnIDogJ2lucHV0RmllbGRzJztcbiAgICAgICAgfSBlbHNlIGlmICh2YXJpYWJsZS5jYXRlZ29yeSA9PT0gJ3dtLk1vZGVsVmFyaWFibGUnKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2RhdGFTZXQnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICdkYXRhQmluZGluZyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUYWtlcyB0aGUgcmF3IHZhcmlhYmxlcyBhbmQgYWN0aW9ucyBqc29uIGFzIGlucHV0XG4gICAgICogSW5pdGlhbGl6ZSB0aGUgdmFyaWFibGUgYW5kIGFjdGlvbiBpbnN0YW5jZXMgdGhyb3VnaCB0aGUgZmFjdG9yeVxuICAgICAqIGNvbGxlY3QgdGhlIHZhcmlhYmxlcyBhbmQgYWN0aW9ucyBpbiBzZXBhcmF0ZSBtYXBzIGFuZCByZXR1cm4gdGhlIGNvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gcGFnZVxuICAgICAqIEBwYXJhbSB2YXJpYWJsZXNKc29uXG4gICAgICogQHBhcmFtIHNjb3BlXG4gICAgICogQHJldHVybnMge1ZhcmlhYmxlcyAsIEFjdGlvbnN9XG4gICAgICovXG4gICAgcmVnaXN0ZXIocGFnZTogc3RyaW5nLCB2YXJpYWJsZXNKc29uOiBhbnksIHNjb3BlOiBhbnkpIHtcbiAgICAgICAgY29uc3QgdmFyaWFibGVJbnN0YW5jZXMgPSB7XG4gICAgICAgICAgICBWYXJpYWJsZXM6IHt9LFxuICAgICAgICAgICAgQWN0aW9uczoge30sXG4gICAgICAgICAgICBjYWxsYmFjazogdGhpcy50cmlnZ2VyU3RhcnRVcGRhdGVcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IHZhckluc3RhbmNlO1xuXG4gICAgICAgIGZvciAoY29uc3QgdmFyaWFibGVOYW1lIGluIHZhcmlhYmxlc0pzb24pIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmFtczogYW55ID0ge307XG4gICAgICAgICAgICB2YXJJbnN0YW5jZSA9IFZhcmlhYmxlRmFjdG9yeS5jcmVhdGUodmFyaWFibGVzSnNvblt2YXJpYWJsZU5hbWVdLCBzY29wZSk7XG4gICAgICAgICAgICB2YXJJbnN0YW5jZS5pbml0KCk7XG4gICAgICAgICAgIGlmICh0aGlzLmlzVmFyaWFibGVTZXBlcmF0ZWQodmFyaWFibGVzSnNvbiwgdmFyaWFibGVOYW1lKSkge1xuICAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzQmluZGluZyh2YXJJbnN0YW5jZSwgc2NvcGUsICdkYXRhQmluZGluZycsIHRoaXMuZ2V0QmluZFNvdXJjZVRhcmdldCh2YXJJbnN0YW5jZSkpO1xuICAgICAgICAgICAgICAgdmFySW5zdGFuY2UuaHR0cFNlcnZpY2UgPSB0aGlzLmh0dHBTZXJ2aWNlO1xuICAgICAgICAgICAgICAgdmFySW5zdGFuY2UuZGF0ZUZvcm1hdHRlciA9IG5ldyBGb3JtYXR0ZXIoKTtcbiAgICAgICAgICAgICAgIHZhckluc3RhbmNlLnN1YnNjcmliZSgnYWZ0ZXJJbnZva2UnLCAoKSA9PiAkaW52b2tlV2F0Y2hlcnModHJ1ZSkpO1xuICAgICAgICAgICAgICAgaWYgKHZhckluc3RhbmNlLmNhdGVnb3J5ID09PSAnd20uTGl2ZVZhcmlhYmxlJyAmJiB2YXJJbnN0YW5jZS5vcGVyYXRpb24gPT09ICdyZWFkJykge1xuICAgICAgICAgICAgICAgICAgIHByb2Nlc3NGaWx0ZXJFeHBCaW5kTm9kZSh2YXJJbnN0YW5jZS5fY29udGV4dCwgdmFySW5zdGFuY2UuZmlsdGVyRXhwcmVzc2lvbnMsIHZhckluc3RhbmNlKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIGlmICh2YXJJbnN0YW5jZS5jYXRlZ29yeSA9PT0gJ3dtLkNydWRWYXJpYWJsZScgfHwgdmFySW5zdGFuY2UuY2F0ZWdvcnkgPT09ICd3bS5TZXJ2aWNlVmFyaWFibGUnKSB7XG4gICAgICAgICAgICAgICAgICAgdmFySW5zdGFuY2Uuc2ltdWxhdGVGaWxlRG93bmxvYWQgPSBzaW11bGF0ZUZpbGVEb3dubG9hZDtcbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICB9XG5cbiAgICAgICAgICAgaWYgKHRoaXMuaXNWYXJpYWJsZVNlcGVyYXRlZCh2YXJpYWJsZXNKc29uLCB2YXJpYWJsZU5hbWUpIHx8IHZhcmlhYmxlc0pzb25bdmFyaWFibGVOYW1lXS5jYXRlZ29yeSA9PT0gJ3dtLlRpbWVyVmFyaWFibGUnKSB7XG4gICAgICAgICAgICAgICBmb3IgKGNvbnN0IGUgaW4gVkFSSUFCTEVfQ09OU1RBTlRTLkVWRU5UKSB7XG4gICAgICAgICAgICAgICAgICAgaWYgKHZhckluc3RhbmNlW1ZBUklBQkxFX0NPTlNUQU5UUy5FVkVOVFtlXV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgdmFySW5zdGFuY2VbVkFSSUFCTEVfQ09OU1RBTlRTLkVWRU5UW2VdXSA9ICRwYXJzZUV2ZW50KHZhckluc3RhbmNlW1ZBUklBQkxFX0NPTlNUQU5UUy5FVkVOVFtlXV0pO1xuICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgIC8vIGlmIGFjdGlvbiB0eXBlLCBwdXQgaXQgaW4gQWN0aW9ucyBuYW1lc3BhY2VcbiAgICAgICAgICAgIGlmICh2YXJJbnN0YW5jZSBpbnN0YW5jZW9mIEJhc2VBY3Rpb24pIHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZUluc3RhbmNlcy5BY3Rpb25zW3ZhcmlhYmxlTmFtZV0gPSB2YXJJbnN0YW5jZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdmFyaWFibGVJbnN0YW5jZXMuVmFyaWFibGVzW3ZhcmlhYmxlTmFtZV0gPSB2YXJJbnN0YW5jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGlmIHRoZSBjb250ZXh0IGhhcyBvbkRlc3Ryb3kgbGlzdGVuZXIsIHN1YnNjcmliZSB0aGUgZXZlbnQgYW5kIHRyaWdnZXIgY2FuY2VsIG9uIGFsbCB2YXJpYmFsZXNcbiAgICAgICAgaWYgKHNjb3BlLnJlZ2lzdGVyRGVzdHJveUxpc3RlbmVyKSB7XG4gICAgICAgICAgICBzY29wZS5yZWdpc3RlckRlc3Ryb3lMaXN0ZW5lcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5idWxrQ2FuY2VsKHZhcmlhYmxlSW5zdGFuY2VzLlZhcmlhYmxlcyk7XG4gICAgICAgICAgICAgICAgdGhpcy5idWxrQ2FuY2VsKHZhcmlhYmxlSW5zdGFuY2VzLkFjdGlvbnMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdmFyaWFibGVJbnN0YW5jZXM7XG4gICAgfVxuXG4gICAgZGVzdHJveSgpIHtcbiAgICB9XG5cbiAgICByZWdpc3RlckRlcGVuZGVuY3kobmFtZSwgcmVmKSB7XG4gICAgICAgIHNldERlcGVuZGVuY3kobmFtZSwgcmVmKTtcbiAgICAgICAgd21TZXREZXBlbmRlbmN5KG5hbWUsIHJlZik7XG4gICAgfVxufVxuIl19
|
|
@@ -1241,9 +1241,9 @@ class NotificationActionManager extends BaseActionManager {
|
|
|
1241
1241
|
}
|
|
1242
1242
|
}
|
|
1243
1243
|
notifyViaDialog(variable, options) {
|
|
1244
|
-
const commonPageDialogId = 'Common' + _.capitalize(variable.operation) + 'Dialog',
|
|
1244
|
+
const commonPageDialogId = 'Common' + _.capitalize(variable.operation) + 'Dialog', dialogId = commonPageDialogId;
|
|
1245
1245
|
const closeCallBackFn = () => initiateCallback('onOk', variable, options.data);
|
|
1246
|
-
dialogService.open(dialogId,
|
|
1246
|
+
dialogService.open(dialogId, undefined, {
|
|
1247
1247
|
notification: {
|
|
1248
1248
|
'title': options.title || variable.dataBinding.title,
|
|
1249
1249
|
'text': options.message || variable.dataBinding.text,
|
|
@@ -1252,12 +1252,12 @@ class NotificationActionManager extends BaseActionManager {
|
|
|
1252
1252
|
'alerttype': options.alerttype || variable.dataBinding.alerttype || 'information',
|
|
1253
1253
|
onOk: () => {
|
|
1254
1254
|
// Close the action dialog after triggering onOk callback event
|
|
1255
|
-
dialogService.close(dialogId,
|
|
1255
|
+
dialogService.close(dialogId, undefined, closeCallBackFn);
|
|
1256
1256
|
},
|
|
1257
1257
|
onCancel: () => {
|
|
1258
1258
|
initiateCallback('onCancel', variable, options.data);
|
|
1259
1259
|
// Close the action dialog after triggering onCancel callback event
|
|
1260
|
-
dialogService.close(dialogId,
|
|
1260
|
+
dialogService.close(dialogId, undefined);
|
|
1261
1261
|
},
|
|
1262
1262
|
onClose: () => {
|
|
1263
1263
|
initiateCallback('onClose', variable, options.data);
|
|
@@ -3103,6 +3103,11 @@ MetadataService.ctorParameters = () => [
|
|
|
3103
3103
|
{ type: AbstractHttpService }
|
|
3104
3104
|
];
|
|
3105
3105
|
|
|
3106
|
+
class Formatter {
|
|
3107
|
+
format(value, format) {
|
|
3108
|
+
return appManager.getPipe('date').transform(value, format);
|
|
3109
|
+
}
|
|
3110
|
+
}
|
|
3106
3111
|
class VariablesService {
|
|
3107
3112
|
constructor(httpService, metadataService, navigationService, routerService, toasterService, oAuthService, securityService, dialogService) {
|
|
3108
3113
|
this.httpService = httpService;
|
|
@@ -3226,6 +3231,7 @@ class VariablesService {
|
|
|
3226
3231
|
if (this.isVariableSeperated(variablesJson, variableName)) {
|
|
3227
3232
|
this.processBinding(varInstance, scope, 'dataBinding', this.getBindSourceTarget(varInstance));
|
|
3228
3233
|
varInstance.httpService = this.httpService;
|
|
3234
|
+
varInstance.dateFormatter = new Formatter();
|
|
3229
3235
|
varInstance.subscribe('afterInvoke', () => $invokeWatchers(true));
|
|
3230
3236
|
if (varInstance.category === 'wm.LiveVariable' && varInstance.operation === 'read') {
|
|
3231
3237
|
processFilterExpBindNode(varInstance._context, varInstance.filterExpressions, varInstance);
|
|
@@ -3311,5 +3317,5 @@ VariablesModule.decorators = [
|
|
|
3311
3317
|
* Generated bundle index. Do not edit.
|
|
3312
3318
|
*/
|
|
3313
3319
|
|
|
3314
|
-
export { $rootScope, CONSTANTS, DB_CONSTANTS, DeviceVariableManager, DeviceVariableService, MetadataService, SWAGGER_CONSTANTS, VARIABLE_CONSTANTS, VARIABLE_URLS, VariableManagerFactory, VariablesModule, VariablesService, WS_CONSTANTS, appManager, debounceVariableCall, dialogService, formatDate, formatExportExpression, getEvaluatedOrderBy, httpService, initiateCallback, isFileUploadSupported, metadataService, navigationService, oauthService, processBinding, routerService, securityService, setDependency, setInput, simulateFileDownload, toasterService, toastrModule, BaseVariableManager as ɵa, BaseActionManager as ɵb, NavigationActionManager as ɵc, NotificationActionManager as ɵd, LoginActionManager as ɵe, LogoutActionManager as ɵf, WebSocketVariableManager as ɵg };
|
|
3320
|
+
export { $rootScope, CONSTANTS, DB_CONSTANTS, DeviceVariableManager, DeviceVariableService, Formatter, MetadataService, SWAGGER_CONSTANTS, VARIABLE_CONSTANTS, VARIABLE_URLS, VariableManagerFactory, VariablesModule, VariablesService, WS_CONSTANTS, appManager, debounceVariableCall, dialogService, formatDate, formatExportExpression, getEvaluatedOrderBy, httpService, initiateCallback, isFileUploadSupported, metadataService, navigationService, oauthService, processBinding, routerService, securityService, setDependency, setInput, simulateFileDownload, toasterService, toastrModule, BaseVariableManager as ɵa, BaseActionManager as ɵb, NavigationActionManager as ɵc, NotificationActionManager as ɵd, LoginActionManager as ɵe, LogoutActionManager as ɵf, WebSocketVariableManager as ɵg };
|
|
3315
3321
|
//# sourceMappingURL=index.js.map
|