@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,310 +0,0 @@
|
|
|
1
|
-
import { Component, ViewChild, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
-
import { MatSort } from '@angular/material/sort';
|
|
3
|
-
import { SelectionModel } from '@angular/cdk/collections';
|
|
4
|
-
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
|
|
5
|
-
import { fromEvent } from 'rxjs';
|
|
6
|
-
import { ObjectUtils } from '@igo2/utils';
|
|
7
|
-
import { TableDataSource } from './table-datasource';
|
|
8
|
-
import { TableActionColor } from './table-action-color.enum';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/common";
|
|
11
|
-
import * as i2 from "@angular/material/table";
|
|
12
|
-
import * as i3 from "@angular/material/sort";
|
|
13
|
-
import * as i4 from "@angular/material/form-field";
|
|
14
|
-
import * as i5 from "@angular/material/input";
|
|
15
|
-
import * as i6 from "@angular/material/checkbox";
|
|
16
|
-
import * as i7 from "@angular/material/button";
|
|
17
|
-
import * as i8 from "@angular/material/icon";
|
|
18
|
-
import * as i9 from "@ngx-translate/core";
|
|
19
|
-
const _c0 = ["filter"];
|
|
20
|
-
function TableComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
21
|
-
i0.ɵɵelementStart(0, "div", 12);
|
|
22
|
-
i0.ɵɵelementStart(1, "mat-form-field", 13);
|
|
23
|
-
i0.ɵɵelement(2, "input", 14, 15);
|
|
24
|
-
i0.ɵɵpipe(4, "translate");
|
|
25
|
-
i0.ɵɵelementEnd();
|
|
26
|
-
i0.ɵɵelementEnd();
|
|
27
|
-
} if (rf & 2) {
|
|
28
|
-
i0.ɵɵadvance(2);
|
|
29
|
-
i0.ɵɵproperty("placeholder", i0.ɵɵpipeBind1(4, 1, "igo.common.table.filter"));
|
|
30
|
-
} }
|
|
31
|
-
function TableComponent_th_6_Template(rf, ctx) { if (rf & 1) {
|
|
32
|
-
const _r11 = i0.ɵɵgetCurrentView();
|
|
33
|
-
i0.ɵɵelementStart(0, "th", 16);
|
|
34
|
-
i0.ɵɵelementStart(1, "mat-checkbox", 17);
|
|
35
|
-
i0.ɵɵlistener("change", function TableComponent_th_6_Template_mat_checkbox_change_1_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(); return $event ? ctx_r10.masterToggle() : null; });
|
|
36
|
-
i0.ɵɵelementEnd();
|
|
37
|
-
i0.ɵɵelementEnd();
|
|
38
|
-
} if (rf & 2) {
|
|
39
|
-
const ctx_r2 = i0.ɵɵnextContext();
|
|
40
|
-
i0.ɵɵadvance(1);
|
|
41
|
-
i0.ɵɵproperty("checked", ctx_r2.selection.hasValue() && ctx_r2.isAllSelected())("indeterminate", ctx_r2.selection.hasValue() && !ctx_r2.isAllSelected());
|
|
42
|
-
} }
|
|
43
|
-
function TableComponent_td_7_Template(rf, ctx) { if (rf & 1) {
|
|
44
|
-
const _r15 = i0.ɵɵgetCurrentView();
|
|
45
|
-
i0.ɵɵelementStart(0, "td", 18);
|
|
46
|
-
i0.ɵɵelementStart(1, "mat-checkbox", 19);
|
|
47
|
-
i0.ɵɵlistener("click", function TableComponent_td_7_Template_mat_checkbox_click_1_listener($event) { return $event.stopPropagation(); })("change", function TableComponent_td_7_Template_mat_checkbox_change_1_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r15); const row_r12 = restoredCtx.$implicit; const ctx_r14 = i0.ɵɵnextContext(); return $event ? ctx_r14.selection.toggle(row_r12) : null; });
|
|
48
|
-
i0.ɵɵelementEnd();
|
|
49
|
-
i0.ɵɵelementEnd();
|
|
50
|
-
} if (rf & 2) {
|
|
51
|
-
const row_r12 = ctx.$implicit;
|
|
52
|
-
const ctx_r3 = i0.ɵɵnextContext();
|
|
53
|
-
i0.ɵɵadvance(1);
|
|
54
|
-
i0.ɵɵproperty("checked", ctx_r3.selection.isSelected(row_r12));
|
|
55
|
-
} }
|
|
56
|
-
function TableComponent_ng_container_8_ng_container_1_th_1_Template(rf, ctx) { if (rf & 1) {
|
|
57
|
-
i0.ɵɵelementStart(0, "th", 25);
|
|
58
|
-
i0.ɵɵtext(1);
|
|
59
|
-
i0.ɵɵelementEnd();
|
|
60
|
-
} if (rf & 2) {
|
|
61
|
-
const column_r16 = i0.ɵɵnextContext(2).$implicit;
|
|
62
|
-
i0.ɵɵadvance(1);
|
|
63
|
-
i0.ɵɵtextInterpolate1(" ", column_r16.title, " ");
|
|
64
|
-
} }
|
|
65
|
-
function TableComponent_ng_container_8_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
66
|
-
i0.ɵɵelementContainerStart(0);
|
|
67
|
-
i0.ɵɵtemplate(1, TableComponent_ng_container_8_ng_container_1_th_1_Template, 2, 1, "th", 24);
|
|
68
|
-
i0.ɵɵelementContainerEnd();
|
|
69
|
-
} }
|
|
70
|
-
function TableComponent_ng_container_8_ng_container_2_th_1_Template(rf, ctx) { if (rf & 1) {
|
|
71
|
-
i0.ɵɵelementStart(0, "th", 16);
|
|
72
|
-
i0.ɵɵtext(1);
|
|
73
|
-
i0.ɵɵelementEnd();
|
|
74
|
-
} if (rf & 2) {
|
|
75
|
-
const column_r16 = i0.ɵɵnextContext(2).$implicit;
|
|
76
|
-
i0.ɵɵadvance(1);
|
|
77
|
-
i0.ɵɵtextInterpolate1(" ", column_r16.title, " ");
|
|
78
|
-
} }
|
|
79
|
-
function TableComponent_ng_container_8_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
80
|
-
i0.ɵɵelementContainerStart(0);
|
|
81
|
-
i0.ɵɵtemplate(1, TableComponent_ng_container_8_ng_container_2_th_1_Template, 2, 1, "th", 6);
|
|
82
|
-
i0.ɵɵelementContainerEnd();
|
|
83
|
-
} }
|
|
84
|
-
const _c1 = function () { return {}; };
|
|
85
|
-
function TableComponent_ng_container_8_ng_container_3_td_1_Template(rf, ctx) { if (rf & 1) {
|
|
86
|
-
i0.ɵɵelementStart(0, "td", 27);
|
|
87
|
-
i0.ɵɵtext(1);
|
|
88
|
-
i0.ɵɵelementEnd();
|
|
89
|
-
} if (rf & 2) {
|
|
90
|
-
const row_r27 = ctx.$implicit;
|
|
91
|
-
const column_r16 = i0.ɵɵnextContext(2).$implicit;
|
|
92
|
-
const ctx_r26 = i0.ɵɵnextContext();
|
|
93
|
-
i0.ɵɵproperty("ngClass", ctx_r26.model.cellClassFunc ? ctx_r26.model.cellClassFunc(row_r27, column_r16) : i0.ɵɵpureFunction0(2, _c1));
|
|
94
|
-
i0.ɵɵadvance(1);
|
|
95
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r26.getValue(row_r27, column_r16.name), " ");
|
|
96
|
-
} }
|
|
97
|
-
function TableComponent_ng_container_8_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
98
|
-
i0.ɵɵelementContainerStart(0);
|
|
99
|
-
i0.ɵɵtemplate(1, TableComponent_ng_container_8_ng_container_3_td_1_Template, 2, 3, "td", 26);
|
|
100
|
-
i0.ɵɵelementContainerEnd();
|
|
101
|
-
} }
|
|
102
|
-
function TableComponent_ng_container_8_ng_template_4_td_0_Template(rf, ctx) { if (rf & 1) {
|
|
103
|
-
i0.ɵɵelement(0, "td", 29);
|
|
104
|
-
} if (rf & 2) {
|
|
105
|
-
const row_r30 = ctx.$implicit;
|
|
106
|
-
const column_r16 = i0.ɵɵnextContext(2).$implicit;
|
|
107
|
-
const ctx_r29 = i0.ɵɵnextContext();
|
|
108
|
-
i0.ɵɵproperty("ngClass", ctx_r29.model.cellClassFunc ? ctx_r29.model.cellClassFunc(row_r30, column_r16) : i0.ɵɵpureFunction0(2, _c1))("innerHTML", ctx_r29.getValue(row_r30, column_r16.name), i0.ɵɵsanitizeHtml);
|
|
109
|
-
} }
|
|
110
|
-
function TableComponent_ng_container_8_ng_template_4_Template(rf, ctx) { if (rf & 1) {
|
|
111
|
-
i0.ɵɵtemplate(0, TableComponent_ng_container_8_ng_template_4_td_0_Template, 1, 3, "td", 28);
|
|
112
|
-
} }
|
|
113
|
-
function TableComponent_ng_container_8_Template(rf, ctx) { if (rf & 1) {
|
|
114
|
-
i0.ɵɵelementContainerStart(0, 20);
|
|
115
|
-
i0.ɵɵtemplate(1, TableComponent_ng_container_8_ng_container_1_Template, 2, 0, "ng-container", 21);
|
|
116
|
-
i0.ɵɵtemplate(2, TableComponent_ng_container_8_ng_container_2_Template, 2, 0, "ng-container", 21);
|
|
117
|
-
i0.ɵɵtemplate(3, TableComponent_ng_container_8_ng_container_3_Template, 2, 0, "ng-container", 22);
|
|
118
|
-
i0.ɵɵtemplate(4, TableComponent_ng_container_8_ng_template_4_Template, 1, 0, "ng-template", null, 23, i0.ɵɵtemplateRefExtractor);
|
|
119
|
-
i0.ɵɵelementContainerEnd();
|
|
120
|
-
} if (rf & 2) {
|
|
121
|
-
const column_r16 = ctx.$implicit;
|
|
122
|
-
const _r20 = i0.ɵɵreference(5);
|
|
123
|
-
i0.ɵɵproperty("matColumnDef", column_r16.name);
|
|
124
|
-
i0.ɵɵadvance(1);
|
|
125
|
-
i0.ɵɵproperty("ngIf", column_r16.sortable);
|
|
126
|
-
i0.ɵɵadvance(1);
|
|
127
|
-
i0.ɵɵproperty("ngIf", !column_r16.sortable);
|
|
128
|
-
i0.ɵɵadvance(1);
|
|
129
|
-
i0.ɵɵproperty("ngIf", !column_r16.html)("ngIfElse", _r20);
|
|
130
|
-
} }
|
|
131
|
-
function TableComponent_th_10_Template(rf, ctx) { if (rf & 1) {
|
|
132
|
-
i0.ɵɵelement(0, "th", 16);
|
|
133
|
-
} }
|
|
134
|
-
function TableComponent_td_11_button_1_Template(rf, ctx) { if (rf & 1) {
|
|
135
|
-
const _r36 = i0.ɵɵgetCurrentView();
|
|
136
|
-
i0.ɵɵelementStart(0, "button", 31);
|
|
137
|
-
i0.ɵɵlistener("click", function TableComponent_td_11_button_1_Template_button_click_0_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r36); const action_r34 = restoredCtx.$implicit; const row_r32 = i0.ɵɵnextContext().$implicit; const ctx_r35 = i0.ɵɵnextContext(); return ctx_r35.handleClickAction($event, action_r34, row_r32); });
|
|
138
|
-
i0.ɵɵelement(1, "mat-icon", 32);
|
|
139
|
-
i0.ɵɵelementEnd();
|
|
140
|
-
} if (rf & 2) {
|
|
141
|
-
const action_r34 = ctx.$implicit;
|
|
142
|
-
const ctx_r33 = i0.ɵɵnextContext(2);
|
|
143
|
-
i0.ɵɵproperty("color", ctx_r33.getActionColor(action_r34.color));
|
|
144
|
-
i0.ɵɵadvance(1);
|
|
145
|
-
i0.ɵɵpropertyInterpolate("svgIcon", action_r34.icon);
|
|
146
|
-
} }
|
|
147
|
-
function TableComponent_td_11_Template(rf, ctx) { if (rf & 1) {
|
|
148
|
-
i0.ɵɵelementStart(0, "td", 18);
|
|
149
|
-
i0.ɵɵtemplate(1, TableComponent_td_11_button_1_Template, 2, 2, "button", 30);
|
|
150
|
-
i0.ɵɵelementEnd();
|
|
151
|
-
} if (rf & 2) {
|
|
152
|
-
const ctx_r6 = i0.ɵɵnextContext();
|
|
153
|
-
i0.ɵɵadvance(1);
|
|
154
|
-
i0.ɵɵproperty("ngForOf", ctx_r6.model.actions);
|
|
155
|
-
} }
|
|
156
|
-
function TableComponent_tr_12_Template(rf, ctx) { if (rf & 1) {
|
|
157
|
-
i0.ɵɵelement(0, "tr", 33);
|
|
158
|
-
} }
|
|
159
|
-
function TableComponent_tr_13_Template(rf, ctx) { if (rf & 1) {
|
|
160
|
-
const _r40 = i0.ɵɵgetCurrentView();
|
|
161
|
-
i0.ɵɵelementStart(0, "tr", 34);
|
|
162
|
-
i0.ɵɵlistener("click", function TableComponent_tr_13_Template_tr_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r40); const row_r38 = restoredCtx.$implicit; const ctx_r39 = i0.ɵɵnextContext(); return ctx_r39.selection.toggle(row_r38); });
|
|
163
|
-
i0.ɵɵelementEnd();
|
|
164
|
-
} if (rf & 2) {
|
|
165
|
-
const row_r38 = ctx.$implicit;
|
|
166
|
-
const ctx_r8 = i0.ɵɵnextContext();
|
|
167
|
-
i0.ɵɵproperty("ngClass", ctx_r8.model.rowClassFunc ? ctx_r8.model.rowClassFunc(row_r38) : i0.ɵɵpureFunction0(1, _c1));
|
|
168
|
-
} }
|
|
169
|
-
export class TableComponent {
|
|
170
|
-
constructor() {
|
|
171
|
-
this._hasFIlterInput = true;
|
|
172
|
-
this.selection = new SelectionModel(true, []);
|
|
173
|
-
this.select = new EventEmitter();
|
|
174
|
-
}
|
|
175
|
-
get database() {
|
|
176
|
-
return this._database;
|
|
177
|
-
}
|
|
178
|
-
set database(value) {
|
|
179
|
-
this._database = value;
|
|
180
|
-
}
|
|
181
|
-
get model() {
|
|
182
|
-
return this._model;
|
|
183
|
-
}
|
|
184
|
-
set model(value) {
|
|
185
|
-
this._model = value;
|
|
186
|
-
}
|
|
187
|
-
get hasFilterInput() {
|
|
188
|
-
return this._hasFIlterInput;
|
|
189
|
-
}
|
|
190
|
-
set hasFilterInput(value) {
|
|
191
|
-
this._hasFIlterInput = value;
|
|
192
|
-
}
|
|
193
|
-
ngOnInit() {
|
|
194
|
-
this.dataSource = new TableDataSource(this.database, this.model, this.sort);
|
|
195
|
-
if (this.model) {
|
|
196
|
-
this.displayedColumns = this.model.columns
|
|
197
|
-
.filter(c => c.displayed !== false)
|
|
198
|
-
.map(c => c.name);
|
|
199
|
-
if (this.model.selectionCheckbox) {
|
|
200
|
-
this.displayedColumns.unshift('selectionCheckbox');
|
|
201
|
-
}
|
|
202
|
-
if (this.model.actions && this.model.actions.length) {
|
|
203
|
-
this.displayedColumns.push('action');
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
this.selection.changed.subscribe(e => this.select.emit(e));
|
|
207
|
-
}
|
|
208
|
-
ngAfterViewInit() {
|
|
209
|
-
if (this.filter) {
|
|
210
|
-
fromEvent(this.filter.nativeElement, 'keyup')
|
|
211
|
-
.pipe(debounceTime(150), distinctUntilChanged())
|
|
212
|
-
.subscribe(() => {
|
|
213
|
-
if (!this.dataSource) {
|
|
214
|
-
return;
|
|
215
|
-
}
|
|
216
|
-
this.dataSource.filter = this.filter.nativeElement.value;
|
|
217
|
-
});
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
ngOnChanges(change) {
|
|
221
|
-
if (change.database) {
|
|
222
|
-
this.dataSource = new TableDataSource(this.database, this.model, this.sort);
|
|
223
|
-
this.selection.clear();
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
getActionColor(colorId) {
|
|
227
|
-
return TableActionColor[colorId];
|
|
228
|
-
}
|
|
229
|
-
getValue(row, key) {
|
|
230
|
-
return ObjectUtils.resolve(row, key);
|
|
231
|
-
}
|
|
232
|
-
/** Whether the number of selected elements matches the total number of rows. */
|
|
233
|
-
isAllSelected() {
|
|
234
|
-
const numSelected = this.selection.selected.length;
|
|
235
|
-
const numRows = this.database.data.length;
|
|
236
|
-
return numSelected === numRows;
|
|
237
|
-
}
|
|
238
|
-
/** Selects all rows if they are not all selected; otherwise clear selection. */
|
|
239
|
-
masterToggle() {
|
|
240
|
-
this.isAllSelected()
|
|
241
|
-
? this.selection.clear()
|
|
242
|
-
: this.database.data.forEach(row => this.selection.select(row));
|
|
243
|
-
}
|
|
244
|
-
handleClickAction(event, action, row) {
|
|
245
|
-
event.stopPropagation();
|
|
246
|
-
action.click(row);
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
TableComponent.ɵfac = function TableComponent_Factory(t) { return new (t || TableComponent)(); };
|
|
250
|
-
TableComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TableComponent, selectors: [["igo-table"]], viewQuery: function TableComponent_Query(rf, ctx) { if (rf & 1) {
|
|
251
|
-
i0.ɵɵviewQuery(_c0, 5);
|
|
252
|
-
i0.ɵɵviewQuery(MatSort, 7);
|
|
253
|
-
} if (rf & 2) {
|
|
254
|
-
let _t;
|
|
255
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.filter = _t.first);
|
|
256
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.sort = _t.first);
|
|
257
|
-
} }, inputs: { database: "database", model: "model", hasFilterInput: "hasFilterInput" }, outputs: { select: "select" }, features: [i0.ɵɵNgOnChangesFeature], decls: 14, vars: 5, consts: [[1, "table-box"], ["class", "table-header", 4, "ngIf"], [1, "table-container"], ["mat-table", "", "matSort", "", 3, "dataSource"], ["table", ""], ["matColumnDef", "selectionCheckbox"], ["mat-header-cell", "", 4, "matHeaderCellDef"], ["mat-cell", "", 4, "matCellDef"], [3, "matColumnDef", 4, "ngFor", "ngForOf"], ["matColumnDef", "action"], ["mat-header-row", "", 4, "matHeaderRowDef"], ["mat-row", "", 3, "ngClass", "click", 4, "matRowDef", "matRowDefColumns"], [1, "table-header"], ["floatPlaceholder", "never"], ["matInput", "", 3, "placeholder"], ["filter", ""], ["mat-header-cell", ""], [3, "checked", "indeterminate", "change"], ["mat-cell", ""], [3, "checked", "click", "change"], [3, "matColumnDef"], [4, "ngIf"], [4, "ngIf", "ngIfElse"], ["cellHTML", ""], ["mat-header-cell", "", "mat-sort-header", "", 4, "matHeaderCellDef"], ["mat-header-cell", "", "mat-sort-header", ""], ["mat-cell", "", "class", "mat-cell-text", 3, "ngClass", 4, "matCellDef"], ["mat-cell", "", 1, "mat-cell-text", 3, "ngClass"], ["mat-cell", "", "class", "mat-cell-text", 3, "ngClass", "innerHTML", 4, "matCellDef"], ["mat-cell", "", 1, "mat-cell-text", 3, "ngClass", "innerHTML"], ["mat-mini-fab", "", 3, "color", "click", 4, "ngFor", "ngForOf"], ["mat-mini-fab", "", 3, "color", "click"], [3, "svgIcon"], ["mat-header-row", ""], ["mat-row", "", 3, "ngClass", "click"]], template: function TableComponent_Template(rf, ctx) { if (rf & 1) {
|
|
258
|
-
i0.ɵɵelementStart(0, "div", 0);
|
|
259
|
-
i0.ɵɵtemplate(1, TableComponent_div_1_Template, 5, 3, "div", 1);
|
|
260
|
-
i0.ɵɵelementStart(2, "div", 2);
|
|
261
|
-
i0.ɵɵelementStart(3, "table", 3, 4);
|
|
262
|
-
i0.ɵɵelementContainerStart(5, 5);
|
|
263
|
-
i0.ɵɵtemplate(6, TableComponent_th_6_Template, 2, 2, "th", 6);
|
|
264
|
-
i0.ɵɵtemplate(7, TableComponent_td_7_Template, 2, 1, "td", 7);
|
|
265
|
-
i0.ɵɵelementContainerEnd();
|
|
266
|
-
i0.ɵɵtemplate(8, TableComponent_ng_container_8_Template, 6, 5, "ng-container", 8);
|
|
267
|
-
i0.ɵɵelementContainerStart(9, 9);
|
|
268
|
-
i0.ɵɵtemplate(10, TableComponent_th_10_Template, 1, 0, "th", 6);
|
|
269
|
-
i0.ɵɵtemplate(11, TableComponent_td_11_Template, 2, 1, "td", 7);
|
|
270
|
-
i0.ɵɵelementContainerEnd();
|
|
271
|
-
i0.ɵɵtemplate(12, TableComponent_tr_12_Template, 1, 0, "tr", 10);
|
|
272
|
-
i0.ɵɵtemplate(13, TableComponent_tr_13_Template, 1, 2, "tr", 11);
|
|
273
|
-
i0.ɵɵelementEnd();
|
|
274
|
-
i0.ɵɵelementEnd();
|
|
275
|
-
i0.ɵɵelementEnd();
|
|
276
|
-
} if (rf & 2) {
|
|
277
|
-
i0.ɵɵadvance(1);
|
|
278
|
-
i0.ɵɵproperty("ngIf", ctx.hasFilterInput);
|
|
279
|
-
i0.ɵɵadvance(2);
|
|
280
|
-
i0.ɵɵproperty("dataSource", ctx.dataSource);
|
|
281
|
-
i0.ɵɵadvance(5);
|
|
282
|
-
i0.ɵɵproperty("ngForOf", ctx.model.columns);
|
|
283
|
-
i0.ɵɵadvance(4);
|
|
284
|
-
i0.ɵɵproperty("matHeaderRowDef", ctx.displayedColumns);
|
|
285
|
-
i0.ɵɵadvance(1);
|
|
286
|
-
i0.ɵɵproperty("matRowDefColumns", ctx.displayedColumns);
|
|
287
|
-
} }, directives: [i1.NgIf, i2.MatTable, i3.MatSort, i2.MatColumnDef, i2.MatHeaderCellDef, i2.MatCellDef, i1.NgForOf, i2.MatHeaderRowDef, i2.MatRowDef, i4.MatFormField, i5.MatInput, i2.MatHeaderCell, i6.MatCheckbox, i2.MatCell, i3.MatSortHeader, i1.NgClass, i7.MatButton, i8.MatIcon, i2.MatHeaderRow, i2.MatRow], pipes: [i9.TranslatePipe], styles: ["[_nghost-%COMP%]{width:100%;height:100%;display:block}.table-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:auto;flex:1 1 auto}.table-box[_ngcontent-%COMP%]{height:100%;display:flex;flex-direction:column}.table-header[_ngcontent-%COMP%]{min-height:64px;max-width:500px;display:flex;flex:0 1 auto;align-items:baseline;padding:8px 24px 0;font-size:20px;justify-content:space-between}tr[mat-header-row][_ngcontent-%COMP%], tr[mat-row][_ngcontent-%COMP%]{height:60px}.mat-cell-text[_ngcontent-%COMP%]{overflow:hidden;word-wrap:break-word}td[mat-cell][_ngcontent-%COMP%]{padding-right:15px}th.mat-header-cell[_ngcontent-%COMP%]{padding-right:5px}button[_ngcontent-%COMP%]{margin-right:10px}"] });
|
|
288
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TableComponent, [{
|
|
289
|
-
type: Component,
|
|
290
|
-
args: [{
|
|
291
|
-
selector: 'igo-table',
|
|
292
|
-
templateUrl: './table.component.html',
|
|
293
|
-
styleUrls: ['./table.component.scss']
|
|
294
|
-
}]
|
|
295
|
-
}], null, { database: [{
|
|
296
|
-
type: Input
|
|
297
|
-
}], model: [{
|
|
298
|
-
type: Input
|
|
299
|
-
}], hasFilterInput: [{
|
|
300
|
-
type: Input
|
|
301
|
-
}], select: [{
|
|
302
|
-
type: Output
|
|
303
|
-
}], filter: [{
|
|
304
|
-
type: ViewChild,
|
|
305
|
-
args: ['filter']
|
|
306
|
-
}], sort: [{
|
|
307
|
-
type: ViewChild,
|
|
308
|
-
args: [MatSort, { static: true }]
|
|
309
|
-
}] }); })();
|
|
310
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFJTixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7OztJQ3JCM0QsK0JBQWlEO0lBQy9DLDBDQUF5QztJQUN2QyxnQ0FBOEU7O0lBQ2hGLGlCQUFpQjtJQUNuQixpQkFBTTs7SUFGc0IsZUFBcUQ7SUFBckQsNkVBQXFEOzs7O0lBUzNFLDhCQUFzQztJQUNwQyx3Q0FFeUU7SUFGM0QsNE1BQW9DLElBQUksSUFBQztJQUd2RCxpQkFBZTtJQUNqQixpQkFBSzs7O0lBSFcsZUFBbUQ7SUFBbkQsK0VBQW1ELHlFQUFBOzs7O0lBSW5FLDhCQUFtQztJQUNqQyx3Q0FFb0Q7SUFGdEMsNEdBQVMsd0JBQXdCLElBQUMsaU9BQ2YsaUNBQXFCLEdBQUcs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aUJBQVE7UUFDVixpQkFBTTtRQUVSLGlCQUFNOztRQXhFdUIsZUFBb0I7UUFBcEIseUNBQW9CO1FBT3JCLGVBQXlCO1FBQXpCLDJDQUF5QjtRQWtCZSxlQUFnQjtRQUFoQiwyQ0FBZ0I7UUFxQzFELGVBQWtDO1FBQWxDLHNEQUFrQztRQUUvQixlQUEwQjtRQUExQix1REFBMEI7O3VGRHBDMUMsY0FBYztjQUwxQixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFdBQVcsRUFBRSx3QkFBd0I7Z0JBQ3JDLFNBQVMsRUFBRSxDQUFDLHdCQUF3QixDQUFDO2FBQ3RDO2dCQUdLLFFBQVE7a0JBRFgsS0FBSztZQVVGLEtBQUs7a0JBRFIsS0FBSztZQVVGLGNBQWM7a0JBRGpCLEtBQUs7WUFjTixNQUFNO2tCQURMLE1BQU07WUFPYyxNQUFNO2tCQUExQixTQUFTO21CQUFDLFFBQVE7WUFDbUIsSUFBSTtrQkFBekMsU0FBUzttQkFBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkluaXQsXHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBFdmVudEVtaXR0ZXJcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0U29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xyXG5pbXBvcnQgeyBTZWxlY3Rpb25Nb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XHJcblxyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xyXG5cclxuaW1wb3J0IHsgVGFibGVNb2RlbCB9IGZyb20gJy4vdGFibGUtbW9kZWwuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVGFibGVEYXRhYmFzZSB9IGZyb20gJy4vdGFibGUtZGF0YWJhc2UnO1xyXG5pbXBvcnQgeyBUYWJsZURhdGFTb3VyY2UgfSBmcm9tICcuL3RhYmxlLWRhdGFzb3VyY2UnO1xyXG5pbXBvcnQgeyBUYWJsZUFjdGlvbkNvbG9yIH0gZnJvbSAnLi90YWJsZS1hY3Rpb24tY29sb3IuZW51bSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKVxyXG4gIGdldCBkYXRhYmFzZSgpOiBUYWJsZURhdGFiYXNlIHtcclxuICAgIHJldHVybiB0aGlzLl9kYXRhYmFzZTtcclxuICB9XHJcbiAgc2V0IGRhdGFiYXNlKHZhbHVlOiBUYWJsZURhdGFiYXNlKSB7XHJcbiAgICB0aGlzLl9kYXRhYmFzZSA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF9kYXRhYmFzZTogVGFibGVEYXRhYmFzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgbW9kZWwoKTogVGFibGVNb2RlbCB7XHJcbiAgICByZXR1cm4gdGhpcy5fbW9kZWw7XHJcbiAgfVxyXG4gIHNldCBtb2RlbCh2YWx1ZTogVGFibGVNb2RlbCkge1xyXG4gICAgdGhpcy5fbW9kZWwgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfbW9kZWw6IFRhYmxlTW9kZWw7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGhhc0ZpbHRlcklucHV0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2hhc0ZJbHRlcklucHV0O1xyXG4gIH1cclxuICBzZXQgaGFzRmlsdGVySW5wdXQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2hhc0ZJbHRlcklucHV0ID0gdmFsdWU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2hhc0ZJbHRlcklucHV0ID0gdHJ1ZTtcclxuXHJcbiAgcHVibGljIGRpc3BsYXllZENvbHVtbnM7XHJcbiAgcHVibGljIGRhdGFTb3VyY2U6IFRhYmxlRGF0YVNvdXJjZSB8IG51bGw7XHJcbiAgcHVibGljIHNlbGVjdGlvbiA9IG5ldyBTZWxlY3Rpb25Nb2RlbDxhbnk+KHRydWUsIFtdKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjx7XHJcbiAgICBhZGRlZDogYW55W107XHJcbiAgICByZW1vdmVkOiBhbnlbXTtcclxuICAgIHNvdXJjZTogU2VsZWN0aW9uTW9kZWw8YW55PjtcclxuICB9PigpO1xyXG5cclxuICBAVmlld0NoaWxkKCdmaWx0ZXInKSBmaWx0ZXI6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZChNYXRTb3J0LCB7IHN0YXRpYzogdHJ1ZSB9KSBzb3J0OiBNYXRTb3J0O1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZGF0YVNvdXJjZSA9IG5ldyBUYWJsZURhdGFTb3VyY2UodGhpcy5kYXRhYmFzZSwgdGhpcy5tb2RlbCwgdGhpcy5zb3J0KTtcclxuXHJcbiAgICBpZiAodGhpcy5tb2RlbCkge1xyXG4gICAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMgPSB0aGlzLm1vZGVsLmNvbHVtbnNcclxuICAgICAgICAuZmlsdGVyKGMgPT4gYy5kaXNwbGF5ZWQgIT09IGZhbHNlKVxyXG4gICAgICAgIC5tYXAoYyA9PiBjLm5hbWUpO1xyXG5cclxuICAgICAgaWYgKHRoaXMubW9kZWwuc2VsZWN0aW9uQ2hlY2tib3gpIHtcclxuICAgICAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMudW5zaGlmdCgnc2VsZWN0aW9uQ2hlY2tib3gnKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5tb2RlbC5hY3Rpb25zICYmIHRoaXMubW9kZWwuYWN0aW9ucy5sZW5ndGgpIHtcclxuICAgICAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMucHVzaCgnYWN0aW9uJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNlbGVjdGlvbi5jaGFuZ2VkLnN1YnNjcmliZShlID0+IHRoaXMuc2VsZWN0LmVtaXQoZSkpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgaWYgKHRoaXMuZmlsdGVyKSB7XHJcbiAgICAgIGZyb21FdmVudCh0aGlzLmZpbHRlci5uYXRpdmVFbGVtZW50LCAna2V5dXAnKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgZGVib3VuY2VUaW1lKDE1MCksXHJcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmRhdGFTb3VyY2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5kYXRhU291cmNlLmZpbHRlciA9IHRoaXMuZmlsdGVyLm5hdGl2ZUVsZW1lbnQudmFsdWU7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2UpIHtcclxuICAgIGlmIChjaGFuZ2UuZGF0YWJhc2UpIHtcclxuICAgICAgdGhpcy5kYXRhU291cmNlID0gbmV3IFRhYmxlRGF0YVNvdXJjZShcclxuICAgICAgICB0aGlzLmRhdGFiYXNlLFxyXG4gICAgICAgIHRoaXMubW9kZWwsXHJcbiAgICAgICAgdGhpcy5zb3J0XHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRBY3Rpb25Db2xvcihjb2xvcklkOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIFRhYmxlQWN0aW9uQ29sb3JbY29sb3JJZF07XHJcbiAgfVxyXG5cclxuICBnZXRWYWx1ZShyb3csIGtleSkge1xyXG4gICAgcmV0dXJuIE9iamVjdFV0aWxzLnJlc29sdmUocm93LCBrZXkpO1xyXG4gIH1cclxuXHJcbiAgLyoqIFdoZXRoZXIgdGhlIG51bWJlciBvZiBzZWxlY3RlZCBlbGVtZW50cyBtYXRjaGVzIHRoZSB0b3RhbCBudW1iZXIgb2Ygcm93cy4gKi9cclxuICBpc0FsbFNlbGVjdGVkKCkge1xyXG4gICAgY29uc3QgbnVtU2VsZWN0ZWQgPSB0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZC5sZW5ndGg7XHJcbiAgICBjb25zdCBudW1Sb3dzID0gdGhpcy5kYXRhYmFzZS5kYXRhLmxlbmd0aDtcclxuICAgIHJldHVybiBudW1TZWxlY3RlZCA9PT0gbnVtUm93cztcclxuICB9XHJcblxyXG4gIC8qKiBTZWxlY3RzIGFsbCByb3dzIGlmIHRoZXkgYXJlIG5vdCBhbGwgc2VsZWN0ZWQ7IG90aGVyd2lzZSBjbGVhciBzZWxlY3Rpb24uICovXHJcbiAgbWFzdGVyVG9nZ2xlKCkge1xyXG4gICAgdGhpcy5pc0FsbFNlbGVjdGVkKClcclxuICAgICAgPyB0aGlzLnNlbGVjdGlvbi5jbGVhcigpXHJcbiAgICAgIDogdGhpcy5kYXRhYmFzZS5kYXRhLmZvckVhY2gocm93ID0+IHRoaXMuc2VsZWN0aW9uLnNlbGVjdChyb3cpKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUNsaWNrQWN0aW9uKGV2ZW50LCBhY3Rpb24sIHJvdykge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBhY3Rpb24uY2xpY2socm93KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz0ndGFibGUtYm94Jz5cclxuICA8ZGl2IGNsYXNzPSd0YWJsZS1oZWFkZXInICpuZ0lmPVwiaGFzRmlsdGVySW5wdXRcIj5cclxuICAgIDxtYXQtZm9ybS1maWVsZCBmbG9hdFBsYWNlaG9sZGVyPSduZXZlcic+XHJcbiAgICAgIDxpbnB1dCBtYXRJbnB1dCAjZmlsdGVyIFtwbGFjZWhvbGRlcl09XCInaWdvLmNvbW1vbi50YWJsZS5maWx0ZXInIHwgdHJhbnNsYXRlXCI+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPSd0YWJsZS1jb250YWluZXInPlxyXG4gICAgPHRhYmxlIG1hdC10YWJsZSAjdGFibGUgW2RhdGFTb3VyY2VdPSdkYXRhU291cmNlJyBtYXRTb3J0PlxyXG5cclxuICAgICAgPCEtLSBDaGVja2JveCBDb2x1bW4gLS0+XHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwic2VsZWN0aW9uQ2hlY2tib3hcIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPlxyXG4gICAgICAgICAgPG1hdC1jaGVja2JveCAoY2hhbmdlKT1cIiRldmVudCA/IG1hc3RlclRvZ2dsZSgpIDogbnVsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvbi5oYXNWYWx1ZSgpICYmIGlzQWxsU2VsZWN0ZWQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cInNlbGVjdGlvbi5oYXNWYWx1ZSgpICYmICFpc0FsbFNlbGVjdGVkKClcIj5cclxuICAgICAgICAgIDwvbWF0LWNoZWNrYm94PlxyXG4gICAgICAgIDwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHJvd1wiPlxyXG4gICAgICAgICAgPG1hdC1jaGVja2JveCAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCIkZXZlbnQgPyBzZWxlY3Rpb24udG9nZ2xlKHJvdykgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0aW9uLmlzU2VsZWN0ZWQocm93KVwiPlxyXG4gICAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIFttYXRDb2x1bW5EZWZdPSdjb2x1bW4ubmFtZScgKm5nRm9yPSdsZXQgY29sdW1uIG9mIG1vZGVsLmNvbHVtbnMnPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9J2NvbHVtbi5zb3J0YWJsZSc+XHJcbiAgICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlcj4ge3tjb2x1bW4udGl0bGV9fSA8L3RoPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPSchY29sdW1uLnNvcnRhYmxlJz5cclxuICAgICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+IHt7Y29sdW1uLnRpdGxlfX0gPC90aD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb2x1bW4uaHRtbDsgZWxzZSBjZWxsSFRNTFwiPlxyXG4gICAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPSdsZXQgcm93JyBjbGFzcz1cIm1hdC1jZWxsLXRleHRcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJtb2RlbC5jZWxsQ2xhc3NGdW5jID8gbW9kZWwuY2VsbENsYXNzRnVuYyhyb3csIGNvbHVtbikgOiB7fVwiPlxyXG4gICAgICAgICAgICB7e2dldFZhbHVlKHJvdywgY29sdW1uLm5hbWUpfX1cclxuICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjY2VsbEhUTUw+XHJcbiAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9J2xldCByb3cnIGNsYXNzPVwibWF0LWNlbGwtdGV4dFwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIm1vZGVsLmNlbGxDbGFzc0Z1bmMgPyBtb2RlbC5jZWxsQ2xhc3NGdW5jKHJvdywgY29sdW1uKSA6IHt9XCJcclxuICAgICAgICAgICAgW2lubmVySFRNTF09XCJnZXRWYWx1ZShyb3csIGNvbHVtbi5uYW1lKVwiPlxyXG4gICAgICAgICAgPC90ZD5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDwhLS0gQWN0aW9uIENvbHVtbiAtLT5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9J2FjdGlvbic+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj48L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj0nbGV0IHJvdyc+XHJcbiAgICAgICAgICA8YnV0dG9uICpuZ0Zvcj0nbGV0IGFjdGlvbiBvZiBtb2RlbC5hY3Rpb25zJ1xyXG4gICAgICAgICAgbWF0LW1pbmktZmFiXHJcbiAgICAgICAgICBbY29sb3JdPSdnZXRBY3Rpb25Db2xvcihhY3Rpb24uY29sb3IpJ1xyXG4gICAgICAgICAgKGNsaWNrKT0naGFuZGxlQ2xpY2tBY3Rpb24oJGV2ZW50LCBhY3Rpb24sIHJvdyknPlxyXG4gICAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cInt7YWN0aW9uLmljb259fVwiPjwvbWF0LWljb24+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPSdkaXNwbGF5ZWRDb2x1bW5zOyc+PC90cj5cclxuICAgICAgPHRyIG1hdC1yb3dcclxuICAgICAgICAqbWF0Um93RGVmPSdsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zOydcclxuICAgICAgICBbbmdDbGFzc109XCJtb2RlbC5yb3dDbGFzc0Z1bmMgPyBtb2RlbC5yb3dDbGFzc0Z1bmMocm93KSA6IHt9XCJcclxuICAgICAgICAoY2xpY2spPVwic2VsZWN0aW9uLnRvZ2dsZShyb3cpXCI+XHJcbiAgICAgIDwvdHI+XHJcblxyXG4gICAgPC90YWJsZT5cclxuICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,261 +0,0 @@
|
|
|
1
|
-
import { Component, Input, HostBinding, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { map } from 'rxjs/operators';
|
|
4
|
-
import { ActionStore } from '../../action';
|
|
5
|
-
import { ToolboxColor } from '../shared/toolbox.enums';
|
|
6
|
-
import { toolSlideInOut } from './toolbox.animation';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/common";
|
|
9
|
-
import * as i2 from "../../action/actionbar/actionbar.component";
|
|
10
|
-
import * as i3 from "../../dynamic-component/dynamic-outlet/dynamic-outlet.component";
|
|
11
|
-
function ToolboxComponent_igo_actionbar_0_Template(rf, ctx) { if (rf & 1) {
|
|
12
|
-
i0.ɵɵelement(0, "igo-actionbar", 2);
|
|
13
|
-
i0.ɵɵpipe(1, "async");
|
|
14
|
-
i0.ɵɵpipe(2, "async");
|
|
15
|
-
i0.ɵɵpipe(3, "async");
|
|
16
|
-
} if (rf & 2) {
|
|
17
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
18
|
-
i0.ɵɵproperty("store", ctx_r0.actionStore)("withIcon", true)("withTitle", i0.ɵɵpipeBind1(1, 6, ctx_r0.toolbarWithTitle$))("withTooltip", i0.ɵɵpipeBind1(2, 8, ctx_r0.toolbarWithTitle$) === false)("scrollActive", i0.ɵɵpipeBind1(3, 10, ctx_r0.toolbarWithTitle$))("horizontal", false);
|
|
19
|
-
} }
|
|
20
|
-
const _c0 = function (a0, a1) { return { "igo-tool-container-with-toolbar": a0, "igo-tool-container-with-animation": a1 }; };
|
|
21
|
-
function ToolboxComponent_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
22
|
-
const _r4 = i0.ɵɵgetCurrentView();
|
|
23
|
-
i0.ɵɵelementStart(0, "div", 3);
|
|
24
|
-
i0.ɵɵlistener("@toolSlideInOut.start", function ToolboxComponent_div_2_Template_div_animation_toolSlideInOut_start_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r3 = i0.ɵɵnextContext(); return ctx_r3.onAnimationStart(); })("@toolSlideInOut.done", function ToolboxComponent_div_2_Template_div_animation_toolSlideInOut_done_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r5 = i0.ɵɵnextContext(); return ctx_r5.onAnimationComplete(); });
|
|
25
|
-
i0.ɵɵpipe(1, "async");
|
|
26
|
-
i0.ɵɵelement(2, "igo-dynamic-outlet", 4);
|
|
27
|
-
i0.ɵɵelementEnd();
|
|
28
|
-
} if (rf & 2) {
|
|
29
|
-
const tool_r2 = ctx.ngIf;
|
|
30
|
-
const ctx_r1 = i0.ɵɵnextContext();
|
|
31
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(6, _c0, !ctx_r1.actionStore.empty, ctx_r1.animate))("@toolSlideInOut", i0.ɵɵpipeBind1(1, 4, ctx_r1.animation$));
|
|
32
|
-
i0.ɵɵadvance(2);
|
|
33
|
-
i0.ɵɵproperty("component", tool_r2.component)("inputs", ctx_r1.getToolInputs(tool_r2));
|
|
34
|
-
} }
|
|
35
|
-
export class ToolboxComponent {
|
|
36
|
-
constructor() {
|
|
37
|
-
/**
|
|
38
|
-
* Observable of the active tool
|
|
39
|
-
*/
|
|
40
|
-
this.activeTool$ = new BehaviorSubject(undefined);
|
|
41
|
-
/**
|
|
42
|
-
* Store of actions that toggle tools
|
|
43
|
-
*/
|
|
44
|
-
this.actionStore = new ActionStore([]);
|
|
45
|
-
/**
|
|
46
|
-
* Observable of he anmation state
|
|
47
|
-
*/
|
|
48
|
-
this.animation$ = new BehaviorSubject('none');
|
|
49
|
-
/**
|
|
50
|
-
* Observable of the toolbar
|
|
51
|
-
*/
|
|
52
|
-
this.toolbar$ = new BehaviorSubject([]);
|
|
53
|
-
/**
|
|
54
|
-
* Whether the Toolbar should display actions' titles
|
|
55
|
-
*/
|
|
56
|
-
this.toolbarWithTitle$ = this.activeTool$.pipe(map((tool) => tool === undefined));
|
|
57
|
-
/**
|
|
58
|
-
* Observable of the ongoing animation. This is useful when
|
|
59
|
-
* multiple animations are triggered at once i.e. when the user clicks
|
|
60
|
-
* too fast on different actions
|
|
61
|
-
*/
|
|
62
|
-
this.animating$ = new BehaviorSubject(false);
|
|
63
|
-
/**
|
|
64
|
-
* Whether the toolbox should animate the first tool entering
|
|
65
|
-
*/
|
|
66
|
-
this.animate = false;
|
|
67
|
-
/**
|
|
68
|
-
* Color of Toolbox
|
|
69
|
-
*/
|
|
70
|
-
this.color = ToolboxColor.White;
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* @ignore
|
|
74
|
-
*/
|
|
75
|
-
get classColorGrey() {
|
|
76
|
-
return this.color === ToolboxColor.Grey;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* @ignore
|
|
80
|
-
*/
|
|
81
|
-
get classColorPrimary() {
|
|
82
|
-
return this.color === ToolboxColor.Primary;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Initialize the toolbar and subscribe to the active tool
|
|
86
|
-
* @internal
|
|
87
|
-
*/
|
|
88
|
-
ngOnInit() {
|
|
89
|
-
this.toolbar$$ = this.toolbox.toolbar$.subscribe((toolbar) => this.onToolbarChange(toolbar));
|
|
90
|
-
this.activeTool$$ = this.toolbox.activeTool$.subscribe((tool) => this.onActiveToolChange(tool));
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Unsubscribe to the active tool and destroy the action store
|
|
94
|
-
* @internal
|
|
95
|
-
*/
|
|
96
|
-
ngOnDestroy() {
|
|
97
|
-
this.toolbar$$.unsubscribe();
|
|
98
|
-
this.activeTool$$.unsubscribe();
|
|
99
|
-
this.actionStore.destroy();
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Track the starting animation
|
|
103
|
-
* @internal
|
|
104
|
-
*/
|
|
105
|
-
onAnimationStart() {
|
|
106
|
-
this.animating$.next(true);
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Untrack the completed animation
|
|
110
|
-
* @internal
|
|
111
|
-
*/
|
|
112
|
-
onAnimationComplete() {
|
|
113
|
-
this.animating$.next(false);
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Return a tool's inputs
|
|
117
|
-
* @param tool Tool
|
|
118
|
-
* @returns Tool inputs
|
|
119
|
-
* @internal
|
|
120
|
-
*/
|
|
121
|
-
getToolInputs(tool) {
|
|
122
|
-
return tool.options || {};
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Initialize an action store
|
|
126
|
-
* @param toolbar Toolbar
|
|
127
|
-
*/
|
|
128
|
-
onToolbarChange(toolbar) {
|
|
129
|
-
this.setToolbar(toolbar);
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* Activate a tool and trigger an animation or not
|
|
133
|
-
* @param tool Tool to activate
|
|
134
|
-
*/
|
|
135
|
-
onActiveToolChange(tool) {
|
|
136
|
-
if (!this.animate) {
|
|
137
|
-
this.setActiveTool(tool);
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
this.onAnimate(() => this.setActiveTool(tool));
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Set the active tool
|
|
144
|
-
* @param tool Tool to activate
|
|
145
|
-
*/
|
|
146
|
-
setActiveTool(tool) {
|
|
147
|
-
if (tool === undefined) {
|
|
148
|
-
this.actionStore.state.updateAll({ active: false });
|
|
149
|
-
}
|
|
150
|
-
else {
|
|
151
|
-
const action = this.actionStore.get(tool.name);
|
|
152
|
-
if (action !== undefined) {
|
|
153
|
-
this.actionStore.state.update(action, { active: true }, true);
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
this.activeTool$.next(tool);
|
|
157
|
-
if (this.animate) {
|
|
158
|
-
this.animation$.next('enter');
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* Initialize the toolbar
|
|
163
|
-
*/
|
|
164
|
-
setToolbar(toolbar) {
|
|
165
|
-
const actions = toolbar.reduce((acc, toolName) => {
|
|
166
|
-
const tool = this.toolbox.getTool(toolName);
|
|
167
|
-
if (tool === undefined) {
|
|
168
|
-
return acc;
|
|
169
|
-
}
|
|
170
|
-
acc.push({
|
|
171
|
-
id: tool.name,
|
|
172
|
-
title: tool.title,
|
|
173
|
-
icon: tool.icon,
|
|
174
|
-
// iconImage: tool.iconImage,
|
|
175
|
-
tooltip: tool.tooltip,
|
|
176
|
-
args: [tool, this.toolbox],
|
|
177
|
-
handler: (_tool, _toolbox) => {
|
|
178
|
-
_toolbox.activateTool(_tool.name);
|
|
179
|
-
},
|
|
180
|
-
ngClass: (_tool, _toolbox) => {
|
|
181
|
-
return this.toolbox.activeTool$.pipe(map((activeTool) => {
|
|
182
|
-
let toolActivated = false;
|
|
183
|
-
if (activeTool !== undefined && _tool.name === activeTool.name) {
|
|
184
|
-
toolActivated = true;
|
|
185
|
-
}
|
|
186
|
-
let childrenToolActivated = false;
|
|
187
|
-
if (activeTool !== undefined &&
|
|
188
|
-
_tool.name === activeTool.parent) {
|
|
189
|
-
childrenToolActivated = true;
|
|
190
|
-
}
|
|
191
|
-
return {
|
|
192
|
-
'tool-activated': toolActivated,
|
|
193
|
-
'children-tool-activated': childrenToolActivated
|
|
194
|
-
};
|
|
195
|
-
}));
|
|
196
|
-
}
|
|
197
|
-
});
|
|
198
|
-
return acc;
|
|
199
|
-
}, []);
|
|
200
|
-
this.actionStore.load(actions);
|
|
201
|
-
this.toolbar$.next(toolbar);
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Observe the ongoing animation and ignore any incoming animation
|
|
205
|
-
* while one is still ongoing.
|
|
206
|
-
* @param callback Callback to execute when the animation completes
|
|
207
|
-
*/
|
|
208
|
-
onAnimate(callback) {
|
|
209
|
-
this.unAnimate();
|
|
210
|
-
this.animating$$ = this.animating$.subscribe((animation) => {
|
|
211
|
-
if (!animation) {
|
|
212
|
-
callback.call(this);
|
|
213
|
-
this.unAnimate();
|
|
214
|
-
}
|
|
215
|
-
});
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* Stop observing an animation when it's complete
|
|
219
|
-
*/
|
|
220
|
-
unAnimate() {
|
|
221
|
-
if (this.animating$$) {
|
|
222
|
-
this.animating$$.unsubscribe();
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
ToolboxComponent.ɵfac = function ToolboxComponent_Factory(t) { return new (t || ToolboxComponent)(); };
|
|
227
|
-
ToolboxComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToolboxComponent, selectors: [["igo-toolbox"]], hostVars: 4, hostBindings: function ToolboxComponent_HostBindings(rf, ctx) { if (rf & 2) {
|
|
228
|
-
i0.ɵɵclassProp("color-grey", ctx.classColorGrey)("color-primary", ctx.classColorPrimary);
|
|
229
|
-
} }, inputs: { toolbox: "toolbox", animate: "animate", color: "color" }, decls: 4, vars: 6, consts: [[3, "store", "withIcon", "withTitle", "withTooltip", "scrollActive", "horizontal", 4, "ngIf"], ["class", "igo-tool-container", 3, "ngClass", 4, "ngIf"], [3, "store", "withIcon", "withTitle", "withTooltip", "scrollActive", "horizontal"], [1, "igo-tool-container", 3, "ngClass"], [3, "component", "inputs"]], template: function ToolboxComponent_Template(rf, ctx) { if (rf & 1) {
|
|
230
|
-
i0.ɵɵtemplate(0, ToolboxComponent_igo_actionbar_0_Template, 4, 12, "igo-actionbar", 0);
|
|
231
|
-
i0.ɵɵpipe(1, "async");
|
|
232
|
-
i0.ɵɵtemplate(2, ToolboxComponent_div_2_Template, 3, 9, "div", 1);
|
|
233
|
-
i0.ɵɵpipe(3, "async");
|
|
234
|
-
} if (rf & 2) {
|
|
235
|
-
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 2, ctx.toolbar$).length > 0);
|
|
236
|
-
i0.ɵɵadvance(2);
|
|
237
|
-
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(3, 4, ctx.activeTool$));
|
|
238
|
-
} }, directives: [i1.NgIf, i2.ActionbarComponent, i1.NgClass, i3.DynamicOutletComponent], pipes: [i1.AsyncPipe], styles: ["[_nghost-%COMP%]{display:block;position:relative;overflow:hidden;width:100%;height:100%}.igo-tool-container[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.igo-tool-container-with-animation[_ngcontent-%COMP%]{transform:translate(100%)}.igo-tool-container-with-toolbar[_ngcontent-%COMP%]{left:50px}igo-actionbar[_ngcontent-%COMP%]{height:100%}igo-actionbar.with-title[_ngcontent-%COMP%]{width:100%;overflow:auto}igo-actionbar[_ngcontent-%COMP%]:not(.with-title){width:48px;overflow:hidden;-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd}@media only screen and (orientation:portrait) and (max-width: 599px),only screen and (orientation:landscape) and (max-width: 959px){igo-actionbar[_ngcontent-%COMP%]:not(.with-title){overflow:auto}}igo-dynamic-outlet[_ngcontent-%COMP%]{overflow:auto}"], data: { animation: [toolSlideInOut()] }, changeDetection: 0 });
|
|
239
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToolboxComponent, [{
|
|
240
|
-
type: Component,
|
|
241
|
-
args: [{
|
|
242
|
-
selector: 'igo-toolbox',
|
|
243
|
-
templateUrl: 'toolbox.component.html',
|
|
244
|
-
styleUrls: ['toolbox.component.scss'],
|
|
245
|
-
animations: [toolSlideInOut()],
|
|
246
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
247
|
-
}]
|
|
248
|
-
}], null, { toolbox: [{
|
|
249
|
-
type: Input
|
|
250
|
-
}], animate: [{
|
|
251
|
-
type: Input
|
|
252
|
-
}], color: [{
|
|
253
|
-
type: Input
|
|
254
|
-
}], classColorGrey: [{
|
|
255
|
-
type: HostBinding,
|
|
256
|
-
args: ['class.color-grey']
|
|
257
|
-
}], classColorPrimary: [{
|
|
258
|
-
type: HostBinding,
|
|
259
|
-
args: ['class.color-primary']
|
|
260
|
-
}] }); })();
|
|
261
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi90b29sL3Rvb2xib3gvdG9vbGJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi90b29sL3Rvb2xib3gvdG9vbGJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxXQUFXLEVBQ1gsdUJBQXVCLEVBQ3hCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBZ0IsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQVUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRW5ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztJQ2hCckQsbUNBUWdCOzs7Ozs7SUFOZCwwQ0FBcUIsa0JBQUEsNkRBQUEseUVBQUEsaUVBQUEscUJBQUE7Ozs7O0lBUXZCLDhCQU1pRDtJQUQvQyxnT0FBNEMsb05BQUE7O0lBRzVDLHdDQUdxQjtJQUV2QixpQkFBTTs7OztJQVZKLCtGQUFpSCw0REFBQTtJQU0vRyxlQUE0QjtJQUE1Qiw2Q0FBNEIseUNBQUE7O0FETWhDLE1BQU0sT0FBTyxnQkFBZ0I7SUFQN0I7UUFRRTs7V0FFRztRQUNILGdCQUFXLEdBQTBCLElBQUksZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXBFOztXQUVHO1FBQ0gsZ0JBQVcsR0FBZ0IsSUFBSSxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFL0M7O1dBRUc7UUFDSCxlQUFVLEdBQTRCLElBQUksZUFB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Q0FBQztJQUVEOztPQUVHO0lBQ0ssU0FBUztRQUNmLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQzs7Z0ZBbFBVLGdCQUFnQjttRUFBaEIsZ0JBQWdCOzs7UUN6QjdCLHNGQVFnQjs7UUFFaEIsaUVBYU07OztRQXRCSCxvRUFBbUM7UUFVbkMsZUFBMEI7UUFBMUIsNERBQTBCOzI4QkRXZixDQUFDLGNBQWMsRUFBRSxDQUFDO3VGQUduQixnQkFBZ0I7Y0FQNUIsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxhQUFhO2dCQUN2QixXQUFXLEVBQUUsd0JBQXdCO2dCQUNyQyxTQUFTLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDckMsVUFBVSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQzlCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEO2dCQXNEVSxPQUFPO2tCQUFmLEtBQUs7WUFLRyxPQUFPO2tCQUFmLEtBQUs7WUFLRyxLQUFLO2tCQUFiLEtBQUs7WUFNRixjQUFjO2tCQURqQixXQUFXO21CQUFDLGtCQUFrQjtZQVMzQixpQkFBaUI7a0JBRHBCLFdBQVc7bUJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBIb3N0QmluZGluZyxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneVxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQWN0aW9uLCBBY3Rpb25TdG9yZSB9IGZyb20gJy4uLy4uL2FjdGlvbic7XHJcbmltcG9ydCB7IFRvb2wgfSBmcm9tICcuLi9zaGFyZWQvdG9vbC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBUb29sYm94Q29sb3IgfSBmcm9tICcuLi9zaGFyZWQvdG9vbGJveC5lbnVtcyc7XHJcbmltcG9ydCB7IFRvb2xib3ggfSBmcm9tICcuLi9zaGFyZWQvdG9vbGJveCc7XHJcbmltcG9ydCB7IHRvb2xTbGlkZUluT3V0IH0gZnJvbSAnLi90b29sYm94LmFuaW1hdGlvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby10b29sYm94JyxcclxuICB0ZW1wbGF0ZVVybDogJ3Rvb2xib3guY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWyd0b29sYm94LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW3Rvb2xTbGlkZUluT3V0KCldLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUb29sYm94Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIC8qKlxyXG4gICAqIE9ic2VydmFibGUgb2YgdGhlIGFjdGl2ZSB0b29sXHJcbiAgICovXHJcbiAgYWN0aXZlVG9vbCQ6IEJlaGF2aW9yU3ViamVjdDxUb29sPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3RvcmUgb2YgYWN0aW9ucyB0aGF0IHRvZ2dsZSB0b29sc1xyXG4gICAqL1xyXG4gIGFjdGlvblN0b3JlOiBBY3Rpb25TdG9yZSA9IG5ldyBBY3Rpb25TdG9yZShbXSk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9ic2VydmFibGUgb2YgaGUgYW5tYXRpb24gc3RhdGVcclxuICAgKi9cclxuICBhbmltYXRpb24kOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoJ25vbmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogT2JzZXJ2YWJsZSBvZiB0aGUgdG9vbGJhclxyXG4gICAqL1xyXG4gIHRvb2xiYXIkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChbXSk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgdGhlIFRvb2xiYXIgc2hvdWxkIGRpc3BsYXkgYWN0aW9ucycgdGl0bGVzXHJcbiAgICovXHJcbiAgdG9vbGJhcldpdGhUaXRsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmFjdGl2ZVRvb2wkLnBpcGUoXHJcbiAgICBtYXAoKHRvb2w6IFRvb2wgfCB1bmRlZmluZWQpID0+IHRvb2wgPT09IHVuZGVmaW5lZClcclxuICApO1xyXG5cclxuICAvKipcclxuICAgKiBTdWJzY3JpcHRpb24gdG8gdGhlIGFjdGl2ZSB0b29sXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBhY3RpdmVUb29sJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogU3Vic2NyaXB0aW9uIHRvIHRoZSB0b29sYmFyXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB0b29sYmFyJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogT2JzZXJ2YWJsZSBvZiB0aGUgb25nb2luZyBhbmltYXRpb24uIFRoaXMgaXMgdXNlZnVsIHdoZW5cclxuICAgKiBtdWx0aXBsZSBhbmltYXRpb25zIGFyZSB0cmlnZ2VyZWQgYXQgb25jZSBpLmUuIHdoZW4gdGhlIHVzZXIgY2xpY2tzXHJcbiAgICogdG9vIGZhc3Qgb24gZGlmZmVyZW50IGFjdGlvbnNcclxuICAgKi9cclxuICBwcml2YXRlIGFuaW1hdGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3Vic2NyaXB0aW9uIHRvIHRoZSBvbmdvaW5nIGFuaW1hdGlvblxyXG4gICAqL1xyXG4gIHByaXZhdGUgYW5pbWF0aW5nJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogVG9vbGJveFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHRvb2xib3g6IFRvb2xib3g7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgdGhlIHRvb2xib3ggc2hvdWxkIGFuaW1hdGUgdGhlIGZpcnN0IHRvb2wgZW50ZXJpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBhbmltYXRlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbG9yIG9mIFRvb2xib3hcclxuICAgKi9cclxuICBASW5wdXQoKSBjb2xvcjogVG9vbGJveENvbG9yID0gVG9vbGJveENvbG9yLldoaXRlO1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb2xvci1ncmV5JylcclxuICBnZXQgY2xhc3NDb2xvckdyZXkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb2xvciA9PT0gVG9vbGJveENvbG9yLkdyZXk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb2xvci1wcmltYXJ5JylcclxuICBnZXQgY2xhc3NDb2xvclByaW1hcnkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb2xvciA9PT0gVG9vbGJveENvbG9yLlByaW1hcnk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplIHRoZSB0b29sYmFyIGFuZCBzdWJzY3JpYmUgdG8gdGhlIGFjdGl2ZSB0b29sXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnRvb2xiYXIkJCA9IHRoaXMudG9vbGJveC50b29sYmFyJC5zdWJzY3JpYmUoKHRvb2xiYXI6IHN0cmluZ1tdKSA9PlxyXG4gICAgICB0aGlzLm9uVG9vbGJhckNoYW5nZSh0b29sYmFyKVxyXG4gICAgKTtcclxuICAgIHRoaXMuYWN0aXZlVG9vbCQkID0gdGhpcy50b29sYm94LmFjdGl2ZVRvb2wkLnN1YnNjcmliZSgodG9vbDogVG9vbCkgPT5cclxuICAgICAgdGhpcy5vbkFjdGl2ZVRvb2xDaGFuZ2UodG9vbClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVbnN1YnNjcmliZSB0byB0aGUgYWN0aXZlIHRvb2wgYW5kIGRlc3Ryb3kgdGhlIGFjdGlvbiBzdG9yZVxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy50b29sYmFyJCQudW5zdWJzY3JpYmUoKTtcclxuICAgIHRoaXMuYWN0aXZlVG9vbCQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLmFjdGlvblN0b3JlLmRlc3Ryb3koKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRyYWNrIHRoZSBzdGFydGluZyBhbmltYXRpb25cclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBvbkFuaW1hdGlvblN0YXJ0KCkge1xyXG4gICAgdGhpcy5hbmltYXRpbmckLm5leHQodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVbnRyYWNrIHRoZSBjb21wbGV0ZWQgYW5pbWF0aW9uXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgb25BbmltYXRpb25Db21wbGV0ZSgpIHtcclxuICAgIHRoaXMuYW5pbWF0aW5nJC5uZXh0KGZhbHNlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiBhIHRvb2wncyBpbnB1dHNcclxuICAgKiBAcGFyYW0gdG9vbCBUb29sXHJcbiAgICogQHJldHVybnMgVG9vbCBpbnB1dHNcclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBnZXRUb29sSW5wdXRzKHRvb2w6IFRvb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcclxuICAgIHJldHVybiB0b29sLm9wdGlvbnMgfHwge307XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplIGFuIGFjdGlvbiBzdG9yZVxyXG4gICAqIEBwYXJhbSB0b29sYmFyIFRvb2xiYXJcclxuICAgKi9cclxuICBwcml2YXRlIG9uVG9vbGJhckNoYW5nZSh0b29sYmFyOiBzdHJpbmdbXSkge1xyXG4gICAgdGhpcy5zZXRUb29sYmFyKHRvb2xiYXIpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWN0aXZhdGUgYSB0b29sIGFuZCB0cmlnZ2VyIGFuIGFuaW1hdGlvbiBvciBub3RcclxuICAgKiBAcGFyYW0gdG9vbCBUb29sIHRvIGFjdGl2YXRlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBvbkFjdGl2ZVRvb2xDaGFuZ2UodG9vbDogVG9vbCkge1xyXG4gICAgaWYgKCF0aGlzLmFuaW1hdGUpIHtcclxuICAgICAgdGhpcy5zZXRBY3RpdmVUb29sKHRvb2wpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQW5pbWF0ZSgoKSA9PiB0aGlzLnNldEFjdGl2ZVRvb2wodG9vbCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRoZSBhY3RpdmUgdG9vbFxyXG4gICAqIEBwYXJhbSB0b29sIFRvb2wgdG8gYWN0aXZhdGVcclxuICAgKi9cclxuICBwcml2YXRlIHNldEFjdGl2ZVRvb2wodG9vbDogVG9vbCB8IHVuZGVmaW5lZCkge1xyXG4gICAgaWYgKHRvb2wgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmFjdGlvblN0b3JlLnN0YXRlLnVwZGF0ZUFsbCh7IGFjdGl2ZTogZmFsc2UgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBhY3Rpb24gPSB0aGlzLmFjdGlvblN0b3JlLmdldCh0b29sLm5hbWUpO1xyXG4gICAgICBpZiAoYWN0aW9uICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICB0aGlzLmFjdGlvblN0b3JlLnN0YXRlLnVwZGF0ZShhY3Rpb24sIHsgYWN0aXZlOiB0cnVlIH0sIHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5hY3RpdmVUb29sJC5uZXh0KHRvb2wpO1xyXG4gICAgaWYgKHRoaXMuYW5pbWF0ZSkge1xyXG4gICAgICB0aGlzLmFuaW1hdGlvbiQubmV4dCgnZW50ZXInKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWxpemUgdGhlIHRvb2xiYXJcclxuICAgKi9cclxuICBwcml2YXRlIHNldFRvb2xiYXIodG9vbGJhcjogc3RyaW5nW10pIHtcclxuICAgIGNvbnN0IGFjdGlvbnMgPSB0b29sYmFyLnJlZHVjZSgoYWNjOiBBY3Rpb25bXSwgdG9vbE5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgICBjb25zdCB0b29sID0gdGhpcy50b29sYm94LmdldFRvb2wodG9vbE5hbWUpO1xyXG4gICAgICBpZiAodG9vbCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgcmV0dXJuIGFjYztcclxuICAgICAgfVxyXG5cclxuICAgICAgYWNjLnB1c2goe1xyXG4gICAgICAgIGlkOiB0b29sLm5hbWUsXHJcbiAgICAgICAgdGl0bGU6IHRvb2wudGl0bGUsXHJcbiAgICAgICAgaWNvbjogdG9vbC5pY29uLFxyXG4gICAgICAgIC8vIGljb25JbWFnZTogdG9vbC5pY29uSW1hZ2UsXHJcbiAgICAgICAgdG9vbHRpcDogdG9vbC50b29sdGlwLFxyXG4gICAgICAgIGFyZ3M6IFt0b29sLCB0aGlzLnRvb2xib3hdLFxyXG4gICAgICAgIGhhbmRsZXI6IChfdG9vbDogVG9vbCwgX3Rvb2xib3g6IFRvb2xib3gpID0+IHtcclxuICAgICAgICAgIF90b29sYm94LmFjdGl2YXRlVG9vbChfdG9vbC5uYW1lKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIG5nQ2xhc3M6IChfdG9vbDogVG9vbCwgX3Rvb2xib3g6IFRvb2xib3gpID0+IHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLnRvb2xib3guYWN0aXZlVG9vbCQucGlwZShcclxuICAgICAgICAgICAgbWFwKChhY3RpdmVUb29sOiBUb29sKSA9PiB7XHJcbiAgICAgICAgICAgICAgbGV0IHRvb2xBY3RpdmF0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICBpZiAoYWN0aXZlVG9vbCAhPT0gdW5kZWZpbmVkICYmIF90b29sLm5hbWUgPT09IGFjdGl2ZVRvb2wubmFtZSkge1xyXG4gICAgICAgICAgICAgICAgdG9vbEFjdGl2YXRlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICBsZXQgY2hpbGRyZW5Ub29sQWN0aXZhdGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgYWN0aXZlVG9vbCAhPT0gdW5kZWZpbmVkICYmXHJcbiAgICAgICAgICAgICAgICBfdG9vbC5uYW1lID09PSBhY3RpdmVUb29sLnBhcmVudFxyXG4gICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgY2hpbGRyZW5Ub29sQWN0aXZhdGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICAndG9vbC1hY3RpdmF0ZWQnOiB0b29sQWN0aXZhdGVkLFxyXG4gICAgICAgICAgICAgICAgJ2NoaWxkcmVuLXRvb2wtYWN0aXZhdGVkJzogY2hpbGRyZW5Ub29sQWN0aXZhdGVkXHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIGFjYztcclxuICAgIH0sIFtdKTtcclxuICAgIHRoaXMuYWN0aW9uU3RvcmUubG9hZChhY3Rpb25zKTtcclxuICAgIHRoaXMudG9vbGJhciQubmV4dCh0b29sYmFyKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9ic2VydmUgdGhlIG9uZ29pbmcgYW5pbWF0aW9uIGFuZCBpZ25vcmUgYW55IGluY29taW5nIGFuaW1hdGlvblxyXG4gICAqIHdoaWxlIG9uZSBpcyBzdGlsbCBvbmdvaW5nLlxyXG4gICAqIEBwYXJhbSBjYWxsYmFjayBDYWxsYmFjayB0byBleGVjdXRlIHdoZW4gdGhlIGFuaW1hdGlvbiBjb21wbGV0ZXNcclxuICAgKi9cclxuICBwcml2YXRlIG9uQW5pbWF0ZShjYWxsYmFjazogKCkgPT4gdm9pZCkge1xyXG4gICAgdGhpcy51bkFuaW1hdGUoKTtcclxuICAgIHRoaXMuYW5pbWF0aW5nJCQgPSB0aGlzLmFuaW1hdGluZyQuc3Vic2NyaWJlKChhbmltYXRpb246IGJvb2xlYW4pID0+IHtcclxuICAgICAgaWYgKCFhbmltYXRpb24pIHtcclxuICAgICAgICBjYWxsYmFjay5jYWxsKHRoaXMpO1xyXG4gICAgICAgIHRoaXMudW5BbmltYXRlKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3RvcCBvYnNlcnZpbmcgYW4gYW5pbWF0aW9uIHdoZW4gaXQncyBjb21wbGV0ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgdW5BbmltYXRlKCkge1xyXG4gICAgaWYgKHRoaXMuYW5pbWF0aW5nJCQpIHtcclxuICAgICAgdGhpcy5hbmltYXRpbmckJC51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8aWdvLWFjdGlvbmJhclxyXG4gICpuZ0lmPVwiKHRvb2xiYXIkIHwgYXN5bmMpLmxlbmd0aCA+IDBcIlxyXG4gIFtzdG9yZV09XCJhY3Rpb25TdG9yZVwiXHJcbiAgW3dpdGhJY29uXT1cInRydWVcIlxyXG4gIFt3aXRoVGl0bGVdPVwidG9vbGJhcldpdGhUaXRsZSQgfCBhc3luY1wiXHJcbiAgW3dpdGhUb29sdGlwXT1cIih0b29sYmFyV2l0aFRpdGxlJCB8IGFzeW5jKSA9PT0gZmFsc2VcIlxyXG4gIFtzY3JvbGxBY3RpdmVdPVwidG9vbGJhcldpdGhUaXRsZSQgfCBhc3luY1wiXHJcbiAgW2hvcml6b250YWxdPVwiZmFsc2VcIj5cclxuPC9pZ28tYWN0aW9uYmFyPlxyXG5cclxuPGRpdlxyXG4gICpuZ0lmPVwiYWN0aXZlVG9vbCQgfCBhc3luYyBhcyB0b29sXCJcclxuICBjbGFzcz1cImlnby10b29sLWNvbnRhaW5lclwiXHJcbiAgW25nQ2xhc3NdPVwieydpZ28tdG9vbC1jb250YWluZXItd2l0aC10b29sYmFyJzogIWFjdGlvblN0b3JlLmVtcHR5LCAnaWdvLXRvb2wtY29udGFpbmVyLXdpdGgtYW5pbWF0aW9uJzogYW5pbWF0ZX1cIlxyXG4gIFtAdG9vbFNsaWRlSW5PdXRdPVwiYW5pbWF0aW9uJCB8IGFzeW5jXCJcclxuICAoQHRvb2xTbGlkZUluT3V0LnN0YXJ0KT1cIm9uQW5pbWF0aW9uU3RhcnQoKVwiXHJcbiAgKEB0b29sU2xpZGVJbk91dC5kb25lKT1cIm9uQW5pbWF0aW9uQ29tcGxldGUoKVwiPlxyXG5cclxuICA8aWdvLWR5bmFtaWMtb3V0bGV0XHJcbiAgICBbY29tcG9uZW50XT1cInRvb2wuY29tcG9uZW50XCJcclxuICAgIFtpbnB1dHNdPVwiZ2V0VG9vbElucHV0cyh0b29sKVwiPlxyXG4gIDwvaWdvLWR5bmFtaWMtb3V0bGV0PlxyXG5cclxuPC9kaXY+XHJcbiJdfQ==
|