@igo2/common 1.12.1 → 1.13.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{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} +1 -1
- package/{esm2015/lib/action/shared/action.enums.js → esm2020/lib/action/shared/action.enums.mjs} +1 -1
- package/esm2020/lib/action/shared/action.interfaces.mjs +2 -0
- package/{esm2015/lib/action/shared/index.js → esm2020/lib/action/shared/index.mjs} +1 -1
- package/{esm2015/lib/action/shared/store.js → esm2020/lib/action/shared/store.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/badge-icon/badge-icon.directive.js → esm2020/lib/badge-icon/badge-icon.directive.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/clickout/clickout.directive.js → esm2020/lib/clickout/clickout.directive.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/clone/index.js → esm2020/lib/clone/index.mjs} +1 -1
- package/{esm2015/lib/collapsible/collapse.directive.js → esm2020/lib/collapsible/collapse.directive.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/confirm-dialog/index.js → esm2020/lib/confirm-dialog/index.mjs} +1 -1
- package/{esm2015/lib/context-menu/context-menu.directive.js → esm2020/lib/context-menu/context-menu.directive.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/custom-html/index.js → esm2020/lib/custom-html/index.mjs} +1 -1
- package/{esm2015/lib/dom/dom.interfaces.js → esm2020/lib/dom/dom.interfaces.mjs} +1 -1
- package/{esm2015/lib/dom/dom.module.js → esm2020/lib/dom/dom.module.mjs} +1 -1
- package/esm2020/lib/dom/dom.service.mjs +30 -0
- package/{esm2015/lib/dom/index.js → esm2020/lib/dom/index.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/dynamic-component/shared/dynamic-component.interfaces.js → esm2020/lib/dynamic-component/shared/dynamic-component.interfaces.mjs} +1 -1
- package/{esm2015/lib/dynamic-component/shared/dynamic-component.js → esm2020/lib/dynamic-component/shared/dynamic-component.mjs} +1 -1
- package/{esm2015/lib/dynamic-component/shared/dynamic-component.service.js → esm2020/lib/dynamic-component/shared/dynamic-component.service.mjs} +1 -1
- package/{esm2015/lib/dynamic-component/shared/index.js → esm2020/lib/dynamic-component/shared/index.mjs} +1 -1
- 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} +1 -1
- 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/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.interface.mjs +2 -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} +1 -1
- package/{esm2015/lib/entity/shared/entity.enums.js → esm2020/lib/entity/shared/entity.enums.mjs} +1 -1
- package/esm2020/lib/entity/shared/entity.interfaces.mjs +2 -0
- package/esm2020/lib/entity/shared/entity.utils.mjs +67 -0
- package/{esm2015/lib/entity/shared/index.js → esm2020/lib/entity/shared/index.mjs} +1 -1
- package/{esm2015/lib/entity/shared/state.js → esm2020/lib/entity/shared/state.mjs} +1 -1
- package/{esm2015/lib/entity/shared/store.js → esm2020/lib/entity/shared/store.mjs} +1 -1
- package/{esm2015/lib/entity/shared/strategies/filter-custom-function.js → esm2020/lib/entity/shared/strategies/filter-custom-function.mjs} +1 -1
- package/{esm2015/lib/entity/shared/strategies/filter-selection.js → esm2020/lib/entity/shared/strategies/filter-selection.mjs} +1 -1
- package/{esm2015/lib/entity/shared/strategies/index.js → esm2020/lib/entity/shared/strategies/index.mjs} +1 -1
- package/{esm2015/lib/entity/shared/strategies/strategy.js → esm2020/lib/entity/shared/strategies/strategy.mjs} +1 -1
- package/{esm2015/lib/entity/shared/transaction.js → esm2020/lib/entity/shared/transaction.mjs} +1 -1
- package/{esm2015/lib/entity/shared/view.js → esm2020/lib/entity/shared/view.mjs} +1 -1
- package/{esm2015/lib/entity/shared/watcher.js → esm2020/lib/entity/shared/watcher.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/flexible/index.js → esm2020/lib/flexible/index.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/form/shared/form-field-component.js → esm2020/lib/form/shared/form-field-component.mjs} +1 -1
- package/{esm2015/lib/form/shared/form-field.service.js → esm2020/lib/form/shared/form-field.service.mjs} +1 -1
- package/esm2020/lib/form/shared/form.interfaces.mjs +2 -0
- package/esm2020/lib/form/shared/form.service.mjs +81 -0
- package/{esm2015/lib/form/shared/form.utils.js → esm2020/lib/form/shared/form.utils.mjs} +1 -1
- package/{esm2015/lib/form/shared/index.js → esm2020/lib/form/shared/index.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/esm2020/lib/image/secure-image.pipe.mjs +54 -0
- package/{esm2015/lib/interactive-tour/index.js → esm2020/lib/interactive-tour/index.mjs} +1 -1
- package/esm2020/lib/interactive-tour/interactive-tour.component.mjs +135 -0
- package/esm2020/lib/interactive-tour/interactive-tour.interface.mjs +2 -0
- package/{esm2015/lib/interactive-tour/interactive-tour.loader.js → esm2020/lib/interactive-tour/interactive-tour.loader.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/keyvalue/index.js → esm2020/lib/keyvalue/index.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/list/index.js → esm2020/lib/list/index.mjs} +1 -1
- package/{esm2015/lib/list/list-item.directive.js → esm2020/lib/list/list-item.directive.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/sidenav/sidenav-shim.directive.js → esm2020/lib/sidenav/sidenav-shim.directive.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/spinner/spinner-activity.directive.js → esm2020/lib/spinner/spinner-activity.directive.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/stop-propagation/stop-drop-propagation.directive.js → esm2020/lib/stop-propagation/stop-drop-propagation.directive.mjs} +1 -1
- package/{esm2015/lib/stop-propagation/stop-propagation.directive.js → esm2020/lib/stop-propagation/stop-propagation.directive.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/table/table-action-color.enum.js → esm2020/lib/table/table-action-color.enum.mjs} +1 -1
- package/{esm2015/lib/table/table-database.js → esm2020/lib/table/table-database.mjs} +1 -1
- package/{esm2015/lib/table/table-datasource.js → esm2020/lib/table/table-datasource.mjs} +1 -1
- package/esm2020/lib/table/table-model.interface.mjs +2 -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} +1 -1
- package/{esm2015/lib/tool/shared/index.js → esm2020/lib/tool/shared/index.mjs} +1 -1
- package/{esm2015/lib/tool/shared/tool-component.js → esm2020/lib/tool/shared/tool-component.mjs} +1 -1
- package/esm2020/lib/tool/shared/tool.interface.mjs +2 -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} +1 -1
- package/{esm2015/lib/tool/shared/toolbox.js → esm2020/lib/tool/shared/toolbox.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/{esm2015/lib/widget/shared/index.js → esm2020/lib/widget/shared/index.mjs} +1 -1
- package/esm2020/lib/widget/shared/widget.interfaces.mjs +2 -0
- package/{esm2015/lib/widget/shared/widget.js → esm2020/lib/widget/shared/widget.mjs} +1 -1
- package/{esm2015/lib/widget/shared/widget.service.js → esm2020/lib/widget/shared/widget.service.mjs} +1 -1
- 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} +1 -1
- package/{esm2015/lib/workspace/shared/index.js → esm2020/lib/workspace/shared/index.mjs} +1 -1
- package/{esm2015/lib/workspace/shared/store.js → esm2020/lib/workspace/shared/store.mjs} +1 -1
- package/esm2020/lib/workspace/shared/workspace.interfaces.mjs +2 -0
- package/{esm2015/lib/workspace/shared/workspace.js → esm2020/lib/workspace/shared/workspace.mjs} +1 -1
- 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} +1 -1
- package/fesm2015/igo2-common.mjs +10145 -0
- package/fesm2015/igo2-common.mjs.map +1 -0
- package/{fesm2015/igo2-common.js → fesm2020/igo2-common.mjs} +471 -706
- 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 +4 -4
- 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 +3 -3
- package/lib/form/form-field/form-field-text.component.d.ts +3 -3
- package/lib/form/form-field/form-field-textarea.component.d.ts +3 -3
- package/lib/form/form-field/form-field.component.d.ts +1 -1
- package/lib/form/form-group/form-group.component.d.ts +3 -3
- package/lib/form/shared/form.interfaces.d.ts +4 -4
- package/lib/form/shared/form.service.d.ts +2 -2
- 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/style/common.theming.scss +12 -12
- package/style/partial/action.scss +18 -18
- package/style/partial/common.variables.scss +8 -8
- 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/action/shared/action.interfaces.js +0 -2
- package/esm2015/lib/dom/dom.service.js +0 -33
- 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/entity-table-paginator/entity-table-paginator.interface.js +0 -2
- package/esm2015/lib/entity/shared/entity.interfaces.js +0 -2
- 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/form/shared/form.interfaces.js +0 -2
- package/esm2015/lib/form/shared/form.service.js +0 -81
- 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.interface.js +0 -2
- 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-model.interface.js +0 -2
- package/esm2015/lib/table/table.component.js +0 -310
- package/esm2015/lib/tool/shared/tool.interface.js +0 -2
- package/esm2015/lib/tool/toolbox/toolbox.component.js +0 -261
- package/esm2015/lib/widget/shared/widget.interfaces.js +0 -2
- package/esm2015/lib/workspace/shared/workspace.interfaces.js +0 -2
- 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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QkFBbkIsS0FBSztZQU1GLFFBQVE7a0JBRFgsS0FBSztZQVFGLFNBQVM7a0JBRFosS0FBSztZQU9JLE9BQU87a0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiwgaXNPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4uL3NoYXJlZC9hY3Rpb24uaW50ZXJmYWNlcyc7XG5cbiAvKipcbiAgKiBBbiBhY3Rpb24gYnV0dG9uXG4gICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tYWN0aW9uYmFyLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aW9uYmFyLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hY3Rpb25iYXItaXRlbS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpb25iYXJJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHJlYWRvbmx5IGRpc2FibGVkJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgcmVhZG9ubHkgY2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgaWNvbiQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IHRvb2x0aXAkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcblxuICByZWFkb25seSBub0Rpc3BsYXkkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICByZWFkb25seSBuZ0NsYXNzJDogQmVoYXZpb3JTdWJqZWN0PHtba2V5OiBzdHJpbmddOiBib29sZWFufT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHt9KTtcblxuICBwcml2YXRlIG5nQ2xhc3MkJDogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgZGlzYWJsZWQkJDogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgYXZhaWxhYmlsaXR5JCQ6IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIGljb24kJDogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgY2hlY2tDb25kaXRpb24kJDogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgdG9vbHRpcCQkOiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSBub0Rpc3BsYXkkJDogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgZGlzcGxheSQkOiBTdWJzY3JpcHRpb247XG5cbiAgLyoqXG4gICAqIEFjdGlvblxuICAgKi9cbiAgQElucHV0KCkgYWN0aW9uOiBBY3Rpb247XG5cbiAgLyoqXG4gICAqIENvbG9yXG4gICAqL1xuICBASW5wdXQoKSBjb2xvciA9ICdkZWZhdWx0JztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgYWN0aW9uIHRpdGxlIGlzIGRpc3BsYXllZFxuICAgKi9cbiAgQElucHV0KCkgd2l0aFRpdGxlID0gdHJ1ZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgYWN0aW9uIGljb24gaXMgZGlzcGxheWVkXG4gICAqL1xuICBASW5wdXQoKSB3aXRoSWNvbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYSB0b29sdGlwIHNob3VsZCBiZSBzaG93blxuICAgKi9cbiAgQElucHV0KCkgd2l0aFRvb2x0aXAgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBhY3Rpb24gaXMgZGlzYWJsZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLmRpc2FibGVkJC5uZXh0KHZhbHVlKTsgfVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLmRpc2FibGVkJC52YWx1ZTsgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBhY3Rpb24gaXMgZGlzcGxheSBvciBub3RcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBub0Rpc3BsYXkodmFsdWU6IGJvb2xlYW4pIHsgdGhpcy5ub0Rpc3BsYXkkLm5leHQodmFsdWUpOyB9XG4gIGdldCBub0Rpc3BsYXkoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLm5vRGlzcGxheSQudmFsdWU7IH1cblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBhY3Rpb24gYnV0dG9uIGlzIGNsaWNrZWRcbiAgICovXG4gIEBPdXRwdXQoKSB0cmlnZ2VyOiBFdmVudEVtaXR0ZXI8QWN0aW9uPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBnZXQgdGl0bGUoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuYWN0aW9uLnRpdGxlOyB9XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLmFjdGlvbi5hcmdzIHx8IFtdO1xuXG4gICAgaWYgKHRoaXMuYWN0aW9uLm5nQ2xhc3MgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5uZ0NsYXNzJCQgPSB0aGlzLmFjdGlvbi5uZ0NsYXNzKC4uLmFyZ3MpXG4gICAgICAgIC5zdWJzY3JpYmUoKG5nQ2xhc3M6IHtba2V5OiBzdHJpbmddOiBib29sZWFufSkgPT4gdGhpcy51cGRhdGVOZ0NsYXNzKG5nQ2xhc3MpKTtcbiAgICB9XG5cbiAgICBpZiAoaXNPYnNlcnZhYmxlKHRoaXMuYWN0aW9uLmljb24pKSB7XG4gICAgICB0aGlzLmljb24kJCA9IHRoaXMuYWN0aW9uLmljb25cbiAgICAgICAgLnN1YnNjcmliZSgoaWNvbjogc3RyaW5nKSA9PiB0aGlzLnVwZGF0ZUljb24oaWNvbikpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZUljb24odGhpcy5hY3Rpb24uaWNvbik7XG4gICAgfVxuXG4gICAgaWYgKGlzT2JzZXJ2YWJsZSh0aGlzLmFjdGlvbi5jaGVja0NvbmRpdGlvbikpIHtcbiAgICAgIHRoaXMuY2hlY2tDb25kaXRpb24kJCA9IHRoaXMuYWN0aW9uLmNoZWNrQ29uZGl0aW9uXG4gICAgICAgIC5zdWJzY3JpYmUoKGNoZWNrQ29uZGl0aW9uOiBib29sZWFuKSA9PiB0aGlzLnVwZGF0ZUNoZWNrQ29uZGl0aW9uKGNoZWNrQ29uZGl0aW9uKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudXBkYXRlQ2hlY2tDb25kaXRpb24odGhpcy5hY3Rpb24uY2hlY2tDb25kaXRpb24pO1xuICAgIH1cblxuICAgIGlmIChpc09ic2VydmFibGUodGhpcy5hY3Rpb24udG9vbHRpcCkpIHtcbiAgICAgIHRoaXMudG9vbHRpcCQkID0gdGhpcy5hY3Rpb24udG9vbHRpcFxuICAgICAgICAuc3Vic2NyaWJlKCh0b29sdGlwOiBzdHJpbmcpID0+IHRoaXMudXBkYXRlVG9vbHRpcCh0b29sdGlwKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudXBkYXRlVG9vbHRpcCh0aGlzLmFjdGlvbi50b29sdGlwKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hY3Rpb24uYXZhaWxhYmlsaXR5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuYXZhaWxhYmlsaXR5JCQgPSB0aGlzLmFjdGlvbi5hdmFpbGFiaWxpdHkoLi4uYXJncylcbiAgICAgICAgLnN1YnNjcmliZSgoYXZhaWxhYmxlOiBib29sZWFuKSA9PiB0aGlzLmRpc2FibGVkID0gIWF2YWlsYWJsZSk7XG4gICAgfVxuXG4gICAgdGhpcy5kaXNhYmxlZCQkID0gdGhpcy5kaXNhYmxlZCRcbiAgICAgIC5zdWJzY3JpYmUoKGRpc2FibGVkOiBib29sZWFuKSA9PiB0aGlzLnVwZGF0ZU5nQ2xhc3MoeydpZ28tYWN0aW9uYmFyLWl0ZW0tZGlzYWJsZWQnOiBkaXNhYmxlZH0pKTtcblxuICAgIGlmICh0aGlzLmFjdGlvbi5kaXNwbGF5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuZGlzcGxheSQkID0gdGhpcy5hY3Rpb24uZGlzcGxheSguLi5hcmdzKVxuICAgICAgICAuc3Vic2NyaWJlKChkaXNwbGF5OiBib29sZWFuKSA9PiB0aGlzLm5vRGlzcGxheSA9ICFkaXNwbGF5KTtcbiAgICB9XG5cbiAgICB0aGlzLm5vRGlzcGxheSQkID0gdGhpcy5ub0Rpc3BsYXkkXG4gICAgICAuc3Vic2NyaWJlKChub0Rpc3BsYXk6IGJvb2xlYW4pID0+IHRoaXMudXBkYXRlTmdDbGFzcyh7J2lnby1hY3Rpb25iYXItaXRlbS1uby1kaXNwbGF5Jzogbm9EaXNwbGF5fSkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMubmdDbGFzcyQkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMubmdDbGFzcyQkLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLm5nQ2xhc3MkJCA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hdmFpbGFiaWxpdHkkJCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmF2YWlsYWJpbGl0eSQkLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLmF2YWlsYWJpbGl0eSQkID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRpc3BsYXkkJCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmRpc3BsYXkkJC51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5kaXNwbGF5JCQgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2hlY2tDb25kaXRpb24kJCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmNoZWNrQ29uZGl0aW9uJCQudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMuY2hlY2tDb25kaXRpb24kJCA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pY29uJCQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5pY29uJCQudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMuaWNvbiQkID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnRvb2x0aXAkJCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnRvb2x0aXAkJC51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy50b29sdGlwJCQgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgdGhpcy5kaXNhYmxlZCQkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5ub0Rpc3BsYXkkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gdGhlIGFjdGlvbiBidXR0b24gaXMgY2xpY2tlZCwgZW1pdCB0aGUgJ3RyaWdnZXInIGV2ZW50IGJ1dCBkb24ndFxuICAgKiBpbnZva2UgdGhlIGFjdGlvbiBoYW5kbGVyLiBUaGlzIGlzIGhhbmRsZWQgYnkgdGhlIHBhcmVudCBjb21wb25lbnQuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgb25DbGljaygpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCA9PT0gdHJ1ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnRyaWdnZXIuZW1pdCh0aGlzLmFjdGlvbik7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZU5nQ2xhc3MobmdDbGFzczoge1trZXk6IHN0cmluZ106IGJvb2xlYW59KSB7XG4gICAgdGhpcy5uZ0NsYXNzJC5uZXh0KE9iamVjdC5hc3NpZ24oe30sIHRoaXMubmdDbGFzcyQudmFsdWUsIG5nQ2xhc3MpKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlVG9vbHRpcCh0b29sdGlwOiBzdHJpbmcpIHtcbiAgICB0aGlzLnRvb2x0aXAkLm5leHQodG9vbHRpcCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUNoZWNrQ29uZGl0aW9uKGNoZWNrQ29uZGl0aW9uOiBib29sZWFuKSB7XG4gICAgdGhpcy5jaGVja0NvbmRpdGlvbiQubmV4dChjaGVja0NvbmRpdGlvbik7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUljb24oaWNvbjogc3RyaW5nKSB7XG4gICAgdGhpcy5pY29uJC5uZXh0KGljb24pO1xuICB9XG59XG4iLCI8bWF0LWxpc3QtaXRlbSAqbmdJZj1cIiFhY3Rpb24uY2hlY2tib3hcIlxuICBtYXRUb29sdGlwQ2xhc3M9XCJhY3Rpb25iYXJJdGVtVG9vbHRpcFwiXG4gIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICBbbWF0VG9vbHRpcF09XCJ3aXRoVG9vbHRpcCA/ICgodG9vbHRpcCQgfCBhc3luYykgfHwgdGl0bGUgfCB0cmFuc2xhdGUpIDogJydcIlxuICBbbmdDbGFzc109XCJuZ0NsYXNzJCB8IGFzeW5jXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiPlxuICA8YnV0dG9uICpuZ0lmPVwid2l0aEljb25cIlxuICAgIG1hdC1saXN0LWF2YXRhclxuICAgIG1hdC1pY29uLWJ1dHRvblxuICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkJCB8IGFzeW5jXCI+XG4gICAgPG1hdC1pY29uICpuZ0lmPVwid2l0aEljb25cIiBzdmdJY29uPVwie3tpY29uJCB8IGFzeW5jfX1cIj48L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbiAgPGg0ICpuZ0lmPVwid2l0aFRpdGxlXCIgbWF0TGluZT57e3RpdGxlIHwgdHJhbnNsYXRlfX08L2g0PlxuPC9tYXQtbGlzdC1pdGVtPlxuXG48bWF0LWxpc3QtaXRlbSBjbGFzcz1cIml0ZW0tY2hlY2tib3hcIiAqbmdJZj1cImFjdGlvbi5jaGVja2JveFwiXG4gIG1hdFRvb2x0aXBDbGFzcz1cImFjdGlvbmJhckl0ZW1Ub29sdGlwXCJcbiAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gIFttYXRUb29sdGlwXT1cIndpdGhUb29sdGlwID8gKCh0b29sdGlwJCB8IGFzeW5jKSB8fCB0aXRsZSB8IHRyYW5zbGF0ZSkgOiAnJ1wiXG4gIFtuZ0NsYXNzXT1cIm5nQ2xhc3MkIHwgYXN5bmNcIj5cbiAgPG1hdC1jaGVja2JveCAqbmdJZj1cIndpdGhUaXRsZVwiXG4gICAgICAoY2hhbmdlKT1cImFjdGlvbi5oYW5kbGVyKClcIlxuICAgICAgW2NoZWNrZWRdPVwiY2hlY2tDb25kaXRpb24kIHwgYXN5bmNcIj5cbiAgICAgIHt7dGl0bGUgfCB0cmFuc2xhdGV9fVxuICA8L21hdC1jaGVja2JveD5cbjwvbWF0LWxpc3QtaXRlbT5cbiJdfQ==
|