@igo2/common 1.14.3 → 1.14.4
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/esm2020/igo2-common.mjs +4 -4
- package/esm2020/lib/action/action.module.mjs +26 -26
- package/esm2020/lib/action/actionbar/actionbar-item.component.mjs +251 -251
- package/esm2020/lib/action/actionbar/actionbar.component.mjs +369 -369
- package/esm2020/lib/action/actionbar/actionbar.module.mjs +56 -56
- package/esm2020/lib/action/index.mjs +3 -3
- package/esm2020/lib/action/shared/action.enums.mjs +7 -7
- package/esm2020/lib/action/shared/action.interfaces.mjs +1 -1
- package/esm2020/lib/action/shared/index.mjs +4 -4
- package/esm2020/lib/action/shared/store.mjs +7 -7
- package/esm2020/lib/backdrop/backdrop.component.mjs +25 -25
- package/esm2020/lib/backdrop/backdrop.module.mjs +24 -24
- package/esm2020/lib/backdrop/index.mjs +2 -2
- package/esm2020/lib/badge-icon/badge-icon.directive.mjs +140 -140
- package/esm2020/lib/badge-icon/badge-icon.module.mjs +25 -25
- package/esm2020/lib/badge-icon/index.mjs +2 -2
- package/esm2020/lib/clickout/clickout.directive.mjs +31 -31
- package/esm2020/lib/clickout/clickout.module.mjs +23 -23
- package/esm2020/lib/clickout/index.mjs +2 -2
- package/esm2020/lib/clone/clone.module.mjs +23 -23
- package/esm2020/lib/clone/clone.pipe.mjs +23 -23
- package/esm2020/lib/clone/index.mjs +2 -2
- package/esm2020/lib/collapsible/collapse.directive.mjs +54 -54
- package/esm2020/lib/collapsible/collapsible.component.mjs +56 -56
- package/esm2020/lib/collapsible/collapsible.module.mjs +26 -26
- package/esm2020/lib/collapsible/index.mjs +2 -2
- package/esm2020/lib/confirm-dialog/confirm-dialog.component.mjs +43 -43
- package/esm2020/lib/confirm-dialog/confirm-dialog.module.mjs +28 -28
- package/esm2020/lib/confirm-dialog/confirm-dialog.service.mjs +21 -21
- package/esm2020/lib/confirm-dialog/index.mjs +2 -2
- package/esm2020/lib/context-menu/context-menu.directive.mjs +102 -102
- package/esm2020/lib/context-menu/context-menu.module.mjs +24 -24
- package/esm2020/lib/context-menu/index.mjs +2 -2
- package/esm2020/lib/context-menu/long-press.directive.mjs +62 -62
- package/esm2020/lib/custom-html/custom-html.component.mjs +28 -28
- package/esm2020/lib/custom-html/custom-html.module.mjs +46 -46
- package/esm2020/lib/custom-html/custom-html.pipe.mjs +17 -17
- package/esm2020/lib/custom-html/index.mjs +2 -2
- package/esm2020/lib/dom/dom.interfaces.mjs +2 -2
- package/esm2020/lib/dom/dom.module.mjs +22 -22
- package/esm2020/lib/dom/dom.service.mjs +29 -29
- package/esm2020/lib/dom/index.mjs +3 -3
- package/esm2020/lib/drag-drop/drag-drop.directive.mjs +87 -87
- package/esm2020/lib/drag-drop/drag-drop.module.mjs +23 -23
- package/esm2020/lib/drag-drop/index.mjs +2 -2
- package/esm2020/lib/dynamic-component/dynamic-component.module.mjs +30 -30
- package/esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.mjs +122 -122
- package/esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.mjs +27 -27
- package/esm2020/lib/dynamic-component/index.mjs +3 -3
- package/esm2020/lib/dynamic-component/shared/dynamic-component.interfaces.mjs +2 -2
- package/esm2020/lib/dynamic-component/shared/dynamic-component.mjs +173 -173
- package/esm2020/lib/dynamic-component/shared/dynamic-component.service.mjs +28 -28
- package/esm2020/lib/dynamic-component/shared/index.mjs +4 -4
- package/esm2020/lib/entity/entity-selector/entity-selector.component.mjs +193 -193
- package/esm2020/lib/entity/entity-selector/entity-selector.module.mjs +31 -31
- package/esm2020/lib/entity/entity-table/entity-table-row.directive.mjs +136 -136
- package/esm2020/lib/entity/entity-table/entity-table.component.mjs +1367 -1367
- package/esm2020/lib/entity/entity-table/entity-table.module.mjs +101 -101
- package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.component.mjs +131 -131
- package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.interface.mjs +1 -1
- package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.module.mjs +27 -27
- package/esm2020/lib/entity/entity.module.mjs +30 -30
- package/esm2020/lib/entity/index.mjs +5 -5
- package/esm2020/lib/entity/shared/entity.enums.mjs +28 -28
- package/esm2020/lib/entity/shared/entity.interfaces.mjs +1 -1
- package/esm2020/lib/entity/shared/entity.utils.mjs +66 -66
- package/esm2020/lib/entity/shared/index.mjs +10 -10
- package/esm2020/lib/entity/shared/state.mjs +190 -190
- package/esm2020/lib/entity/shared/store.mjs +287 -287
- package/esm2020/lib/entity/shared/strategies/filter-custom-function.mjs +78 -78
- package/esm2020/lib/entity/shared/strategies/filter-selection.mjs +83 -83
- package/esm2020/lib/entity/shared/strategies/index.mjs +4 -4
- package/esm2020/lib/entity/shared/strategies/strategy.mjs +74 -74
- package/esm2020/lib/entity/shared/transaction.mjs +315 -315
- package/esm2020/lib/entity/shared/view.mjs +314 -314
- package/esm2020/lib/entity/shared/watcher.mjs +119 -119
- package/esm2020/lib/flexible/flexible.component.mjs +147 -147
- package/esm2020/lib/flexible/flexible.module.mjs +23 -23
- package/esm2020/lib/flexible/flexible.type.mjs +2 -2
- package/esm2020/lib/flexible/index.mjs +3 -3
- package/esm2020/lib/form/form/form.component.mjs +116 -116
- package/esm2020/lib/form/form/form.module.mjs +39 -39
- package/esm2020/lib/form/form-field/form-field-select.component.mjs +126 -126
- package/esm2020/lib/form/form-field/form-field-text.component.mjs +103 -103
- package/esm2020/lib/form/form-field/form-field-textarea.component.mjs +104 -104
- package/esm2020/lib/form/form-field/form-field.component.mjs +71 -71
- package/esm2020/lib/form/form-field/form-field.module.mjs +73 -73
- package/esm2020/lib/form/form-field/index.mjs +4 -4
- package/esm2020/lib/form/form-group/form-group.component.mjs +104 -104
- package/esm2020/lib/form/form-group/form-group.module.mjs +39 -39
- package/esm2020/lib/form/form.module.mjs +48 -48
- package/esm2020/lib/form/index.mjs +4 -4
- package/esm2020/lib/form/shared/form-field-component.mjs +7 -7
- package/esm2020/lib/form/shared/form-field.service.mjs +28 -28
- package/esm2020/lib/form/shared/form.interfaces.mjs +1 -1
- package/esm2020/lib/form/shared/form.service.mjs +80 -80
- package/esm2020/lib/form/shared/form.utils.mjs +39 -39
- package/esm2020/lib/form/shared/index.mjs +6 -6
- package/esm2020/lib/home-button/home-button.component.mjs +30 -30
- package/esm2020/lib/home-button/home-button.module.mjs +40 -40
- package/esm2020/lib/home-button/index.mjs +2 -2
- package/esm2020/lib/image/image-error.directive.mjs +34 -34
- package/esm2020/lib/image/image.module.mjs +24 -24
- package/esm2020/lib/image/index.mjs +2 -2
- package/esm2020/lib/image/secure-image.pipe.mjs +59 -59
- package/esm2020/lib/interactive-tour/index.mjs +5 -5
- package/esm2020/lib/interactive-tour/interactive-tour.component.mjs +134 -134
- package/esm2020/lib/interactive-tour/interactive-tour.interface.mjs +1 -1
- package/esm2020/lib/interactive-tour/interactive-tour.loader.mjs +43 -43
- package/esm2020/lib/interactive-tour/interactive-tour.module.mjs +39 -39
- package/esm2020/lib/interactive-tour/interactive-tour.service.mjs +284 -284
- package/esm2020/lib/json-dialog/index.mjs +3 -3
- package/esm2020/lib/json-dialog/json-dialog.component.mjs +108 -108
- package/esm2020/lib/json-dialog/json-dialog.module.mjs +28 -28
- package/esm2020/lib/json-dialog/json-dialog.service.mjs +23 -23
- package/esm2020/lib/keyvalue/index.mjs +2 -2
- package/esm2020/lib/keyvalue/keyvalue.module.mjs +23 -23
- package/esm2020/lib/keyvalue/keyvalue.pipe.mjs +17 -17
- package/esm2020/lib/list/index.mjs +2 -2
- package/esm2020/lib/list/list-item.directive.mjs +164 -164
- package/esm2020/lib/list/list.component.mjs +261 -261
- package/esm2020/lib/list/list.module.mjs +28 -28
- package/esm2020/lib/panel/index.mjs +2 -2
- package/esm2020/lib/panel/panel.component.mjs +58 -58
- package/esm2020/lib/panel/panel.module.mjs +18 -18
- package/esm2020/lib/sidenav/index.mjs +2 -2
- package/esm2020/lib/sidenav/sidenav-shim.directive.mjs +54 -54
- package/esm2020/lib/sidenav/sidenav.module.mjs +23 -23
- package/esm2020/lib/spinner/index.mjs +2 -2
- package/esm2020/lib/spinner/spinner-activity.directive.mjs +46 -46
- package/esm2020/lib/spinner/spinner.component.mjs +34 -34
- package/esm2020/lib/spinner/spinner.module.mjs +20 -20
- package/esm2020/lib/stop-propagation/index.mjs +2 -2
- package/esm2020/lib/stop-propagation/stop-drop-propagation.directive.mjs +21 -21
- package/esm2020/lib/stop-propagation/stop-propagation.directive.mjs +20 -20
- package/esm2020/lib/stop-propagation/stop-propagation.module.mjs +24 -24
- package/esm2020/lib/table/index.mjs +6 -6
- package/esm2020/lib/table/table-action-color.enum.mjs +7 -7
- package/esm2020/lib/table/table-database.mjs +28 -28
- package/esm2020/lib/table/table-datasource.mjs +60 -60
- package/esm2020/lib/table/table-model.interface.mjs +1 -1
- package/esm2020/lib/table/table.component.mjs +296 -296
- package/esm2020/lib/table/table.module.mjs +66 -66
- package/esm2020/lib/tool/index.mjs +3 -3
- package/esm2020/lib/tool/shared/index.mjs +6 -6
- package/esm2020/lib/tool/shared/tool-component.mjs +8 -8
- package/esm2020/lib/tool/shared/tool.interface.mjs +1 -1
- package/esm2020/lib/tool/shared/tool.service.mjs +43 -43
- package/esm2020/lib/tool/shared/toolbox.enums.mjs +6 -6
- package/esm2020/lib/tool/shared/toolbox.mjs +178 -178
- package/esm2020/lib/tool/tool.module.mjs +31 -31
- package/esm2020/lib/tool/toolbox/toolbox.animation.mjs +9 -9
- package/esm2020/lib/tool/toolbox/toolbox.component.mjs +255 -255
- package/esm2020/lib/tool/toolbox/toolbox.module.mjs +35 -35
- package/esm2020/lib/widget/index.mjs +3 -3
- package/esm2020/lib/widget/shared/index.mjs +4 -4
- package/esm2020/lib/widget/shared/widget.interfaces.mjs +2 -2
- package/esm2020/lib/widget/shared/widget.mjs +4 -4
- package/esm2020/lib/widget/shared/widget.service.mjs +19 -19
- package/esm2020/lib/widget/widget-outlet/widget-outlet.component.mjs +115 -115
- package/esm2020/lib/widget/widget-outlet/widget-outlet.module.mjs +31 -31
- package/esm2020/lib/widget/widget.module.mjs +31 -31
- package/esm2020/lib/workspace/index.mjs +3 -3
- package/esm2020/lib/workspace/shared/index.mjs +4 -4
- package/esm2020/lib/workspace/shared/store.mjs +39 -39
- package/esm2020/lib/workspace/shared/workspace.interfaces.mjs +1 -1
- package/esm2020/lib/workspace/shared/workspace.mjs +116 -116
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.component.mjs +50 -50
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +31 -31
- package/esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.mjs +87 -87
- package/esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.mjs +31 -31
- package/esm2020/lib/workspace/workspace.module.mjs +26 -26
- package/esm2020/public_api.mjs +73 -73
- package/fesm2015/igo2-common.mjs +10003 -10003
- package/fesm2015/igo2-common.mjs.map +1 -1
- package/fesm2020/igo2-common.mjs +9306 -9306
- package/fesm2020/igo2-common.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/action/action.module.d.ts +8 -8
- package/lib/action/actionbar/actionbar-item.component.d.ts +78 -78
- package/lib/action/actionbar/actionbar.component.d.ts +146 -146
- package/lib/action/actionbar/actionbar.module.d.ts +20 -20
- package/lib/action/index.d.ts +2 -2
- package/lib/action/shared/action.enums.d.ts +5 -5
- package/lib/action/shared/action.interfaces.d.ts +17 -17
- package/lib/action/shared/index.d.ts +3 -3
- package/lib/action/shared/store.d.ts +8 -8
- package/lib/backdrop/backdrop.component.d.ts +9 -9
- package/lib/backdrop/backdrop.module.d.ts +10 -10
- package/lib/backdrop/index.d.ts +1 -1
- package/lib/badge-icon/badge-icon.directive.d.ts +36 -36
- package/lib/badge-icon/badge-icon.module.d.ts +11 -11
- package/lib/badge-icon/index.d.ts +1 -1
- package/lib/clickout/clickout.directive.d.ts +10 -10
- package/lib/clickout/clickout.module.d.ts +9 -9
- package/lib/clickout/index.d.ts +1 -1
- package/lib/clone/clone.module.d.ts +9 -9
- package/lib/clone/clone.pipe.d.ts +7 -7
- package/lib/clone/index.d.ts +1 -1
- package/lib/collapsible/collapse.directive.d.ts +19 -19
- package/lib/collapsible/collapsible.component.d.ts +13 -13
- package/lib/collapsible/collapsible.module.d.ts +12 -12
- package/lib/collapsible/index.d.ts +2 -2
- package/lib/confirm-dialog/confirm-dialog.component.d.ts +9 -9
- package/lib/confirm-dialog/confirm-dialog.module.d.ts +12 -12
- package/lib/confirm-dialog/confirm-dialog.service.d.ts +10 -10
- package/lib/confirm-dialog/index.d.ts +2 -2
- package/lib/context-menu/context-menu.directive.d.ts +21 -21
- package/lib/context-menu/context-menu.module.d.ts +10 -10
- package/lib/context-menu/index.d.ts +2 -2
- package/lib/context-menu/long-press.directive.d.ts +20 -20
- package/lib/custom-html/custom-html.component.d.ts +9 -9
- package/lib/custom-html/custom-html.module.d.ts +16 -16
- package/lib/custom-html/custom-html.pipe.d.ts +10 -10
- package/lib/custom-html/index.d.ts +2 -2
- package/lib/dom/dom.interfaces.d.ts +10 -10
- package/lib/dom/dom.module.d.ts +8 -8
- package/lib/dom/dom.service.d.ts +10 -10
- package/lib/dom/index.d.ts +2 -2
- package/lib/drag-drop/drag-drop.directive.d.ts +14 -14
- package/lib/drag-drop/drag-drop.module.d.ts +9 -9
- package/lib/drag-drop/index.d.ts +1 -1
- package/lib/dynamic-component/dynamic-component.module.d.ts +8 -8
- package/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.d.ts +70 -70
- package/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.d.ts +11 -11
- package/lib/dynamic-component/index.d.ts +2 -2
- package/lib/dynamic-component/shared/dynamic-component.d.ts +88 -88
- package/lib/dynamic-component/shared/dynamic-component.interfaces.d.ts +3 -3
- package/lib/dynamic-component/shared/dynamic-component.service.d.ts +18 -18
- package/lib/dynamic-component/shared/index.d.ts +3 -3
- package/lib/entity/entity-selector/entity-selector.component.d.ts +92 -92
- package/lib/entity/entity-selector/entity-selector.module.d.ts +13 -13
- package/lib/entity/entity-table/entity-table-row.directive.d.ts +69 -69
- package/lib/entity/entity-table/entity-table.component.d.ts +327 -327
- package/lib/entity/entity-table/entity-table.module.d.ts +29 -29
- package/lib/entity/entity-table-paginator/entity-table-paginator.component.d.ts +49 -49
- package/lib/entity/entity-table-paginator/entity-table-paginator.interface.d.ts +8 -8
- package/lib/entity/entity-table-paginator/entity-table-paginator.module.d.ts +11 -11
- package/lib/entity/entity.module.d.ts +10 -10
- package/lib/entity/index.d.ts +5 -5
- package/lib/entity/shared/entity.enums.d.ts +23 -23
- package/lib/entity/shared/entity.interfaces.d.ts +114 -114
- package/lib/entity/shared/entity.utils.d.ts +49 -49
- package/lib/entity/shared/index.d.ts +9 -9
- package/lib/entity/shared/state.d.ts +103 -103
- package/lib/entity/shared/store.d.ts +176 -176
- package/lib/entity/shared/strategies/filter-custom-function.d.ts +51 -51
- package/lib/entity/shared/strategies/filter-selection.d.ts +48 -48
- package/lib/entity/shared/strategies/index.d.ts +3 -3
- package/lib/entity/shared/strategies/strategy.d.ts +56 -56
- package/lib/entity/shared/transaction.d.ts +168 -168
- package/lib/entity/shared/view.d.ts +193 -193
- package/lib/entity/shared/watcher.d.ts +72 -72
- package/lib/flexible/flexible.component.d.ts +41 -41
- package/lib/flexible/flexible.module.d.ts +9 -9
- package/lib/flexible/flexible.type.d.ts +2 -2
- package/lib/flexible/index.d.ts +2 -2
- package/lib/form/form/form.component.d.ts +53 -53
- package/lib/form/form/form.module.d.ts +12 -12
- package/lib/form/form-field/form-field-select.component.d.ts +48 -48
- package/lib/form/form-field/form-field-text.component.d.ts +41 -41
- package/lib/form/form-field/form-field-textarea.component.d.ts +41 -41
- package/lib/form/form-field/form-field.component.d.ts +34 -34
- package/lib/form/form-field/form-field.module.d.ts +21 -21
- package/lib/form/form-field/index.d.ts +4 -4
- package/lib/form/form-group/form-group.component.d.ts +49 -49
- package/lib/form/form-group/form-group.module.d.ts +14 -14
- package/lib/form/form.module.d.ts +13 -13
- package/lib/form/index.d.ts +4 -4
- package/lib/form/shared/form-field-component.d.ts +1 -1
- package/lib/form/shared/form-field.service.d.ts +19 -19
- package/lib/form/shared/form.interfaces.d.ts +57 -57
- package/lib/form/shared/form.service.d.ts +15 -15
- package/lib/form/shared/form.utils.d.ts +11 -11
- package/lib/form/shared/index.d.ts +5 -5
- package/lib/home-button/home-button.component.d.ts +9 -9
- package/lib/home-button/home-button.module.d.ts +15 -15
- package/lib/home-button/index.d.ts +1 -1
- package/lib/image/image-error.directive.d.ts +11 -11
- package/lib/image/image.module.d.ts +10 -10
- package/lib/image/index.d.ts +2 -2
- package/lib/image/secure-image.pipe.d.ts +13 -13
- package/lib/interactive-tour/index.d.ts +4 -4
- package/lib/interactive-tour/interactive-tour.component.d.ts +30 -30
- package/lib/interactive-tour/interactive-tour.interface.d.ts +32 -32
- package/lib/interactive-tour/interactive-tour.loader.d.ts +18 -18
- package/lib/interactive-tour/interactive-tour.module.d.ts +12 -12
- package/lib/interactive-tour/interactive-tour.service.d.ts +29 -29
- package/lib/json-dialog/index.d.ts +2 -2
- package/lib/json-dialog/json-dialog.component.d.ts +13 -13
- package/lib/json-dialog/json-dialog.module.d.ts +13 -13
- package/lib/json-dialog/json-dialog.service.d.ts +10 -10
- package/lib/keyvalue/index.d.ts +1 -1
- package/lib/keyvalue/keyvalue.module.d.ts +9 -9
- package/lib/keyvalue/keyvalue.pipe.d.ts +7 -7
- package/lib/list/index.d.ts +2 -2
- package/lib/list/list-item.directive.d.ts +43 -43
- package/lib/list/list.component.d.ts +51 -51
- package/lib/list/list.module.d.ts +14 -14
- package/lib/panel/index.d.ts +1 -1
- package/lib/panel/panel.component.d.ts +10 -10
- package/lib/panel/panel.module.d.ts +8 -8
- package/lib/sidenav/index.d.ts +1 -1
- package/lib/sidenav/sidenav-shim.directive.d.ts +20 -20
- package/lib/sidenav/sidenav.module.d.ts +9 -9
- package/lib/spinner/index.d.ts +2 -2
- package/lib/spinner/spinner-activity.directive.d.ts +32 -32
- package/lib/spinner/spinner.component.d.ts +12 -12
- package/lib/spinner/spinner.module.d.ts +10 -10
- package/lib/stop-propagation/index.d.ts +2 -2
- package/lib/stop-propagation/stop-drop-propagation.directive.d.ts +6 -6
- package/lib/stop-propagation/stop-propagation.directive.d.ts +6 -6
- package/lib/stop-propagation/stop-propagation.module.d.ts +10 -10
- package/lib/table/index.d.ts +5 -5
- package/lib/table/table-action-color.enum.d.ts +5 -5
- package/lib/table/table-database.d.ts +10 -10
- package/lib/table/table-datasource.d.ts +17 -17
- package/lib/table/table-model.interface.d.ts +28 -28
- package/lib/table/table.component.d.ts +40 -40
- package/lib/table/table.module.d.ts +20 -20
- package/lib/tool/index.d.ts +2 -2
- package/lib/tool/shared/index.d.ts +5 -5
- package/lib/tool/shared/tool-component.d.ts +2 -2
- package/lib/tool/shared/tool.interface.d.ts +18 -18
- package/lib/tool/shared/tool.service.d.ts +30 -30
- package/lib/tool/shared/toolbox.d.ts +95 -95
- package/lib/tool/shared/toolbox.enums.d.ts +5 -5
- package/lib/tool/tool.module.d.ts +10 -10
- package/lib/tool/toolbox/toolbox.animation.d.ts +2 -2
- package/lib/tool/toolbox/toolbox.component.d.ts +127 -127
- package/lib/tool/toolbox/toolbox.module.d.ts +13 -13
- package/lib/widget/index.d.ts +2 -2
- package/lib/widget/shared/index.d.ts +3 -3
- package/lib/widget/shared/widget.d.ts +4 -4
- package/lib/widget/shared/widget.interfaces.d.ts +12 -12
- package/lib/widget/shared/widget.service.d.ts +10 -10
- package/lib/widget/widget-outlet/widget-outlet.component.d.ts +71 -71
- package/lib/widget/widget-outlet/widget-outlet.module.d.ts +12 -12
- package/lib/widget/widget.module.d.ts +8 -8
- package/lib/workspace/index.d.ts +3 -3
- package/lib/workspace/shared/index.d.ts +3 -3
- package/lib/workspace/shared/store.d.ts +20 -20
- package/lib/workspace/shared/workspace.d.ts +108 -108
- package/lib/workspace/shared/workspace.interfaces.d.ts +11 -11
- package/lib/workspace/workspace-selector/workspace-selector.component.d.ts +39 -39
- package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +12 -12
- package/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.d.ts +57 -57
- package/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.d.ts +12 -12
- package/lib/workspace/workspace.module.d.ts +9 -9
- package/package.json +3 -3
- package/public_api.d.ts +70 -70
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
import { Directive, HostListener, HostBinding, EventEmitter, Output, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class DragAndDropDirective {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.allowedExtensions = [];
|
|
6
|
-
this.filesDropped = new EventEmitter();
|
|
7
|
-
this.filesInvalid = new EventEmitter();
|
|
8
|
-
this.background = 'inherit';
|
|
9
|
-
}
|
|
10
|
-
onDragOver(evt) {
|
|
11
|
-
evt.preventDefault();
|
|
12
|
-
evt.stopPropagation();
|
|
13
|
-
this.background = '#999';
|
|
14
|
-
}
|
|
15
|
-
onDragLeave(evt) {
|
|
16
|
-
evt.preventDefault();
|
|
17
|
-
evt.stopPropagation();
|
|
18
|
-
this.background = 'inherit';
|
|
19
|
-
}
|
|
20
|
-
onDrop(evt) {
|
|
21
|
-
evt.preventDefault();
|
|
22
|
-
evt.stopPropagation();
|
|
23
|
-
if (evt.alreadyFired) {
|
|
24
|
-
return;
|
|
25
|
-
}
|
|
26
|
-
evt.alreadyFired = true;
|
|
27
|
-
this.background = 'inherit';
|
|
28
|
-
const filesObj = this.validExtensions(evt);
|
|
29
|
-
if (filesObj.valid.length) {
|
|
30
|
-
this.filesDropped.emit(filesObj.valid);
|
|
31
|
-
}
|
|
32
|
-
if (filesObj.invalid.length) {
|
|
33
|
-
this.filesInvalid.emit(filesObj.invalid);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
validExtensions(evt) {
|
|
37
|
-
const files = evt.dataTransfer.files;
|
|
38
|
-
const filesObj = {
|
|
39
|
-
valid: [],
|
|
40
|
-
invalid: []
|
|
41
|
-
};
|
|
42
|
-
if (files.length > 0) {
|
|
43
|
-
for (const file of files) {
|
|
44
|
-
const ext = file.name.split('.')[file.name.split('.').length - 1];
|
|
45
|
-
if (this.allowedExtensions.length === 0 ||
|
|
46
|
-
(this.allowedExtensions.lastIndexOf(ext) !== -1 &&
|
|
47
|
-
file.size !== 0)) {
|
|
48
|
-
filesObj.valid.push(file);
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
filesObj.invalid.push(file);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
return filesObj;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
DragAndDropDirective.ɵfac = function DragAndDropDirective_Factory(t) { return new (t || DragAndDropDirective)(); };
|
|
59
|
-
DragAndDropDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: DragAndDropDirective, selectors: [["", "igoDragAndDrop", ""]], hostVars: 2, hostBindings: function DragAndDropDirective_HostBindings(rf, ctx) { if (rf & 1) {
|
|
60
|
-
i0.ɵɵlistener("dragover", function DragAndDropDirective_dragover_HostBindingHandler($event) { return ctx.onDragOver($event); })("dragleave", function DragAndDropDirective_dragleave_HostBindingHandler($event) { return ctx.onDragLeave($event); })("drop", function DragAndDropDirective_drop_HostBindingHandler($event) { return ctx.onDrop($event); });
|
|
61
|
-
} if (rf & 2) {
|
|
62
|
-
i0.ɵɵstyleProp("background", ctx.background);
|
|
63
|
-
} }, inputs: { allowedExtensions: "allowedExtensions" }, outputs: { filesDropped: "filesDropped", filesInvalid: "filesInvalid" } });
|
|
64
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DragAndDropDirective, [{
|
|
65
|
-
type: Directive,
|
|
66
|
-
args: [{
|
|
67
|
-
selector: '[igoDragAndDrop]'
|
|
68
|
-
}]
|
|
69
|
-
}], null, { allowedExtensions: [{
|
|
70
|
-
type: Input
|
|
71
|
-
}], filesDropped: [{
|
|
72
|
-
type: Output
|
|
73
|
-
}], filesInvalid: [{
|
|
74
|
-
type: Output
|
|
75
|
-
}], background: [{
|
|
76
|
-
type: HostBinding,
|
|
77
|
-
args: ['style.background']
|
|
78
|
-
}], onDragOver: [{
|
|
79
|
-
type: HostListener,
|
|
80
|
-
args: ['dragover', ['$event']]
|
|
81
|
-
}], onDragLeave: [{
|
|
82
|
-
type: HostListener,
|
|
83
|
-
args: ['dragleave', ['$event']]
|
|
84
|
-
}], onDrop: [{
|
|
85
|
-
type: HostListener,
|
|
86
|
-
args: ['drop', ['$event']]
|
|
87
|
-
}] }); })();
|
|
1
|
+
import { Directive, HostListener, HostBinding, EventEmitter, Output, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DragAndDropDirective {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.allowedExtensions = [];
|
|
6
|
+
this.filesDropped = new EventEmitter();
|
|
7
|
+
this.filesInvalid = new EventEmitter();
|
|
8
|
+
this.background = 'inherit';
|
|
9
|
+
}
|
|
10
|
+
onDragOver(evt) {
|
|
11
|
+
evt.preventDefault();
|
|
12
|
+
evt.stopPropagation();
|
|
13
|
+
this.background = '#999';
|
|
14
|
+
}
|
|
15
|
+
onDragLeave(evt) {
|
|
16
|
+
evt.preventDefault();
|
|
17
|
+
evt.stopPropagation();
|
|
18
|
+
this.background = 'inherit';
|
|
19
|
+
}
|
|
20
|
+
onDrop(evt) {
|
|
21
|
+
evt.preventDefault();
|
|
22
|
+
evt.stopPropagation();
|
|
23
|
+
if (evt.alreadyFired) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
evt.alreadyFired = true;
|
|
27
|
+
this.background = 'inherit';
|
|
28
|
+
const filesObj = this.validExtensions(evt);
|
|
29
|
+
if (filesObj.valid.length) {
|
|
30
|
+
this.filesDropped.emit(filesObj.valid);
|
|
31
|
+
}
|
|
32
|
+
if (filesObj.invalid.length) {
|
|
33
|
+
this.filesInvalid.emit(filesObj.invalid);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
validExtensions(evt) {
|
|
37
|
+
const files = evt.dataTransfer.files;
|
|
38
|
+
const filesObj = {
|
|
39
|
+
valid: [],
|
|
40
|
+
invalid: []
|
|
41
|
+
};
|
|
42
|
+
if (files.length > 0) {
|
|
43
|
+
for (const file of files) {
|
|
44
|
+
const ext = file.name.split('.')[file.name.split('.').length - 1];
|
|
45
|
+
if (this.allowedExtensions.length === 0 ||
|
|
46
|
+
(this.allowedExtensions.lastIndexOf(ext) !== -1 &&
|
|
47
|
+
file.size !== 0)) {
|
|
48
|
+
filesObj.valid.push(file);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
filesObj.invalid.push(file);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return filesObj;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
DragAndDropDirective.ɵfac = function DragAndDropDirective_Factory(t) { return new (t || DragAndDropDirective)(); };
|
|
59
|
+
DragAndDropDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: DragAndDropDirective, selectors: [["", "igoDragAndDrop", ""]], hostVars: 2, hostBindings: function DragAndDropDirective_HostBindings(rf, ctx) { if (rf & 1) {
|
|
60
|
+
i0.ɵɵlistener("dragover", function DragAndDropDirective_dragover_HostBindingHandler($event) { return ctx.onDragOver($event); })("dragleave", function DragAndDropDirective_dragleave_HostBindingHandler($event) { return ctx.onDragLeave($event); })("drop", function DragAndDropDirective_drop_HostBindingHandler($event) { return ctx.onDrop($event); });
|
|
61
|
+
} if (rf & 2) {
|
|
62
|
+
i0.ɵɵstyleProp("background", ctx.background);
|
|
63
|
+
} }, inputs: { allowedExtensions: "allowedExtensions" }, outputs: { filesDropped: "filesDropped", filesInvalid: "filesInvalid" } });
|
|
64
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DragAndDropDirective, [{
|
|
65
|
+
type: Directive,
|
|
66
|
+
args: [{
|
|
67
|
+
selector: '[igoDragAndDrop]'
|
|
68
|
+
}]
|
|
69
|
+
}], null, { allowedExtensions: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], filesDropped: [{
|
|
72
|
+
type: Output
|
|
73
|
+
}], filesInvalid: [{
|
|
74
|
+
type: Output
|
|
75
|
+
}], background: [{
|
|
76
|
+
type: HostBinding,
|
|
77
|
+
args: ['style.background']
|
|
78
|
+
}], onDragOver: [{
|
|
79
|
+
type: HostListener,
|
|
80
|
+
args: ['dragover', ['$event']]
|
|
81
|
+
}], onDragLeave: [{
|
|
82
|
+
type: HostListener,
|
|
83
|
+
args: ['dragleave', ['$event']]
|
|
84
|
+
}], onDrop: [{
|
|
85
|
+
type: HostListener,
|
|
86
|
+
args: ['drop', ['$event']]
|
|
87
|
+
}] }); })();
|
|
88
88
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1kcm9wLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2RyYWctZHJvcC9kcmFnLWRyb3AuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTixNQUFNLGVBQWUsQ0FBQzs7QUFLdkIsTUFBTSxPQUFPLG9CQUFvQjtJQUhqQztRQUtXLHNCQUFpQixHQUFrQixFQUFFLENBQUM7UUFFM0IsaUJBQVksR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV4RCxpQkFBWSxHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRW5DLGVBQVUsR0FBRyxTQUFTLENBQUM7S0E0RGpFO0lBekRRLFVBQVUsQ0FBQyxHQUFHO1FBQ25CLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNyQixHQUFHLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7SUFDM0IsQ0FBQztJQUdNLFdBQVcsQ0FBQyxHQUFHO1FBQ3BCLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNyQixHQUFHLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7SUFDOUIsQ0FBQztJQUdNLE1BQU0sQ0FBQyxHQUFHO1FBQ2YsR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3JCLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN0QixJQUFJLEdBQUcsQ0FBQyxZQUFZLEVBQUU7WUFDcEIsT0FBTztTQUNSO1FBQ0QsR0FBRyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFFeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDNUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QztRQUNELElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVPLGVBQWUsQ0FBQyxHQUFHO1FBQ3pCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQ3JDLE1BQU0sUUFBUSxHQUFHO1lBQ2YsS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtTQUNaLENBQUM7UUFDRixJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3BCLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFO2dCQUN4QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xFLElBQ0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sS0FBSyxDQUFDO29CQUNuQyxDQUNFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUM5QyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FDaEIsRUFDRDtvQkFDQSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDM0I7cUJBQU07b0JBQ0wsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzdCO2FBQ0Y7U0FDRjtRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7O3dGQW5FVSxvQkFBb0I7dUVBQXBCLG9CQUFvQjs2R0FBcEIsc0JBQWtCLDhGQUFsQix1QkFBbUIsb0ZBQW5CLGtCQUFjOzs7O3VGQUFkLG9CQUFvQjtjQUhoQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjthQUM3QjtnQkFHVSxpQkFBaUI7a0JBQXpCLEtBQUs7WUFFYyxZQUFZO2tCQUEvQixNQUFNO1lBRWEsWUFBWTtrQkFBL0IsTUFBTTtZQUVrQyxVQUFVO2tCQUFsRCxXQUFXO21CQUFDLGtCQUFrQjtZQUd4QixVQUFVO2tCQURoQixZQUFZO21CQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQVE3QixXQUFXO2tCQURqQixZQUFZO21CQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQVE5QixNQUFNO2tCQURaLFlBQVk7bUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBPdXRwdXQsXHJcbiAgSW5wdXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2lnb0RyYWdBbmREcm9wXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIERyYWdBbmREcm9wRGlyZWN0aXZlIHtcclxuXHJcbiAgQElucHV0KCkgYWxsb3dlZEV4dGVuc2lvbnM6IEFycmF5PHN0cmluZz4gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpIHByb3RlY3RlZCBmaWxlc0Ryb3BwZWQ6IEV2ZW50RW1pdHRlcjxGaWxlW10+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KCkgcHJvdGVjdGVkIGZpbGVzSW52YWxpZDogRXZlbnRFbWl0dGVyPEZpbGVbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnc3R5bGUuYmFja2dyb3VuZCcpIHByaXZhdGUgYmFja2dyb3VuZCA9ICdpbmhlcml0JztcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ292ZXInLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBvbkRyYWdPdmVyKGV2dCkge1xyXG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLmJhY2tncm91bmQgPSAnIzk5OSc7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkcmFnbGVhdmUnLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBvbkRyYWdMZWF2ZShldnQpIHtcclxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5iYWNrZ3JvdW5kID0gJ2luaGVyaXQnO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXHJcbiAgcHVibGljIG9uRHJvcChldnQpIHtcclxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKGV2dC5hbHJlYWR5RmlyZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgZXZ0LmFscmVhZHlGaXJlZCA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5iYWNrZ3JvdW5kID0gJ2luaGVyaXQnO1xyXG4gICAgY29uc3QgZmlsZXNPYmogPSB0aGlzLnZhbGlkRXh0ZW5zaW9ucyhldnQpO1xyXG4gICAgaWYgKGZpbGVzT2JqLnZhbGlkLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmZpbGVzRHJvcHBlZC5lbWl0KGZpbGVzT2JqLnZhbGlkKTtcclxuICAgIH1cclxuICAgIGlmIChmaWxlc09iai5pbnZhbGlkLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmZpbGVzSW52YWxpZC5lbWl0KGZpbGVzT2JqLmludmFsaWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB2YWxpZEV4dGVuc2lvbnMoZXZ0KSB7XHJcbiAgICBjb25zdCBmaWxlcyA9IGV2dC5kYXRhVHJhbnNmZXIuZmlsZXM7XHJcbiAgICBjb25zdCBmaWxlc09iaiA9IHtcclxuICAgICAgdmFsaWQ6IFtdLFxyXG4gICAgICBpbnZhbGlkOiBbXVxyXG4gICAgfTtcclxuICAgIGlmIChmaWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xyXG4gICAgICAgIGNvbnN0IGV4dCA9IGZpbGUubmFtZS5zcGxpdCgnLicpW2ZpbGUubmFtZS5zcGxpdCgnLicpLmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIHRoaXMuYWxsb3dlZEV4dGVuc2lvbnMubGVuZ3RoID09PSAwIHx8XHJcbiAgICAgICAgICAoXHJcbiAgICAgICAgICAgIHRoaXMuYWxsb3dlZEV4dGVuc2lvbnMubGFzdEluZGV4T2YoZXh0KSAhPT0gLTEgJiZcclxuICAgICAgICAgICAgZmlsZS5zaXplICE9PSAwXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICBmaWxlc09iai52YWxpZC5wdXNoKGZpbGUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBmaWxlc09iai5pbnZhbGlkLnB1c2goZmlsZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZpbGVzT2JqO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { DragAndDropDirective } from './drag-drop.directive';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class IgoDrapDropModule {
|
|
5
|
-
static forRoot() {
|
|
6
|
-
return {
|
|
7
|
-
ngModule: IgoDrapDropModule,
|
|
8
|
-
providers: []
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
IgoDrapDropModule.ɵfac = function IgoDrapDropModule_Factory(t) { return new (t || IgoDrapDropModule)(); };
|
|
13
|
-
IgoDrapDropModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoDrapDropModule });
|
|
14
|
-
IgoDrapDropModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({});
|
|
15
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoDrapDropModule, [{
|
|
16
|
-
type: NgModule,
|
|
17
|
-
args: [{
|
|
18
|
-
imports: [],
|
|
19
|
-
declarations: [DragAndDropDirective],
|
|
20
|
-
exports: [DragAndDropDirective]
|
|
21
|
-
}]
|
|
22
|
-
}], null, null); })();
|
|
23
|
-
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoDrapDropModule, { declarations: [DragAndDropDirective], exports: [DragAndDropDirective] }); })();
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { DragAndDropDirective } from './drag-drop.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class IgoDrapDropModule {
|
|
5
|
+
static forRoot() {
|
|
6
|
+
return {
|
|
7
|
+
ngModule: IgoDrapDropModule,
|
|
8
|
+
providers: []
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
IgoDrapDropModule.ɵfac = function IgoDrapDropModule_Factory(t) { return new (t || IgoDrapDropModule)(); };
|
|
13
|
+
IgoDrapDropModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoDrapDropModule });
|
|
14
|
+
IgoDrapDropModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({});
|
|
15
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoDrapDropModule, [{
|
|
16
|
+
type: NgModule,
|
|
17
|
+
args: [{
|
|
18
|
+
imports: [],
|
|
19
|
+
declarations: [DragAndDropDirective],
|
|
20
|
+
exports: [DragAndDropDirective]
|
|
21
|
+
}]
|
|
22
|
+
}], null, null); })();
|
|
23
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoDrapDropModule, { declarations: [DragAndDropDirective], exports: [DragAndDropDirective] }); })();
|
|
24
24
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1kcm9wLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2RyYWctZHJvcC9kcmFnLWRyb3AubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQU83RCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQzs7a0ZBTlUsaUJBQWlCO21FQUFqQixpQkFBaUI7O3VGQUFqQixpQkFBaUI7Y0FMN0IsUUFBUTtlQUFDO2dCQUNSLE9BQU8sRUFBRSxFQUFFO2dCQUNYLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO2dCQUNwQyxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzthQUNoQzs7d0ZBQ1ksaUJBQWlCLG1CQUhiLG9CQUFvQixhQUN6QixvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHJhZ0FuZERyb3BEaXJlY3RpdmUgfSBmcm9tICcuL2RyYWctZHJvcC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXSxcbiAgZGVjbGFyYXRpb25zOiBbRHJhZ0FuZERyb3BEaXJlY3RpdmVdLFxuICBleHBvcnRzOiBbRHJhZ0FuZERyb3BEaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIElnb0RyYXBEcm9wTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJZ29EcmFwRHJvcE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogSWdvRHJhcERyb3BNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtdXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './drag-drop.directive';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './drag-drop.directive';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi9kcmFnLWRyb3AvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZHJhZy1kcm9wLmRpcmVjdGl2ZSc7XHJcbiJdfQ==
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { IgoDynamicOutletModule } from './dynamic-outlet/dynamic-outlet.module';
|
|
4
|
-
import { DynamicComponentService } from './shared/dynamic-component.service';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class IgoDynamicComponentModule {
|
|
7
|
-
}
|
|
8
|
-
IgoDynamicComponentModule.ɵfac = function IgoDynamicComponentModule_Factory(t) { return new (t || IgoDynamicComponentModule)(); };
|
|
9
|
-
IgoDynamicComponentModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoDynamicComponentModule });
|
|
10
|
-
IgoDynamicComponentModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ providers: [
|
|
11
|
-
DynamicComponentService
|
|
12
|
-
], imports: [CommonModule,
|
|
13
|
-
IgoDynamicOutletModule, IgoDynamicOutletModule] });
|
|
14
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoDynamicComponentModule, [{
|
|
15
|
-
type: NgModule,
|
|
16
|
-
args: [{
|
|
17
|
-
imports: [
|
|
18
|
-
CommonModule,
|
|
19
|
-
IgoDynamicOutletModule
|
|
20
|
-
],
|
|
21
|
-
exports: [
|
|
22
|
-
IgoDynamicOutletModule
|
|
23
|
-
],
|
|
24
|
-
providers: [
|
|
25
|
-
DynamicComponentService
|
|
26
|
-
]
|
|
27
|
-
}]
|
|
28
|
-
}], null, null); })();
|
|
29
|
-
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoDynamicComponentModule, { imports: [CommonModule,
|
|
30
|
-
IgoDynamicOutletModule], exports: [IgoDynamicOutletModule] }); })();
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { IgoDynamicOutletModule } from './dynamic-outlet/dynamic-outlet.module';
|
|
4
|
+
import { DynamicComponentService } from './shared/dynamic-component.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class IgoDynamicComponentModule {
|
|
7
|
+
}
|
|
8
|
+
IgoDynamicComponentModule.ɵfac = function IgoDynamicComponentModule_Factory(t) { return new (t || IgoDynamicComponentModule)(); };
|
|
9
|
+
IgoDynamicComponentModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoDynamicComponentModule });
|
|
10
|
+
IgoDynamicComponentModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ providers: [
|
|
11
|
+
DynamicComponentService
|
|
12
|
+
], imports: [CommonModule,
|
|
13
|
+
IgoDynamicOutletModule, IgoDynamicOutletModule] });
|
|
14
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoDynamicComponentModule, [{
|
|
15
|
+
type: NgModule,
|
|
16
|
+
args: [{
|
|
17
|
+
imports: [
|
|
18
|
+
CommonModule,
|
|
19
|
+
IgoDynamicOutletModule
|
|
20
|
+
],
|
|
21
|
+
exports: [
|
|
22
|
+
IgoDynamicOutletModule
|
|
23
|
+
],
|
|
24
|
+
providers: [
|
|
25
|
+
DynamicComponentService
|
|
26
|
+
]
|
|
27
|
+
}]
|
|
28
|
+
}], null, null); })();
|
|
29
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoDynamicComponentModule, { imports: [CommonModule,
|
|
30
|
+
IgoDynamicOutletModule], exports: [IgoDynamicOutletModule] }); })();
|
|
31
31
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQWM3RSxNQUFNLE9BQU8seUJBQXlCOztrR0FBekIseUJBQXlCOzJFQUF6Qix5QkFBeUI7Z0ZBSnpCO1FBQ1QsdUJBQXVCO0tBQ3hCLFlBUkMsWUFBWTtRQUNaLHNCQUFzQixFQUd0QixzQkFBc0I7dUZBTWIseUJBQXlCO2NBWnJDLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixzQkFBc0I7aUJBQ3ZCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxzQkFBc0I7aUJBQ3ZCO2dCQUNELFNBQVMsRUFBRTtvQkFDVCx1QkFBdUI7aUJBQ3hCO2FBQ0Y7O3dGQUNZLHlCQUF5QixjQVZsQyxZQUFZO1FBQ1osc0JBQXNCLGFBR3RCLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBJZ29EeW5hbWljT3V0bGV0TW9kdWxlIH0gZnJvbSAnLi9keW5hbWljLW91dGxldC9keW5hbWljLW91dGxldC5tb2R1bGUnO1xuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UgfSBmcm9tICcuL3NoYXJlZC9keW5hbWljLWNvbXBvbmVudC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBJZ29EeW5hbWljT3V0bGV0TW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBJZ29EeW5hbWljT3V0bGV0TW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIER5bmFtaWNDb21wb25lbnRTZXJ2aWNlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgSWdvRHluYW1pY0NvbXBvbmVudE1vZHVsZSB7fVxuIl19
|
|
@@ -1,122 +1,122 @@
|
|
|
1
|
-
import { Input, ChangeDetectionStrategy, Component, ViewContainerRef, ViewChild } from '@angular/core';
|
|
2
|
-
import { ObjectUtils } from '@igo2/utils';
|
|
3
|
-
import { DynamicComponent } from '../shared/dynamic-component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../shared/dynamic-component.service";
|
|
6
|
-
const _c0 = ["target"];
|
|
7
|
-
function DynamicOutletComponent_ng_template_0_Template(rf, ctx) { }
|
|
8
|
-
export class DynamicOutletComponent {
|
|
9
|
-
constructor(dynamicComponentService, cdRef) {
|
|
10
|
-
this.dynamicComponentService = dynamicComponentService;
|
|
11
|
-
this.cdRef = cdRef;
|
|
12
|
-
/**
|
|
13
|
-
* The dynamic component inputs
|
|
14
|
-
*/
|
|
15
|
-
this.inputs = {};
|
|
16
|
-
/**
|
|
17
|
-
* The subscribers to the dynamic component outputs
|
|
18
|
-
*/
|
|
19
|
-
this.subscribers = {};
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* If the dynamic component changes, create it.
|
|
23
|
-
* If the inputs or subscribers change, update the current component's
|
|
24
|
-
* inputs or subscribers.
|
|
25
|
-
* @internal
|
|
26
|
-
*/
|
|
27
|
-
ngOnChanges(changes) {
|
|
28
|
-
const component = changes.component;
|
|
29
|
-
const inputs = changes.inputs;
|
|
30
|
-
const subscribers = changes.subscribers;
|
|
31
|
-
const eq = ObjectUtils.objectsAreEquivalent;
|
|
32
|
-
if (!component || !component.currentValue) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
if (component.currentValue !== component.previousValue) {
|
|
36
|
-
this.createComponent(component.currentValue);
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
const inputsAreEquivalents = inputs && eq(inputs.currentValue || {}, inputs.previousValue || {});
|
|
40
|
-
const subscribersAreEquivalents = subscribers &&
|
|
41
|
-
eq(subscribers.currentValue || {}, subscribers.previousValue || {});
|
|
42
|
-
if (inputsAreEquivalents === false) {
|
|
43
|
-
this.updateInputs();
|
|
44
|
-
}
|
|
45
|
-
if (subscribersAreEquivalents === false) {
|
|
46
|
-
this.updateSubscribers();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
this.cdRef.detectChanges();
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Destroy the dynamic component and all it's subscribers
|
|
53
|
-
* @internal
|
|
54
|
-
*/
|
|
55
|
-
ngOnDestroy() {
|
|
56
|
-
if (this.dynamicComponent) {
|
|
57
|
-
this.dynamicComponent.destroy();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Create a DynamicComponent out of the component class and render it.
|
|
62
|
-
* @internal
|
|
63
|
-
*/
|
|
64
|
-
createComponent(component) {
|
|
65
|
-
if (this.dynamicComponent !== undefined) {
|
|
66
|
-
this.dynamicComponent.destroy();
|
|
67
|
-
}
|
|
68
|
-
this.dynamicComponent =
|
|
69
|
-
component instanceof DynamicComponent
|
|
70
|
-
? component
|
|
71
|
-
: this.dynamicComponentService.create(component);
|
|
72
|
-
this.renderComponent();
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Create and render the dynamic component. Set it's inputs and subscribers
|
|
76
|
-
* @internal
|
|
77
|
-
*/
|
|
78
|
-
renderComponent() {
|
|
79
|
-
this.updateInputs();
|
|
80
|
-
this.updateSubscribers();
|
|
81
|
-
this.dynamicComponent.setTarget(this.target);
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Update the dynamic component inputs. This is an update so any
|
|
85
|
-
* key not defined won't be overwritten.
|
|
86
|
-
* @internal
|
|
87
|
-
*/
|
|
88
|
-
updateInputs() {
|
|
89
|
-
this.dynamicComponent.updateInputs(this.inputs);
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Update the dynamic component subscribers. This is an update so any
|
|
93
|
-
* key not defined won't be overwritten.
|
|
94
|
-
* @internal
|
|
95
|
-
*/
|
|
96
|
-
updateSubscribers() {
|
|
97
|
-
this.dynamicComponent.updateSubscribers(this.subscribers);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
DynamicOutletComponent.ɵfac = function DynamicOutletComponent_Factory(t) { return new (t || DynamicOutletComponent)(i0.ɵɵdirectiveInject(i1.DynamicComponentService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
101
|
-
DynamicOutletComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DynamicOutletComponent, selectors: [["igo-dynamic-outlet"]], viewQuery: function DynamicOutletComponent_Query(rf, ctx) { if (rf & 1) {
|
|
102
|
-
i0.ɵɵviewQuery(_c0, 7, ViewContainerRef);
|
|
103
|
-
} if (rf & 2) {
|
|
104
|
-
let _t;
|
|
105
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.target = _t.first);
|
|
106
|
-
} }, inputs: { component: "component", inputs: "inputs", subscribers: "subscribers" }, features: [i0.ɵɵNgOnChangesFeature], decls: 2, vars: 0, consts: [["target", ""]], template: function DynamicOutletComponent_Template(rf, ctx) { if (rf & 1) {
|
|
107
|
-
i0.ɵɵtemplate(0, DynamicOutletComponent_ng_template_0_Template, 0, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
|
|
108
|
-
} }, styles: ["[_nghost-%COMP%]{display:block;width:100%;height:100%}"], changeDetection: 0 });
|
|
109
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DynamicOutletComponent, [{
|
|
110
|
-
type: Component,
|
|
111
|
-
args: [{ selector: 'igo-dynamic-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #target></ng-template>\n", styles: [":host{display:block;width:100%;height:100%}\n"] }]
|
|
112
|
-
}], function () { return [{ type: i1.DynamicComponentService }, { type: i0.ChangeDetectorRef }]; }, { component: [{
|
|
113
|
-
type: Input
|
|
114
|
-
}], inputs: [{
|
|
115
|
-
type: Input
|
|
116
|
-
}], subscribers: [{
|
|
117
|
-
type: Input
|
|
118
|
-
}], target: [{
|
|
119
|
-
type: ViewChild,
|
|
120
|
-
args: ['target', { read: ViewContainerRef, static: true }]
|
|
121
|
-
}] }); })();
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1vdXRsZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1vdXRsZXQvZHluYW1pYy1vdXRsZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1vdXRsZXQvZHluYW1pYy1vdXRsZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLEtBQUssRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUlULGdCQUFnQixFQUNoQixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFTL0QsTUFBTSxPQUFPLHNCQUFzQjtJQTRCakMsWUFDVSx1QkFBZ0QsRUFDaEQsS0FBd0I7UUFEeEIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQXhCbEM7O1dBRUc7UUFDTSxXQUFNLEdBQTJCLEVBQUUsQ0FBQztRQUU3Qzs7V0FFRztRQUNNLGdCQUFXLEdBQTRDLEVBQUUsQ0FBQztJQWlCaEUsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDcEMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUM5QixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxHQUFHLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQztRQUU1QyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRTtZQUN6QyxPQUFPO1NBQ1I7UUFFRCxJQUFJLFNBQVMsQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLGFBQWEsRUFBRTtZQUN0RCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUM5QzthQUFNO1lBQ0wsTUFBTSxvQkFBb0IsR0FDeEIsTUFBTSxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLEVBQUUsRUFBRSxNQUFNLENBQUMsYUFBYSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3RFLE1BQU0seUJBQXlCLEdBQzdCLFdBQVc7Z0JBQ1gsRUFBRSxDQUFDLFdBQVcsQ0FBQyxZQUFZLElBQUksRUFBRSxFQUFFLFdBQVcsQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDLENBQUM7WUFFdEUsSUFBSSxvQkFBb0IsS0FBSyxLQUFLLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUNyQjtZQUVELElBQUkseUJBQXlCLEtBQUssS0FBSyxFQUFFO2dCQUN2QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQzthQUMxQjtTQUNGO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNqQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSyxlQUFlLENBQUMsU0FBc0M7UUFDNUQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNqQztRQUNELElBQUksQ0FBQyxnQkFBZ0I7WUFDbkIsU0FBUyxZQUFZLGdCQUFnQjtnQkFDbkMsQ0FBQyxDQUFDLFNBQVM7Z0JBQ1gsQ0FBQyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFlBQVk7UUFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1RCxDQUFDOzs0RkF4SFUsc0JBQXNCO3lFQUF0QixzQkFBc0I7K0JBeUJKLGdCQUFnQjs7Ozs7UUNoRC9DLHdIQUFtQzs7dUZEdUJ0QixzQkFBc0I7Y0FObEMsU0FBUzsyQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTswR0FNdEMsU0FBUztrQkFBakIsS0FBSztZQUtHLE1BQU07a0JBQWQsS0FBSztZQUtHLFdBQVc7a0JBQW5CLEtBQUs7WUFZRSxNQUFNO2tCQURiLFNBQVM7bUJBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbnB1dCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q29udGFpbmVyUmVmLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuXG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50IH0gZnJvbSAnLi4vc2hhcmVkL2R5bmFtaWMtY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2R5bmFtaWMtY29tcG9uZW50LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tZHluYW1pYy1vdXRsZXQnLFxuICB0ZW1wbGF0ZVVybDogJ2R5bmFtaWMtb3V0bGV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2R5bmFtaWMtb3V0bGV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNPdXRsZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBUaGUgZHluYW1pYyBjb21wb25lbnQgYmFzZSBjbGFzcyBvciB0aGUgZHluYW1pYyBjb21wb25lbnQgaXRzZWxmXG4gICAqL1xuICBASW5wdXQoKSBjb21wb25lbnQ6IER5bmFtaWNDb21wb25lbnQ8YW55PiB8IGFueTtcblxuICAvKipcbiAgICogVGhlIGR5bmFtaWMgY29tcG9uZW50IGlucHV0c1xuICAgKi9cbiAgQElucHV0KCkgaW5wdXRzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG5cbiAgLyoqXG4gICAqIFRoZSBzdWJzY3JpYmVycyB0byB0aGUgZHluYW1pYyBjb21wb25lbnQgb3V0cHV0c1xuICAgKi9cbiAgQElucHV0KCkgc3Vic2NyaWJlcnM6IHsgW2tleTogc3RyaW5nXTogKGV2ZW50OiBhbnkpID0+IHZvaWQgfSA9IHt9O1xuXG4gIC8qKlxuICAgKiBUaGUgZHluYW1pYyBjb21wb25lbnRcbiAgICovXG4gIHByaXZhdGUgZHluYW1pY0NvbXBvbmVudDogRHluYW1pY0NvbXBvbmVudDxhbnk+O1xuXG4gIC8qKlxuICAgKiBUaGUgdmlldyBlbGVtZW50IHRvIHJlbmRlciB0aGUgY29tcG9uZW50IHRvXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBWaWV3Q2hpbGQoJ3RhcmdldCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgdGFyZ2V0OiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZHluYW1pY0NvbXBvbmVudFNlcnZpY2U6IER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICAvKipcbiAgICogSWYgdGhlIGR5bmFtaWMgY29tcG9uZW50IGNoYW5nZXMsIGNyZWF0ZSBpdC5cbiAgICogSWYgdGhlIGlucHV0cyBvciBzdWJzY3JpYmVycyBjaGFuZ2UsIHVwZGF0ZSB0aGUgY3VycmVudCBjb21wb25lbnQnc1xuICAgKiBpbnB1dHMgb3Igc3Vic2NyaWJlcnMuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGNvbnN0IGNvbXBvbmVudCA9IGNoYW5nZXMuY29tcG9uZW50O1xuICAgIGNvbnN0IGlucHV0cyA9IGNoYW5nZXMuaW5wdXRzO1xuICAgIGNvbnN0IHN1YnNjcmliZXJzID0gY2hhbmdlcy5zdWJzY3JpYmVycztcbiAgICBjb25zdCBlcSA9IE9iamVjdFV0aWxzLm9iamVjdHNBcmVFcXVpdmFsZW50O1xuXG4gICAgaWYgKCFjb21wb25lbnQgfHwgIWNvbXBvbmVudC5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoY29tcG9uZW50LmN1cnJlbnRWYWx1ZSAhPT0gY29tcG9uZW50LnByZXZpb3VzVmFsdWUpIHtcbiAgICAgIHRoaXMuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudC5jdXJyZW50VmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpbnB1dHNBcmVFcXVpdmFsZW50cyA9XG4gICAgICAgIGlucHV0cyAmJiBlcShpbnB1dHMuY3VycmVudFZhbHVlIHx8IHt9LCBpbnB1dHMucHJldmlvdXNWYWx1ZSB8fCB7fSk7XG4gICAgICBjb25zdCBzdWJzY3JpYmVyc0FyZUVxdWl2YWxlbnRzID1cbiAgICAgICAgc3Vic2NyaWJlcnMgJiZcbiAgICAgICAgZXEoc3Vic2NyaWJlcnMuY3VycmVudFZhbHVlIHx8IHt9LCBzdWJzY3JpYmVycy5wcmV2aW91c1ZhbHVlIHx8IHt9KTtcblxuICAgICAgaWYgKGlucHV0c0FyZUVxdWl2YWxlbnRzID09PSBmYWxzZSkge1xuICAgICAgICB0aGlzLnVwZGF0ZUlucHV0cygpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3Vic2NyaWJlcnNBcmVFcXVpdmFsZW50cyA9PT0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy51cGRhdGVTdWJzY3JpYmVycygpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95IHRoZSBkeW5hbWljIGNvbXBvbmVudCBhbmQgYWxsIGl0J3Mgc3Vic2NyaWJlcnNcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5keW5hbWljQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSAgRHluYW1pY0NvbXBvbmVudCBvdXQgb2YgdGhlIGNvbXBvbmVudCBjbGFzcyBhbmQgcmVuZGVyIGl0LlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudDogRHluYW1pY0NvbXBvbmVudDxhbnk+IHwgYW55KSB7XG4gICAgaWYgKHRoaXMuZHluYW1pY0NvbXBvbmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQuZGVzdHJveSgpO1xuICAgIH1cbiAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQgPVxuICAgICAgY29tcG9uZW50IGluc3RhbmNlb2YgRHluYW1pY0NvbXBvbmVudFxuICAgICAgICA/
|
|
1
|
+
import { Input, ChangeDetectionStrategy, Component, ViewContainerRef, ViewChild } from '@angular/core';
|
|
2
|
+
import { ObjectUtils } from '@igo2/utils';
|
|
3
|
+
import { DynamicComponent } from '../shared/dynamic-component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../shared/dynamic-component.service";
|
|
6
|
+
const _c0 = ["target"];
|
|
7
|
+
function DynamicOutletComponent_ng_template_0_Template(rf, ctx) { }
|
|
8
|
+
export class DynamicOutletComponent {
|
|
9
|
+
constructor(dynamicComponentService, cdRef) {
|
|
10
|
+
this.dynamicComponentService = dynamicComponentService;
|
|
11
|
+
this.cdRef = cdRef;
|
|
12
|
+
/**
|
|
13
|
+
* The dynamic component inputs
|
|
14
|
+
*/
|
|
15
|
+
this.inputs = {};
|
|
16
|
+
/**
|
|
17
|
+
* The subscribers to the dynamic component outputs
|
|
18
|
+
*/
|
|
19
|
+
this.subscribers = {};
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* If the dynamic component changes, create it.
|
|
23
|
+
* If the inputs or subscribers change, update the current component's
|
|
24
|
+
* inputs or subscribers.
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
ngOnChanges(changes) {
|
|
28
|
+
const component = changes.component;
|
|
29
|
+
const inputs = changes.inputs;
|
|
30
|
+
const subscribers = changes.subscribers;
|
|
31
|
+
const eq = ObjectUtils.objectsAreEquivalent;
|
|
32
|
+
if (!component || !component.currentValue) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (component.currentValue !== component.previousValue) {
|
|
36
|
+
this.createComponent(component.currentValue);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
const inputsAreEquivalents = inputs && eq(inputs.currentValue || {}, inputs.previousValue || {});
|
|
40
|
+
const subscribersAreEquivalents = subscribers &&
|
|
41
|
+
eq(subscribers.currentValue || {}, subscribers.previousValue || {});
|
|
42
|
+
if (inputsAreEquivalents === false) {
|
|
43
|
+
this.updateInputs();
|
|
44
|
+
}
|
|
45
|
+
if (subscribersAreEquivalents === false) {
|
|
46
|
+
this.updateSubscribers();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
this.cdRef.detectChanges();
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Destroy the dynamic component and all it's subscribers
|
|
53
|
+
* @internal
|
|
54
|
+
*/
|
|
55
|
+
ngOnDestroy() {
|
|
56
|
+
if (this.dynamicComponent) {
|
|
57
|
+
this.dynamicComponent.destroy();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Create a DynamicComponent out of the component class and render it.
|
|
62
|
+
* @internal
|
|
63
|
+
*/
|
|
64
|
+
createComponent(component) {
|
|
65
|
+
if (this.dynamicComponent !== undefined) {
|
|
66
|
+
this.dynamicComponent.destroy();
|
|
67
|
+
}
|
|
68
|
+
this.dynamicComponent =
|
|
69
|
+
component instanceof DynamicComponent
|
|
70
|
+
? component
|
|
71
|
+
: this.dynamicComponentService.create(component);
|
|
72
|
+
this.renderComponent();
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Create and render the dynamic component. Set it's inputs and subscribers
|
|
76
|
+
* @internal
|
|
77
|
+
*/
|
|
78
|
+
renderComponent() {
|
|
79
|
+
this.updateInputs();
|
|
80
|
+
this.updateSubscribers();
|
|
81
|
+
this.dynamicComponent.setTarget(this.target);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Update the dynamic component inputs. This is an update so any
|
|
85
|
+
* key not defined won't be overwritten.
|
|
86
|
+
* @internal
|
|
87
|
+
*/
|
|
88
|
+
updateInputs() {
|
|
89
|
+
this.dynamicComponent.updateInputs(this.inputs);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Update the dynamic component subscribers. This is an update so any
|
|
93
|
+
* key not defined won't be overwritten.
|
|
94
|
+
* @internal
|
|
95
|
+
*/
|
|
96
|
+
updateSubscribers() {
|
|
97
|
+
this.dynamicComponent.updateSubscribers(this.subscribers);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
DynamicOutletComponent.ɵfac = function DynamicOutletComponent_Factory(t) { return new (t || DynamicOutletComponent)(i0.ɵɵdirectiveInject(i1.DynamicComponentService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
101
|
+
DynamicOutletComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DynamicOutletComponent, selectors: [["igo-dynamic-outlet"]], viewQuery: function DynamicOutletComponent_Query(rf, ctx) { if (rf & 1) {
|
|
102
|
+
i0.ɵɵviewQuery(_c0, 7, ViewContainerRef);
|
|
103
|
+
} if (rf & 2) {
|
|
104
|
+
let _t;
|
|
105
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.target = _t.first);
|
|
106
|
+
} }, inputs: { component: "component", inputs: "inputs", subscribers: "subscribers" }, features: [i0.ɵɵNgOnChangesFeature], decls: 2, vars: 0, consts: [["target", ""]], template: function DynamicOutletComponent_Template(rf, ctx) { if (rf & 1) {
|
|
107
|
+
i0.ɵɵtemplate(0, DynamicOutletComponent_ng_template_0_Template, 0, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
|
|
108
|
+
} }, styles: ["[_nghost-%COMP%]{display:block;width:100%;height:100%}"], changeDetection: 0 });
|
|
109
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DynamicOutletComponent, [{
|
|
110
|
+
type: Component,
|
|
111
|
+
args: [{ selector: 'igo-dynamic-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #target></ng-template>\r\n", styles: [":host{display:block;width:100%;height:100%}\n"] }]
|
|
112
|
+
}], function () { return [{ type: i1.DynamicComponentService }, { type: i0.ChangeDetectorRef }]; }, { component: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}], inputs: [{
|
|
115
|
+
type: Input
|
|
116
|
+
}], subscribers: [{
|
|
117
|
+
type: Input
|
|
118
|
+
}], target: [{
|
|
119
|
+
type: ViewChild,
|
|
120
|
+
args: ['target', { read: ViewContainerRef, static: true }]
|
|
121
|
+
}] }); })();
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1vdXRsZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1vdXRsZXQvZHluYW1pYy1vdXRsZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1vdXRsZXQvZHluYW1pYy1vdXRsZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLEtBQUssRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUlULGdCQUFnQixFQUNoQixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFTL0QsTUFBTSxPQUFPLHNCQUFzQjtJQTRCakMsWUFDVSx1QkFBZ0QsRUFDaEQsS0FBd0I7UUFEeEIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQXhCbEM7O1dBRUc7UUFDTSxXQUFNLEdBQTJCLEVBQUUsQ0FBQztRQUU3Qzs7V0FFRztRQUNNLGdCQUFXLEdBQTRDLEVBQUUsQ0FBQztJQWlCaEUsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDcEMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUM5QixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxHQUFHLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQztRQUU1QyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRTtZQUN6QyxPQUFPO1NBQ1I7UUFFRCxJQUFJLFNBQVMsQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLGFBQWEsRUFBRTtZQUN0RCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUM5QzthQUFNO1lBQ0wsTUFBTSxvQkFBb0IsR0FDeEIsTUFBTSxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLEVBQUUsRUFBRSxNQUFNLENBQUMsYUFBYSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3RFLE1BQU0seUJBQXlCLEdBQzdCLFdBQVc7Z0JBQ1gsRUFBRSxDQUFDLFdBQVcsQ0FBQyxZQUFZLElBQUksRUFBRSxFQUFFLFdBQVcsQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDLENBQUM7WUFFdEUsSUFBSSxvQkFBb0IsS0FBSyxLQUFLLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUNyQjtZQUVELElBQUkseUJBQXlCLEtBQUssS0FBSyxFQUFFO2dCQUN2QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQzthQUMxQjtTQUNGO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNqQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSyxlQUFlLENBQUMsU0FBc0M7UUFDNUQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNqQztRQUNELElBQUksQ0FBQyxnQkFBZ0I7WUFDbkIsU0FBUyxZQUFZLGdCQUFnQjtnQkFDbkMsQ0FBQyxDQUFDLFNBQVM7Z0JBQ1gsQ0FBQyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFlBQVk7UUFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1RCxDQUFDOzs0RkF4SFUsc0JBQXNCO3lFQUF0QixzQkFBc0I7K0JBeUJKLGdCQUFnQjs7Ozs7UUNoRC9DLHdIQUFtQzs7dUZEdUJ0QixzQkFBc0I7Y0FObEMsU0FBUzsyQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTswR0FNdEMsU0FBUztrQkFBakIsS0FBSztZQUtHLE1BQU07a0JBQWQsS0FBSztZQUtHLFdBQVc7a0JBQW5CLEtBQUs7WUFZRSxNQUFNO2tCQURiLFNBQVM7bUJBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbnB1dCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q29udGFpbmVyUmVmLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuXG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50IH0gZnJvbSAnLi4vc2hhcmVkL2R5bmFtaWMtY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2R5bmFtaWMtY29tcG9uZW50LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tZHluYW1pYy1vdXRsZXQnLFxuICB0ZW1wbGF0ZVVybDogJ2R5bmFtaWMtb3V0bGV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2R5bmFtaWMtb3V0bGV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNPdXRsZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBUaGUgZHluYW1pYyBjb21wb25lbnQgYmFzZSBjbGFzcyBvciB0aGUgZHluYW1pYyBjb21wb25lbnQgaXRzZWxmXG4gICAqL1xuICBASW5wdXQoKSBjb21wb25lbnQ6IER5bmFtaWNDb21wb25lbnQ8YW55PiB8IGFueTtcblxuICAvKipcbiAgICogVGhlIGR5bmFtaWMgY29tcG9uZW50IGlucHV0c1xuICAgKi9cbiAgQElucHV0KCkgaW5wdXRzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG5cbiAgLyoqXG4gICAqIFRoZSBzdWJzY3JpYmVycyB0byB0aGUgZHluYW1pYyBjb21wb25lbnQgb3V0cHV0c1xuICAgKi9cbiAgQElucHV0KCkgc3Vic2NyaWJlcnM6IHsgW2tleTogc3RyaW5nXTogKGV2ZW50OiBhbnkpID0+IHZvaWQgfSA9IHt9O1xuXG4gIC8qKlxuICAgKiBUaGUgZHluYW1pYyBjb21wb25lbnRcbiAgICovXG4gIHByaXZhdGUgZHluYW1pY0NvbXBvbmVudDogRHluYW1pY0NvbXBvbmVudDxhbnk+O1xuXG4gIC8qKlxuICAgKiBUaGUgdmlldyBlbGVtZW50IHRvIHJlbmRlciB0aGUgY29tcG9uZW50IHRvXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBWaWV3Q2hpbGQoJ3RhcmdldCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgdGFyZ2V0OiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZHluYW1pY0NvbXBvbmVudFNlcnZpY2U6IER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICAvKipcbiAgICogSWYgdGhlIGR5bmFtaWMgY29tcG9uZW50IGNoYW5nZXMsIGNyZWF0ZSBpdC5cbiAgICogSWYgdGhlIGlucHV0cyBvciBzdWJzY3JpYmVycyBjaGFuZ2UsIHVwZGF0ZSB0aGUgY3VycmVudCBjb21wb25lbnQnc1xuICAgKiBpbnB1dHMgb3Igc3Vic2NyaWJlcnMuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGNvbnN0IGNvbXBvbmVudCA9IGNoYW5nZXMuY29tcG9uZW50O1xuICAgIGNvbnN0IGlucHV0cyA9IGNoYW5nZXMuaW5wdXRzO1xuICAgIGNvbnN0IHN1YnNjcmliZXJzID0gY2hhbmdlcy5zdWJzY3JpYmVycztcbiAgICBjb25zdCBlcSA9IE9iamVjdFV0aWxzLm9iamVjdHNBcmVFcXVpdmFsZW50O1xuXG4gICAgaWYgKCFjb21wb25lbnQgfHwgIWNvbXBvbmVudC5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoY29tcG9uZW50LmN1cnJlbnRWYWx1ZSAhPT0gY29tcG9uZW50LnByZXZpb3VzVmFsdWUpIHtcbiAgICAgIHRoaXMuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudC5jdXJyZW50VmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpbnB1dHNBcmVFcXVpdmFsZW50cyA9XG4gICAgICAgIGlucHV0cyAmJiBlcShpbnB1dHMuY3VycmVudFZhbHVlIHx8IHt9LCBpbnB1dHMucHJldmlvdXNWYWx1ZSB8fCB7fSk7XG4gICAgICBjb25zdCBzdWJzY3JpYmVyc0FyZUVxdWl2YWxlbnRzID1cbiAgICAgICAgc3Vic2NyaWJlcnMgJiZcbiAgICAgICAgZXEoc3Vic2NyaWJlcnMuY3VycmVudFZhbHVlIHx8IHt9LCBzdWJzY3JpYmVycy5wcmV2aW91c1ZhbHVlIHx8IHt9KTtcblxuICAgICAgaWYgKGlucHV0c0FyZUVxdWl2YWxlbnRzID09PSBmYWxzZSkge1xuICAgICAgICB0aGlzLnVwZGF0ZUlucHV0cygpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3Vic2NyaWJlcnNBcmVFcXVpdmFsZW50cyA9PT0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy51cGRhdGVTdWJzY3JpYmVycygpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95IHRoZSBkeW5hbWljIGNvbXBvbmVudCBhbmQgYWxsIGl0J3Mgc3Vic2NyaWJlcnNcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5keW5hbWljQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSAgRHluYW1pY0NvbXBvbmVudCBvdXQgb2YgdGhlIGNvbXBvbmVudCBjbGFzcyBhbmQgcmVuZGVyIGl0LlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudDogRHluYW1pY0NvbXBvbmVudDxhbnk+IHwgYW55KSB7XG4gICAgaWYgKHRoaXMuZHluYW1pY0NvbXBvbmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQuZGVzdHJveSgpO1xuICAgIH1cbiAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQgPVxuICAgICAgY29tcG9uZW50IGluc3RhbmNlb2YgRHluYW1pY0NvbXBvbmVudFxuICAgICAgICA/IGNvbXBvbmVudFxuICAgICAgICA6IHRoaXMuZHluYW1pY0NvbXBvbmVudFNlcnZpY2UuY3JlYXRlKGNvbXBvbmVudCk7XG4gICAgdGhpcy5yZW5kZXJDb21wb25lbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW5kIHJlbmRlciB0aGUgZHluYW1pYyBjb21wb25lbnQuIFNldCBpdCdzIGlucHV0cyBhbmQgc3Vic2NyaWJlcnNcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIHJlbmRlckNvbXBvbmVudCgpIHtcbiAgICB0aGlzLnVwZGF0ZUlucHV0cygpO1xuICAgIHRoaXMudXBkYXRlU3Vic2NyaWJlcnMoKTtcbiAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQuc2V0VGFyZ2V0KHRoaXMudGFyZ2V0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdGhlIGR5bmFtaWMgY29tcG9uZW50IGlucHV0cy4gVGhpcyBpcyBhbiB1cGRhdGUgc28gYW55XG4gICAqIGtleSBub3QgZGVmaW5lZCB3b24ndCBiZSBvdmVyd3JpdHRlbi5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZUlucHV0cygpIHtcbiAgICB0aGlzLmR5bmFtaWNDb21wb25lbnQudXBkYXRlSW5wdXRzKHRoaXMuaW5wdXRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdGhlIGR5bmFtaWMgY29tcG9uZW50IHN1YnNjcmliZXJzLiBUaGlzIGlzIGFuIHVwZGF0ZSBzbyBhbnlcbiAgICoga2V5IG5vdCBkZWZpbmVkIHdvbid0IGJlIG92ZXJ3cml0dGVuLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHByaXZhdGUgdXBkYXRlU3Vic2NyaWJlcnMoKSB7XG4gICAgdGhpcy5keW5hbWljQ29tcG9uZW50LnVwZGF0ZVN1YnNjcmliZXJzKHRoaXMuc3Vic2NyaWJlcnMpO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI3RhcmdldD48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|