@igo2/common 1.8.1 → 1.9.3
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/bundles/igo2-common.umd.js +10700 -10473
- package/bundles/igo2-common.umd.js.map +1 -1
- package/esm2015/igo2-common.js +5 -5
- package/esm2015/lib/action/action.module.js +29 -28
- package/esm2015/lib/action/actionbar/actionbar-item.component.js +257 -257
- package/esm2015/lib/action/actionbar/actionbar.component.js +385 -387
- package/esm2015/lib/action/actionbar/actionbar.module.js +59 -58
- package/esm2015/lib/action/index.js +3 -3
- package/esm2015/lib/action/shared/action.enums.js +7 -7
- package/esm2015/lib/action/shared/action.interfaces.js +2 -1
- package/esm2015/lib/action/shared/index.js +4 -4
- package/esm2015/lib/action/shared/store.js +8 -8
- package/esm2015/lib/backdrop/backdrop.component.js +30 -30
- package/esm2015/lib/backdrop/backdrop.module.js +25 -24
- package/esm2015/lib/backdrop/index.js +2 -2
- package/esm2015/lib/badge-icon/badge-icon.directive.js +125 -121
- package/esm2015/lib/badge-icon/badge-icon.module.js +26 -25
- package/esm2015/lib/badge-icon/index.js +2 -2
- package/esm2015/lib/clickout/clickout.directive.js +32 -32
- package/esm2015/lib/clickout/clickout.module.js +24 -23
- package/esm2015/lib/clickout/index.js +2 -2
- package/esm2015/lib/clone/clone.module.js +24 -23
- package/esm2015/lib/clone/clone.pipe.js +24 -24
- package/esm2015/lib/clone/index.js +2 -2
- package/esm2015/lib/collapsible/collapse.directive.js +55 -55
- package/esm2015/lib/collapsible/collapsible.component.js +63 -63
- package/esm2015/lib/collapsible/collapsible.module.js +27 -26
- package/esm2015/lib/collapsible/index.js +3 -3
- package/esm2015/lib/confirm-dialog/confirm-dialog.component.js +50 -51
- package/esm2015/lib/confirm-dialog/confirm-dialog.module.js +29 -28
- package/esm2015/lib/confirm-dialog/confirm-dialog.service.js +22 -23
- package/esm2015/lib/confirm-dialog/index.js +3 -3
- package/esm2015/lib/context-menu/context-menu.directive.js +135 -89
- package/esm2015/lib/context-menu/context-menu.module.js +24 -23
- package/esm2015/lib/context-menu/index.js +2 -2
- package/esm2015/lib/custom-html/custom-html.component.js +32 -32
- package/esm2015/lib/custom-html/custom-html.module.js +49 -48
- package/esm2015/lib/custom-html/custom-html.pipe.js +18 -19
- package/esm2015/lib/custom-html/index.js +3 -3
- package/esm2015/lib/drag-drop/drag-drop.directive.js +88 -88
- package/esm2015/lib/drag-drop/drag-drop.module.js +24 -23
- package/esm2015/lib/drag-drop/index.js +2 -2
- package/esm2015/lib/dynamic-component/dynamic-component.module.js +33 -32
- package/esm2015/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.js +124 -125
- package/esm2015/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.js +30 -29
- package/esm2015/lib/dynamic-component/index.js +3 -3
- package/esm2015/lib/dynamic-component/shared/dynamic-component.interfaces.js +2 -1
- package/esm2015/lib/dynamic-component/shared/dynamic-component.js +174 -174
- package/esm2015/lib/dynamic-component/shared/dynamic-component.service.js +29 -29
- package/esm2015/lib/dynamic-component/shared/index.js +4 -4
- package/esm2015/lib/entity/entity-selector/entity-selector.component.js +201 -202
- package/esm2015/lib/entity/entity-selector/entity-selector.module.js +34 -33
- package/esm2015/lib/entity/entity-table/entity-table-row.directive.js +137 -137
- package/esm2015/lib/entity/entity-table/entity-table.component.js +912 -916
- package/esm2015/lib/entity/entity-table/entity-table.module.js +77 -76
- package/esm2015/lib/entity/entity-table-paginator/entity-table-paginator.component.js +138 -140
- package/esm2015/lib/entity/entity-table-paginator/entity-table-paginator.interface.js +2 -1
- package/esm2015/lib/entity/entity-table-paginator/entity-table-paginator.module.js +30 -29
- package/esm2015/lib/entity/entity.module.js +33 -32
- package/esm2015/lib/entity/index.js +6 -6
- package/esm2015/lib/entity/shared/entity.enums.js +27 -27
- package/esm2015/lib/entity/shared/entity.interfaces.js +2 -1
- package/esm2015/lib/entity/shared/entity.utils.js +67 -67
- package/esm2015/lib/entity/shared/index.js +10 -10
- package/esm2015/lib/entity/shared/state.js +191 -191
- package/esm2015/lib/entity/shared/store.js +288 -288
- package/esm2015/lib/entity/shared/strategies/filter-custom-function.js +79 -79
- package/esm2015/lib/entity/shared/strategies/filter-selection.js +84 -84
- package/esm2015/lib/entity/shared/strategies/index.js +4 -4
- package/esm2015/lib/entity/shared/strategies/strategy.js +75 -75
- package/esm2015/lib/entity/shared/transaction.js +316 -316
- package/esm2015/lib/entity/shared/view.js +315 -315
- package/esm2015/lib/entity/shared/watcher.js +120 -120
- package/esm2015/lib/flexible/flexible.component.js +158 -159
- package/esm2015/lib/flexible/flexible.module.js +24 -23
- package/esm2015/lib/flexible/flexible.type.js +2 -1
- package/esm2015/lib/flexible/index.js +3 -3
- package/esm2015/lib/form/form/form.component.js +125 -125
- package/esm2015/lib/form/form/form.module.js +42 -41
- package/esm2015/lib/form/form-field/form-field-select.component.js +132 -132
- package/esm2015/lib/form/form-field/form-field-text.component.js +108 -108
- package/esm2015/lib/form/form-field/form-field-textarea.component.js +110 -110
- package/esm2015/lib/form/form-field/form-field.component.js +77 -78
- package/esm2015/lib/form/form-field/form-field.module.js +76 -75
- package/esm2015/lib/form/form-field/index.js +5 -5
- package/esm2015/lib/form/form-group/form-group.component.js +110 -110
- package/esm2015/lib/form/form-group/form-group.module.js +42 -41
- package/esm2015/lib/form/form.module.js +51 -50
- package/esm2015/lib/form/index.js +5 -5
- package/esm2015/lib/form/shared/form-field-component.js +7 -7
- package/esm2015/lib/form/shared/form-field.service.js +29 -29
- package/esm2015/lib/form/shared/form.interfaces.js +2 -1
- package/esm2015/lib/form/shared/form.service.js +77 -77
- package/esm2015/lib/form/shared/form.utils.js +40 -40
- package/esm2015/lib/form/shared/index.js +6 -6
- package/esm2015/lib/home-button/home-button.component.js +35 -0
- package/esm2015/lib/home-button/home-button.module.js +43 -0
- package/esm2015/lib/home-button/index.js +2 -0
- package/esm2015/lib/image/image.module.js +24 -23
- package/esm2015/lib/image/index.js +2 -2
- package/esm2015/lib/image/secure-image.pipe.js +48 -51
- package/esm2015/lib/interactive-tour/index.js +5 -5
- package/esm2015/lib/interactive-tour/interactive-tour.component.js +140 -142
- package/esm2015/lib/interactive-tour/interactive-tour.interface.js +2 -1
- package/esm2015/lib/interactive-tour/interactive-tour.loader.js +44 -46
- package/esm2015/lib/interactive-tour/interactive-tour.module.js +42 -41
- package/esm2015/lib/interactive-tour/interactive-tour.service.js +285 -288
- package/esm2015/lib/json-dialog/index.js +3 -3
- package/esm2015/lib/json-dialog/json-dialog.component.js +116 -117
- package/esm2015/lib/json-dialog/json-dialog.module.js +29 -28
- package/esm2015/lib/json-dialog/json-dialog.service.js +24 -25
- package/esm2015/lib/keyvalue/index.js +2 -2
- package/esm2015/lib/keyvalue/keyvalue.module.js +24 -23
- package/esm2015/lib/keyvalue/keyvalue.pipe.js +18 -18
- package/esm2015/lib/list/index.js +3 -3
- package/esm2015/lib/list/list-item.directive.js +165 -165
- package/esm2015/lib/list/list.component.js +266 -266
- package/esm2015/lib/list/list.module.js +29 -28
- package/esm2015/lib/panel/index.js +2 -2
- package/esm2015/lib/panel/panel.component.js +67 -67
- package/esm2015/lib/panel/panel.module.js +19 -18
- package/esm2015/lib/sidenav/index.js +2 -2
- package/esm2015/lib/sidenav/sidenav-shim.directive.js +55 -56
- package/esm2015/lib/sidenav/sidenav.module.js +24 -23
- package/esm2015/lib/spinner/index.js +3 -3
- package/esm2015/lib/spinner/spinner-activity.directive.js +47 -49
- package/esm2015/lib/spinner/spinner.component.js +40 -40
- package/esm2015/lib/spinner/spinner.module.js +21 -20
- package/esm2015/lib/stop-propagation/index.js +3 -3
- package/esm2015/lib/stop-propagation/stop-drop-propagation.directive.js +22 -22
- package/esm2015/lib/stop-propagation/stop-propagation.directive.js +21 -21
- package/esm2015/lib/stop-propagation/stop-propagation.module.js +25 -24
- package/esm2015/lib/table/index.js +6 -6
- package/esm2015/lib/table/table-action-color.enum.js +7 -7
- package/esm2015/lib/table/table-database.js +28 -28
- package/esm2015/lib/table/table-datasource.js +61 -61
- package/esm2015/lib/table/table-model.interface.js +2 -1
- package/esm2015/lib/table/table.component.js +310 -311
- package/esm2015/lib/table/table.module.js +69 -68
- package/esm2015/lib/tool/index.js +3 -3
- package/esm2015/lib/tool/shared/index.js +6 -6
- package/esm2015/lib/tool/shared/tool-component.js +9 -9
- package/esm2015/lib/tool/shared/tool.interface.js +2 -1
- package/esm2015/lib/tool/shared/tool.service.js +43 -43
- package/esm2015/lib/tool/shared/toolbox.enums.js +7 -7
- package/esm2015/lib/tool/shared/toolbox.js +179 -179
- package/esm2015/lib/tool/tool.module.js +34 -33
- package/esm2015/lib/tool/toolbox/toolbox.animation.js +10 -10
- package/esm2015/lib/tool/toolbox/toolbox.component.js +261 -262
- package/esm2015/lib/tool/toolbox/toolbox.module.js +38 -37
- package/esm2015/lib/widget/index.js +3 -3
- package/esm2015/lib/widget/shared/index.js +4 -4
- package/esm2015/lib/widget/shared/widget.interfaces.js +2 -1
- package/esm2015/lib/widget/shared/widget.js +4 -4
- package/esm2015/lib/widget/shared/widget.service.js +20 -21
- package/esm2015/lib/widget/widget-outlet/widget-outlet.component.js +121 -122
- package/esm2015/lib/widget/widget-outlet/widget-outlet.module.js +34 -33
- package/esm2015/lib/widget/widget.module.js +34 -33
- package/esm2015/lib/workspace/index.js +4 -4
- package/esm2015/lib/workspace/shared/index.js +4 -4
- package/esm2015/lib/workspace/shared/store.js +40 -40
- package/esm2015/lib/workspace/shared/workspace.interfaces.js +2 -1
- package/esm2015/lib/workspace/shared/workspace.js +117 -117
- package/esm2015/lib/workspace/workspace-selector/workspace-selector.component.js +54 -55
- package/esm2015/lib/workspace/workspace-selector/workspace-selector.module.js +34 -33
- package/esm2015/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.js +93 -94
- package/esm2015/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.js +34 -33
- package/esm2015/lib/workspace/workspace.module.js +29 -28
- package/esm2015/public_api.js +72 -70
- package/fesm2015/igo2-common.js +9015 -8846
- package/fesm2015/igo2-common.js.map +1 -1
- package/igo2-common.d.ts +5 -5
- package/lib/action/action.module.d.ts +8 -7
- 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 -19
- 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 -9
- package/lib/backdrop/index.d.ts +1 -1
- package/lib/badge-icon/badge-icon.directive.d.ts +32 -27
- package/lib/badge-icon/badge-icon.module.d.ts +11 -10
- 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 -8
- package/lib/clickout/index.d.ts +1 -1
- package/lib/clone/clone.module.d.ts +9 -8
- 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 -11
- 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 -11
- 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 +27 -21
- package/lib/context-menu/context-menu.module.d.ts +9 -8
- package/lib/context-menu/index.d.ts +1 -1
- package/lib/custom-html/custom-html.component.d.ts +9 -9
- package/lib/custom-html/custom-html.module.d.ts +16 -15
- package/lib/custom-html/custom-html.pipe.d.ts +10 -10
- package/lib/custom-html/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 -8
- package/lib/drag-drop/index.d.ts +1 -1
- package/lib/dynamic-component/dynamic-component.module.d.ts +8 -7
- 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 -10
- 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 -12
- package/lib/entity/entity-table/entity-table-row.directive.d.ts +69 -69
- package/lib/entity/entity-table/entity-table.component.d.ts +275 -275
- package/lib/entity/entity-table/entity-table.module.d.ts +23 -22
- 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 -10
- package/lib/entity/entity.module.d.ts +10 -9
- package/lib/entity/index.d.ts +5 -5
- package/lib/entity/shared/entity.enums.d.ts +22 -22
- package/lib/entity/shared/entity.interfaces.d.ts +88 -88
- 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 -8
- 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 -11
- 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 -20
- 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 -13
- package/lib/form/form.module.d.ts +13 -12
- 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 -0
- package/lib/home-button/home-button.module.d.ts +15 -0
- package/lib/home-button/index.d.ts +1 -0
- package/lib/image/image.module.d.ts +9 -8
- package/lib/image/index.d.ts +1 -1
- package/lib/image/secure-image.pipe.d.ts +11 -11
- 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 -11
- 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 -12
- 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 -8
- 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 -13
- package/lib/panel/index.d.ts +1 -1
- package/lib/panel/panel.component.d.ts +11 -11
- package/lib/panel/panel.module.d.ts +8 -7
- 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 -8
- 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 -9
- 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 -9
- 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 -19
- 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 -9
- 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 -12
- 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 -11
- package/lib/widget/widget.module.d.ts +8 -7
- 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 +35 -35
- package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +12 -11
- 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 -11
- package/lib/workspace/workspace.module.d.ts +9 -8
- package/package.json +8 -7
- package/public_api.d.ts +68 -66
- package/style/common.theming.scss +12 -236
- package/style/partial/action.scss +18 -18
- package/style/partial/common.variables.scss +8 -8
- package/bundles/igo2-common.umd.min.js +0 -17
- package/bundles/igo2-common.umd.min.js.map +0 -1
|
@@ -1,179 +1,179 @@
|
|
|
1
|
-
import { EntityStore } from '../../entity';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
/**
|
|
4
|
-
* Service where all available tools and their component are registered.
|
|
5
|
-
*/
|
|
6
|
-
export class Toolbox {
|
|
7
|
-
constructor(options = {}) {
|
|
8
|
-
this.options = options;
|
|
9
|
-
/**
|
|
10
|
-
* Observable of the active tool
|
|
11
|
-
*/
|
|
12
|
-
this.activeTool$ = new BehaviorSubject(undefined);
|
|
13
|
-
/**
|
|
14
|
-
* Ordered list of tool names to display in a toolbar
|
|
15
|
-
*/
|
|
16
|
-
this.toolbar$ = new BehaviorSubject([]);
|
|
17
|
-
/**
|
|
18
|
-
* Active tool history. Useful for activating the previous tool.
|
|
19
|
-
*/
|
|
20
|
-
this.activeToolHistory = [];
|
|
21
|
-
/**
|
|
22
|
-
* Tool store
|
|
23
|
-
*/
|
|
24
|
-
this.store = new EntityStore([], {
|
|
25
|
-
getKey: (tool) => tool.name
|
|
26
|
-
});
|
|
27
|
-
this.setToolbar(options.toolbar);
|
|
28
|
-
this.initStore();
|
|
29
|
-
}
|
|
30
|
-
get tools$() {
|
|
31
|
-
return this.store.entities$;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Destroy the toolbox
|
|
35
|
-
*/
|
|
36
|
-
destroy() {
|
|
37
|
-
this.activeTool$$.unsubscribe();
|
|
38
|
-
this.store.destroy();
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Return a tool
|
|
42
|
-
* @param name Tool name
|
|
43
|
-
* @returns tool Tool
|
|
44
|
-
*/
|
|
45
|
-
getTool(name) {
|
|
46
|
-
return this.store.get(name);
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Return all tools
|
|
50
|
-
* @returns Array of tools
|
|
51
|
-
*/
|
|
52
|
-
getTools() {
|
|
53
|
-
return this.store.all();
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Set tool configurations
|
|
57
|
-
* @param tools Tools
|
|
58
|
-
*/
|
|
59
|
-
setTools(tools) {
|
|
60
|
-
this.store.load(tools);
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Get toolbar
|
|
64
|
-
* @returns Toolbar value
|
|
65
|
-
*/
|
|
66
|
-
getToolbar() {
|
|
67
|
-
return this.toolbar$.getValue();
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Set toolbar
|
|
71
|
-
* @param toolbar A list of tool names
|
|
72
|
-
*/
|
|
73
|
-
setToolbar(toolbar) {
|
|
74
|
-
this.toolbar$.next(toolbar || []);
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Activate a tool (and deactivate other tools)
|
|
78
|
-
* @param name Tool name
|
|
79
|
-
* @param options Tool options
|
|
80
|
-
*/
|
|
81
|
-
activateTool(name, options = {}) {
|
|
82
|
-
const tool = this.getTool(name);
|
|
83
|
-
if (tool === undefined) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
this.store.state.update(tool, { active: true, options }, true);
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Activate the previous tool, if any
|
|
90
|
-
*/
|
|
91
|
-
activatePreviousTool() {
|
|
92
|
-
if (this.activeToolHistory.length <= 1) {
|
|
93
|
-
this.deactivateTool();
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
const [previous, current] = this.activeToolHistory.splice(-2, 2);
|
|
97
|
-
this.activateTool(previous);
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Activate the tool below, if any
|
|
101
|
-
*/
|
|
102
|
-
/* activateBelowTool() {
|
|
103
|
-
const arrayTools = this.getToolbar();
|
|
104
|
-
const index = arrayTools.findIndex(t => t === this.activeTool$.getValue().name);
|
|
105
|
-
if (arrayTools[index + 1] !== undefined) {
|
|
106
|
-
this.deactivateTool();
|
|
107
|
-
const below = arrayTools[index + 1];
|
|
108
|
-
this.activateTool(below);
|
|
109
|
-
} else {
|
|
110
|
-
this.deactivateTool();
|
|
111
|
-
const below = arrayTools[0];
|
|
112
|
-
this.activateTool(below);
|
|
113
|
-
}
|
|
114
|
-
} */
|
|
115
|
-
/**
|
|
116
|
-
* Activate the tool above, if any
|
|
117
|
-
*/
|
|
118
|
-
/* activateAboveTool() {
|
|
119
|
-
const arrayTools = this.getToolbar();
|
|
120
|
-
const index = arrayTools.findIndex(t => t === this.activeTool$.getValue().name);
|
|
121
|
-
if (arrayTools[index - 1] !== undefined) {
|
|
122
|
-
this.deactivateTool();
|
|
123
|
-
const above = arrayTools[index - 1];
|
|
124
|
-
this.activateTool(above);
|
|
125
|
-
} else {
|
|
126
|
-
this.deactivateTool();
|
|
127
|
-
const above = arrayTools[arrayTools.length - 1];
|
|
128
|
-
this.activateTool(above);
|
|
129
|
-
}
|
|
130
|
-
} */
|
|
131
|
-
/**
|
|
132
|
-
* Deactivate the active tool
|
|
133
|
-
*/
|
|
134
|
-
deactivateTool() {
|
|
135
|
-
this.clearActiveToolHistory();
|
|
136
|
-
this.store.state.updateAll({ active: false });
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Initialize the tool store and start observing the active tool
|
|
140
|
-
*/
|
|
141
|
-
initStore() {
|
|
142
|
-
this.store = new EntityStore([], {
|
|
143
|
-
getKey: (entity) => entity.name
|
|
144
|
-
});
|
|
145
|
-
this.activeTool$$ = this.store.stateView
|
|
146
|
-
.firstBy$((record) => record.state.active === true)
|
|
147
|
-
.subscribe((record) => {
|
|
148
|
-
if (record === undefined) {
|
|
149
|
-
this.setActiveTool(undefined);
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
const tool = record.entity;
|
|
153
|
-
const options = Object.assign({}, tool.options || {}, record.state.options || {});
|
|
154
|
-
this.setActiveTool(Object.assign({}, tool, { options }));
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Set the active tool and update the tool history
|
|
159
|
-
* @param tool Tool
|
|
160
|
-
*/
|
|
161
|
-
setActiveTool(tool) {
|
|
162
|
-
this.activeTool$.next(tool);
|
|
163
|
-
if (tool === undefined) {
|
|
164
|
-
this.clearActiveToolHistory();
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
167
|
-
this.activeToolHistory = this.activeToolHistory
|
|
168
|
-
.filter((name) => name !== tool.name)
|
|
169
|
-
.concat([tool.name]);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
/**
|
|
173
|
-
* Clear the tool history
|
|
174
|
-
*/
|
|
175
|
-
clearActiveToolHistory() {
|
|
176
|
-
this.activeToolHistory = [];
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC5qcyIsInNvdXJjZVJvb3QiOiIvc3J2L2FwcHMvaWdvMi1saWIvcGFja2FnZXMvY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImxpYi90b29sL3NoYXJlZC90b29sYm94LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRXJEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLE9BQU87SUFnQ2xCLFlBQW9CLFVBQTBCLEVBQUU7UUFBNUIsWUFBTyxHQUFQLE9BQU8sQ0FBcUI7UUEvQmhEOztXQUVHO1FBQ0gsZ0JBQVcsR0FBMEIsSUFBSSxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFcEU7O1dBRUc7UUFDSCxhQUFRLEdBQThCLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBTzlEOztXQUVHO1FBQ0ssc0JBQWlCLEdBQWEsRUFBRSxDQUFDO1FBRXpDOztXQUVHO1FBQ0ssVUFBSyxHQUFHLElBQUksV0FBVyxDQUFPLEVBQUUsRUFBRTtZQUN4QyxNQUFNLEVBQUUsQ0FBQyxJQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJO1NBQ2xDLENBQUMsQ0FBQztRQU9ELElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBUEQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztJQUM5QixDQUFDO0lBT0Q7O09BRUc7SUFDSCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLElB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RUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMzRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7O09BR0c7SUFDSyxhQUFhLENBQUMsSUFBc0I7UUFDMUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQy9CO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQjtpQkFDNUMsTUFBTSxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztpQkFDNUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUM5QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnRpdHlSZWNvcmQsIEVudGl0eVN0b3JlIH0gZnJvbSAnLi4vLi4vZW50aXR5JztcbmltcG9ydCB7IFRvb2wsIFRvb2xib3hPcHRpb25zIH0gZnJvbSAnLi90b29sLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIFNlcnZpY2Ugd2hlcmUgYWxsIGF2YWlsYWJsZSB0b29scyBhbmQgdGhlaXIgY29tcG9uZW50IGFyZSByZWdpc3RlcmVkLlxuICovXG5leHBvcnQgY2xhc3MgVG9vbGJveCB7XG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIG9mIHRoZSBhY3RpdmUgdG9vbFxuICAgKi9cbiAgYWN0aXZlVG9vbCQ6IEJlaGF2aW9yU3ViamVjdDxUb29sPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcblxuICAvKipcbiAgICogT3JkZXJlZCBsaXN0IG9mIHRvb2wgbmFtZXMgdG8gZGlzcGxheSBpbiBhIHRvb2xiYXJcbiAgICovXG4gIHRvb2xiYXIkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChbXSk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgb2YgdGhlIGFjdGl2ZSB0b29sXG4gICAqL1xuICBwcml2YXRlIGFjdGl2ZVRvb2wkJDogU3Vic2NyaXB0aW9uO1xuXG4gIC8qKlxuICAgKiBBY3RpdmUgdG9vbCBoaXN0b3J5LiBVc2VmdWwgZm9yIGFjdGl2YXRpbmcgdGhlIHByZXZpb3VzIHRvb2wuXG4gICAqL1xuICBwcml2YXRlIGFjdGl2ZVRvb2xIaXN0b3J5OiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBUb29sIHN0b3JlXG4gICAqL1xuICBwcml2YXRlIHN0b3JlID0gbmV3IEVudGl0eVN0b3JlPFRvb2w+KFtdLCB7XG4gICAgZ2V0S2V5OiAodG9vbDogVG9vbCkgPT4gdG9vbC5uYW1lXG4gIH0pO1xuXG4gIGdldCB0b29scyQoKTogQmVoYXZpb3JTdWJqZWN0PFRvb2xbXT4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JlLmVudGl0aWVzJDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgb3B0aW9uczogVG9vbGJveE9wdGlvbnMgPSB7fSkge1xuICAgIHRoaXMuc2V0VG9vbGJhcihvcHRpb25zLnRvb2xiYXIpO1xuICAgIHRoaXMuaW5pdFN0b3JlKCk7XG4gIH1cblxuICAvKipcbiAgICogRGVzdHJveSB0aGUgdG9vbGJveFxuICAgKi9cbiAgZGVzdHJveSgpIHtcbiAgICB0aGlzLmFjdGl2ZVRvb2wkJC51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuc3RvcmUuZGVzdHJveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBhIHRvb2xcbiAgICogQHBhcmFtIG5hbWUgVG9vbCBuYW1lXG4gICAqIEByZXR1cm5zIHRvb2wgVG9vbFxuICAgKi9cbiAgZ2V0VG9vbChuYW1lOiBzdHJpbmcpOiBUb29sIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5nZXQobmFtZSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGFsbCB0b29sc1xuICAgKiBAcmV0dXJucyBBcnJheSBvZiB0b29sc1xuICAgKi9cbiAgZ2V0VG9vbHMoKTogVG9vbFtdIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5hbGwoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdG9vbCBjb25maWd1cmF0aW9uc1xuICAgKiBAcGFyYW0gdG9vbHMgVG9vbHNcbiAgICovXG4gIHNldFRvb2xzKHRvb2xzOiBUb29sW10pIHtcbiAgICB0aGlzLnN0b3JlLmxvYWQodG9vbHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0b29sYmFyXG4gICAqIEByZXR1cm5zIFRvb2xiYXIgdmFsdWVcbiAgICovXG4gIGdldFRvb2xiYXIoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnRvb2xiYXIkLmdldFZhbHVlKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRvb2xiYXJcbiAgICogQHBhcmFtIHRvb2xiYXIgQSBsaXN0IG9mIHRvb2wgbmFtZXNcbiAgICovXG4gIHNldFRvb2xiYXIodG9vbGJhcjogc3RyaW5nW10pIHtcbiAgICB0aGlzLnRvb2xiYXIkLm5leHQodG9vbGJhciB8fCBbXSk7XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGUgYSB0b29sIChhbmQgZGVhY3RpdmF0ZSBvdGhlciB0b29scylcbiAgICogQHBhcmFtIG5hbWUgVG9vbCBuYW1lXG4gICAqIEBwYXJhbSBvcHRpb25zIFRvb2wgb3B0aW9uc1xuICAgKi9cbiAgYWN0aXZhdGVUb29sKG5hbWU6IHN0cmluZywgb3B0aW9uczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9KSB7XG4gICAgY29uc3QgdG9vbCA9IHRoaXMuZ2V0VG9vbChuYW1lKTtcbiAgICBpZiAodG9vbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGUodG9vbCwgeyBhY3RpdmU6IHRydWUsIG9wdGlvbnMgfSwgdHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGUgdGhlIHByZXZpb3VzIHRvb2wsIGlmIGFueVxuICAgKi9cbiAgYWN0aXZhdGVQcmV2aW91c1Rvb2woKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlVG9vbEhpc3RvcnkubGVuZ3RoIDw9IDEpIHtcbiAgICAgIHRoaXMuZGVhY3RpdmF0ZVRvb2woKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgW3ByZXZpb3VzLCBjdXJyZW50XSA9IHRoaXMuYWN0aXZlVG9vbEhpc3Rvcnkuc3BsaWNlKC0yLCAyKTtcbiAgICB0aGlzLmFjdGl2YXRlVG9vbChwcmV2aW91cyk7XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGUgdGhlIHRvb2wgYmVsb3csIGlmIGFueVxuICAgKi9cbiAgLyogYWN0aXZhdGVCZWxvd1Rvb2woKSB7XG4gICAgY29uc3QgYXJyYXlUb29scyA9IHRoaXMuZ2V0VG9vbGJhcigpO1xuICAgIGNvbnN0IGluZGV4ID0gYXJyYXlUb29scy5maW5kSW5kZXgodCA9PiB0ID09PSB0aGlzLmFjdGl2ZVRvb2wkLmdldFZhbHVlKCkubmFtZSk7XG4gICAgaWYgKGFycmF5VG9vbHNbaW5kZXggKyAxXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmRlYWN0aXZhdGVUb29sKCk7XG4gICAgICBjb25zdCBiZWxvdyA9IGFycmF5VG9vbHNbaW5kZXggKyAxXTtcbiAgICAgIHRoaXMuYWN0aXZhdGVUb29sKGJlbG93KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZWFjdGl2YXRlVG9vbCgpO1xuICAgICAgY29uc3QgYmVsb3cgPSBhcnJheVRvb2xzWzBdO1xuICAgICAgdGhpcy5hY3RpdmF0ZVRvb2woYmVsb3cpO1xuICAgIH1cbiAgfSAqL1xuXG4gIC8qKlxuICAgKiBBY3RpdmF0ZSB0aGUgdG9vbCBhYm92ZSwgaWYgYW55XG4gICAqL1xuICAvKiBhY3RpdmF0ZUFib3ZlVG9vbCgpIHtcbiAgICBjb25zdCBhcnJheVRvb2xzID0gdGhpcy5nZXRUb29sYmFyKCk7XG4gICAgY29uc3QgaW5kZXggPSBhcnJheVRvb2xzLmZpbmRJbmRleCh0ID0+IHQgPT09IHRoaXMuYWN0aXZlVG9vbCQuZ2V0VmFsdWUoKS5uYW1lKTtcbiAgICBpZiAoYXJyYXlUb29sc1tpbmRleCAtIDFdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuZGVhY3RpdmF0ZVRvb2woKTtcbiAgICAgIGNvbnN0IGFib3ZlID0gYXJyYXlUb29sc1tpbmRleCAtIDFdO1xuICAgICAgdGhpcy5hY3RpdmF0ZVRvb2woYWJvdmUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRlYWN0aXZhdGVUb29sKCk7XG4gICAgICBjb25zdCBhYm92ZSA9IGFycmF5VG9vbHNbYXJyYXlUb29scy5sZW5ndGggLSAxXTtcbiAgICAgIHRoaXMuYWN0aXZhdGVUb29sKGFib3ZlKTtcbiAgICB9XG4gIH0gKi9cblxuICAvKipcbiAgICogRGVhY3RpdmF0ZSB0aGUgYWN0aXZlIHRvb2xcbiAgICovXG4gIGRlYWN0aXZhdGVUb29sKCkge1xuICAgIHRoaXMuY2xlYXJBY3RpdmVUb29sSGlzdG9yeSgpO1xuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlQWxsKHsgYWN0aXZlOiBmYWxzZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0b29sIHN0b3JlIGFuZCBzdGFydCBvYnNlcnZpbmcgdGhlIGFjdGl2ZSB0b29sXG4gICAqL1xuICBwcml2YXRlIGluaXRTdG9yZSgpIHtcbiAgICB0aGlzLnN0b3JlID0gbmV3IEVudGl0eVN0b3JlPFRvb2w+KFtdLCB7XG4gICAgICBnZXRLZXk6IChlbnRpdHk6IFRvb2wpID0+IGVudGl0eS5uYW1lXG4gICAgfSk7XG5cbiAgICB0aGlzLmFjdGl2ZVRvb2wkJCA9IHRoaXMuc3RvcmUuc3RhdGVWaWV3XG4gICAgICAuZmlyc3RCeSQoKHJlY29yZDogRW50aXR5UmVjb3JkPFRvb2w+KSA9PiByZWNvcmQuc3RhdGUuYWN0aXZlID09PSB0cnVlKVxuICAgICAgLnN1YnNjcmliZSgocmVjb3JkOiBFbnRpdHlSZWNvcmQ8VG9vbD4pID0+IHtcbiAgICAgICAgaWYgKHJlY29yZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdGhpcy5zZXRBY3RpdmVUb29sKHVuZGVmaW5lZCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdG9vbCA9IHJlY29yZC5lbnRpdHk7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBPYmplY3QuYXNzaWduKFxuICAgICAgICAgIHt9LFxuICAgICAgICAgIHRvb2wub3B0aW9ucyB8fCB7fSxcbiAgICAgICAgICByZWNvcmQuc3RhdGUub3B0aW9ucyB8fCB7fVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnNldEFjdGl2ZVRvb2woT2JqZWN0LmFzc2lnbih7fSwgdG9vbCwgeyBvcHRpb25zIH0pKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgYWN0aXZlIHRvb2wgYW5kIHVwZGF0ZSB0aGUgdG9vbCBoaXN0b3J5XG4gICAqIEBwYXJhbSB0b29sIFRvb2xcbiAgICovXG4gIHByaXZhdGUgc2V0QWN0aXZlVG9vbCh0b29sOiBUb29sIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5hY3RpdmVUb29sJC5uZXh0KHRvb2wpO1xuICAgIGlmICh0b29sID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuY2xlYXJBY3RpdmVUb29sSGlzdG9yeSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFjdGl2ZVRvb2xIaXN0b3J5ID0gdGhpcy5hY3RpdmVUb29sSGlzdG9yeVxuICAgICAgICAuZmlsdGVyKChuYW1lOiBzdHJpbmcpID0+IG5hbWUgIT09IHRvb2wubmFtZSlcbiAgICAgICAgLmNvbmNhdChbdG9vbC5uYW1lXSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIHRoZSB0b29sIGhpc3RvcnlcbiAgICovXG4gIHByaXZhdGUgY2xlYXJBY3RpdmVUb29sSGlzdG9yeSgpIHtcbiAgICB0aGlzLmFjdGl2ZVRvb2xIaXN0b3J5ID0gW107XG4gIH1cbn1cbiJdfQ==
|
|
1
|
+
import { EntityStore } from '../../entity';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
/**
|
|
4
|
+
* Service where all available tools and their component are registered.
|
|
5
|
+
*/
|
|
6
|
+
export class Toolbox {
|
|
7
|
+
constructor(options = {}) {
|
|
8
|
+
this.options = options;
|
|
9
|
+
/**
|
|
10
|
+
* Observable of the active tool
|
|
11
|
+
*/
|
|
12
|
+
this.activeTool$ = new BehaviorSubject(undefined);
|
|
13
|
+
/**
|
|
14
|
+
* Ordered list of tool names to display in a toolbar
|
|
15
|
+
*/
|
|
16
|
+
this.toolbar$ = new BehaviorSubject([]);
|
|
17
|
+
/**
|
|
18
|
+
* Active tool history. Useful for activating the previous tool.
|
|
19
|
+
*/
|
|
20
|
+
this.activeToolHistory = [];
|
|
21
|
+
/**
|
|
22
|
+
* Tool store
|
|
23
|
+
*/
|
|
24
|
+
this.store = new EntityStore([], {
|
|
25
|
+
getKey: (tool) => tool.name
|
|
26
|
+
});
|
|
27
|
+
this.setToolbar(options.toolbar);
|
|
28
|
+
this.initStore();
|
|
29
|
+
}
|
|
30
|
+
get tools$() {
|
|
31
|
+
return this.store.entities$;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Destroy the toolbox
|
|
35
|
+
*/
|
|
36
|
+
destroy() {
|
|
37
|
+
this.activeTool$$.unsubscribe();
|
|
38
|
+
this.store.destroy();
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Return a tool
|
|
42
|
+
* @param name Tool name
|
|
43
|
+
* @returns tool Tool
|
|
44
|
+
*/
|
|
45
|
+
getTool(name) {
|
|
46
|
+
return this.store.get(name);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Return all tools
|
|
50
|
+
* @returns Array of tools
|
|
51
|
+
*/
|
|
52
|
+
getTools() {
|
|
53
|
+
return this.store.all();
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Set tool configurations
|
|
57
|
+
* @param tools Tools
|
|
58
|
+
*/
|
|
59
|
+
setTools(tools) {
|
|
60
|
+
this.store.load(tools);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Get toolbar
|
|
64
|
+
* @returns Toolbar value
|
|
65
|
+
*/
|
|
66
|
+
getToolbar() {
|
|
67
|
+
return this.toolbar$.getValue();
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Set toolbar
|
|
71
|
+
* @param toolbar A list of tool names
|
|
72
|
+
*/
|
|
73
|
+
setToolbar(toolbar) {
|
|
74
|
+
this.toolbar$.next(toolbar || []);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Activate a tool (and deactivate other tools)
|
|
78
|
+
* @param name Tool name
|
|
79
|
+
* @param options Tool options
|
|
80
|
+
*/
|
|
81
|
+
activateTool(name, options = {}) {
|
|
82
|
+
const tool = this.getTool(name);
|
|
83
|
+
if (tool === undefined) {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
this.store.state.update(tool, { active: true, options }, true);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Activate the previous tool, if any
|
|
90
|
+
*/
|
|
91
|
+
activatePreviousTool() {
|
|
92
|
+
if (this.activeToolHistory.length <= 1) {
|
|
93
|
+
this.deactivateTool();
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const [previous, current] = this.activeToolHistory.splice(-2, 2);
|
|
97
|
+
this.activateTool(previous);
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Activate the tool below, if any
|
|
101
|
+
*/
|
|
102
|
+
/* activateBelowTool() {
|
|
103
|
+
const arrayTools = this.getToolbar();
|
|
104
|
+
const index = arrayTools.findIndex(t => t === this.activeTool$.getValue().name);
|
|
105
|
+
if (arrayTools[index + 1] !== undefined) {
|
|
106
|
+
this.deactivateTool();
|
|
107
|
+
const below = arrayTools[index + 1];
|
|
108
|
+
this.activateTool(below);
|
|
109
|
+
} else {
|
|
110
|
+
this.deactivateTool();
|
|
111
|
+
const below = arrayTools[0];
|
|
112
|
+
this.activateTool(below);
|
|
113
|
+
}
|
|
114
|
+
} */
|
|
115
|
+
/**
|
|
116
|
+
* Activate the tool above, if any
|
|
117
|
+
*/
|
|
118
|
+
/* activateAboveTool() {
|
|
119
|
+
const arrayTools = this.getToolbar();
|
|
120
|
+
const index = arrayTools.findIndex(t => t === this.activeTool$.getValue().name);
|
|
121
|
+
if (arrayTools[index - 1] !== undefined) {
|
|
122
|
+
this.deactivateTool();
|
|
123
|
+
const above = arrayTools[index - 1];
|
|
124
|
+
this.activateTool(above);
|
|
125
|
+
} else {
|
|
126
|
+
this.deactivateTool();
|
|
127
|
+
const above = arrayTools[arrayTools.length - 1];
|
|
128
|
+
this.activateTool(above);
|
|
129
|
+
}
|
|
130
|
+
} */
|
|
131
|
+
/**
|
|
132
|
+
* Deactivate the active tool
|
|
133
|
+
*/
|
|
134
|
+
deactivateTool() {
|
|
135
|
+
this.clearActiveToolHistory();
|
|
136
|
+
this.store.state.updateAll({ active: false });
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Initialize the tool store and start observing the active tool
|
|
140
|
+
*/
|
|
141
|
+
initStore() {
|
|
142
|
+
this.store = new EntityStore([], {
|
|
143
|
+
getKey: (entity) => entity.name
|
|
144
|
+
});
|
|
145
|
+
this.activeTool$$ = this.store.stateView
|
|
146
|
+
.firstBy$((record) => record.state.active === true)
|
|
147
|
+
.subscribe((record) => {
|
|
148
|
+
if (record === undefined) {
|
|
149
|
+
this.setActiveTool(undefined);
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
const tool = record.entity;
|
|
153
|
+
const options = Object.assign({}, tool.options || {}, record.state.options || {});
|
|
154
|
+
this.setActiveTool(Object.assign({}, tool, { options }));
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Set the active tool and update the tool history
|
|
159
|
+
* @param tool Tool
|
|
160
|
+
*/
|
|
161
|
+
setActiveTool(tool) {
|
|
162
|
+
this.activeTool$.next(tool);
|
|
163
|
+
if (tool === undefined) {
|
|
164
|
+
this.clearActiveToolHistory();
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
this.activeToolHistory = this.activeToolHistory
|
|
168
|
+
.filter((name) => name !== tool.name)
|
|
169
|
+
.concat([tool.name]);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Clear the tool history
|
|
174
|
+
*/
|
|
175
|
+
clearActiveToolHistory() {
|
|
176
|
+
this.activeToolHistory = [];
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL3Rvb2wvc2hhcmVkL3Rvb2xib3gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sT0FBTztJQWdDbEIsWUFBb0IsVUFBMEIsRUFBRTtRQUE1QixZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQS9CaEQ7O1dBRUc7UUFDSCxnQkFBVyxHQUEwQixJQUFJLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVwRTs7V0FFRztRQUNILGFBQVEsR0FBOEIsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFPOUQ7O1dBRUc7UUFDSyxzQkFBaUIsR0FBYSxFQUFFLENBQUM7UUFFekM7O1dBRUc7UUFDSyxVQUFLLEdBQUcsSUFBSSxXQUFXLENBQU8sRUFBRSxFQUFFO1lBQ3hDLE1BQU0sRUFBRSxDQUFDLElBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUk7U0FDbEMsQ0FBQyxDQUFDO1FBT0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFQRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO0lBQzlCLENBQUM7SUFPRDs7T0FFRztJQUNILE9BQU87UUFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsSUFB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QUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOzs7T0FHRztJQUNLLGFBQWEsQ0FBQyxJQUFzQjtRQUMxQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDdEIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDL0I7YUFBTTtZQUNMLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCO2lCQUM1QyxNQUFNLENBQUMsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDO2lCQUM1QyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNLLHNCQUFzQjtRQUM1QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQzlCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudGl0eVJlY29yZCwgRW50aXR5U3RvcmUgfSBmcm9tICcuLi8uLi9lbnRpdHknO1xyXG5pbXBvcnQgeyBUb29sLCBUb29sYm94T3B0aW9ucyB9IGZyb20gJy4vdG9vbC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuLyoqXHJcbiAqIFNlcnZpY2Ugd2hlcmUgYWxsIGF2YWlsYWJsZSB0b29scyBhbmQgdGhlaXIgY29tcG9uZW50IGFyZSByZWdpc3RlcmVkLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIFRvb2xib3gge1xyXG4gIC8qKlxyXG4gICAqIE9ic2VydmFibGUgb2YgdGhlIGFjdGl2ZSB0b29sXHJcbiAgICovXHJcbiAgYWN0aXZlVG9vbCQ6IEJlaGF2aW9yU3ViamVjdDxUb29sPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3JkZXJlZCBsaXN0IG9mIHRvb2wgbmFtZXMgdG8gZGlzcGxheSBpbiBhIHRvb2xiYXJcclxuICAgKi9cclxuICB0b29sYmFyJDogQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoW10pO1xyXG5cclxuICAvKipcclxuICAgKiBPYnNlcnZhYmxlIG9mIHRoZSBhY3RpdmUgdG9vbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWN0aXZlVG9vbCQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGl2ZSB0b29sIGhpc3RvcnkuIFVzZWZ1bCBmb3IgYWN0aXZhdGluZyB0aGUgcHJldmlvdXMgdG9vbC5cclxuICAgKi9cclxuICBwcml2YXRlIGFjdGl2ZVRvb2xIaXN0b3J5OiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAvKipcclxuICAgKiBUb29sIHN0b3JlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzdG9yZSA9IG5ldyBFbnRpdHlTdG9yZTxUb29sPihbXSwge1xyXG4gICAgZ2V0S2V5OiAodG9vbDogVG9vbCkgPT4gdG9vbC5uYW1lXHJcbiAgfSk7XHJcblxyXG4gIGdldCB0b29scyQoKTogQmVoYXZpb3JTdWJqZWN0PFRvb2xbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuZW50aXRpZXMkO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBvcHRpb25zOiBUb29sYm94T3B0aW9ucyA9IHt9KSB7XHJcbiAgICB0aGlzLnNldFRvb2xiYXIob3B0aW9ucy50b29sYmFyKTtcclxuICAgIHRoaXMuaW5pdFN0b3JlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZXN0cm95IHRoZSB0b29sYm94XHJcbiAgICovXHJcbiAgZGVzdHJveSgpIHtcclxuICAgIHRoaXMuYWN0aXZlVG9vbCQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLnN0b3JlLmRlc3Ryb3koKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiBhIHRvb2xcclxuICAgKiBAcGFyYW0gbmFtZSBUb29sIG5hbWVcclxuICAgKiBAcmV0dXJucyB0b29sIFRvb2xcclxuICAgKi9cclxuICBnZXRUb29sKG5hbWU6IHN0cmluZyk6IFRvb2wge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuZ2V0KG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJuIGFsbCB0b29sc1xyXG4gICAqIEByZXR1cm5zIEFycmF5IG9mIHRvb2xzXHJcbiAgICovXHJcbiAgZ2V0VG9vbHMoKTogVG9vbFtdIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLmFsbCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRvb2wgY29uZmlndXJhdGlvbnNcclxuICAgKiBAcGFyYW0gdG9vbHMgVG9vbHNcclxuICAgKi9cclxuICBzZXRUb29scyh0b29sczogVG9vbFtdKSB7XHJcbiAgICB0aGlzLnN0b3JlLmxvYWQodG9vbHMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHRvb2xiYXJcclxuICAgKiBAcmV0dXJucyBUb29sYmFyIHZhbHVlXHJcbiAgICovXHJcbiAgZ2V0VG9vbGJhcigpOiBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gdGhpcy50b29sYmFyJC5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRvb2xiYXJcclxuICAgKiBAcGFyYW0gdG9vbGJhciBBIGxpc3Qgb2YgdG9vbCBuYW1lc1xyXG4gICAqL1xyXG4gIHNldFRvb2xiYXIodG9vbGJhcjogc3RyaW5nW10pIHtcclxuICAgIHRoaXMudG9vbGJhciQubmV4dCh0b29sYmFyIHx8IFtdKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGl2YXRlIGEgdG9vbCAoYW5kIGRlYWN0aXZhdGUgb3RoZXIgdG9vbHMpXHJcbiAgICogQHBhcmFtIG5hbWUgVG9vbCBuYW1lXHJcbiAgICogQHBhcmFtIG9wdGlvbnMgVG9vbCBvcHRpb25zXHJcbiAgICovXHJcbiAgYWN0aXZhdGVUb29sKG5hbWU6IHN0cmluZywgb3B0aW9uczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9KSB7XHJcbiAgICBjb25zdCB0b29sID0gdGhpcy5nZXRUb29sKG5hbWUpO1xyXG4gICAgaWYgKHRvb2wgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGUodG9vbCwgeyBhY3RpdmU6IHRydWUsIG9wdGlvbnMgfSwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY3RpdmF0ZSB0aGUgcHJldmlvdXMgdG9vbCwgaWYgYW55XHJcbiAgICovXHJcbiAgYWN0aXZhdGVQcmV2aW91c1Rvb2woKSB7XHJcbiAgICBpZiAodGhpcy5hY3RpdmVUb29sSGlzdG9yeS5sZW5ndGggPD0gMSkge1xyXG4gICAgICB0aGlzLmRlYWN0aXZhdGVUb29sKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IFtwcmV2aW91cywgY3VycmVudF0gPSB0aGlzLmFjdGl2ZVRvb2xIaXN0b3J5LnNwbGljZSgtMiwgMik7XHJcbiAgICB0aGlzLmFjdGl2YXRlVG9vbChwcmV2aW91cyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY3RpdmF0ZSB0aGUgdG9vbCBiZWxvdywgaWYgYW55XHJcbiAgICovXHJcbiAgLyogYWN0aXZhdGVCZWxvd1Rvb2woKSB7XHJcbiAgICBjb25zdCBhcnJheVRvb2xzID0gdGhpcy5nZXRUb29sYmFyKCk7XHJcbiAgICBjb25zdCBpbmRleCA9IGFycmF5VG9vbHMuZmluZEluZGV4KHQgPT4gdCA9PT0gdGhpcy5hY3RpdmVUb29sJC5nZXRWYWx1ZSgpLm5hbWUpO1xyXG4gICAgaWYgKGFycmF5VG9vbHNbaW5kZXggKyAxXSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuZGVhY3RpdmF0ZVRvb2woKTtcclxuICAgICAgY29uc3QgYmVsb3cgPSBhcnJheVRvb2xzW2luZGV4ICsgMV07XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVUb29sKGJlbG93KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGVhY3RpdmF0ZVRvb2woKTtcclxuICAgICAgY29uc3QgYmVsb3cgPSBhcnJheVRvb2xzWzBdO1xyXG4gICAgICB0aGlzLmFjdGl2YXRlVG9vbChiZWxvdyk7XHJcbiAgICB9XHJcbiAgfSAqL1xyXG5cclxuICAvKipcclxuICAgKiBBY3RpdmF0ZSB0aGUgdG9vbCBhYm92ZSwgaWYgYW55XHJcbiAgICovXHJcbiAgLyogYWN0aXZhdGVBYm92ZVRvb2woKSB7XHJcbiAgICBjb25zdCBhcnJheVRvb2xzID0gdGhpcy5nZXRUb29sYmFyKCk7XHJcbiAgICBjb25zdCBpbmRleCA9IGFycmF5VG9vbHMuZmluZEluZGV4KHQgPT4gdCA9PT0gdGhpcy5hY3RpdmVUb29sJC5nZXRWYWx1ZSgpLm5hbWUpO1xyXG4gICAgaWYgKGFycmF5VG9vbHNbaW5kZXggLSAxXSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuZGVhY3RpdmF0ZVRvb2woKTtcclxuICAgICAgY29uc3QgYWJvdmUgPSBhcnJheVRvb2xzW2luZGV4IC0gMV07XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVUb29sKGFib3ZlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGVhY3RpdmF0ZVRvb2woKTtcclxuICAgICAgY29uc3QgYWJvdmUgPSBhcnJheVRvb2xzW2FycmF5VG9vbHMubGVuZ3RoIC0gMV07XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVUb29sKGFib3ZlKTtcclxuICAgIH1cclxuICB9ICovXHJcblxyXG4gIC8qKlxyXG4gICAqIERlYWN0aXZhdGUgdGhlIGFjdGl2ZSB0b29sXHJcbiAgICovXHJcbiAgZGVhY3RpdmF0ZVRvb2woKSB7XHJcbiAgICB0aGlzLmNsZWFyQWN0aXZlVG9vbEhpc3RvcnkoKTtcclxuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlQWxsKHsgYWN0aXZlOiBmYWxzZSB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWxpemUgdGhlIHRvb2wgc3RvcmUgYW5kIHN0YXJ0IG9ic2VydmluZyB0aGUgYWN0aXZlIHRvb2xcclxuICAgKi9cclxuICBwcml2YXRlIGluaXRTdG9yZSgpIHtcclxuICAgIHRoaXMuc3RvcmUgPSBuZXcgRW50aXR5U3RvcmU8VG9vbD4oW10sIHtcclxuICAgICAgZ2V0S2V5OiAoZW50aXR5OiBUb29sKSA9PiBlbnRpdHkubmFtZVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5hY3RpdmVUb29sJCQgPSB0aGlzLnN0b3JlLnN0YXRlVmlld1xyXG4gICAgICAuZmlyc3RCeSQoKHJlY29yZDogRW50aXR5UmVjb3JkPFRvb2w+KSA9PiByZWNvcmQuc3RhdGUuYWN0aXZlID09PSB0cnVlKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZWNvcmQ6IEVudGl0eVJlY29yZDxUb29sPikgPT4ge1xyXG4gICAgICAgIGlmIChyZWNvcmQgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgdGhpcy5zZXRBY3RpdmVUb29sKHVuZGVmaW5lZCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCB0b29sID0gcmVjb3JkLmVudGl0eTtcclxuICAgICAgICBjb25zdCBvcHRpb25zID0gT2JqZWN0LmFzc2lnbihcclxuICAgICAgICAgIHt9LFxyXG4gICAgICAgICAgdG9vbC5vcHRpb25zIHx8IHt9LFxyXG4gICAgICAgICAgcmVjb3JkLnN0YXRlLm9wdGlvbnMgfHwge31cclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuc2V0QWN0aXZlVG9vbChPYmplY3QuYXNzaWduKHt9LCB0b29sLCB7IG9wdGlvbnMgfSkpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCB0aGUgYWN0aXZlIHRvb2wgYW5kIHVwZGF0ZSB0aGUgdG9vbCBoaXN0b3J5XHJcbiAgICogQHBhcmFtIHRvb2wgVG9vbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0QWN0aXZlVG9vbCh0b29sOiBUb29sIHwgdW5kZWZpbmVkKSB7XHJcbiAgICB0aGlzLmFjdGl2ZVRvb2wkLm5leHQodG9vbCk7XHJcbiAgICBpZiAodG9vbCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuY2xlYXJBY3RpdmVUb29sSGlzdG9yeSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hY3RpdmVUb29sSGlzdG9yeSA9IHRoaXMuYWN0aXZlVG9vbEhpc3RvcnlcclxuICAgICAgICAuZmlsdGVyKChuYW1lOiBzdHJpbmcpID0+IG5hbWUgIT09IHRvb2wubmFtZSlcclxuICAgICAgICAuY29uY2F0KFt0b29sLm5hbWVdKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENsZWFyIHRoZSB0b29sIGhpc3RvcnlcclxuICAgKi9cclxuICBwcml2YXRlIGNsZWFyQWN0aXZlVG9vbEhpc3RvcnkoKSB7XHJcbiAgICB0aGlzLmFjdGl2ZVRvb2xIaXN0b3J5ID0gW107XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,33 +1,34 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ToolService } from './shared/tool.service';
|
|
4
|
-
import { IgoToolboxModule } from './toolbox/toolbox.module';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class IgoToolModule {
|
|
7
|
-
static forRoot() {
|
|
8
|
-
return {
|
|
9
|
-
ngModule: IgoToolModule,
|
|
10
|
-
providers: [
|
|
11
|
-
ToolService
|
|
12
|
-
]
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
IgoToolModule.ɵ
|
|
17
|
-
IgoToolModule.ɵ
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
type: NgModule,
|
|
23
|
-
args: [{
|
|
24
|
-
imports: [
|
|
25
|
-
CommonModule
|
|
26
|
-
],
|
|
27
|
-
exports: [
|
|
28
|
-
IgoToolboxModule
|
|
29
|
-
],
|
|
30
|
-
declarations: []
|
|
31
|
-
}]
|
|
32
|
-
}], null, null); })();
|
|
33
|
-
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ToolService } from './shared/tool.service';
|
|
4
|
+
import { IgoToolboxModule } from './toolbox/toolbox.module';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class IgoToolModule {
|
|
7
|
+
static forRoot() {
|
|
8
|
+
return {
|
|
9
|
+
ngModule: IgoToolModule,
|
|
10
|
+
providers: [
|
|
11
|
+
ToolService
|
|
12
|
+
]
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
IgoToolModule.ɵfac = function IgoToolModule_Factory(t) { return new (t || IgoToolModule)(); };
|
|
17
|
+
IgoToolModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoToolModule });
|
|
18
|
+
IgoToolModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
|
|
19
|
+
CommonModule
|
|
20
|
+
], IgoToolboxModule] });
|
|
21
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoToolModule, [{
|
|
22
|
+
type: NgModule,
|
|
23
|
+
args: [{
|
|
24
|
+
imports: [
|
|
25
|
+
CommonModule
|
|
26
|
+
],
|
|
27
|
+
exports: [
|
|
28
|
+
IgoToolboxModule
|
|
29
|
+
],
|
|
30
|
+
declarations: []
|
|
31
|
+
}]
|
|
32
|
+
}], null, null); })();
|
|
33
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoToolModule, { imports: [CommonModule], exports: [IgoToolboxModule] }); })();
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi90b29sL3Rvb2wubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBVzVELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVCxXQUFXO2FBQ1o7U0FDRixDQUFDO0lBQ0osQ0FBQzs7MEVBUlUsYUFBYTsrREFBYixhQUFhO21FQVJmO1lBQ1AsWUFBWTtTQUNiLEVBRUMsZ0JBQWdCO3VGQUlQLGFBQWE7Y0FUekIsUUFBUTtlQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO2lCQUNiO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxnQkFBZ0I7aUJBQ2pCO2dCQUNELFlBQVksRUFBRSxFQUFFO2FBQ2pCOzt3RkFDWSxhQUFhLGNBUHRCLFlBQVksYUFHWixnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgVG9vbFNlcnZpY2UgfSBmcm9tICcuL3NoYXJlZC90b29sLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJZ29Ub29sYm94TW9kdWxlIH0gZnJvbSAnLi90b29sYm94L3Rvb2xib3gubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBJZ29Ub29sYm94TW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJZ29Ub29sTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPElnb1Rvb2xNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBJZ29Ub29sTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBUb29sU2VydmljZVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
2
|
-
export function toolSlideInOut(speed = '300ms', type = 'ease-in-out') {
|
|
3
|
-
return trigger('toolSlideInOut', [
|
|
4
|
-
state('enter', style({
|
|
5
|
-
transform: 'translate3d(0, 0, 0)'
|
|
6
|
-
})),
|
|
7
|
-
transition('void => enter', animate(speed + ' ' + type))
|
|
8
|
-
]);
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
2
|
+
export function toolSlideInOut(speed = '300ms', type = 'ease-in-out') {
|
|
3
|
+
return trigger('toolSlideInOut', [
|
|
4
|
+
state('enter', style({
|
|
5
|
+
transform: 'translate3d(0, 0, 0)'
|
|
6
|
+
})),
|
|
7
|
+
transition('void => enter', animate(speed + ' ' + type))
|
|
8
|
+
]);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC5hbmltYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi90b29sL3Rvb2xib3gvdG9vbGJveC5hbmltYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBRVIsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixNQUFNLFVBQVUsY0FBYyxDQUM1QixLQUFLLEdBQUcsT0FBTyxFQUNmLElBQUksR0FBRyxhQUFhO0lBRXBCLE9BQU8sT0FBTyxDQUFDLGdCQUFnQixFQUFFO1FBQy9CLEtBQUssQ0FDSCxPQUFPLEVBQ1AsS0FBSyxDQUFDO1lBQ0osU0FBUyxFQUFFLHNCQUFzQjtTQUNsQyxDQUFDLENBQ0g7UUFDRCxVQUFVLENBQUMsZUFBZSxFQUFFLE9BQU8sQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO0tBQ3pELENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIHRyaWdnZXIsXHJcbiAgc3RhdGUsXHJcbiAgc3R5bGUsXHJcbiAgdHJhbnNpdGlvbixcclxuICBhbmltYXRlLFxyXG4gIEFuaW1hdGlvblRyaWdnZXJNZXRhZGF0YVxyXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvb2xTbGlkZUluT3V0KFxyXG4gIHNwZWVkID0gJzMwMG1zJyxcclxuICB0eXBlID0gJ2Vhc2UtaW4tb3V0J1xyXG4pOiBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGEge1xyXG4gIHJldHVybiB0cmlnZ2VyKCd0b29sU2xpZGVJbk91dCcsIFtcclxuICAgIHN0YXRlKFxyXG4gICAgICAnZW50ZXInLFxyXG4gICAgICBzdHlsZSh7XHJcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCwgMCwgMCknXHJcbiAgICAgIH0pXHJcbiAgICApLFxyXG4gICAgdHJhbnNpdGlvbigndm9pZCA9PiBlbnRlcicsIGFuaW1hdGUoc3BlZWQgKyAnICcgKyB0eXBlKSlcclxuICBdKTtcclxufVxyXG4iXX0=
|