@igo2/common 1.12.0 → 1.13.0-alpha.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.
- package/{esm2015/igo2-common.js → esm2020/igo2-common.mjs} +0 -0
- package/{esm2015/lib/action/action.module.js → esm2020/lib/action/action.module.mjs} +3 -5
- package/esm2020/lib/action/actionbar/actionbar-item.component.mjs +252 -0
- package/esm2020/lib/action/actionbar/actionbar.component.mjs +370 -0
- package/{esm2015/lib/action/actionbar/actionbar.module.js → esm2020/lib/action/actionbar/actionbar.module.mjs} +10 -12
- package/{esm2015/lib/action/index.js → esm2020/lib/action/index.mjs} +0 -0
- package/{esm2015/lib/action/shared/action.enums.js → esm2020/lib/action/shared/action.enums.mjs} +0 -0
- package/{esm2015/lib/action/shared/action.interfaces.js → esm2020/lib/action/shared/action.interfaces.mjs} +0 -0
- package/{esm2015/lib/action/shared/index.js → esm2020/lib/action/shared/index.mjs} +0 -0
- package/{esm2015/lib/action/shared/store.js → esm2020/lib/action/shared/store.mjs} +0 -0
- package/{esm2015/lib/backdrop/backdrop.component.js → esm2020/lib/backdrop/backdrop.component.mjs} +3 -7
- package/{esm2015/lib/backdrop/backdrop.module.js → esm2020/lib/backdrop/backdrop.module.mjs} +2 -2
- package/{esm2015/lib/backdrop/index.js → esm2020/lib/backdrop/index.mjs} +0 -0
- package/{esm2015/lib/badge-icon/badge-icon.directive.js → esm2020/lib/badge-icon/badge-icon.directive.mjs} +0 -0
- package/{esm2015/lib/badge-icon/badge-icon.module.js → esm2020/lib/badge-icon/badge-icon.module.mjs} +2 -2
- package/{esm2015/lib/badge-icon/index.js → esm2020/lib/badge-icon/index.mjs} +0 -0
- package/{esm2015/lib/clickout/clickout.directive.js → esm2020/lib/clickout/clickout.directive.mjs} +0 -0
- package/{esm2015/lib/clickout/clickout.module.js → esm2020/lib/clickout/clickout.module.mjs} +2 -2
- package/{esm2015/lib/clickout/index.js → esm2020/lib/clickout/index.mjs} +0 -0
- package/{esm2015/lib/clone/clone.module.js → esm2020/lib/clone/clone.module.mjs} +2 -2
- package/{esm2015/lib/clone/clone.pipe.js → esm2020/lib/clone/clone.pipe.mjs} +0 -0
- package/{esm2015/lib/clone/index.js → esm2020/lib/clone/index.mjs} +0 -0
- package/{esm2015/lib/collapsible/collapse.directive.js → esm2020/lib/collapsible/collapse.directive.mjs} +0 -0
- package/{esm2015/lib/collapsible/collapsible.component.js → esm2020/lib/collapsible/collapsible.component.mjs} +9 -15
- package/{esm2015/lib/collapsible/collapsible.module.js → esm2020/lib/collapsible/collapsible.module.mjs} +2 -2
- package/{esm2015/lib/collapsible/index.js → esm2020/lib/collapsible/index.mjs} +0 -0
- package/{esm2015/lib/confirm-dialog/confirm-dialog.component.js → esm2020/lib/confirm-dialog/confirm-dialog.component.mjs} +5 -11
- package/{esm2015/lib/confirm-dialog/confirm-dialog.module.js → esm2020/lib/confirm-dialog/confirm-dialog.module.mjs} +2 -2
- package/{esm2015/lib/confirm-dialog/confirm-dialog.service.js → esm2020/lib/confirm-dialog/confirm-dialog.service.mjs} +0 -0
- package/{esm2015/lib/confirm-dialog/index.js → esm2020/lib/confirm-dialog/index.mjs} +0 -0
- package/{esm2015/lib/context-menu/context-menu.directive.js → esm2020/lib/context-menu/context-menu.directive.mjs} +0 -0
- package/{esm2015/lib/context-menu/context-menu.module.js → esm2020/lib/context-menu/context-menu.module.mjs} +2 -2
- package/{esm2015/lib/context-menu/index.js → esm2020/lib/context-menu/index.mjs} +0 -0
- package/{esm2015/lib/custom-html/custom-html.component.js → esm2020/lib/custom-html/custom-html.component.mjs} +3 -7
- package/{esm2015/lib/custom-html/custom-html.module.js → esm2020/lib/custom-html/custom-html.module.mjs} +7 -9
- package/{esm2015/lib/custom-html/custom-html.pipe.js → esm2020/lib/custom-html/custom-html.pipe.mjs} +0 -0
- package/{esm2015/lib/custom-html/index.js → esm2020/lib/custom-html/index.mjs} +0 -0
- package/{esm2015/lib/dom/dom.interfaces.js → esm2020/lib/dom/dom.interfaces.mjs} +0 -0
- package/{esm2015/lib/dom/dom.module.js → esm2020/lib/dom/dom.module.mjs} +0 -0
- package/{esm2015/lib/dom/dom.service.js → esm2020/lib/dom/dom.service.mjs} +11 -14
- package/{esm2015/lib/dom/index.js → esm2020/lib/dom/index.mjs} +0 -0
- package/{esm2015/lib/drag-drop/drag-drop.directive.js → esm2020/lib/drag-drop/drag-drop.directive.mjs} +0 -0
- package/{esm2015/lib/drag-drop/drag-drop.module.js → esm2020/lib/drag-drop/drag-drop.module.mjs} +2 -2
- package/{esm2015/lib/drag-drop/index.js → esm2020/lib/drag-drop/index.mjs} +0 -0
- package/{esm2015/lib/dynamic-component/dynamic-component.module.js → esm2020/lib/dynamic-component/dynamic-component.module.mjs} +3 -5
- package/{esm2015/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.js → esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.mjs} +2 -7
- package/{esm2015/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.js → esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.mjs} +2 -4
- package/{esm2015/lib/dynamic-component/index.js → esm2020/lib/dynamic-component/index.mjs} +0 -0
- package/{esm2015/lib/dynamic-component/shared/dynamic-component.interfaces.js → esm2020/lib/dynamic-component/shared/dynamic-component.interfaces.mjs} +0 -0
- package/{esm2015/lib/dynamic-component/shared/dynamic-component.js → esm2020/lib/dynamic-component/shared/dynamic-component.mjs} +0 -0
- package/{esm2015/lib/dynamic-component/shared/dynamic-component.service.js → esm2020/lib/dynamic-component/shared/dynamic-component.service.mjs} +0 -0
- package/{esm2015/lib/dynamic-component/shared/index.js → esm2020/lib/dynamic-component/shared/index.mjs} +0 -0
- package/{esm2015/lib/entity/entity-selector/entity-selector.component.js → esm2020/lib/entity/entity-selector/entity-selector.component.mjs} +8 -15
- package/{esm2015/lib/entity/entity-selector/entity-selector.module.js → esm2020/lib/entity/entity-selector/entity-selector.module.mjs} +4 -6
- package/{esm2015/lib/entity/entity-table/entity-table-row.directive.js → esm2020/lib/entity/entity-table/entity-table-row.directive.mjs} +0 -0
- package/esm2020/lib/entity/entity-table/entity-table.component.mjs +1339 -0
- package/{esm2015/lib/entity/entity-table/entity-table.module.js → esm2020/lib/entity/entity-table/entity-table.module.mjs} +20 -22
- package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.component.mjs +132 -0
- package/{esm2015/lib/entity/entity-table-paginator/entity-table-paginator.interface.js → esm2020/lib/entity/entity-table-paginator/entity-table-paginator.interface.mjs} +0 -0
- package/{esm2015/lib/entity/entity-table-paginator/entity-table-paginator.module.js → esm2020/lib/entity/entity-table-paginator/entity-table-paginator.module.mjs} +2 -4
- package/{esm2015/lib/entity/entity.module.js → esm2020/lib/entity/entity.module.mjs} +2 -4
- package/{esm2015/lib/entity/index.js → esm2020/lib/entity/index.mjs} +0 -0
- package/{esm2015/lib/entity/shared/entity.enums.js → esm2020/lib/entity/shared/entity.enums.mjs} +0 -0
- package/{esm2015/lib/entity/shared/entity.interfaces.js → esm2020/lib/entity/shared/entity.interfaces.mjs} +0 -0
- package/esm2020/lib/entity/shared/entity.utils.mjs +67 -0
- package/{esm2015/lib/entity/shared/index.js → esm2020/lib/entity/shared/index.mjs} +0 -0
- package/{esm2015/lib/entity/shared/state.js → esm2020/lib/entity/shared/state.mjs} +0 -0
- package/{esm2015/lib/entity/shared/store.js → esm2020/lib/entity/shared/store.mjs} +0 -0
- package/{esm2015/lib/entity/shared/strategies/filter-custom-function.js → esm2020/lib/entity/shared/strategies/filter-custom-function.mjs} +0 -0
- package/{esm2015/lib/entity/shared/strategies/filter-selection.js → esm2020/lib/entity/shared/strategies/filter-selection.mjs} +0 -0
- package/{esm2015/lib/entity/shared/strategies/index.js → esm2020/lib/entity/shared/strategies/index.mjs} +0 -0
- package/{esm2015/lib/entity/shared/strategies/strategy.js → esm2020/lib/entity/shared/strategies/strategy.mjs} +0 -0
- package/{esm2015/lib/entity/shared/transaction.js → esm2020/lib/entity/shared/transaction.mjs} +0 -0
- package/{esm2015/lib/entity/shared/view.js → esm2020/lib/entity/shared/view.mjs} +0 -0
- package/{esm2015/lib/entity/shared/watcher.js → esm2020/lib/entity/shared/watcher.mjs} +0 -0
- package/{esm2015/lib/flexible/flexible.component.js → esm2020/lib/flexible/flexible.component.mjs} +7 -17
- package/{esm2015/lib/flexible/flexible.module.js → esm2020/lib/flexible/flexible.module.mjs} +2 -2
- package/{esm2015/lib/flexible/flexible.type.js → esm2020/lib/flexible/flexible.type.mjs} +0 -0
- package/{esm2015/lib/flexible/index.js → esm2020/lib/flexible/index.mjs} +0 -0
- package/esm2020/lib/form/form/form.component.mjs +117 -0
- package/{esm2015/lib/form/form/form.module.js → esm2020/lib/form/form/form.module.mjs} +4 -6
- package/esm2020/lib/form/form-field/form-field-select.component.mjs +127 -0
- package/esm2020/lib/form/form-field/form-field-text.component.mjs +104 -0
- package/esm2020/lib/form/form-field/form-field-textarea.component.mjs +105 -0
- package/{esm2015/lib/form/form-field/form-field.component.js → esm2020/lib/form/form-field/form-field.component.mjs} +3 -8
- package/{esm2015/lib/form/form-field/form-field.module.js → esm2020/lib/form/form-field/form-field.module.mjs} +10 -12
- package/{esm2015/lib/form/form-field/index.js → esm2020/lib/form/form-field/index.mjs} +0 -0
- package/{esm2015/lib/form/form-group/form-group.component.js → esm2020/lib/form/form-group/form-group.component.mjs} +5 -10
- package/{esm2015/lib/form/form-group/form-group.module.js → esm2020/lib/form/form-group/form-group.module.mjs} +5 -7
- package/{esm2015/lib/form/form.module.js → esm2020/lib/form/form.module.mjs} +4 -6
- package/{esm2015/lib/form/index.js → esm2020/lib/form/index.mjs} +0 -0
- package/{esm2015/lib/form/shared/form-field-component.js → esm2020/lib/form/shared/form-field-component.mjs} +0 -0
- package/{esm2015/lib/form/shared/form-field.service.js → esm2020/lib/form/shared/form-field.service.mjs} +1 -1
- package/{esm2015/lib/form/shared/form.interfaces.js → esm2020/lib/form/shared/form.interfaces.mjs} +0 -0
- package/{esm2015/lib/form/shared/form.service.js → esm2020/lib/form/shared/form.service.mjs} +0 -0
- package/{esm2015/lib/form/shared/form.utils.js → esm2020/lib/form/shared/form.utils.mjs} +0 -0
- package/{esm2015/lib/form/shared/index.js → esm2020/lib/form/shared/index.mjs} +0 -0
- package/{esm2015/lib/home-button/home-button.component.js → esm2020/lib/home-button/home-button.component.mjs} +6 -10
- package/{esm2015/lib/home-button/home-button.module.js → esm2020/lib/home-button/home-button.module.mjs} +6 -8
- package/{esm2015/lib/home-button/index.js → esm2020/lib/home-button/index.mjs} +0 -0
- package/{esm2015/lib/image/image.module.js → esm2020/lib/image/image.module.mjs} +2 -2
- package/{esm2015/lib/image/index.js → esm2020/lib/image/index.mjs} +0 -0
- package/esm2020/lib/image/secure-image.pipe.mjs +54 -0
- package/{esm2015/lib/interactive-tour/index.js → esm2020/lib/interactive-tour/index.mjs} +0 -0
- package/esm2020/lib/interactive-tour/interactive-tour.component.mjs +135 -0
- package/{esm2015/lib/interactive-tour/interactive-tour.interface.js → esm2020/lib/interactive-tour/interactive-tour.interface.mjs} +0 -0
- package/{esm2015/lib/interactive-tour/interactive-tour.loader.js → esm2020/lib/interactive-tour/interactive-tour.loader.mjs} +0 -0
- package/{esm2015/lib/interactive-tour/interactive-tour.module.js → esm2020/lib/interactive-tour/interactive-tour.module.mjs} +6 -8
- package/esm2020/lib/interactive-tour/interactive-tour.service.mjs +285 -0
- package/{esm2015/lib/json-dialog/index.js → esm2020/lib/json-dialog/index.mjs} +0 -0
- package/{esm2015/lib/json-dialog/json-dialog.component.js → esm2020/lib/json-dialog/json-dialog.component.mjs} +6 -13
- package/{esm2015/lib/json-dialog/json-dialog.module.js → esm2020/lib/json-dialog/json-dialog.module.mjs} +2 -2
- package/{esm2015/lib/json-dialog/json-dialog.service.js → esm2020/lib/json-dialog/json-dialog.service.mjs} +0 -0
- package/{esm2015/lib/keyvalue/index.js → esm2020/lib/keyvalue/index.mjs} +0 -0
- package/{esm2015/lib/keyvalue/keyvalue.module.js → esm2020/lib/keyvalue/keyvalue.module.mjs} +2 -2
- package/{esm2015/lib/keyvalue/keyvalue.pipe.js → esm2020/lib/keyvalue/keyvalue.pipe.mjs} +0 -0
- package/{esm2015/lib/list/index.js → esm2020/lib/list/index.mjs} +0 -0
- package/{esm2015/lib/list/list-item.directive.js → esm2020/lib/list/list-item.directive.mjs} +0 -0
- package/{esm2015/lib/list/list.component.js → esm2020/lib/list/list.component.mjs} +6 -10
- package/{esm2015/lib/list/list.module.js → esm2020/lib/list/list.module.mjs} +2 -2
- package/{esm2015/lib/panel/index.js → esm2020/lib/panel/index.mjs} +0 -0
- package/esm2020/lib/panel/panel.component.mjs +60 -0
- package/{esm2015/lib/panel/panel.module.js → esm2020/lib/panel/panel.module.mjs} +2 -2
- package/{esm2015/lib/sidenav/index.js → esm2020/lib/sidenav/index.mjs} +0 -0
- package/{esm2015/lib/sidenav/sidenav-shim.directive.js → esm2020/lib/sidenav/sidenav-shim.directive.mjs} +0 -0
- package/{esm2015/lib/sidenav/sidenav.module.js → esm2020/lib/sidenav/sidenav.module.mjs} +2 -2
- package/{esm2015/lib/spinner/index.js → esm2020/lib/spinner/index.mjs} +0 -0
- package/{esm2015/lib/spinner/spinner-activity.directive.js → esm2020/lib/spinner/spinner-activity.directive.mjs} +0 -0
- package/{esm2015/lib/spinner/spinner.component.js → esm2020/lib/spinner/spinner.component.mjs} +4 -9
- package/{esm2015/lib/spinner/spinner.module.js → esm2020/lib/spinner/spinner.module.mjs} +2 -2
- package/{esm2015/lib/stop-propagation/index.js → esm2020/lib/stop-propagation/index.mjs} +0 -0
- package/{esm2015/lib/stop-propagation/stop-drop-propagation.directive.js → esm2020/lib/stop-propagation/stop-drop-propagation.directive.mjs} +0 -0
- package/{esm2015/lib/stop-propagation/stop-propagation.directive.js → esm2020/lib/stop-propagation/stop-propagation.directive.mjs} +0 -0
- package/{esm2015/lib/stop-propagation/stop-propagation.module.js → esm2020/lib/stop-propagation/stop-propagation.module.mjs} +2 -2
- package/{esm2015/lib/table/index.js → esm2020/lib/table/index.mjs} +0 -0
- package/{esm2015/lib/table/table-action-color.enum.js → esm2020/lib/table/table-action-color.enum.mjs} +0 -0
- package/{esm2015/lib/table/table-database.js → esm2020/lib/table/table-database.mjs} +0 -0
- package/{esm2015/lib/table/table-datasource.js → esm2020/lib/table/table-datasource.mjs} +0 -0
- package/{esm2015/lib/table/table-model.interface.js → esm2020/lib/table/table-model.interface.mjs} +0 -0
- package/esm2020/lib/table/table.component.mjs +297 -0
- package/{esm2015/lib/table/table.module.js → esm2020/lib/table/table.module.mjs} +12 -14
- package/{esm2015/lib/tool/index.js → esm2020/lib/tool/index.mjs} +0 -0
- package/{esm2015/lib/tool/shared/index.js → esm2020/lib/tool/shared/index.mjs} +0 -0
- package/{esm2015/lib/tool/shared/tool-component.js → esm2020/lib/tool/shared/tool-component.mjs} +0 -0
- package/{esm2015/lib/tool/shared/tool.interface.js → esm2020/lib/tool/shared/tool.interface.mjs} +0 -0
- package/{esm2015/lib/tool/shared/tool.service.js → esm2020/lib/tool/shared/tool.service.mjs} +1 -1
- package/{esm2015/lib/tool/shared/toolbox.enums.js → esm2020/lib/tool/shared/toolbox.enums.mjs} +0 -0
- package/{esm2015/lib/tool/shared/toolbox.js → esm2020/lib/tool/shared/toolbox.mjs} +0 -0
- package/{esm2015/lib/tool/tool.module.js → esm2020/lib/tool/tool.module.mjs} +2 -4
- package/{esm2015/lib/tool/toolbox/toolbox.animation.js → esm2020/lib/tool/toolbox/toolbox.animation.mjs} +0 -0
- package/esm2020/lib/tool/toolbox/toolbox.component.mjs +255 -0
- package/{esm2015/lib/tool/toolbox/toolbox.module.js → esm2020/lib/tool/toolbox/toolbox.module.mjs} +4 -6
- package/{esm2015/lib/widget/index.js → esm2020/lib/widget/index.mjs} +0 -0
- package/{esm2015/lib/widget/shared/index.js → esm2020/lib/widget/shared/index.mjs} +0 -0
- package/{esm2015/lib/widget/shared/widget.interfaces.js → esm2020/lib/widget/shared/widget.interfaces.mjs} +0 -0
- package/{esm2015/lib/widget/shared/widget.js → esm2020/lib/widget/shared/widget.mjs} +0 -0
- package/{esm2015/lib/widget/shared/widget.service.js → esm2020/lib/widget/shared/widget.service.mjs} +0 -0
- package/{esm2015/lib/widget/widget-outlet/widget-outlet.component.js → esm2020/lib/widget/widget-outlet/widget-outlet.component.mjs} +3 -8
- package/{esm2015/lib/widget/widget-outlet/widget-outlet.module.js → esm2020/lib/widget/widget-outlet/widget-outlet.module.mjs} +3 -5
- package/{esm2015/lib/widget/widget.module.js → esm2020/lib/widget/widget.module.mjs} +3 -5
- package/{esm2015/lib/workspace/index.js → esm2020/lib/workspace/index.mjs} +0 -0
- package/{esm2015/lib/workspace/shared/index.js → esm2020/lib/workspace/shared/index.mjs} +0 -0
- package/{esm2015/lib/workspace/shared/store.js → esm2020/lib/workspace/shared/store.mjs} +0 -0
- package/{esm2015/lib/workspace/shared/workspace.interfaces.js → esm2020/lib/workspace/shared/workspace.interfaces.mjs} +0 -0
- package/{esm2015/lib/workspace/shared/workspace.js → esm2020/lib/workspace/shared/workspace.mjs} +0 -0
- package/{esm2015/lib/workspace/workspace-selector/workspace-selector.component.js → esm2020/lib/workspace/workspace-selector/workspace-selector.component.mjs} +3 -8
- package/{esm2015/lib/workspace/workspace-selector/workspace-selector.module.js → esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs} +3 -5
- package/esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.mjs +88 -0
- package/{esm2015/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.js → esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.mjs} +3 -5
- package/{esm2015/lib/workspace/workspace.module.js → esm2020/lib/workspace/workspace.module.mjs} +2 -4
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/fesm2015/igo2-common.mjs +10145 -0
- package/fesm2015/igo2-common.mjs.map +1 -0
- package/{fesm2015/igo2-common.js → fesm2020/igo2-common.mjs} +469 -704
- package/fesm2020/igo2-common.mjs.map +1 -0
- package/{igo2-common.d.ts → index.d.ts} +0 -0
- package/lib/action/actionbar/actionbar-item.component.d.ts +1 -1
- package/lib/action/actionbar/actionbar.component.d.ts +1 -1
- package/lib/backdrop/backdrop.component.d.ts +1 -1
- package/lib/badge-icon/badge-icon.directive.d.ts +1 -1
- package/lib/clickout/clickout.directive.d.ts +1 -1
- package/lib/clone/clone.pipe.d.ts +1 -1
- package/lib/collapsible/collapse.directive.d.ts +1 -1
- package/lib/collapsible/collapsible.component.d.ts +1 -1
- package/lib/confirm-dialog/confirm-dialog.component.d.ts +1 -1
- package/lib/context-menu/context-menu.directive.d.ts +1 -1
- package/lib/custom-html/custom-html.component.d.ts +1 -1
- package/lib/custom-html/custom-html.pipe.d.ts +1 -1
- package/lib/drag-drop/drag-drop.directive.d.ts +1 -1
- package/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.d.ts +1 -1
- package/lib/entity/entity-selector/entity-selector.component.d.ts +1 -1
- package/lib/entity/entity-table/entity-table-row.directive.d.ts +1 -1
- package/lib/entity/entity-table/entity-table.component.d.ts +1 -1
- package/lib/entity/entity-table-paginator/entity-table-paginator.component.d.ts +1 -1
- package/lib/flexible/flexible.component.d.ts +1 -1
- package/lib/form/form/form.component.d.ts +1 -1
- package/lib/form/form-field/form-field-select.component.d.ts +1 -1
- package/lib/form/form-field/form-field-text.component.d.ts +1 -1
- package/lib/form/form-field/form-field-textarea.component.d.ts +1 -1
- package/lib/form/form-field/form-field.component.d.ts +1 -1
- package/lib/form/form-group/form-group.component.d.ts +1 -1
- package/lib/home-button/home-button.component.d.ts +1 -1
- package/lib/image/secure-image.pipe.d.ts +1 -1
- package/lib/interactive-tour/interactive-tour.component.d.ts +1 -1
- package/lib/json-dialog/json-dialog.component.d.ts +1 -1
- package/lib/keyvalue/keyvalue.pipe.d.ts +1 -1
- package/lib/list/list-item.directive.d.ts +1 -1
- package/lib/list/list.component.d.ts +1 -1
- package/lib/panel/panel.component.d.ts +1 -1
- package/lib/sidenav/sidenav-shim.directive.d.ts +1 -1
- package/lib/spinner/spinner-activity.directive.d.ts +1 -1
- package/lib/spinner/spinner.component.d.ts +1 -1
- package/lib/stop-propagation/stop-drop-propagation.directive.d.ts +1 -1
- package/lib/stop-propagation/stop-propagation.directive.d.ts +1 -1
- package/lib/table/table.component.d.ts +1 -1
- package/lib/tool/toolbox/toolbox.component.d.ts +1 -1
- package/lib/widget/widget-outlet/widget-outlet.component.d.ts +1 -1
- package/lib/workspace/workspace-selector/workspace-selector.component.d.ts +1 -1
- package/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.d.ts +1 -1
- package/package.json +25 -12
- package/bundles/igo2-common.umd.js +0 -11545
- package/bundles/igo2-common.umd.js.map +0 -1
- package/esm2015/lib/action/actionbar/actionbar-item.component.js +0 -257
- package/esm2015/lib/action/actionbar/actionbar.component.js +0 -385
- package/esm2015/lib/entity/entity-table/entity-table.component.js +0 -1359
- package/esm2015/lib/entity/entity-table-paginator/entity-table-paginator.component.js +0 -138
- package/esm2015/lib/entity/shared/entity.utils.js +0 -67
- package/esm2015/lib/form/form/form.component.js +0 -125
- package/esm2015/lib/form/form-field/form-field-select.component.js +0 -132
- package/esm2015/lib/form/form-field/form-field-text.component.js +0 -108
- package/esm2015/lib/form/form-field/form-field-textarea.component.js +0 -110
- package/esm2015/lib/image/secure-image.pipe.js +0 -55
- package/esm2015/lib/interactive-tour/interactive-tour.component.js +0 -140
- package/esm2015/lib/interactive-tour/interactive-tour.service.js +0 -285
- package/esm2015/lib/panel/panel.component.js +0 -67
- package/esm2015/lib/table/table.component.js +0 -310
- package/esm2015/lib/tool/toolbox/toolbox.component.js +0 -261
- package/esm2015/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.js +0 -93
- package/fesm2015/igo2-common.js.map +0 -1
|
@@ -1,257 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, isObservable } from 'rxjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/material/list";
|
|
6
|
-
import * as i3 from "@angular/material/tooltip";
|
|
7
|
-
import * as i4 from "@angular/material/button";
|
|
8
|
-
import * as i5 from "@angular/material/icon";
|
|
9
|
-
import * as i6 from "@angular/material/core";
|
|
10
|
-
import * as i7 from "@angular/material/checkbox";
|
|
11
|
-
import * as i8 from "@ngx-translate/core";
|
|
12
|
-
function ActionbarItemComponent_mat_list_item_0_button_4_mat_icon_2_Template(rf, ctx) { if (rf & 1) {
|
|
13
|
-
i0.ɵɵelement(0, "mat-icon", 7);
|
|
14
|
-
i0.ɵɵpipe(1, "async");
|
|
15
|
-
} if (rf & 2) {
|
|
16
|
-
const ctx_r4 = i0.ɵɵnextContext(3);
|
|
17
|
-
i0.ɵɵpropertyInterpolate("svgIcon", i0.ɵɵpipeBind1(1, 1, ctx_r4.icon$));
|
|
18
|
-
} }
|
|
19
|
-
function ActionbarItemComponent_mat_list_item_0_button_4_Template(rf, ctx) { if (rf & 1) {
|
|
20
|
-
i0.ɵɵelementStart(0, "button", 5);
|
|
21
|
-
i0.ɵɵpipe(1, "async");
|
|
22
|
-
i0.ɵɵtemplate(2, ActionbarItemComponent_mat_list_item_0_button_4_mat_icon_2_Template, 2, 3, "mat-icon", 6);
|
|
23
|
-
i0.ɵɵelementEnd();
|
|
24
|
-
} if (rf & 2) {
|
|
25
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
26
|
-
i0.ɵɵproperty("color", ctx_r2.color)("disabled", i0.ɵɵpipeBind1(1, 3, ctx_r2.disabled$));
|
|
27
|
-
i0.ɵɵadvance(2);
|
|
28
|
-
i0.ɵɵproperty("ngIf", ctx_r2.withIcon);
|
|
29
|
-
} }
|
|
30
|
-
function ActionbarItemComponent_mat_list_item_0_h4_5_Template(rf, ctx) { if (rf & 1) {
|
|
31
|
-
i0.ɵɵelementStart(0, "h4", 8);
|
|
32
|
-
i0.ɵɵtext(1);
|
|
33
|
-
i0.ɵɵpipe(2, "translate");
|
|
34
|
-
i0.ɵɵelementEnd();
|
|
35
|
-
} if (rf & 2) {
|
|
36
|
-
const ctx_r3 = i0.ɵɵnextContext(2);
|
|
37
|
-
i0.ɵɵadvance(1);
|
|
38
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r3.title));
|
|
39
|
-
} }
|
|
40
|
-
function ActionbarItemComponent_mat_list_item_0_Template(rf, ctx) { if (rf & 1) {
|
|
41
|
-
const _r6 = i0.ɵɵgetCurrentView();
|
|
42
|
-
i0.ɵɵelementStart(0, "mat-list-item", 2);
|
|
43
|
-
i0.ɵɵlistener("click", function ActionbarItemComponent_mat_list_item_0_Template_mat_list_item_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return ctx_r5.onClick(); });
|
|
44
|
-
i0.ɵɵpipe(1, "translate");
|
|
45
|
-
i0.ɵɵpipe(2, "async");
|
|
46
|
-
i0.ɵɵpipe(3, "async");
|
|
47
|
-
i0.ɵɵtemplate(4, ActionbarItemComponent_mat_list_item_0_button_4_Template, 3, 5, "button", 3);
|
|
48
|
-
i0.ɵɵtemplate(5, ActionbarItemComponent_mat_list_item_0_h4_5_Template, 3, 3, "h4", 4);
|
|
49
|
-
i0.ɵɵelementEnd();
|
|
50
|
-
} if (rf & 2) {
|
|
51
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
52
|
-
i0.ɵɵproperty("matTooltip", ctx_r0.withTooltip ? i0.ɵɵpipeBind1(1, 4, i0.ɵɵpipeBind1(2, 6, ctx_r0.tooltip$) || ctx_r0.title) : "")("ngClass", i0.ɵɵpipeBind1(3, 8, ctx_r0.ngClass$));
|
|
53
|
-
i0.ɵɵadvance(4);
|
|
54
|
-
i0.ɵɵproperty("ngIf", ctx_r0.withIcon);
|
|
55
|
-
i0.ɵɵadvance(1);
|
|
56
|
-
i0.ɵɵproperty("ngIf", ctx_r0.withTitle);
|
|
57
|
-
} }
|
|
58
|
-
function ActionbarItemComponent_mat_list_item_1_mat_checkbox_4_Template(rf, ctx) { if (rf & 1) {
|
|
59
|
-
const _r9 = i0.ɵɵgetCurrentView();
|
|
60
|
-
i0.ɵɵelementStart(0, "mat-checkbox", 11);
|
|
61
|
-
i0.ɵɵlistener("change", function ActionbarItemComponent_mat_list_item_1_mat_checkbox_4_Template_mat_checkbox_change_0_listener() { i0.ɵɵrestoreView(_r9); const ctx_r8 = i0.ɵɵnextContext(2); return ctx_r8.action.handler(); });
|
|
62
|
-
i0.ɵɵpipe(1, "async");
|
|
63
|
-
i0.ɵɵtext(2);
|
|
64
|
-
i0.ɵɵpipe(3, "translate");
|
|
65
|
-
i0.ɵɵelementEnd();
|
|
66
|
-
} if (rf & 2) {
|
|
67
|
-
const ctx_r7 = i0.ɵɵnextContext(2);
|
|
68
|
-
i0.ɵɵproperty("checked", i0.ɵɵpipeBind1(1, 2, ctx_r7.checkCondition$));
|
|
69
|
-
i0.ɵɵadvance(2);
|
|
70
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 4, ctx_r7.title), " ");
|
|
71
|
-
} }
|
|
72
|
-
function ActionbarItemComponent_mat_list_item_1_Template(rf, ctx) { if (rf & 1) {
|
|
73
|
-
i0.ɵɵelementStart(0, "mat-list-item", 9);
|
|
74
|
-
i0.ɵɵpipe(1, "translate");
|
|
75
|
-
i0.ɵɵpipe(2, "async");
|
|
76
|
-
i0.ɵɵpipe(3, "async");
|
|
77
|
-
i0.ɵɵtemplate(4, ActionbarItemComponent_mat_list_item_1_mat_checkbox_4_Template, 4, 6, "mat-checkbox", 10);
|
|
78
|
-
i0.ɵɵelementEnd();
|
|
79
|
-
} if (rf & 2) {
|
|
80
|
-
const ctx_r1 = i0.ɵɵnextContext();
|
|
81
|
-
i0.ɵɵproperty("matTooltip", ctx_r1.withTooltip ? i0.ɵɵpipeBind1(1, 3, i0.ɵɵpipeBind1(2, 5, ctx_r1.tooltip$) || ctx_r1.title) : "")("ngClass", i0.ɵɵpipeBind1(3, 7, ctx_r1.ngClass$));
|
|
82
|
-
i0.ɵɵadvance(4);
|
|
83
|
-
i0.ɵɵproperty("ngIf", ctx_r1.withTitle);
|
|
84
|
-
} }
|
|
85
|
-
/**
|
|
86
|
-
* An action button
|
|
87
|
-
*/
|
|
88
|
-
export class ActionbarItemComponent {
|
|
89
|
-
constructor() {
|
|
90
|
-
this.disabled$ = new BehaviorSubject(false);
|
|
91
|
-
this.checkCondition$ = new BehaviorSubject(undefined);
|
|
92
|
-
this.icon$ = new BehaviorSubject(undefined);
|
|
93
|
-
this.tooltip$ = new BehaviorSubject(undefined);
|
|
94
|
-
this.noDisplay$ = new BehaviorSubject(false);
|
|
95
|
-
this.ngClass$ = new BehaviorSubject({});
|
|
96
|
-
/**
|
|
97
|
-
* Color
|
|
98
|
-
*/
|
|
99
|
-
this.color = 'default';
|
|
100
|
-
/**
|
|
101
|
-
* Whether the action title is displayed
|
|
102
|
-
*/
|
|
103
|
-
this.withTitle = true;
|
|
104
|
-
/**
|
|
105
|
-
* Whether the action icon is displayed
|
|
106
|
-
*/
|
|
107
|
-
this.withIcon = true;
|
|
108
|
-
/**
|
|
109
|
-
* Whether a tooltip should be shown
|
|
110
|
-
*/
|
|
111
|
-
this.withTooltip = true;
|
|
112
|
-
/**
|
|
113
|
-
* Event emitted when the action button is clicked
|
|
114
|
-
*/
|
|
115
|
-
this.trigger = new EventEmitter();
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Whether the action is disabled
|
|
119
|
-
*/
|
|
120
|
-
set disabled(value) { this.disabled$.next(value); }
|
|
121
|
-
get disabled() { return this.disabled$.value; }
|
|
122
|
-
/**
|
|
123
|
-
* Whether the action is display or not
|
|
124
|
-
*/
|
|
125
|
-
set noDisplay(value) { this.noDisplay$.next(value); }
|
|
126
|
-
get noDisplay() { return this.noDisplay$.value; }
|
|
127
|
-
/**
|
|
128
|
-
* @internal
|
|
129
|
-
*/
|
|
130
|
-
get title() { return this.action.title; }
|
|
131
|
-
ngOnInit() {
|
|
132
|
-
const args = this.action.args || [];
|
|
133
|
-
if (this.action.ngClass !== undefined) {
|
|
134
|
-
this.ngClass$$ = this.action.ngClass(...args)
|
|
135
|
-
.subscribe((ngClass) => this.updateNgClass(ngClass));
|
|
136
|
-
}
|
|
137
|
-
if (isObservable(this.action.icon)) {
|
|
138
|
-
this.icon$$ = this.action.icon
|
|
139
|
-
.subscribe((icon) => this.updateIcon(icon));
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
this.updateIcon(this.action.icon);
|
|
143
|
-
}
|
|
144
|
-
if (isObservable(this.action.checkCondition)) {
|
|
145
|
-
this.checkCondition$$ = this.action.checkCondition
|
|
146
|
-
.subscribe((checkCondition) => this.updateCheckCondition(checkCondition));
|
|
147
|
-
}
|
|
148
|
-
else {
|
|
149
|
-
this.updateCheckCondition(this.action.checkCondition);
|
|
150
|
-
}
|
|
151
|
-
if (isObservable(this.action.tooltip)) {
|
|
152
|
-
this.tooltip$$ = this.action.tooltip
|
|
153
|
-
.subscribe((tooltip) => this.updateTooltip(tooltip));
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
this.updateTooltip(this.action.tooltip);
|
|
157
|
-
}
|
|
158
|
-
if (this.action.availability !== undefined) {
|
|
159
|
-
this.availability$$ = this.action.availability(...args)
|
|
160
|
-
.subscribe((available) => this.disabled = !available);
|
|
161
|
-
}
|
|
162
|
-
this.disabled$$ = this.disabled$
|
|
163
|
-
.subscribe((disabled) => this.updateNgClass({ 'igo-actionbar-item-disabled': disabled }));
|
|
164
|
-
if (this.action.display !== undefined) {
|
|
165
|
-
this.display$$ = this.action.display(...args)
|
|
166
|
-
.subscribe((display) => this.noDisplay = !display);
|
|
167
|
-
}
|
|
168
|
-
this.noDisplay$$ = this.noDisplay$
|
|
169
|
-
.subscribe((noDisplay) => this.updateNgClass({ 'igo-actionbar-item-no-display': noDisplay }));
|
|
170
|
-
}
|
|
171
|
-
ngOnDestroy() {
|
|
172
|
-
if (this.ngClass$$ !== undefined) {
|
|
173
|
-
this.ngClass$$.unsubscribe();
|
|
174
|
-
this.ngClass$$ = undefined;
|
|
175
|
-
}
|
|
176
|
-
if (this.availability$$ !== undefined) {
|
|
177
|
-
this.availability$$.unsubscribe();
|
|
178
|
-
this.availability$$ = undefined;
|
|
179
|
-
}
|
|
180
|
-
if (this.display$$ !== undefined) {
|
|
181
|
-
this.display$$.unsubscribe();
|
|
182
|
-
this.display$$ = undefined;
|
|
183
|
-
}
|
|
184
|
-
if (this.checkCondition$$ !== undefined) {
|
|
185
|
-
this.checkCondition$$.unsubscribe();
|
|
186
|
-
this.checkCondition$$ = undefined;
|
|
187
|
-
}
|
|
188
|
-
if (this.icon$$ !== undefined) {
|
|
189
|
-
this.icon$$.unsubscribe();
|
|
190
|
-
this.icon$$ = undefined;
|
|
191
|
-
}
|
|
192
|
-
if (this.tooltip$$ !== undefined) {
|
|
193
|
-
this.tooltip$$.unsubscribe();
|
|
194
|
-
this.tooltip$$ = undefined;
|
|
195
|
-
}
|
|
196
|
-
this.disabled$$.unsubscribe();
|
|
197
|
-
this.noDisplay$$.unsubscribe();
|
|
198
|
-
}
|
|
199
|
-
/**
|
|
200
|
-
* When the action button is clicked, emit the 'trigger' event but don't
|
|
201
|
-
* invoke the action handler. This is handled by the parent component.
|
|
202
|
-
* @internal
|
|
203
|
-
*/
|
|
204
|
-
onClick() {
|
|
205
|
-
if (this.disabled === true) {
|
|
206
|
-
return;
|
|
207
|
-
}
|
|
208
|
-
this.trigger.emit(this.action);
|
|
209
|
-
}
|
|
210
|
-
updateNgClass(ngClass) {
|
|
211
|
-
this.ngClass$.next(Object.assign({}, this.ngClass$.value, ngClass));
|
|
212
|
-
}
|
|
213
|
-
updateTooltip(tooltip) {
|
|
214
|
-
this.tooltip$.next(tooltip);
|
|
215
|
-
}
|
|
216
|
-
updateCheckCondition(checkCondition) {
|
|
217
|
-
this.checkCondition$.next(checkCondition);
|
|
218
|
-
}
|
|
219
|
-
updateIcon(icon) {
|
|
220
|
-
this.icon$.next(icon);
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
ActionbarItemComponent.ɵfac = function ActionbarItemComponent_Factory(t) { return new (t || ActionbarItemComponent)(); };
|
|
224
|
-
ActionbarItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionbarItemComponent, selectors: [["igo-actionbar-item"]], inputs: { action: "action", color: "color", withTitle: "withTitle", withIcon: "withIcon", withTooltip: "withTooltip", disabled: "disabled", noDisplay: "noDisplay" }, outputs: { trigger: "trigger" }, decls: 2, vars: 2, consts: [["matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 3, "matTooltip", "ngClass", "click", 4, "ngIf"], ["class", "item-checkbox", "matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 3, "matTooltip", "ngClass", 4, "ngIf"], ["matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 3, "matTooltip", "ngClass", "click"], ["mat-list-avatar", "", "mat-icon-button", "", 3, "color", "disabled", 4, "ngIf"], ["matLine", "", 4, "ngIf"], ["mat-list-avatar", "", "mat-icon-button", "", 3, "color", "disabled"], [3, "svgIcon", 4, "ngIf"], [3, "svgIcon"], ["matLine", ""], ["matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 1, "item-checkbox", 3, "matTooltip", "ngClass"], [3, "checked", "change", 4, "ngIf"], [3, "checked", "change"]], template: function ActionbarItemComponent_Template(rf, ctx) { if (rf & 1) {
|
|
225
|
-
i0.ɵɵtemplate(0, ActionbarItemComponent_mat_list_item_0_Template, 6, 10, "mat-list-item", 0);
|
|
226
|
-
i0.ɵɵtemplate(1, ActionbarItemComponent_mat_list_item_1_Template, 5, 9, "mat-list-item", 1);
|
|
227
|
-
} if (rf & 2) {
|
|
228
|
-
i0.ɵɵproperty("ngIf", !ctx.action.checkbox);
|
|
229
|
-
i0.ɵɵadvance(1);
|
|
230
|
-
i0.ɵɵproperty("ngIf", ctx.action.checkbox);
|
|
231
|
-
} }, directives: [i1.NgIf, i2.MatListItem, i3.MatTooltip, i1.NgClass, i4.MatButton, i2.MatListAvatarCssMatStyler, i5.MatIcon, i6.MatLine, i7.MatCheckbox], pipes: [i8.TranslatePipe, i1.AsyncPipe], styles: ["mat-list-item.igo-actionbar-item-disabled[_ngcontent-%COMP%]{color:#00000042;cursor:default!important}mat-list-item.igo-actionbar-item-no-display[_ngcontent-%COMP%]{display:none}mat-checkbox[_ngcontent-%COMP%]{padding:12px}.item-checkbox[_ngcontent-%COMP%]{height:56px}.item-checkbox[_ngcontent-%COMP%] .mat-checkbox-label{margin-left:20px}"], changeDetection: 0 });
|
|
232
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionbarItemComponent, [{
|
|
233
|
-
type: Component,
|
|
234
|
-
args: [{
|
|
235
|
-
selector: 'igo-actionbar-item',
|
|
236
|
-
templateUrl: './actionbar-item.component.html',
|
|
237
|
-
styleUrls: ['./actionbar-item.component.scss'],
|
|
238
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
239
|
-
}]
|
|
240
|
-
}], function () { return []; }, { action: [{
|
|
241
|
-
type: Input
|
|
242
|
-
}], color: [{
|
|
243
|
-
type: Input
|
|
244
|
-
}], withTitle: [{
|
|
245
|
-
type: Input
|
|
246
|
-
}], withIcon: [{
|
|
247
|
-
type: Input
|
|
248
|
-
}], withTooltip: [{
|
|
249
|
-
type: Input
|
|
250
|
-
}], disabled: [{
|
|
251
|
-
type: Input
|
|
252
|
-
}], noDisplay: [{
|
|
253
|
-
type: Input
|
|
254
|
-
}], trigger: [{
|
|
255
|
-
type: Output
|
|
256
|
-
}] }); })();
|
|
257
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uYmFyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvYWN0aW9uL2FjdGlvbmJhci9hY3Rpb25iYXItaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi9hY3Rpb24vYWN0aW9uYmFyL2FjdGlvbmJhci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osdUJBQXVCLEVBR3hCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQWdCLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7SUNDL0QsOEJBQWtFOzs7O0lBQXZDLHVFQUEyQjs7O0lBTHhELGlDQUlpQzs7SUFDL0IsMEdBQWtFO0lBQ3BFLGlCQUFTOzs7SUFIUCxvQ0FBZSxvREFBQTtJQUVKLGVBQWM7SUFBZCxzQ0FBYzs7O0lBRTNCLDZCQUE4QjtJQUFBLFlBQXFCOztJQUFBLGlCQUFLOzs7SUFBMUIsZUFBcUI7SUFBckIsd0RBQXFCOzs7O0lBYnJELHdDQUtzQjtJQUFwQix3TUFBbUI7Ozs7SUFDbkIsNkZBTVM7SUFDVCxxRkFBd0Q7SUFDMUQsaUJBQWdCOzs7SUFYZCxrSUFBMkUsa0RBQUE7SUFHbEUsZUFBYztJQUFkLHNDQUFjO0lBT2xCLGVBQWU7SUFBZix1Q0FBZTs7OztJQVFwQix3Q0FFd0M7SUFEcEMscU1BQVUsdUJBQWdCLElBQUM7O0lBRTNCLFlBQ0o7O0lBQUEsaUJBQWU7OztJQUZYLHNFQUFtQztJQUNuQyxlQUNKO0lBREksbUVBQ0o7OztJQVRGLHdDQUkrQjs7OztJQUM3QiwwR0FJZTtJQUNqQixpQkFBZ0I7OztJQVBkLGtJQUEyRSxrREFBQTtJQUU1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QkFBbkIsS0FBSztZQU1GLFFBQVE7a0JBRFgsS0FBSztZQVFGLFNBQVM7a0JBRFosS0FBSztZQU9JLE9BQU87a0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIE9uSW5pdCxcclxuICBPbkRlc3Ryb3lcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBpc09ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4uL3NoYXJlZC9hY3Rpb24uaW50ZXJmYWNlcyc7XHJcblxyXG4gLyoqXHJcbiAgKiBBbiBhY3Rpb24gYnV0dG9uXHJcbiAgKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tYWN0aW9uYmFyLWl0ZW0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb25iYXItaXRlbS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWN0aW9uYmFyLWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uYmFySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgcmVhZG9ubHkgZGlzYWJsZWQkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcclxuXHJcbiAgcmVhZG9ubHkgY2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZCk7XHJcblxyXG4gIHJlYWRvbmx5IGljb24kOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcclxuXHJcbiAgcmVhZG9ubHkgdG9vbHRpcCQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xyXG5cclxuICByZWFkb25seSBub0Rpc3BsYXkkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcclxuXHJcbiAgcmVhZG9ubHkgbmdDbGFzcyQ6IEJlaGF2aW9yU3ViamVjdDx7W2tleTogc3RyaW5nXTogYm9vbGVhbn0+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh7fSk7XHJcblxyXG4gIHByaXZhdGUgbmdDbGFzcyQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIHByaXZhdGUgZGlzYWJsZWQkJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIGF2YWlsYWJpbGl0eSQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIHByaXZhdGUgaWNvbiQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIHByaXZhdGUgY2hlY2tDb25kaXRpb24kJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIHRvb2x0aXAkJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIG5vRGlzcGxheSQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIHByaXZhdGUgZGlzcGxheSQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGlvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFjdGlvbjogQWN0aW9uO1xyXG5cclxuICAvKipcclxuICAgKiBDb2xvclxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNvbG9yID0gJ2RlZmF1bHQnO1xyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIHRoZSBhY3Rpb24gdGl0bGUgaXMgZGlzcGxheWVkXHJcbiAgICovXHJcbiAgQElucHV0KCkgd2l0aFRpdGxlID0gdHJ1ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciB0aGUgYWN0aW9uIGljb24gaXMgZGlzcGxheWVkXHJcbiAgICovXHJcbiAgQElucHV0KCkgd2l0aEljb24gPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIGEgdG9vbHRpcCBzaG91bGQgYmUgc2hvd25cclxuICAgKi9cclxuICBASW5wdXQoKSB3aXRoVG9vbHRpcCA9IHRydWU7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgdGhlIGFjdGlvbiBpcyBkaXNhYmxlZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7IHRoaXMuZGlzYWJsZWQkLm5leHQodmFsdWUpOyB9XHJcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5kaXNhYmxlZCQudmFsdWU7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciB0aGUgYWN0aW9uIGlzIGRpc3BsYXkgb3Igbm90XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBzZXQgbm9EaXNwbGF5KHZhbHVlOiBib29sZWFuKSB7IHRoaXMubm9EaXNwbGF5JC5uZXh0KHZhbHVlKTsgfVxyXG4gIGdldCBub0Rpc3BsYXkoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLm5vRGlzcGxheSQudmFsdWU7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBhY3Rpb24gYnV0dG9uIGlzIGNsaWNrZWRcclxuICAgKi9cclxuICBAT3V0cHV0KCkgdHJpZ2dlcjogRXZlbnRFbWl0dGVyPEFjdGlvbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIGdldCB0aXRsZSgpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5hY3Rpb24udGl0bGU7IH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLmFjdGlvbi5hcmdzIHx8IFtdO1xyXG5cclxuICAgIGlmICh0aGlzLmFjdGlvbi5uZ0NsYXNzICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5uZ0NsYXNzJCQgPSB0aGlzLmFjdGlvbi5uZ0NsYXNzKC4uLmFyZ3MpXHJcbiAgICAgICAgLnN1YnNjcmliZSgobmdDbGFzczoge1trZXk6IHN0cmluZ106IGJvb2xlYW59KSA9PiB0aGlzLnVwZGF0ZU5nQ2xhc3MobmdDbGFzcykpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChpc09ic2VydmFibGUodGhpcy5hY3Rpb24uaWNvbikpIHtcclxuICAgICAgdGhpcy5pY29uJCQgPSB0aGlzLmFjdGlvbi5pY29uXHJcbiAgICAgICAgLnN1YnNjcmliZSgoaWNvbjogc3RyaW5nKSA9PiB0aGlzLnVwZGF0ZUljb24oaWNvbikpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy51cGRhdGVJY29uKHRoaXMuYWN0aW9uLmljb24pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChpc09ic2VydmFibGUodGhpcy5hY3Rpb24uY2hlY2tDb25kaXRpb24pKSB7XHJcbiAgICAgIHRoaXMuY2hlY2tDb25kaXRpb24kJCA9IHRoaXMuYWN0aW9uLmNoZWNrQ29uZGl0aW9uXHJcbiAgICAgICAgLnN1YnNjcmliZSgoY2hlY2tDb25kaXRpb246IGJvb2xlYW4pID0+IHRoaXMudXBkYXRlQ2hlY2tDb25kaXRpb24oY2hlY2tDb25kaXRpb24pKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudXBkYXRlQ2hlY2tDb25kaXRpb24odGhpcy5hY3Rpb24uY2hlY2tDb25kaXRpb24pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChpc09ic2VydmFibGUodGhpcy5hY3Rpb24udG9vbHRpcCkpIHtcclxuICAgICAgdGhpcy50b29sdGlwJCQgPSB0aGlzLmFjdGlvbi50b29sdGlwXHJcbiAgICAgICAgLnN1YnNjcmliZSgodG9vbHRpcDogc3RyaW5nKSA9PiB0aGlzLnVwZGF0ZVRvb2x0aXAodG9vbHRpcCkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy51cGRhdGVUb29sdGlwKHRoaXMuYWN0aW9uLnRvb2x0aXApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmFjdGlvbi5hdmFpbGFiaWxpdHkgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmF2YWlsYWJpbGl0eSQkID0gdGhpcy5hY3Rpb24uYXZhaWxhYmlsaXR5KC4uLmFyZ3MpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoYXZhaWxhYmxlOiBib29sZWFuKSA9PiB0aGlzLmRpc2FibGVkID0gIWF2YWlsYWJsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaXNhYmxlZCQkID0gdGhpcy5kaXNhYmxlZCRcclxuICAgICAgLnN1YnNjcmliZSgoZGlzYWJsZWQ6IGJvb2xlYW4pID0+IHRoaXMudXBkYXRlTmdDbGFzcyh7J2lnby1hY3Rpb25iYXItaXRlbS1kaXNhYmxlZCc6IGRpc2FibGVkfSkpO1xyXG5cclxuICAgIGlmICh0aGlzLmFjdGlvbi5kaXNwbGF5ICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5kaXNwbGF5JCQgPSB0aGlzLmFjdGlvbi5kaXNwbGF5KC4uLmFyZ3MpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoZGlzcGxheTogYm9vbGVhbikgPT4gdGhpcy5ub0Rpc3BsYXkgPSAhZGlzcGxheSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5ub0Rpc3BsYXkkJCA9IHRoaXMubm9EaXNwbGF5JFxyXG4gICAgICAuc3Vic2NyaWJlKChub0Rpc3BsYXk6IGJvb2xlYW4pID0+IHRoaXMudXBkYXRlTmdDbGFzcyh7J2lnby1hY3Rpb25iYXItaXRlbS1uby1kaXNwbGF5Jzogbm9EaXNwbGF5fSkpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiAodGhpcy5uZ0NsYXNzJCQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLm5nQ2xhc3MkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLm5nQ2xhc3MkJCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5hdmFpbGFiaWxpdHkkJCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuYXZhaWxhYmlsaXR5JCQudW5zdWJzY3JpYmUoKTtcclxuICAgICAgdGhpcy5hdmFpbGFiaWxpdHkkJCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5kaXNwbGF5JCQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmRpc3BsYXkkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLmRpc3BsYXkkJCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5jaGVja0NvbmRpdGlvbiQkICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja0NvbmRpdGlvbiQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgIHRoaXMuY2hlY2tDb25kaXRpb24kJCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5pY29uJCQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmljb24kJC51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLmljb24kJCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50b29sdGlwJCQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLnRvb2x0aXAkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLnRvb2x0aXAkJCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRpc2FibGVkJCQudW5zdWJzY3JpYmUoKTtcclxuICAgIHRoaXMubm9EaXNwbGF5JCQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gdGhlIGFjdGlvbiBidXR0b24gaXMgY2xpY2tlZCwgZW1pdCB0aGUgJ3RyaWdnZXInIGV2ZW50IGJ1dCBkb24ndFxyXG4gICAqIGludm9rZSB0aGUgYWN0aW9uIGhhbmRsZXIuIFRoaXMgaXMgaGFuZGxlZCBieSB0aGUgcGFyZW50IGNvbXBvbmVudC5cclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBvbkNsaWNrKCkge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgPT09IHRydWUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy50cmlnZ2VyLmVtaXQodGhpcy5hY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVOZ0NsYXNzKG5nQ2xhc3M6IHtba2V5OiBzdHJpbmddOiBib29sZWFufSkge1xyXG4gICAgdGhpcy5uZ0NsYXNzJC5uZXh0KE9iamVjdC5hc3NpZ24oe30sIHRoaXMubmdDbGFzcyQudmFsdWUsIG5nQ2xhc3MpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVG9vbHRpcCh0b29sdGlwOiBzdHJpbmcpIHtcclxuICAgIHRoaXMudG9vbHRpcCQubmV4dCh0b29sdGlwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlQ2hlY2tDb25kaXRpb24oY2hlY2tDb25kaXRpb246IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuY2hlY2tDb25kaXRpb24kLm5leHQoY2hlY2tDb25kaXRpb24pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVJY29uKGljb246IHN0cmluZykge1xyXG4gICAgdGhpcy5pY29uJC5uZXh0KGljb24pO1xyXG4gIH1cclxufVxyXG4iLCI8bWF0LWxpc3QtaXRlbSAqbmdJZj1cIiFhY3Rpb24uY2hlY2tib3hcIlxyXG4gIG1hdFRvb2x0aXBDbGFzcz1cImFjdGlvbmJhckl0ZW1Ub29sdGlwXCJcclxuICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcclxuICBbbWF0VG9vbHRpcF09XCJ3aXRoVG9vbHRpcCA/ICgodG9vbHRpcCQgfCBhc3luYykgfHwgdGl0bGUgfCB0cmFuc2xhdGUpIDogJydcIlxyXG4gIFtuZ0NsYXNzXT1cIm5nQ2xhc3MkIHwgYXN5bmNcIlxyXG4gIChjbGljayk9XCJvbkNsaWNrKClcIj5cclxuICA8YnV0dG9uICpuZ0lmPVwid2l0aEljb25cIlxyXG4gICAgbWF0LWxpc3QtYXZhdGFyXHJcbiAgICBtYXQtaWNvbi1idXR0b25cclxuICAgIFtjb2xvcl09XCJjb2xvclwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQkIHwgYXN5bmNcIj5cclxuICAgIDxtYXQtaWNvbiAqbmdJZj1cIndpdGhJY29uXCIgc3ZnSWNvbj1cInt7aWNvbiQgfCBhc3luY319XCI+PC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8aDQgKm5nSWY9XCJ3aXRoVGl0bGVcIiBtYXRMaW5lPnt7dGl0bGUgfCB0cmFuc2xhdGV9fTwvaDQ+XHJcbjwvbWF0LWxpc3QtaXRlbT5cclxuXHJcbjxtYXQtbGlzdC1pdGVtIGNsYXNzPVwiaXRlbS1jaGVja2JveFwiICpuZ0lmPVwiYWN0aW9uLmNoZWNrYm94XCJcclxuICBtYXRUb29sdGlwQ2xhc3M9XCJhY3Rpb25iYXJJdGVtVG9vbHRpcFwiXHJcbiAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgW21hdFRvb2x0aXBdPVwid2l0aFRvb2x0aXAgPyAoKHRvb2x0aXAkIHwgYXN5bmMpIHx8IHRpdGxlIHwgdHJhbnNsYXRlKSA6ICcnXCJcclxuICBbbmdDbGFzc109XCJuZ0NsYXNzJCB8IGFzeW5jXCI+XHJcbiAgPG1hdC1jaGVja2JveCAqbmdJZj1cIndpdGhUaXRsZVwiXHJcbiAgICAgIChjaGFuZ2UpPVwiYWN0aW9uLmhhbmRsZXIoKVwiXHJcbiAgICAgIFtjaGVja2VkXT1cImNoZWNrQ29uZGl0aW9uJCB8IGFzeW5jXCI+XHJcbiAgICAgIHt7dGl0bGUgfCB0cmFuc2xhdGV9fVxyXG4gIDwvbWF0LWNoZWNrYm94PlxyXG48L21hdC1saXN0LWl0ZW0+XHJcbiJdfQ==
|