@skyux/core 5.7.0 → 6.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/documentation.json +4 -4
- package/esm2020/index.mjs +60 -0
- package/esm2020/lib/modules/adapter-service/adapter.module.mjs +16 -0
- package/esm2020/lib/modules/adapter-service/adapter.service.mjs +218 -0
- package/esm2020/lib/modules/adapter-service/focusable-children-options.mjs +2 -0
- package/esm2020/lib/modules/affix/affix-auto-fit-context.mjs +12 -0
- package/esm2020/lib/modules/affix/affix-config.mjs +2 -0
- package/esm2020/lib/modules/affix/affix-horizontal-alignment.mjs +2 -0
- package/esm2020/lib/modules/affix/affix-offset-change.mjs +2 -0
- package/esm2020/lib/modules/affix/affix-offset.mjs +2 -0
- package/esm2020/lib/modules/affix/affix-placement-change.mjs +2 -0
- package/esm2020/lib/modules/affix/affix-placement.mjs +2 -0
- package/esm2020/lib/modules/affix/affix-utils.mjs +18 -0
- package/esm2020/lib/modules/affix/affix-vertical-alignment.mjs +2 -0
- package/esm2020/lib/modules/affix/affix.directive.mjs +100 -0
- package/esm2020/lib/modules/affix/affix.module.mjs +18 -0
- package/esm2020/lib/modules/affix/affix.service.mjs +24 -0
- package/esm2020/lib/modules/affix/affixer.mjs +349 -0
- package/esm2020/lib/modules/affix/dom-utils.mjs +77 -0
- package/esm2020/lib/modules/dock/dock-dom-adapter.service.mjs +80 -0
- package/esm2020/lib/modules/dock/dock-insert-component-config.mjs +2 -0
- package/esm2020/lib/modules/dock/dock-item-config.mjs +2 -0
- package/esm2020/lib/modules/dock/dock-item-reference.mjs +2 -0
- package/esm2020/lib/modules/dock/dock-item.mjs +29 -0
- package/esm2020/lib/modules/dock/dock-location.mjs +19 -0
- package/esm2020/lib/modules/dock/dock-options.mjs +2 -0
- package/esm2020/lib/modules/dock/dock.component.mjs +88 -0
- package/esm2020/lib/modules/dock/dock.module.mjs +19 -0
- package/esm2020/lib/modules/dock/dock.service.mjs +95 -0
- package/esm2020/lib/modules/dock/sort-by-stack-order.mjs +13 -0
- package/esm2020/lib/modules/dynamic-component/dynamic-component-location.mjs +27 -0
- package/esm2020/lib/modules/dynamic-component/dynamic-component-options.mjs +2 -0
- package/esm2020/lib/modules/dynamic-component/dynamic-component.module.mjs +17 -0
- package/esm2020/lib/modules/dynamic-component/dynamic-component.service.mjs +83 -0
- package/esm2020/lib/modules/format/app-format.mjs +18 -0
- package/esm2020/lib/modules/id/id.directive.mjs +34 -0
- package/esm2020/lib/modules/id/id.module.mjs +16 -0
- package/esm2020/lib/modules/log/log.module.mjs +16 -0
- package/esm2020/lib/modules/log/log.service.mjs +23 -0
- package/esm2020/lib/modules/media-query/media-breakpoints.mjs +20 -0
- package/esm2020/lib/modules/media-query/media-query-listener.mjs +2 -0
- package/esm2020/lib/modules/media-query/media-query.module.mjs +16 -0
- package/esm2020/lib/modules/media-query/media-query.service.mjs +121 -0
- package/esm2020/lib/modules/mutation/mutation-observer-service.mjs +16 -0
- package/esm2020/lib/modules/numeric/numeric-symbol.mjs +2 -0
- package/esm2020/lib/modules/numeric/numeric.module.mjs +20 -0
- package/esm2020/lib/modules/numeric/numeric.options.mjs +41 -0
- package/esm2020/lib/modules/numeric/numeric.pipe.mjs +82 -0
- package/esm2020/lib/modules/numeric/numeric.service.mjs +188 -0
- package/esm2020/lib/modules/overlay/overlay-adapter.service.mjs +41 -0
- package/esm2020/lib/modules/overlay/overlay-config.mjs +2 -0
- package/esm2020/lib/modules/overlay/overlay-context.mjs +10 -0
- package/esm2020/lib/modules/overlay/overlay-instance.mjs +55 -0
- package/esm2020/lib/modules/overlay/overlay.component.mjs +149 -0
- package/esm2020/lib/modules/overlay/overlay.module.mjs +17 -0
- package/esm2020/lib/modules/overlay/overlay.service.mjs +120 -0
- package/esm2020/lib/modules/percent-pipe/percent-pipe.module.mjs +20 -0
- package/esm2020/lib/modules/percent-pipe/percent.pipe.mjs +48 -0
- package/esm2020/lib/modules/scrollable-host/scrollable-host.service.mjs +184 -0
- package/esm2020/lib/modules/shared/number-format/number-format-utility.mjs +72 -0
- package/esm2020/lib/modules/shared/sky-core-resources.module.mjs +50 -0
- package/esm2020/lib/modules/title/set-title-args.mjs +2 -0
- package/esm2020/lib/modules/title/title.service.mjs +31 -0
- package/esm2020/lib/modules/ui-config/ui-config.service.mjs +21 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper-boundary-info.mjs +2 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper-fixed-styles.mjs +2 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper-host-options.mjs +10 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper-offset.mjs +2 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper-options.mjs +2 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper.directive.mjs +116 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper.mjs +251 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper.module.mjs +16 -0
- package/esm2020/lib/modules/viewkeeper/viewkeeper.service.mjs +39 -0
- package/esm2020/lib/modules/window/window-ref.mjs +30 -0
- package/esm2020/skyux-core.mjs +5 -0
- package/esm2020/testing/mock-media-query.service.mjs +41 -0
- package/esm2020/testing/mock-ui-config.service.mjs +59 -0
- package/esm2020/testing/public-api.mjs +3 -0
- package/esm2020/testing/skyux-core-testing.mjs +5 -0
- package/fesm2015/{skyux-core-testing.js → skyux-core-testing.mjs} +7 -7
- package/fesm2015/skyux-core-testing.mjs.map +1 -0
- package/fesm2015/skyux-core.mjs +3043 -0
- package/fesm2015/skyux-core.mjs.map +1 -0
- package/fesm2020/skyux-core-testing.mjs +103 -0
- package/fesm2020/skyux-core-testing.mjs.map +1 -0
- package/{fesm2015/skyux-core.js → fesm2020/skyux-core.mjs} +134 -150
- package/fesm2020/skyux-core.mjs.map +1 -0
- package/package.json +32 -11
- package/testing/package.json +5 -5
- package/bundles/skyux-core-testing.umd.js +0 -459
- package/bundles/skyux-core.umd.js +0 -3648
- package/esm2015/index.js +0 -60
- package/esm2015/index.js.map +0 -1
- package/esm2015/lib/modules/adapter-service/adapter.module.js +0 -16
- package/esm2015/lib/modules/adapter-service/adapter.module.js.map +0 -1
- package/esm2015/lib/modules/adapter-service/adapter.service.js +0 -218
- package/esm2015/lib/modules/adapter-service/adapter.service.js.map +0 -1
- package/esm2015/lib/modules/adapter-service/focusable-children-options.js +0 -2
- package/esm2015/lib/modules/adapter-service/focusable-children-options.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-auto-fit-context.js +0 -12
- package/esm2015/lib/modules/affix/affix-auto-fit-context.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-config.js +0 -2
- package/esm2015/lib/modules/affix/affix-config.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-horizontal-alignment.js +0 -2
- package/esm2015/lib/modules/affix/affix-horizontal-alignment.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-offset-change.js +0 -2
- package/esm2015/lib/modules/affix/affix-offset-change.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-offset.js +0 -2
- package/esm2015/lib/modules/affix/affix-offset.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-placement-change.js +0 -2
- package/esm2015/lib/modules/affix/affix-placement-change.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-placement.js +0 -2
- package/esm2015/lib/modules/affix/affix-placement.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-utils.js +0 -18
- package/esm2015/lib/modules/affix/affix-utils.js.map +0 -1
- package/esm2015/lib/modules/affix/affix-vertical-alignment.js +0 -2
- package/esm2015/lib/modules/affix/affix-vertical-alignment.js.map +0 -1
- package/esm2015/lib/modules/affix/affix.directive.js +0 -100
- package/esm2015/lib/modules/affix/affix.directive.js.map +0 -1
- package/esm2015/lib/modules/affix/affix.module.js +0 -18
- package/esm2015/lib/modules/affix/affix.module.js.map +0 -1
- package/esm2015/lib/modules/affix/affix.service.js +0 -24
- package/esm2015/lib/modules/affix/affix.service.js.map +0 -1
- package/esm2015/lib/modules/affix/affixer.js +0 -349
- package/esm2015/lib/modules/affix/affixer.js.map +0 -1
- package/esm2015/lib/modules/affix/dom-utils.js +0 -77
- package/esm2015/lib/modules/affix/dom-utils.js.map +0 -1
- package/esm2015/lib/modules/dock/dock-dom-adapter.service.js +0 -80
- package/esm2015/lib/modules/dock/dock-dom-adapter.service.js.map +0 -1
- package/esm2015/lib/modules/dock/dock-insert-component-config.js +0 -2
- package/esm2015/lib/modules/dock/dock-insert-component-config.js.map +0 -1
- package/esm2015/lib/modules/dock/dock-item-config.js +0 -2
- package/esm2015/lib/modules/dock/dock-item-config.js.map +0 -1
- package/esm2015/lib/modules/dock/dock-item-reference.js +0 -2
- package/esm2015/lib/modules/dock/dock-item-reference.js.map +0 -1
- package/esm2015/lib/modules/dock/dock-item.js +0 -29
- package/esm2015/lib/modules/dock/dock-item.js.map +0 -1
- package/esm2015/lib/modules/dock/dock-location.js +0 -19
- package/esm2015/lib/modules/dock/dock-location.js.map +0 -1
- package/esm2015/lib/modules/dock/dock-options.js +0 -2
- package/esm2015/lib/modules/dock/dock-options.js.map +0 -1
- package/esm2015/lib/modules/dock/dock.component.js +0 -95
- package/esm2015/lib/modules/dock/dock.component.js.map +0 -1
- package/esm2015/lib/modules/dock/dock.module.js +0 -20
- package/esm2015/lib/modules/dock/dock.module.js.map +0 -1
- package/esm2015/lib/modules/dock/dock.service.js +0 -95
- package/esm2015/lib/modules/dock/dock.service.js.map +0 -1
- package/esm2015/lib/modules/dock/sort-by-stack-order.js +0 -13
- package/esm2015/lib/modules/dock/sort-by-stack-order.js.map +0 -1
- package/esm2015/lib/modules/dynamic-component/dynamic-component-location.js +0 -27
- package/esm2015/lib/modules/dynamic-component/dynamic-component-location.js.map +0 -1
- package/esm2015/lib/modules/dynamic-component/dynamic-component-options.js +0 -2
- package/esm2015/lib/modules/dynamic-component/dynamic-component-options.js.map +0 -1
- package/esm2015/lib/modules/dynamic-component/dynamic-component.module.js +0 -17
- package/esm2015/lib/modules/dynamic-component/dynamic-component.module.js.map +0 -1
- package/esm2015/lib/modules/dynamic-component/dynamic-component.service.js +0 -83
- package/esm2015/lib/modules/dynamic-component/dynamic-component.service.js.map +0 -1
- package/esm2015/lib/modules/format/app-format.js +0 -18
- package/esm2015/lib/modules/format/app-format.js.map +0 -1
- package/esm2015/lib/modules/id/id.directive.js +0 -34
- package/esm2015/lib/modules/id/id.directive.js.map +0 -1
- package/esm2015/lib/modules/id/id.module.js +0 -16
- package/esm2015/lib/modules/id/id.module.js.map +0 -1
- package/esm2015/lib/modules/log/log.module.js +0 -16
- package/esm2015/lib/modules/log/log.module.js.map +0 -1
- package/esm2015/lib/modules/log/log.service.js +0 -23
- package/esm2015/lib/modules/log/log.service.js.map +0 -1
- package/esm2015/lib/modules/media-query/media-breakpoints.js +0 -20
- package/esm2015/lib/modules/media-query/media-breakpoints.js.map +0 -1
- package/esm2015/lib/modules/media-query/media-query-listener.js +0 -2
- package/esm2015/lib/modules/media-query/media-query-listener.js.map +0 -1
- package/esm2015/lib/modules/media-query/media-query.module.js +0 -16
- package/esm2015/lib/modules/media-query/media-query.module.js.map +0 -1
- package/esm2015/lib/modules/media-query/media-query.service.js +0 -121
- package/esm2015/lib/modules/media-query/media-query.service.js.map +0 -1
- package/esm2015/lib/modules/mutation/mutation-observer-service.js +0 -16
- package/esm2015/lib/modules/mutation/mutation-observer-service.js.map +0 -1
- package/esm2015/lib/modules/numeric/numeric-symbol.js +0 -2
- package/esm2015/lib/modules/numeric/numeric-symbol.js.map +0 -1
- package/esm2015/lib/modules/numeric/numeric.module.js +0 -20
- package/esm2015/lib/modules/numeric/numeric.module.js.map +0 -1
- package/esm2015/lib/modules/numeric/numeric.options.js +0 -41
- package/esm2015/lib/modules/numeric/numeric.options.js.map +0 -1
- package/esm2015/lib/modules/numeric/numeric.pipe.js +0 -83
- package/esm2015/lib/modules/numeric/numeric.pipe.js.map +0 -1
- package/esm2015/lib/modules/numeric/numeric.service.js +0 -189
- package/esm2015/lib/modules/numeric/numeric.service.js.map +0 -1
- package/esm2015/lib/modules/overlay/overlay-adapter.service.js +0 -41
- package/esm2015/lib/modules/overlay/overlay-adapter.service.js.map +0 -1
- package/esm2015/lib/modules/overlay/overlay-config.js +0 -2
- package/esm2015/lib/modules/overlay/overlay-config.js.map +0 -1
- package/esm2015/lib/modules/overlay/overlay-context.js +0 -10
- package/esm2015/lib/modules/overlay/overlay-context.js.map +0 -1
- package/esm2015/lib/modules/overlay/overlay-instance.js +0 -55
- package/esm2015/lib/modules/overlay/overlay-instance.js.map +0 -1
- package/esm2015/lib/modules/overlay/overlay.component.js +0 -154
- package/esm2015/lib/modules/overlay/overlay.component.js.map +0 -1
- package/esm2015/lib/modules/overlay/overlay.module.js +0 -18
- package/esm2015/lib/modules/overlay/overlay.module.js.map +0 -1
- package/esm2015/lib/modules/overlay/overlay.service.js +0 -120
- package/esm2015/lib/modules/overlay/overlay.service.js.map +0 -1
- package/esm2015/lib/modules/percent-pipe/percent-pipe.module.js +0 -20
- package/esm2015/lib/modules/percent-pipe/percent-pipe.module.js.map +0 -1
- package/esm2015/lib/modules/percent-pipe/percent.pipe.js +0 -48
- package/esm2015/lib/modules/percent-pipe/percent.pipe.js.map +0 -1
- package/esm2015/lib/modules/scrollable-host/scrollable-host.service.js +0 -184
- package/esm2015/lib/modules/scrollable-host/scrollable-host.service.js.map +0 -1
- package/esm2015/lib/modules/shared/number-format/number-format-utility.js +0 -72
- package/esm2015/lib/modules/shared/number-format/number-format-utility.js.map +0 -1
- package/esm2015/lib/modules/shared/sky-core-resources.module.js +0 -50
- package/esm2015/lib/modules/shared/sky-core-resources.module.js.map +0 -1
- package/esm2015/lib/modules/title/set-title-args.js +0 -2
- package/esm2015/lib/modules/title/set-title-args.js.map +0 -1
- package/esm2015/lib/modules/title/title.service.js +0 -31
- package/esm2015/lib/modules/title/title.service.js.map +0 -1
- package/esm2015/lib/modules/ui-config/ui-config.service.js +0 -21
- package/esm2015/lib/modules/ui-config/ui-config.service.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper-boundary-info.js +0 -2
- package/esm2015/lib/modules/viewkeeper/viewkeeper-boundary-info.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper-fixed-styles.js +0 -2
- package/esm2015/lib/modules/viewkeeper/viewkeeper-fixed-styles.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper-host-options.js +0 -10
- package/esm2015/lib/modules/viewkeeper/viewkeeper-host-options.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper-offset.js +0 -2
- package/esm2015/lib/modules/viewkeeper/viewkeeper-offset.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper-options.js +0 -2
- package/esm2015/lib/modules/viewkeeper/viewkeeper-options.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper.directive.js +0 -116
- package/esm2015/lib/modules/viewkeeper/viewkeeper.directive.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper.js +0 -251
- package/esm2015/lib/modules/viewkeeper/viewkeeper.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper.module.js +0 -16
- package/esm2015/lib/modules/viewkeeper/viewkeeper.module.js.map +0 -1
- package/esm2015/lib/modules/viewkeeper/viewkeeper.service.js +0 -39
- package/esm2015/lib/modules/viewkeeper/viewkeeper.service.js.map +0 -1
- package/esm2015/lib/modules/window/window-ref.js +0 -30
- package/esm2015/lib/modules/window/window-ref.js.map +0 -1
- package/esm2015/skyux-core.js +0 -5
- package/esm2015/skyux-core.js.map +0 -1
- package/esm2015/testing/mock-media-query.service.js +0 -41
- package/esm2015/testing/mock-media-query.service.js.map +0 -1
- package/esm2015/testing/mock-ui-config.service.js +0 -59
- package/esm2015/testing/mock-ui-config.service.js.map +0 -1
- package/esm2015/testing/public-api.js +0 -3
- package/esm2015/testing/public-api.js.map +0 -1
- package/esm2015/testing/skyux-core-testing.js +0 -5
- package/esm2015/testing/skyux-core-testing.js.map +0 -1
- package/fesm2015/skyux-core-testing.js.map +0 -1
- package/fesm2015/skyux-core.js.map +0 -1
@@ -0,0 +1,29 @@
|
|
1
|
+
import { Subject } from 'rxjs';
|
2
|
+
/**
|
3
|
+
* Represents a single item added to the dock.
|
4
|
+
*/
|
5
|
+
export class SkyDockItem {
|
6
|
+
/**
|
7
|
+
* @param componentInstance The item's component instance.
|
8
|
+
* @param stackOrder The assigned stack order of the docked item.
|
9
|
+
*/
|
10
|
+
constructor(componentInstance, stackOrder) {
|
11
|
+
this.componentInstance = componentInstance;
|
12
|
+
this.stackOrder = stackOrder;
|
13
|
+
this._destroyed = new Subject();
|
14
|
+
}
|
15
|
+
/**
|
16
|
+
* An event that emits when the item is removed from the dock.
|
17
|
+
*/
|
18
|
+
get destroyed() {
|
19
|
+
return this._destroyed.asObservable();
|
20
|
+
}
|
21
|
+
/**
|
22
|
+
* Removes the item from the dock.
|
23
|
+
*/
|
24
|
+
destroy() {
|
25
|
+
this._destroyed.next();
|
26
|
+
this._destroyed.complete();
|
27
|
+
}
|
28
|
+
}
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2RvY2svZG9jay1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBVztJQVV0Qjs7O09BR0c7SUFDSCxZQUNrQixpQkFBb0IsRUFDcEIsVUFBa0I7UUFEbEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFHO1FBQ3BCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFSNUIsZUFBVSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFTdEMsQ0FBQztJQWhCSjs7T0FFRztJQUNILElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQWFEOztPQUVHO0lBQ0ksT0FBTztRQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM3QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHNpbmdsZSBpdGVtIGFkZGVkIHRvIHRoZSBkb2NrLlxuICovXG5leHBvcnQgY2xhc3MgU2t5RG9ja0l0ZW08VD4ge1xuICAvKipcbiAgICogQW4gZXZlbnQgdGhhdCBlbWl0cyB3aGVuIHRoZSBpdGVtIGlzIHJlbW92ZWQgZnJvbSB0aGUgZG9jay5cbiAgICovXG4gIHB1YmxpYyBnZXQgZGVzdHJveWVkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLl9kZXN0cm95ZWQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIF9kZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gY29tcG9uZW50SW5zdGFuY2UgVGhlIGl0ZW0ncyBjb21wb25lbnQgaW5zdGFuY2UuXG4gICAqIEBwYXJhbSBzdGFja09yZGVyIFRoZSBhc3NpZ25lZCBzdGFjayBvcmRlciBvZiB0aGUgZG9ja2VkIGl0ZW0uXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29tcG9uZW50SW5zdGFuY2U6IFQsXG4gICAgcHVibGljIHJlYWRvbmx5IHN0YWNrT3JkZXI6IG51bWJlclxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgdGhlIGl0ZW0gZnJvbSB0aGUgZG9jay5cbiAgICovXG4gIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3llZC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveWVkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,19 @@
|
|
1
|
+
/**
|
2
|
+
* The location on the page where the dock component should be rendered.
|
3
|
+
*/
|
4
|
+
export var SkyDockLocation;
|
5
|
+
(function (SkyDockLocation) {
|
6
|
+
/**
|
7
|
+
* Renders the dock component before a given element.
|
8
|
+
*/
|
9
|
+
SkyDockLocation[SkyDockLocation["BeforeElement"] = 0] = "BeforeElement";
|
10
|
+
/**
|
11
|
+
* Renders the dock component as the last element inside the BODY element.
|
12
|
+
*/
|
13
|
+
SkyDockLocation[SkyDockLocation["BodyBottom"] = 1] = "BodyBottom";
|
14
|
+
/**
|
15
|
+
* Renders the dock component as the last element inside a given element.
|
16
|
+
*/
|
17
|
+
SkyDockLocation[SkyDockLocation["ElementBottom"] = 2] = "ElementBottom";
|
18
|
+
})(SkyDockLocation || (SkyDockLocation = {}));
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay1sb2NhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9kb2NrL2RvY2stbG9jYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxlQWVYO0FBZkQsV0FBWSxlQUFlO0lBQ3pCOztPQUVHO0lBQ0gsdUVBQWEsQ0FBQTtJQUViOztPQUVHO0lBQ0gsaUVBQVUsQ0FBQTtJQUVWOztPQUVHO0lBQ0gsdUVBQWEsQ0FBQTtBQUNmLENBQUMsRUFmVyxlQUFlLEtBQWYsZUFBZSxRQWUxQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhlIGxvY2F0aW9uIG9uIHRoZSBwYWdlIHdoZXJlIHRoZSBkb2NrIGNvbXBvbmVudCBzaG91bGQgYmUgcmVuZGVyZWQuXG4gKi9cbmV4cG9ydCBlbnVtIFNreURvY2tMb2NhdGlvbiB7XG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBkb2NrIGNvbXBvbmVudCBiZWZvcmUgYSBnaXZlbiBlbGVtZW50LlxuICAgKi9cbiAgQmVmb3JlRWxlbWVudCxcblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgZG9jayBjb21wb25lbnQgYXMgdGhlIGxhc3QgZWxlbWVudCBpbnNpZGUgdGhlIEJPRFkgZWxlbWVudC5cbiAgICovXG4gIEJvZHlCb3R0b20sXG5cbiAgLyoqXG4gICAqIFJlbmRlcnMgdGhlIGRvY2sgY29tcG9uZW50IGFzIHRoZSBsYXN0IGVsZW1lbnQgaW5zaWRlIGEgZ2l2ZW4gZWxlbWVudC5cbiAgICovXG4gIEVsZW1lbnRCb3R0b20sXG59XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2RvY2svZG9jay1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lEb2NrTG9jYXRpb24gfSBmcm9tICcuL2RvY2stbG9jYXRpb24nO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGFkZGluZyBhIGRvY2sgY29tcG9uZW50IHRvIHRoZSBwYWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNreURvY2tPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBsb2NhdGlvbiBvbiB0aGUgcGFnZSB3aGVyZSB0aGUgZG9jayBjb21wb25lbnQgc2hvdWxkIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgbG9jYXRpb24/OiBTa3lEb2NrTG9jYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSByZWZlcmVuY2UgZWxlbWVudCB1c2VkIHdoZW4gdXNpbmcgdGhlIGBCZWZvcmVFbGVtZW50YCBvciBgRWxlbWVudEJvdHRvbWAgbG9jYXRpb25zLlxuICAgKi9cbiAgcmVmZXJlbmNlRWw/OiBIVE1MRWxlbWVudDtcblxuICAvKipcbiAgICogVGhlIHotaW5kZXggZm9yIHRoZSBkb2NrIGVsZW1lbnRcbiAgICovXG4gIHpJbmRleD86IG51bWJlcjtcbn1cbiJdfQ==
|
@@ -0,0 +1,88 @@
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ComponentFactoryResolver, ElementRef, Injector, ViewChild, ViewContainerRef, } from '@angular/core';
|
2
|
+
import { SkyDockDomAdapterService } from './dock-dom-adapter.service';
|
3
|
+
import { SkyDockLocation } from './dock-location';
|
4
|
+
import { sortByStackOrder } from './sort-by-stack-order';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
import * as i1 from "./dock-dom-adapter.service";
|
7
|
+
/**
|
8
|
+
* @internal
|
9
|
+
*/
|
10
|
+
export class SkyDockComponent {
|
11
|
+
constructor(changeDetector, resolver, elementRef, injector, domAdapter) {
|
12
|
+
this.changeDetector = changeDetector;
|
13
|
+
this.resolver = resolver;
|
14
|
+
this.elementRef = elementRef;
|
15
|
+
this.injector = injector;
|
16
|
+
this.domAdapter = domAdapter;
|
17
|
+
this.itemRefs = [];
|
18
|
+
}
|
19
|
+
insertComponent(component, config = {}) {
|
20
|
+
const factory = this.resolver.resolveComponentFactory(component);
|
21
|
+
const injector = Injector.create({
|
22
|
+
providers: config.providers || [],
|
23
|
+
parent: this.injector,
|
24
|
+
});
|
25
|
+
const componentRef = this.target.createComponent(factory, undefined, injector);
|
26
|
+
const stackOrder = config.stackOrder !== null && config.stackOrder !== undefined
|
27
|
+
? config.stackOrder
|
28
|
+
: this.getHighestStackOrder();
|
29
|
+
this.itemRefs.push({
|
30
|
+
componentRef,
|
31
|
+
stackOrder,
|
32
|
+
});
|
33
|
+
this.sortItemsByStackOrder();
|
34
|
+
this.changeDetector.markForCheck();
|
35
|
+
return {
|
36
|
+
componentRef,
|
37
|
+
stackOrder,
|
38
|
+
};
|
39
|
+
}
|
40
|
+
removeItem(item) {
|
41
|
+
const viewRef = item.componentRef.hostView;
|
42
|
+
this.target.remove(this.target.indexOf(viewRef));
|
43
|
+
const found = this.itemRefs.find((i) => i.componentRef.hostView === viewRef);
|
44
|
+
this.itemRefs.splice(this.itemRefs.indexOf(found), 1);
|
45
|
+
}
|
46
|
+
setOptions(options) {
|
47
|
+
this.options = options;
|
48
|
+
switch (this.options?.location) {
|
49
|
+
case SkyDockLocation.BeforeElement:
|
50
|
+
this.domAdapter.unbindDock(this.elementRef);
|
51
|
+
break;
|
52
|
+
case SkyDockLocation.ElementBottom:
|
53
|
+
this.domAdapter.setSticky(this.elementRef);
|
54
|
+
break;
|
55
|
+
case SkyDockLocation.BodyBottom:
|
56
|
+
default:
|
57
|
+
this.domAdapter.watchDomChanges(this.elementRef);
|
58
|
+
break;
|
59
|
+
}
|
60
|
+
if (this.options?.zIndex) {
|
61
|
+
this.domAdapter.setZIndex(this.options.zIndex, this.elementRef);
|
62
|
+
}
|
63
|
+
}
|
64
|
+
sortItemsByStackOrder() {
|
65
|
+
this.itemRefs.sort(sortByStackOrder);
|
66
|
+
// Reassign the correct index for each view.
|
67
|
+
this.itemRefs.forEach((item, i) => this.target.move(item.componentRef.hostView, i));
|
68
|
+
}
|
69
|
+
getHighestStackOrder() {
|
70
|
+
if (this.itemRefs.length === 0) {
|
71
|
+
return 0;
|
72
|
+
}
|
73
|
+
return this.itemRefs[0].stackOrder + 1;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
SkyDockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.ElementRef }, { token: i0.Injector }, { token: i1.SkyDockDomAdapterService }], target: i0.ɵɵFactoryTarget.Component });
|
77
|
+
SkyDockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyDockComponent, selector: "sky-dock", providers: [SkyDockDomAdapterService], viewQueries: [{ propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #target></ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host:not(.sky-dock-unbound){position:fixed;left:0;bottom:0;right:0}:host.sky-dock-sticky{position:sticky}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockComponent, decorators: [{
|
79
|
+
type: Component,
|
80
|
+
args: [{ selector: 'sky-dock', providers: [SkyDockDomAdapterService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container #target></ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host:not(.sky-dock-unbound){position:fixed;left:0;bottom:0;right:0}:host.sky-dock-sticky{position:sticky}\n"] }]
|
81
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.ElementRef }, { type: i0.Injector }, { type: i1.SkyDockDomAdapterService }]; }, propDecorators: { target: [{
|
82
|
+
type: ViewChild,
|
83
|
+
args: ['target', {
|
84
|
+
read: ViewContainerRef,
|
85
|
+
static: true,
|
86
|
+
}]
|
87
|
+
}] } });
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvZG9jay9kb2NrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9kb2NrL2RvY2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULHdCQUF3QixFQUN4QixVQUFVLEVBQ1YsUUFBUSxFQUVSLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHdEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFFekQ7O0dBRUc7QUFRSCxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCLFlBQ1UsY0FBaUMsRUFDakMsUUFBa0MsRUFDbEMsVUFBc0IsRUFDdEIsUUFBa0IsRUFDbEIsVUFBb0M7UUFKcEMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBQ2xDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixlQUFVLEdBQVYsVUFBVSxDQUEwQjtRQVB0QyxhQUFRLEdBQWdDLEVBQUUsQ0FBQztJQVFoRCxDQUFDO0lBRUcsZUFBZSxDQUNwQixTQUFrQixFQUNsQixTQUF1QyxFQUFFO1FBRXpDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakUsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMvQixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxFQUFFO1lBQ2pDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN0QixDQUFDLENBQUM7UUFFSCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FDOUMsT0FBTyxFQUNQLFNBQVMsRUFDVCxRQUFRLENBQ1QsQ0FBQztRQUNGLE1BQU0sVUFBVSxHQUNkLE1BQU0sQ0FBQyxVQUFVLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxVQUFVLEtBQUssU0FBUztZQUMzRCxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVU7WUFDbkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBRWxDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQ2pCLFlBQVk7WUFDWixVQUFVO1NBQ1gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVuQyxPQUFPO1lBQ0wsWUFBWTtZQUNaLFVBQVU7U0FDWCxDQUFDO0lBQ0osQ0FBQztJQUVNLFVBQVUsQ0FBQyxJQUErQjtRQUMvQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBRWpELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUM5QixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLEtBQUssT0FBTyxDQUMzQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVNLFVBQVUsQ0FBQyxPQUF1QjtRQUN2QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUV2QixRQUFRLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFO1lBQzlCLEtBQUssZUFBZSxDQUFDLGFBQWE7Z0JBQ2hDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDNUMsTUFBTTtZQUNSLEtBQUssZUFBZSxDQUFDLGFBQWE7Z0JBQ2hDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDM0MsTUFBTTtZQUNSLEtBQUssZUFBZSxDQUFDLFVBQVUsQ0FBQztZQUNoQztnQkFDRSxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ2pELE1BQU07U0FDVDtRQUVELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2pFO0lBQ0gsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXJDLDRDQUE0QztRQUM1QyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FDaEQsQ0FBQztJQUNKLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDOUIsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7OzZHQXBHVSxnQkFBZ0I7aUdBQWhCLGdCQUFnQixtQ0FIaEIsQ0FBQyx3QkFBd0IsQ0FBQyx1R0FPN0IsZ0JBQWdCLDJDQ2pDMUIseUNBQ0E7MkZENEJhLGdCQUFnQjtrQkFQNUIsU0FBUzsrQkFDRSxVQUFVLGFBR1QsQ0FBQyx3QkFBd0IsQ0FBQyxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTtzT0FTdkMsTUFBTTtzQkFKYixTQUFTO3VCQUFDLFFBQVEsRUFBRTt3QkFDbkIsSUFBSSxFQUFFLGdCQUFnQjt3QkFDdEIsTUFBTSxFQUFFLElBQUk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBFbGVtZW50UmVmLFxuICBJbmplY3RvcixcbiAgVHlwZSxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5RG9ja0RvbUFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9kb2NrLWRvbS1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5RG9ja0luc2VydENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4vZG9jay1pbnNlcnQtY29tcG9uZW50LWNvbmZpZyc7XG5pbXBvcnQgeyBTa3lEb2NrSXRlbVJlZmVyZW5jZSB9IGZyb20gJy4vZG9jay1pdGVtLXJlZmVyZW5jZSc7XG5pbXBvcnQgeyBTa3lEb2NrTG9jYXRpb24gfSBmcm9tICcuL2RvY2stbG9jYXRpb24nO1xuaW1wb3J0IHsgU2t5RG9ja09wdGlvbnMgfSBmcm9tICcuL2RvY2stb3B0aW9ucyc7XG5pbXBvcnQgeyBzb3J0QnlTdGFja09yZGVyIH0gZnJvbSAnLi9zb3J0LWJ5LXN0YWNrLW9yZGVyJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWRvY2snLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9jay5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RvY2suY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbU2t5RG9ja0RvbUFkYXB0ZXJTZXJ2aWNlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURvY2tDb21wb25lbnQge1xuICBwcml2YXRlIG9wdGlvbnM6IFNreURvY2tPcHRpb25zO1xuXG4gIEBWaWV3Q2hpbGQoJ3RhcmdldCcsIHtcbiAgICByZWFkOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHJpdmF0ZSB0YXJnZXQ6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgcHJpdmF0ZSBpdGVtUmVmczogU2t5RG9ja0l0ZW1SZWZlcmVuY2U8YW55PltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIGRvbUFkYXB0ZXI6IFNreURvY2tEb21BZGFwdGVyU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIGluc2VydENvbXBvbmVudDxUPihcbiAgICBjb21wb25lbnQ6IFR5cGU8VD4sXG4gICAgY29uZmlnOiBTa3lEb2NrSW5zZXJ0Q29tcG9uZW50Q29uZmlnID0ge31cbiAgKTogU2t5RG9ja0l0ZW1SZWZlcmVuY2U8VD4ge1xuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLnJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcHJvdmlkZXJzOiBjb25maWcucHJvdmlkZXJzIHx8IFtdLFxuICAgICAgcGFyZW50OiB0aGlzLmluamVjdG9yLFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy50YXJnZXQuY3JlYXRlQ29tcG9uZW50PFQ+KFxuICAgICAgZmFjdG9yeSxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIGluamVjdG9yXG4gICAgKTtcbiAgICBjb25zdCBzdGFja09yZGVyID1cbiAgICAgIGNvbmZpZy5zdGFja09yZGVyICE9PSBudWxsICYmIGNvbmZpZy5zdGFja09yZGVyICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyBjb25maWcuc3RhY2tPcmRlclxuICAgICAgICA6IHRoaXMuZ2V0SGlnaGVzdFN0YWNrT3JkZXIoKTtcblxuICAgIHRoaXMuaXRlbVJlZnMucHVzaCh7XG4gICAgICBjb21wb25lbnRSZWYsXG4gICAgICBzdGFja09yZGVyLFxuICAgIH0pO1xuXG4gICAgdGhpcy5zb3J0SXRlbXNCeVN0YWNrT3JkZXIoKTtcblxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgY29tcG9uZW50UmVmLFxuICAgICAgc3RhY2tPcmRlcixcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUl0ZW0oaXRlbTogU2t5RG9ja0l0ZW1SZWZlcmVuY2U8YW55Pik6IHZvaWQge1xuICAgIGNvbnN0IHZpZXdSZWYgPSBpdGVtLmNvbXBvbmVudFJlZi5ob3N0VmlldztcbiAgICB0aGlzLnRhcmdldC5yZW1vdmUodGhpcy50YXJnZXQuaW5kZXhPZih2aWV3UmVmKSk7XG5cbiAgICBjb25zdCBmb3VuZCA9IHRoaXMuaXRlbVJlZnMuZmluZChcbiAgICAgIChpKSA9PiBpLmNvbXBvbmVudFJlZi5ob3N0VmlldyA9PT0gdmlld1JlZlxuICAgICk7XG4gICAgdGhpcy5pdGVtUmVmcy5zcGxpY2UodGhpcy5pdGVtUmVmcy5pbmRleE9mKGZvdW5kKSwgMSk7XG4gIH1cblxuICBwdWJsaWMgc2V0T3B0aW9ucyhvcHRpb25zOiBTa3lEb2NrT3B0aW9ucyk6IHZvaWQge1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG5cbiAgICBzd2l0Y2ggKHRoaXMub3B0aW9ucz8ubG9jYXRpb24pIHtcbiAgICAgIGNhc2UgU2t5RG9ja0xvY2F0aW9uLkJlZm9yZUVsZW1lbnQ6XG4gICAgICAgIHRoaXMuZG9tQWRhcHRlci51bmJpbmREb2NrKHRoaXMuZWxlbWVudFJlZik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBTa3lEb2NrTG9jYXRpb24uRWxlbWVudEJvdHRvbTpcbiAgICAgICAgdGhpcy5kb21BZGFwdGVyLnNldFN0aWNreSh0aGlzLmVsZW1lbnRSZWYpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgU2t5RG9ja0xvY2F0aW9uLkJvZHlCb3R0b206XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmRvbUFkYXB0ZXIud2F0Y2hEb21DaGFuZ2VzKHRoaXMuZWxlbWVudFJlZik7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm9wdGlvbnM/LnpJbmRleCkge1xuICAgICAgdGhpcy5kb21BZGFwdGVyLnNldFpJbmRleCh0aGlzLm9wdGlvbnMuekluZGV4LCB0aGlzLmVsZW1lbnRSZWYpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc29ydEl0ZW1zQnlTdGFja09yZGVyKCk6IHZvaWQge1xuICAgIHRoaXMuaXRlbVJlZnMuc29ydChzb3J0QnlTdGFja09yZGVyKTtcblxuICAgIC8vIFJlYXNzaWduIHRoZSBjb3JyZWN0IGluZGV4IGZvciBlYWNoIHZpZXcuXG4gICAgdGhpcy5pdGVtUmVmcy5mb3JFYWNoKChpdGVtLCBpKSA9PlxuICAgICAgdGhpcy50YXJnZXQubW92ZShpdGVtLmNvbXBvbmVudFJlZi5ob3N0VmlldywgaSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRIaWdoZXN0U3RhY2tPcmRlcigpOiBudW1iZXIge1xuICAgIGlmICh0aGlzLml0ZW1SZWZzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaXRlbVJlZnNbMF0uc3RhY2tPcmRlciArIDE7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgI3RhcmdldD48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
2
|
+
import { NgModule } from '@angular/core';
|
3
|
+
import { MutationObserverService } from '../mutation/mutation-observer-service';
|
4
|
+
import { SkyDockComponent } from './dock.component';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export class SkyDockModule {
|
7
|
+
}
|
8
|
+
SkyDockModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
9
|
+
SkyDockModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockModule, declarations: [SkyDockComponent], imports: [CommonModule] });
|
10
|
+
SkyDockModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockModule, providers: [MutationObserverService], imports: [[CommonModule]] });
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockModule, decorators: [{
|
12
|
+
type: NgModule,
|
13
|
+
args: [{
|
14
|
+
imports: [CommonModule],
|
15
|
+
declarations: [SkyDockComponent],
|
16
|
+
providers: [MutationObserverService],
|
17
|
+
}]
|
18
|
+
}] });
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvZG9jay9kb2NrLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUVoRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLGFBQWE7OzBHQUFiLGFBQWE7MkdBQWIsYUFBYSxpQkFIVCxnQkFBZ0IsYUFEckIsWUFBWTsyR0FJWCxhQUFhLGFBRmIsQ0FBQyx1QkFBdUIsQ0FBQyxZQUYzQixDQUFDLFlBQVksQ0FBQzsyRkFJWixhQUFhO2tCQUx6QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2hDLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO2lCQUNyQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNdXRhdGlvbk9ic2VydmVyU2VydmljZSB9IGZyb20gJy4uL211dGF0aW9uL211dGF0aW9uLW9ic2VydmVyLXNlcnZpY2UnO1xuXG5pbXBvcnQgeyBTa3lEb2NrQ29tcG9uZW50IH0gZnJvbSAnLi9kb2NrLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtTa3lEb2NrQ29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbTXV0YXRpb25PYnNlcnZlclNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEb2NrTW9kdWxlIHt9XG4iXX0=
|
@@ -0,0 +1,95 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import { SkyDynamicComponentLocation } from '../dynamic-component/dynamic-component-location';
|
3
|
+
import { SkyDynamicComponentService } from '../dynamic-component/dynamic-component.service';
|
4
|
+
import { SkyDockItem } from './dock-item';
|
5
|
+
import { SkyDockLocation } from './dock-location';
|
6
|
+
import { SkyDockComponent } from './dock.component';
|
7
|
+
import { sortByStackOrder } from './sort-by-stack-order';
|
8
|
+
import * as i0 from "@angular/core";
|
9
|
+
import * as i1 from "../dynamic-component/dynamic-component.service";
|
10
|
+
/**
|
11
|
+
* This service docks components to specific areas on the page.
|
12
|
+
*/
|
13
|
+
export class SkyDockService {
|
14
|
+
constructor(dynamicComponentService) {
|
15
|
+
this.dynamicComponentService = dynamicComponentService;
|
16
|
+
}
|
17
|
+
/**
|
18
|
+
* Returns all docked items.
|
19
|
+
*/
|
20
|
+
get items() {
|
21
|
+
return SkyDockService._items;
|
22
|
+
}
|
23
|
+
/**
|
24
|
+
* Docks a component to the bottom of the page.
|
25
|
+
* @param component The component to dock.
|
26
|
+
* @param config Options that affect the docking action.
|
27
|
+
*/
|
28
|
+
insertComponent(component, config) {
|
29
|
+
if (!SkyDockService.dockRef) {
|
30
|
+
this.createDock();
|
31
|
+
}
|
32
|
+
const itemRef = SkyDockService.dockRef.instance.insertComponent(component, config);
|
33
|
+
const item = new SkyDockItem(itemRef.componentRef.instance, itemRef.stackOrder);
|
34
|
+
item.destroyed.subscribe(() => {
|
35
|
+
SkyDockService.dockRef.instance.removeItem(itemRef);
|
36
|
+
SkyDockService._items.splice(SkyDockService._items.indexOf(item), 1);
|
37
|
+
if (SkyDockService._items.length === 0) {
|
38
|
+
this.destroyDock();
|
39
|
+
}
|
40
|
+
});
|
41
|
+
SkyDockService._items.push(item);
|
42
|
+
SkyDockService._items.sort(sortByStackOrder);
|
43
|
+
return item;
|
44
|
+
}
|
45
|
+
/**
|
46
|
+
* Sets options for the positioning and styling of the dock component. Since the dock service is a
|
47
|
+
* singleton instance, these options will be applied to all components inserted into the dock. In
|
48
|
+
* order to create a seperate dock with different options, consumers should provide a different
|
49
|
+
* instance of the dock service.
|
50
|
+
* @param options The options for positioning and styling
|
51
|
+
*/
|
52
|
+
setDockOptions(options) {
|
53
|
+
this.options = options;
|
54
|
+
}
|
55
|
+
createDock() {
|
56
|
+
let dockOptions;
|
57
|
+
if (this.options) {
|
58
|
+
let dynamicLocation;
|
59
|
+
switch (this.options.location) {
|
60
|
+
case SkyDockLocation.BeforeElement:
|
61
|
+
dynamicLocation = SkyDynamicComponentLocation.BeforeElement;
|
62
|
+
break;
|
63
|
+
case SkyDockLocation.ElementBottom:
|
64
|
+
dynamicLocation = SkyDynamicComponentLocation.ElementBottom;
|
65
|
+
break;
|
66
|
+
default:
|
67
|
+
dynamicLocation = SkyDynamicComponentLocation.BodyTop;
|
68
|
+
break;
|
69
|
+
}
|
70
|
+
dockOptions = {
|
71
|
+
location: dynamicLocation,
|
72
|
+
referenceEl: this.options.referenceEl,
|
73
|
+
};
|
74
|
+
}
|
75
|
+
SkyDockService.dockRef = this.dynamicComponentService.createComponent(SkyDockComponent, dockOptions);
|
76
|
+
SkyDockService.dockRef.instance.setOptions(this.options);
|
77
|
+
}
|
78
|
+
destroyDock() {
|
79
|
+
this.dynamicComponentService.removeComponent(SkyDockService.dockRef);
|
80
|
+
SkyDockService.dockRef = undefined;
|
81
|
+
}
|
82
|
+
}
|
83
|
+
SkyDockService._items = [];
|
84
|
+
SkyDockService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockService, deps: [{ token: i1.SkyDynamicComponentService }], target: i0.ɵɵFactoryTarget.Injectable });
|
85
|
+
SkyDockService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockService, providedIn: 'any' });
|
86
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDockService, decorators: [{
|
87
|
+
type: Injectable,
|
88
|
+
args: [{
|
89
|
+
// Must be 'any' so that the dock component is created in the context of its module's injector.
|
90
|
+
// If set to 'root', the component's dependency injections would only be derived from the root
|
91
|
+
// injector and may loose context if the dock was opened from within a lazy-loaded module.
|
92
|
+
providedIn: 'any',
|
93
|
+
}]
|
94
|
+
}], ctorParameters: function () { return [{ type: i1.SkyDynamicComponentService }]; } });
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2RvY2svZG9jay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsVUFBVSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBRS9ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRTlGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRzVGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFFekQ7O0dBRUc7QUFPSCxNQUFNLE9BQU8sY0FBYztJQWF6QixZQUFvQix1QkFBbUQ7UUFBbkQsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUE0QjtJQUFHLENBQUM7SUFUM0U7O09BRUc7SUFDSCxJQUFXLEtBQUs7UUFDZCxPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDL0IsQ0FBQztJQU1EOzs7O09BSUc7SUFDSSxlQUFlLENBQ3BCLFNBQWtCLEVBQ2xCLE1BQXFDO1FBRXJDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFO1lBQzNCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtRQUVELE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FDN0QsU0FBUyxFQUNULE1BQU0sQ0FDUCxDQUFDO1FBQ0YsTUFBTSxJQUFJLEdBQUcsSUFBSSxXQUFXLENBQzFCLE9BQU8sQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUM3QixPQUFPLENBQUMsVUFBVSxDQUNuQixDQUFDO1FBRUYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzVCLGNBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwRCxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNyRSxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3BCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTdDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLGNBQWMsQ0FBQyxPQUF1QjtRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBRU8sVUFBVTtRQUNoQixJQUFJLFdBQXVDLENBQUM7UUFFNUMsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksZUFBNEMsQ0FBQztZQUNqRCxRQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO2dCQUM3QixLQUFLLGVBQWUsQ0FBQyxhQUFhO29CQUNoQyxlQUFlLEdBQUcsMkJBQTJCLENBQUMsYUFBYSxDQUFDO29CQUM1RCxNQUFNO2dCQUNSLEtBQUssZUFBZSxDQUFDLGFBQWE7b0JBQ2hDLGVBQWUsR0FBRywyQkFBMkIsQ0FBQyxhQUFhLENBQUM7b0JBQzVELE1BQU07Z0JBQ1I7b0JBQ0UsZUFBZSxHQUFHLDJCQUEyQixDQUFDLE9BQU8sQ0FBQztvQkFDdEQsTUFBTTthQUNUO1lBRUQsV0FBVyxHQUFHO2dCQUNaLFFBQVEsRUFBRSxlQUFlO2dCQUN6QixXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXO2FBQ3RDLENBQUM7U0FDSDtRQUVELGNBQWMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGVBQWUsQ0FDbkUsZ0JBQWdCLEVBQ2hCLFdBQVcsQ0FDWixDQUFDO1FBQ0YsY0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsdUJBQXVCLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyRSxjQUFjLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQztJQUNyQyxDQUFDOztBQTdGYyxxQkFBTSxHQUF1QixFQUFHLENBQUE7MkdBRnBDLGNBQWM7K0dBQWQsY0FBYyxjQUZiLEtBQUs7MkZBRU4sY0FBYztrQkFOMUIsVUFBVTttQkFBQztvQkFDViwrRkFBK0Y7b0JBQy9GLDhGQUE4RjtvQkFDOUYsMEZBQTBGO29CQUMxRixVQUFVLEVBQUUsS0FBSztpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdGFibGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uIH0gZnJvbSAnLi4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQtbG9jYXRpb24nO1xuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudE9wdGlvbnMgfSBmcm9tICcuLi9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC1vcHRpb25zJztcbmltcG9ydCB7IFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQuc2VydmljZSc7XG5cbmltcG9ydCB7IFNreURvY2tJbnNlcnRDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2RvY2staW5zZXJ0LWNvbXBvbmVudC1jb25maWcnO1xuaW1wb3J0IHsgU2t5RG9ja0l0ZW0gfSBmcm9tICcuL2RvY2staXRlbSc7XG5pbXBvcnQgeyBTa3lEb2NrTG9jYXRpb24gfSBmcm9tICcuL2RvY2stbG9jYXRpb24nO1xuaW1wb3J0IHsgU2t5RG9ja09wdGlvbnMgfSBmcm9tICcuL2RvY2stb3B0aW9ucyc7XG5pbXBvcnQgeyBTa3lEb2NrQ29tcG9uZW50IH0gZnJvbSAnLi9kb2NrLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBzb3J0QnlTdGFja09yZGVyIH0gZnJvbSAnLi9zb3J0LWJ5LXN0YWNrLW9yZGVyJztcblxuLyoqXG4gKiBUaGlzIHNlcnZpY2UgZG9ja3MgY29tcG9uZW50cyB0byBzcGVjaWZpYyBhcmVhcyBvbiB0aGUgcGFnZS5cbiAqL1xuQEluamVjdGFibGUoe1xuICAvLyBNdXN0IGJlICdhbnknIHNvIHRoYXQgdGhlIGRvY2sgY29tcG9uZW50IGlzIGNyZWF0ZWQgaW4gdGhlIGNvbnRleHQgb2YgaXRzIG1vZHVsZSdzIGluamVjdG9yLlxuICAvLyBJZiBzZXQgdG8gJ3Jvb3QnLCB0aGUgY29tcG9uZW50J3MgZGVwZW5kZW5jeSBpbmplY3Rpb25zIHdvdWxkIG9ubHkgYmUgZGVyaXZlZCBmcm9tIHRoZSByb290XG4gIC8vIGluamVjdG9yIGFuZCBtYXkgbG9vc2UgY29udGV4dCBpZiB0aGUgZG9jayB3YXMgb3BlbmVkIGZyb20gd2l0aGluIGEgbGF6eS1sb2FkZWQgbW9kdWxlLlxuICBwcm92aWRlZEluOiAnYW55Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RG9ja1NlcnZpY2Uge1xuICBwcml2YXRlIHN0YXRpYyBkb2NrUmVmOiBDb21wb25lbnRSZWY8U2t5RG9ja0NvbXBvbmVudD47XG4gIHByaXZhdGUgc3RhdGljIF9pdGVtczogU2t5RG9ja0l0ZW08YW55PltdID0gW107XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYWxsIGRvY2tlZCBpdGVtcy5cbiAgICovXG4gIHB1YmxpYyBnZXQgaXRlbXMoKTogU2t5RG9ja0l0ZW08YW55PltdIHtcbiAgICByZXR1cm4gU2t5RG9ja1NlcnZpY2UuX2l0ZW1zO1xuICB9XG5cbiAgcHJpdmF0ZSBvcHRpb25zOiBTa3lEb2NrT3B0aW9ucztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGR5bmFtaWNDb21wb25lbnRTZXJ2aWNlOiBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSkge31cblxuICAvKipcbiAgICogRG9ja3MgYSBjb21wb25lbnQgdG8gdGhlIGJvdHRvbSBvZiB0aGUgcGFnZS5cbiAgICogQHBhcmFtIGNvbXBvbmVudCBUaGUgY29tcG9uZW50IHRvIGRvY2suXG4gICAqIEBwYXJhbSBjb25maWcgT3B0aW9ucyB0aGF0IGFmZmVjdCB0aGUgZG9ja2luZyBhY3Rpb24uXG4gICAqL1xuICBwdWJsaWMgaW5zZXJ0Q29tcG9uZW50PFQ+KFxuICAgIGNvbXBvbmVudDogVHlwZTxUPixcbiAgICBjb25maWc/OiBTa3lEb2NrSW5zZXJ0Q29tcG9uZW50Q29uZmlnXG4gICk6IFNreURvY2tJdGVtPFQ+IHtcbiAgICBpZiAoIVNreURvY2tTZXJ2aWNlLmRvY2tSZWYpIHtcbiAgICAgIHRoaXMuY3JlYXRlRG9jaygpO1xuICAgIH1cblxuICAgIGNvbnN0IGl0ZW1SZWYgPSBTa3lEb2NrU2VydmljZS5kb2NrUmVmLmluc3RhbmNlLmluc2VydENvbXBvbmVudChcbiAgICAgIGNvbXBvbmVudCxcbiAgICAgIGNvbmZpZ1xuICAgICk7XG4gICAgY29uc3QgaXRlbSA9IG5ldyBTa3lEb2NrSXRlbShcbiAgICAgIGl0ZW1SZWYuY29tcG9uZW50UmVmLmluc3RhbmNlLFxuICAgICAgaXRlbVJlZi5zdGFja09yZGVyXG4gICAgKTtcblxuICAgIGl0ZW0uZGVzdHJveWVkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBTa3lEb2NrU2VydmljZS5kb2NrUmVmLmluc3RhbmNlLnJlbW92ZUl0ZW0oaXRlbVJlZik7XG4gICAgICBTa3lEb2NrU2VydmljZS5faXRlbXMuc3BsaWNlKFNreURvY2tTZXJ2aWNlLl9pdGVtcy5pbmRleE9mKGl0ZW0pLCAxKTtcbiAgICAgIGlmIChTa3lEb2NrU2VydmljZS5faXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveURvY2soKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIFNreURvY2tTZXJ2aWNlLl9pdGVtcy5wdXNoKGl0ZW0pO1xuICAgIFNreURvY2tTZXJ2aWNlLl9pdGVtcy5zb3J0KHNvcnRCeVN0YWNrT3JkZXIpO1xuXG4gICAgcmV0dXJuIGl0ZW07XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBvcHRpb25zIGZvciB0aGUgcG9zaXRpb25pbmcgYW5kIHN0eWxpbmcgb2YgdGhlIGRvY2sgY29tcG9uZW50LiBTaW5jZSB0aGUgZG9jayBzZXJ2aWNlIGlzIGFcbiAgICogc2luZ2xldG9uIGluc3RhbmNlLCB0aGVzZSBvcHRpb25zIHdpbGwgYmUgYXBwbGllZCB0byBhbGwgY29tcG9uZW50cyBpbnNlcnRlZCBpbnRvIHRoZSBkb2NrLiBJblxuICAgKiBvcmRlciB0byBjcmVhdGUgYSBzZXBlcmF0ZSBkb2NrIHdpdGggZGlmZmVyZW50IG9wdGlvbnMsIGNvbnN1bWVycyBzaG91bGQgcHJvdmlkZSBhIGRpZmZlcmVudFxuICAgKiBpbnN0YW5jZSBvZiB0aGUgZG9jayBzZXJ2aWNlLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyBmb3IgcG9zaXRpb25pbmcgYW5kIHN0eWxpbmdcbiAgICovXG4gIHB1YmxpYyBzZXREb2NrT3B0aW9ucyhvcHRpb25zOiBTa3lEb2NrT3B0aW9ucyk6IHZvaWQge1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZURvY2soKTogdm9pZCB7XG4gICAgbGV0IGRvY2tPcHRpb25zOiBTa3lEeW5hbWljQ29tcG9uZW50T3B0aW9ucztcblxuICAgIGlmICh0aGlzLm9wdGlvbnMpIHtcbiAgICAgIGxldCBkeW5hbWljTG9jYXRpb246IFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbjtcbiAgICAgIHN3aXRjaCAodGhpcy5vcHRpb25zLmxvY2F0aW9uKSB7XG4gICAgICAgIGNhc2UgU2t5RG9ja0xvY2F0aW9uLkJlZm9yZUVsZW1lbnQ6XG4gICAgICAgICAgZHluYW1pY0xvY2F0aW9uID0gU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJlZm9yZUVsZW1lbnQ7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgU2t5RG9ja0xvY2F0aW9uLkVsZW1lbnRCb3R0b206XG4gICAgICAgICAgZHluYW1pY0xvY2F0aW9uID0gU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkVsZW1lbnRCb3R0b207XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgZHluYW1pY0xvY2F0aW9uID0gU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJvZHlUb3A7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRvY2tPcHRpb25zID0ge1xuICAgICAgICBsb2NhdGlvbjogZHluYW1pY0xvY2F0aW9uLFxuICAgICAgICByZWZlcmVuY2VFbDogdGhpcy5vcHRpb25zLnJlZmVyZW5jZUVsLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBTa3lEb2NrU2VydmljZS5kb2NrUmVmID0gdGhpcy5keW5hbWljQ29tcG9uZW50U2VydmljZS5jcmVhdGVDb21wb25lbnQoXG4gICAgICBTa3lEb2NrQ29tcG9uZW50LFxuICAgICAgZG9ja09wdGlvbnNcbiAgICApO1xuICAgIFNreURvY2tTZXJ2aWNlLmRvY2tSZWYuaW5zdGFuY2Uuc2V0T3B0aW9ucyh0aGlzLm9wdGlvbnMpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95RG9jaygpOiB2b2lkIHtcbiAgICB0aGlzLmR5bmFtaWNDb21wb25lbnRTZXJ2aWNlLnJlbW92ZUNvbXBvbmVudChTa3lEb2NrU2VydmljZS5kb2NrUmVmKTtcbiAgICBTa3lEb2NrU2VydmljZS5kb2NrUmVmID0gdW5kZWZpbmVkO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,13 @@
|
|
1
|
+
/**
|
2
|
+
* @internal
|
3
|
+
*/
|
4
|
+
export function sortByStackOrder(a, b) {
|
5
|
+
if (a.stackOrder > b.stackOrder) {
|
6
|
+
return -1;
|
7
|
+
}
|
8
|
+
if (a.stackOrder < b.stackOrder) {
|
9
|
+
return 1;
|
10
|
+
}
|
11
|
+
return 0;
|
12
|
+
}
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1ieS1zdGFjay1vcmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9kb2NrL3NvcnQtYnktc3RhY2stb3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsQ0FBTSxFQUFFLENBQU07SUFDN0MsSUFBSSxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUU7UUFDL0IsT0FBTyxDQUFDLENBQUMsQ0FBQztLQUNYO0lBRUQsSUFBSSxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUU7UUFDL0IsT0FBTyxDQUFDLENBQUM7S0FDVjtJQUVELE9BQU8sQ0FBQyxDQUFDO0FBQ1gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzb3J0QnlTdGFja09yZGVyKGE6IGFueSwgYjogYW55KTogbnVtYmVyIHtcbiAgaWYgKGEuc3RhY2tPcmRlciA+IGIuc3RhY2tPcmRlcikge1xuICAgIHJldHVybiAtMTtcbiAgfVxuXG4gIGlmIChhLnN0YWNrT3JkZXIgPCBiLnN0YWNrT3JkZXIpIHtcbiAgICByZXR1cm4gMTtcbiAgfVxuXG4gIHJldHVybiAwO1xufVxuIl19
|
@@ -0,0 +1,27 @@
|
|
1
|
+
/**
|
2
|
+
* The location on the page where the dynamic component should be rendered.
|
3
|
+
*/
|
4
|
+
export var SkyDynamicComponentLocation;
|
5
|
+
(function (SkyDynamicComponentLocation) {
|
6
|
+
/**
|
7
|
+
* Renders the dynamic component before a given element.
|
8
|
+
*/
|
9
|
+
SkyDynamicComponentLocation[SkyDynamicComponentLocation["BeforeElement"] = 0] = "BeforeElement";
|
10
|
+
/**
|
11
|
+
* Renders the dynamic component as the last element inside the BODY element.
|
12
|
+
*/
|
13
|
+
SkyDynamicComponentLocation[SkyDynamicComponentLocation["BodyBottom"] = 1] = "BodyBottom";
|
14
|
+
/**
|
15
|
+
* Renders the dynamic component as the first element inside the BODY element.
|
16
|
+
*/
|
17
|
+
SkyDynamicComponentLocation[SkyDynamicComponentLocation["BodyTop"] = 2] = "BodyTop";
|
18
|
+
/**
|
19
|
+
* Renders the dynamic component as the last element inside a given element.
|
20
|
+
*/
|
21
|
+
SkyDynamicComponentLocation[SkyDynamicComponentLocation["ElementBottom"] = 3] = "ElementBottom";
|
22
|
+
/**
|
23
|
+
* Renders the dynamic component as the first element inside a given element.
|
24
|
+
*/
|
25
|
+
SkyDynamicComponentLocation[SkyDynamicComponentLocation["ElementTop"] = 4] = "ElementTop";
|
26
|
+
})(SkyDynamicComponentLocation || (SkyDynamicComponentLocation = {}));
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQtbG9jYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQtbG9jYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSwyQkF5Qlg7QUF6QkQsV0FBWSwyQkFBMkI7SUFDckM7O09BRUc7SUFDSCwrRkFBYSxDQUFBO0lBRWI7O09BRUc7SUFDSCx5RkFBVSxDQUFBO0lBRVY7O09BRUc7SUFDSCxtRkFBTyxDQUFBO0lBRVA7O09BRUc7SUFDSCwrRkFBYSxDQUFBO0lBRWI7O09BRUc7SUFDSCx5RkFBVSxDQUFBO0FBQ1osQ0FBQyxFQXpCVywyQkFBMkIsS0FBM0IsMkJBQTJCLFFBeUJ0QyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhlIGxvY2F0aW9uIG9uIHRoZSBwYWdlIHdoZXJlIHRoZSBkeW5hbWljIGNvbXBvbmVudCBzaG91bGQgYmUgcmVuZGVyZWQuXG4gKi9cbmV4cG9ydCBlbnVtIFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbiB7XG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBkeW5hbWljIGNvbXBvbmVudCBiZWZvcmUgYSBnaXZlbiBlbGVtZW50LlxuICAgKi9cbiAgQmVmb3JlRWxlbWVudCxcblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgZHluYW1pYyBjb21wb25lbnQgYXMgdGhlIGxhc3QgZWxlbWVudCBpbnNpZGUgdGhlIEJPRFkgZWxlbWVudC5cbiAgICovXG4gIEJvZHlCb3R0b20sXG5cbiAgLyoqXG4gICAqIFJlbmRlcnMgdGhlIGR5bmFtaWMgY29tcG9uZW50IGFzIHRoZSBmaXJzdCBlbGVtZW50IGluc2lkZSB0aGUgQk9EWSBlbGVtZW50LlxuICAgKi9cbiAgQm9keVRvcCxcblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgZHluYW1pYyBjb21wb25lbnQgYXMgdGhlIGxhc3QgZWxlbWVudCBpbnNpZGUgYSBnaXZlbiBlbGVtZW50LlxuICAgKi9cbiAgRWxlbWVudEJvdHRvbSxcblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgZHluYW1pYyBjb21wb25lbnQgYXMgdGhlIGZpcnN0IGVsZW1lbnQgaW5zaWRlIGEgZ2l2ZW4gZWxlbWVudC5cbiAgICovXG4gIEVsZW1lbnRUb3AsXG59XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24gfSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50LWxvY2F0aW9uJztcblxuLyoqXG4gKiBPcHRpb25zIGZvciBhZGRpbmcgYSBkeW5hbWljIGNvbXBvbmVudCB0byB0aGUgcGFnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTa3lEeW5hbWljQ29tcG9uZW50T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbG9jYXRpb24gb24gdGhlIHBhZ2Ugd2hlcmUgdGhlIGR5bmFtaWMgY29tcG9uZW50IHNob3VsZCBiZSByZW5kZXJlZC5cbiAgICovXG4gIGxvY2F0aW9uPzogU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVmZXJlbmNlIGVsZW1lbnQgdXNlZCB3aGVuIHVzaW5nIHRoZSBgRWxlbWVudFRvcGAgb3IgYEVsZW1lbnRCb3R0b21gIGxvY2F0aW9ucy5cbiAgICovXG4gIHJlZmVyZW5jZUVsPzogSFRNTEVsZW1lbnQ7XG59XG4iXX0=
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
/**
|
4
|
+
* Provides services required to create dynamic components on the page.
|
5
|
+
* @deprecated The `SkyDynamicComponentService` no longer needs the `SkyDynamicComponentModule`.
|
6
|
+
* The `SkyDynamicComponentModule` can be removed from your project.
|
7
|
+
*/
|
8
|
+
export class SkyDynamicComponentModule {
|
9
|
+
}
|
10
|
+
SkyDynamicComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDynamicComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
11
|
+
SkyDynamicComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDynamicComponentModule });
|
12
|
+
SkyDynamicComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDynamicComponentModule });
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDynamicComponentModule, decorators: [{
|
14
|
+
type: NgModule,
|
15
|
+
args: [{}]
|
16
|
+
}] });
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2R5bmFtaWMtY29tcG9uZW50L2R5bmFtaWMtY29tcG9uZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6Qzs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLHlCQUF5Qjs7c0hBQXpCLHlCQUF5Qjt1SEFBekIseUJBQXlCO3VIQUF6Qix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFEckMsUUFBUTttQkFBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBQcm92aWRlcyBzZXJ2aWNlcyByZXF1aXJlZCB0byBjcmVhdGUgZHluYW1pYyBjb21wb25lbnRzIG9uIHRoZSBwYWdlLlxuICogQGRlcHJlY2F0ZWQgVGhlIGBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZWAgbm8gbG9uZ2VyIG5lZWRzIHRoZSBgU2t5RHluYW1pY0NvbXBvbmVudE1vZHVsZWAuXG4gKiBUaGUgYFNreUR5bmFtaWNDb21wb25lbnRNb2R1bGVgIGNhbiBiZSByZW1vdmVkIGZyb20geW91ciBwcm9qZWN0LlxuICovXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgU2t5RHluYW1pY0NvbXBvbmVudE1vZHVsZSB7fVxuIl19
|
@@ -0,0 +1,83 @@
|
|
1
|
+
import { ApplicationRef, ComponentFactoryResolver, Injectable, Injector, RendererFactory2, } from '@angular/core';
|
2
|
+
import { SkyAppWindowRef } from '../window/window-ref';
|
3
|
+
import { SkyDynamicComponentLocation } from './dynamic-component-location';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "../window/window-ref";
|
6
|
+
/**
|
7
|
+
* Angular service for creating and rendering a dynamic component.
|
8
|
+
*/
|
9
|
+
export class SkyDynamicComponentService {
|
10
|
+
constructor(componentFactoryResolver, applicationRef, injector, windowRef, rendererFactory) {
|
11
|
+
this.componentFactoryResolver = componentFactoryResolver;
|
12
|
+
this.applicationRef = applicationRef;
|
13
|
+
this.injector = injector;
|
14
|
+
this.windowRef = windowRef;
|
15
|
+
// Based on suggestions from https://github.com/angular/angular/issues/17824
|
16
|
+
// for accessing an instance of Renderer2 in a service since Renderer2 can't
|
17
|
+
// be injected into a service. Passing undefined for both parameters results
|
18
|
+
// in the default renderer which is what we want here.
|
19
|
+
this.renderer = rendererFactory.createRenderer(undefined, undefined);
|
20
|
+
}
|
21
|
+
/**
|
22
|
+
* Creates an instance of the specified component and adds it to the specified location
|
23
|
+
* on the page.
|
24
|
+
* @param options Options for creating the dynamic component.
|
25
|
+
*/
|
26
|
+
createComponent(componentType, options) {
|
27
|
+
options = options || {
|
28
|
+
location: SkyDynamicComponentLocation.BodyBottom,
|
29
|
+
};
|
30
|
+
const componentRef = this.componentFactoryResolver
|
31
|
+
.resolveComponentFactory(componentType)
|
32
|
+
.create(this.injector);
|
33
|
+
this.applicationRef.attachView(componentRef.hostView);
|
34
|
+
const el = this.getRootNode(componentRef);
|
35
|
+
const bodyEl = this.windowRef.nativeWindow.document.body;
|
36
|
+
switch (options.location) {
|
37
|
+
case SkyDynamicComponentLocation.BeforeElement:
|
38
|
+
this.renderer.insertBefore(options.referenceEl.parentElement, el, options.referenceEl);
|
39
|
+
break;
|
40
|
+
case SkyDynamicComponentLocation.ElementTop:
|
41
|
+
this.renderer.insertBefore(options.referenceEl, el, options.referenceEl.firstChild);
|
42
|
+
break;
|
43
|
+
case SkyDynamicComponentLocation.ElementBottom:
|
44
|
+
this.renderer.appendChild(options.referenceEl, el);
|
45
|
+
break;
|
46
|
+
case SkyDynamicComponentLocation.BodyTop:
|
47
|
+
this.renderer.insertBefore(bodyEl, el, bodyEl.firstChild);
|
48
|
+
break;
|
49
|
+
default:
|
50
|
+
this.renderer.appendChild(bodyEl, el);
|
51
|
+
break;
|
52
|
+
}
|
53
|
+
return componentRef;
|
54
|
+
}
|
55
|
+
/**
|
56
|
+
* Removes a component ref from the page
|
57
|
+
* @param componentRef Component ref for the component being removed
|
58
|
+
*/
|
59
|
+
removeComponent(componentRef) {
|
60
|
+
if (!componentRef) {
|
61
|
+
return;
|
62
|
+
}
|
63
|
+
this.applicationRef.detachView(componentRef.hostView);
|
64
|
+
componentRef.destroy();
|
65
|
+
}
|
66
|
+
getRootNode(componentRef) {
|
67
|
+
// Technique for retrieving the component's root node taken from here:
|
68
|
+
// https://malcoded.com/posts/angular-dynamic-components
|
69
|
+
return componentRef.hostView.rootNodes[0];
|
70
|
+
}
|
71
|
+
}
|
72
|
+
SkyDynamicComponentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDynamicComponentService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }, { token: i1.SkyAppWindowRef }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
73
|
+
SkyDynamicComponentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDynamicComponentService, providedIn: 'any' });
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyDynamicComponentService, decorators: [{
|
75
|
+
type: Injectable,
|
76
|
+
args: [{
|
77
|
+
// Must be 'any' so that the component is created in the context of its module's injector.
|
78
|
+
// If set to 'root', the component's dependency injections would only be derived from the root
|
79
|
+
// injector and may loose context if the component is created within a lazy-loaded module.
|
80
|
+
providedIn: 'any',
|
81
|
+
}]
|
82
|
+
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ApplicationRef }, { type: i0.Injector }, { type: i1.SkyAppWindowRef }, { type: i0.RendererFactory2 }]; } });
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEVBQ2Qsd0JBQXdCLEVBR3hCLFVBQVUsRUFDVixRQUFRLEVBRVIsZ0JBQWdCLEdBRWpCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBRzNFOztHQUVHO0FBT0gsTUFBTSxPQUFPLDBCQUEwQjtJQUdyQyxZQUNVLHdCQUFrRCxFQUNsRCxjQUE4QixFQUM5QixRQUFrQixFQUNsQixTQUEwQixFQUNsQyxlQUFpQztRQUp6Qiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBR2xDLDRFQUE0RTtRQUM1RSw0RUFBNEU7UUFDNUUsNkVBQTZFO1FBQzdFLHNEQUFzRDtRQUN0RCxJQUFJLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksZUFBZSxDQUNwQixhQUFzQixFQUN0QixPQUFvQztRQUVwQyxPQUFPLEdBQUcsT0FBTyxJQUFJO1lBQ25CLFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxVQUFVO1NBQ2pELENBQUM7UUFFRixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsd0JBQXdCO2FBQy9DLHVCQUF1QixDQUFJLGFBQWEsQ0FBQzthQUN6QyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXpCLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV0RCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRTFDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFFekQsUUFBUSxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ3hCLEtBQUssMkJBQTJCLENBQUMsYUFBYTtnQkFDNUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQ3hCLE9BQU8sQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUNqQyxFQUFFLEVBQ0YsT0FBTyxDQUFDLFdBQVcsQ0FDcEIsQ0FBQztnQkFDRixNQUFNO1lBQ1IsS0FBSywyQkFBMkIsQ0FBQyxVQUFVO2dCQUN6QyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FDeEIsT0FBTyxDQUFDLFdBQVcsRUFDbkIsRUFBRSxFQUNGLE9BQU8sQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUMvQixDQUFDO2dCQUNGLE1BQU07WUFDUixLQUFLLDJCQUEyQixDQUFDLGFBQWE7Z0JBQzVDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ25ELE1BQU07WUFDUixLQUFLLDJCQUEyQixDQUFDLE9BQU87Z0JBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMxRCxNQUFNO1lBQ1I7Z0JBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN0QyxNQUFNO1NBQ1Q7UUFFRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksZUFBZSxDQUFJLFlBQTZCO1FBQ3JELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RELFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU8sV0FBVyxDQUFJLFlBQTZCO1FBQ2xELHNFQUFzRTtRQUN0RSx3REFBd0Q7UUFDeEQsT0FBUSxZQUFZLENBQUMsUUFBK0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQzs7dUhBdEZVLDBCQUEwQjsySEFBMUIsMEJBQTBCLGNBRnpCLEtBQUs7MkZBRU4sMEJBQTBCO2tCQU50QyxVQUFVO21CQUFDO29CQUNWLDBGQUEwRjtvQkFDMUYsOEZBQThGO29CQUM5RiwwRkFBMEY7b0JBQzFGLFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFwcGxpY2F0aW9uUmVmLFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIENvbXBvbmVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBJbmplY3RhYmxlLFxuICBJbmplY3RvcixcbiAgUmVuZGVyZXIyLFxuICBSZW5kZXJlckZhY3RvcnkyLFxuICBUeXBlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5QXBwV2luZG93UmVmIH0gZnJvbSAnLi4vd2luZG93L3dpbmRvdy1yZWYnO1xuXG5pbXBvcnQgeyBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24gfSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50LWxvY2F0aW9uJztcbmltcG9ydCB7IFNreUR5bmFtaWNDb21wb25lbnRPcHRpb25zIH0gZnJvbSAnLi9keW5hbWljLWNvbXBvbmVudC1vcHRpb25zJztcblxuLyoqXG4gKiBBbmd1bGFyIHNlcnZpY2UgZm9yIGNyZWF0aW5nIGFuZCByZW5kZXJpbmcgYSBkeW5hbWljIGNvbXBvbmVudC5cbiAqL1xuQEluamVjdGFibGUoe1xuICAvLyBNdXN0IGJlICdhbnknIHNvIHRoYXQgdGhlIGNvbXBvbmVudCBpcyBjcmVhdGVkIGluIHRoZSBjb250ZXh0IG9mIGl0cyBtb2R1bGUncyBpbmplY3Rvci5cbiAgLy8gSWYgc2V0IHRvICdyb290JywgdGhlIGNvbXBvbmVudCdzIGRlcGVuZGVuY3kgaW5qZWN0aW9ucyB3b3VsZCBvbmx5IGJlIGRlcml2ZWQgZnJvbSB0aGUgcm9vdFxuICAvLyBpbmplY3RvciBhbmQgbWF5IGxvb3NlIGNvbnRleHQgaWYgdGhlIGNvbXBvbmVudCBpcyBjcmVhdGVkIHdpdGhpbiBhIGxhenktbG9hZGVkIG1vZHVsZS5cbiAgcHJvdmlkZWRJbjogJ2FueScsXG59KVxuZXhwb3J0IGNsYXNzIFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgcHJpdmF0ZSBhcHBsaWNhdGlvblJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSB3aW5kb3dSZWY6IFNreUFwcFdpbmRvd1JlZixcbiAgICByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTJcbiAgKSB7XG4gICAgLy8gQmFzZWQgb24gc3VnZ2VzdGlvbnMgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNzgyNFxuICAgIC8vIGZvciBhY2Nlc3NpbmcgYW4gaW5zdGFuY2Ugb2YgUmVuZGVyZXIyIGluIGEgc2VydmljZSBzaW5jZSBSZW5kZXJlcjIgY2FuJ3RcbiAgICAvLyBiZSBpbmplY3RlZCBpbnRvIGEgc2VydmljZS4gIFBhc3NpbmcgdW5kZWZpbmVkIGZvciBib3RoIHBhcmFtZXRlcnMgcmVzdWx0c1xuICAgIC8vIGluIHRoZSBkZWZhdWx0IHJlbmRlcmVyIHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBoZXJlLlxuICAgIHRoaXMucmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCB1bmRlZmluZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHNwZWNpZmllZCBjb21wb25lbnQgYW5kIGFkZHMgaXQgdG8gdGhlIHNwZWNpZmllZCBsb2NhdGlvblxuICAgKiBvbiB0aGUgcGFnZS5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyBmb3IgY3JlYXRpbmcgdGhlIGR5bmFtaWMgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZUNvbXBvbmVudDxUPihcbiAgICBjb21wb25lbnRUeXBlOiBUeXBlPFQ+LFxuICAgIG9wdGlvbnM/OiBTa3lEeW5hbWljQ29tcG9uZW50T3B0aW9uc1xuICApOiBDb21wb25lbnRSZWY8VD4ge1xuICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHtcbiAgICAgIGxvY2F0aW9uOiBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQm9keUJvdHRvbSxcbiAgICB9O1xuXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcbiAgICAgIC5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeTxUPihjb21wb25lbnRUeXBlKVxuICAgICAgLmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcblxuICAgIHRoaXMuYXBwbGljYXRpb25SZWYuYXR0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuXG4gICAgY29uc3QgZWwgPSB0aGlzLmdldFJvb3ROb2RlKGNvbXBvbmVudFJlZik7XG5cbiAgICBjb25zdCBib2R5RWwgPSB0aGlzLndpbmRvd1JlZi5uYXRpdmVXaW5kb3cuZG9jdW1lbnQuYm9keTtcblxuICAgIHN3aXRjaCAob3B0aW9ucy5sb2NhdGlvbikge1xuICAgICAgY2FzZSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQmVmb3JlRWxlbWVudDpcbiAgICAgICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUoXG4gICAgICAgICAgb3B0aW9ucy5yZWZlcmVuY2VFbC5wYXJlbnRFbGVtZW50LFxuICAgICAgICAgIGVsLFxuICAgICAgICAgIG9wdGlvbnMucmVmZXJlbmNlRWxcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbi5FbGVtZW50VG9wOlxuICAgICAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZShcbiAgICAgICAgICBvcHRpb25zLnJlZmVyZW5jZUVsLFxuICAgICAgICAgIGVsLFxuICAgICAgICAgIG9wdGlvbnMucmVmZXJlbmNlRWwuZmlyc3RDaGlsZFxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkVsZW1lbnRCb3R0b206XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQob3B0aW9ucy5yZWZlcmVuY2VFbCwgZWwpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJvZHlUb3A6XG4gICAgICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKGJvZHlFbCwgZWwsIGJvZHlFbC5maXJzdENoaWxkKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGJvZHlFbCwgZWwpO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gY29tcG9uZW50UmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBjb21wb25lbnQgcmVmIGZyb20gdGhlIHBhZ2VcbiAgICogQHBhcmFtIGNvbXBvbmVudFJlZiBDb21wb25lbnQgcmVmIGZvciB0aGUgY29tcG9uZW50IGJlaW5nIHJlbW92ZWRcbiAgICovXG4gIHB1YmxpYyByZW1vdmVDb21wb25lbnQ8VD4oY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8VD4pOiB2b2lkIHtcbiAgICBpZiAoIWNvbXBvbmVudFJlZikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuYXBwbGljYXRpb25SZWYuZGV0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgIGNvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gIH1cblxuICBwcml2YXRlIGdldFJvb3ROb2RlPFQ+KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFQ+KTogYW55IHtcbiAgICAvLyBUZWNobmlxdWUgZm9yIHJldHJpZXZpbmcgdGhlIGNvbXBvbmVudCdzIHJvb3Qgbm9kZSB0YWtlbiBmcm9tIGhlcmU6XG4gICAgLy8gaHR0cHM6Ly9tYWxjb2RlZC5jb20vcG9zdHMvYW5ndWxhci1keW5hbWljLWNvbXBvbmVudHNcbiAgICByZXR1cm4gKGNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8VD4pLnJvb3ROb2Rlc1swXTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export class SkyAppFormat {
|
4
|
+
formatText(format, ...args) {
|
5
|
+
return String(format).replace(/\{(\d+)\}/g, function (match, capture) {
|
6
|
+
return args[parseInt(capture, 10)];
|
7
|
+
});
|
8
|
+
}
|
9
|
+
}
|
10
|
+
SkyAppFormat.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyAppFormat, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
11
|
+
SkyAppFormat.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyAppFormat, providedIn: 'root' });
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyAppFormat, decorators: [{
|
13
|
+
type: Injectable,
|
14
|
+
args: [{
|
15
|
+
providedIn: 'root',
|
16
|
+
}]
|
17
|
+
}] });
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWZvcm1hdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9mb3JtYXQvYXBwLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sWUFBWTtJQUNoQixVQUFVLENBQUMsTUFBYyxFQUFFLEdBQUcsSUFBVztRQUM5QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQzNCLFlBQVksRUFDWixVQUFVLEtBQUssRUFBRSxPQUFPO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7O3lHQVJVLFlBQVk7NkdBQVosWUFBWSxjQUZYLE1BQU07MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBcHBGb3JtYXQge1xuICBwdWJsaWMgZm9ybWF0VGV4dChmb3JtYXQ6IHN0cmluZywgLi4uYXJnczogYW55W10pOiBzdHJpbmcge1xuICAgIHJldHVybiBTdHJpbmcoZm9ybWF0KS5yZXBsYWNlKFxuICAgICAgL1xceyhcXGQrKVxcfS9nLFxuICAgICAgZnVuY3Rpb24gKG1hdGNoLCBjYXB0dXJlKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGFyZ3NbcGFyc2VJbnQoY2FwdHVyZSwgMTApXTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,34 @@
|
|
1
|
+
import { Directive, ElementRef, Renderer2 } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
let idIndex = 0;
|
4
|
+
function generateId() {
|
5
|
+
idIndex++;
|
6
|
+
return `sky-id-gen__${idIndex}`;
|
7
|
+
}
|
8
|
+
/**
|
9
|
+
* Sets the element's `id` attribute to a unique ID. To reference this unique ID on other elements,
|
10
|
+
* such as in a `label` element's `for` attribute, assign this directive to a template reference
|
11
|
+
* variable, then use its `id` property.
|
12
|
+
*/
|
13
|
+
export class SkyIdDirective {
|
14
|
+
constructor(elRef, renderer) {
|
15
|
+
// Generate and apply the ID before the template is rendered
|
16
|
+
// to avoid a changed-after-checked error.
|
17
|
+
const id = generateId();
|
18
|
+
renderer.setAttribute(elRef.nativeElement, 'id', id);
|
19
|
+
this._id = id;
|
20
|
+
}
|
21
|
+
get id() {
|
22
|
+
return this._id;
|
23
|
+
}
|
24
|
+
}
|
25
|
+
SkyIdDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyIdDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
26
|
+
SkyIdDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: SkyIdDirective, selector: "[skyId]", exportAs: ["skyId"], ngImport: i0 });
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyIdDirective, decorators: [{
|
28
|
+
type: Directive,
|
29
|
+
args: [{
|
30
|
+
selector: '[skyId]',
|
31
|
+
exportAs: 'skyId',
|
32
|
+
}]
|
33
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2lkL2lkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRWpFLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQUVoQixTQUFTLFVBQVU7SUFDakIsT0FBTyxFQUFFLENBQUM7SUFFVixPQUFPLGVBQWUsT0FBTyxFQUFFLENBQUM7QUFDbEMsQ0FBQztBQUVEOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sY0FBYztJQU96QixZQUFZLEtBQWlCLEVBQUUsUUFBbUI7UUFDaEQsNERBQTREO1FBQzVELDBDQUEwQztRQUMxQyxNQUFNLEVBQUUsR0FBRyxVQUFVLEVBQUUsQ0FBQztRQUV4QixRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXJELElBQUksQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFkRCxJQUFXLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQzs7MkdBSFUsY0FBYzsrRkFBZCxjQUFjOzJGQUFkLGNBQWM7a0JBSjFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFFBQVEsRUFBRSxPQUFPO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCBpZEluZGV4ID0gMDtcblxuZnVuY3Rpb24gZ2VuZXJhdGVJZCgpOiBzdHJpbmcge1xuICBpZEluZGV4Kys7XG5cbiAgcmV0dXJuIGBza3ktaWQtZ2VuX18ke2lkSW5kZXh9YDtcbn1cblxuLyoqXG4gKiBTZXRzIHRoZSBlbGVtZW50J3MgYGlkYCBhdHRyaWJ1dGUgdG8gYSB1bmlxdWUgSUQuIFRvIHJlZmVyZW5jZSB0aGlzIHVuaXF1ZSBJRCBvbiBvdGhlciBlbGVtZW50cyxcbiAqIHN1Y2ggYXMgaW4gYSBgbGFiZWxgIGVsZW1lbnQncyBgZm9yYCBhdHRyaWJ1dGUsIGFzc2lnbiB0aGlzIGRpcmVjdGl2ZSB0byBhIHRlbXBsYXRlIHJlZmVyZW5jZVxuICogdmFyaWFibGUsIHRoZW4gdXNlIGl0cyBgaWRgIHByb3BlcnR5LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5SWRdJyxcbiAgZXhwb3J0QXM6ICdza3lJZCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreUlkRGlyZWN0aXZlIHtcbiAgcHVibGljIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9pZDtcbiAgfVxuXG4gIHByaXZhdGUgX2lkOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoZWxSZWY6IEVsZW1lbnRSZWYsIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcbiAgICAvLyBHZW5lcmF0ZSBhbmQgYXBwbHkgdGhlIElEIGJlZm9yZSB0aGUgdGVtcGxhdGUgaXMgcmVuZGVyZWRcbiAgICAvLyB0byBhdm9pZCBhIGNoYW5nZWQtYWZ0ZXItY2hlY2tlZCBlcnJvci5cbiAgICBjb25zdCBpZCA9IGdlbmVyYXRlSWQoKTtcblxuICAgIHJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbFJlZi5uYXRpdmVFbGVtZW50LCAnaWQnLCBpZCk7XG5cbiAgICB0aGlzLl9pZCA9IGlkO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { SkyIdDirective } from './id.directive';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export class SkyIdModule {
|
5
|
+
}
|
6
|
+
SkyIdModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyIdModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
7
|
+
SkyIdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyIdModule, declarations: [SkyIdDirective], exports: [SkyIdDirective] });
|
8
|
+
SkyIdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyIdModule });
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyIdModule, decorators: [{
|
10
|
+
type: NgModule,
|
11
|
+
args: [{
|
12
|
+
declarations: [SkyIdDirective],
|
13
|
+
exports: [SkyIdDirective],
|
14
|
+
}]
|
15
|
+
}] });
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2lkL2lkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFNaEQsTUFBTSxPQUFPLFdBQVc7O3dHQUFYLFdBQVc7eUdBQVgsV0FBVyxpQkFIUCxjQUFjLGFBQ25CLGNBQWM7eUdBRWIsV0FBVzsyRkFBWCxXQUFXO2tCQUp2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsY0FBYyxDQUFDO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUlkRGlyZWN0aXZlIH0gZnJvbSAnLi9pZC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTa3lJZERpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtTa3lJZERpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUlkTW9kdWxlIHt9XG4iXX0=
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
/**
|
4
|
+
* @deprecated The `SkyLogService` no longer needs the `SkyLogModule`.
|
5
|
+
* The `SkyLogModule` can be removed from your project.
|
6
|
+
*/
|
7
|
+
export class SkyLogModule {
|
8
|
+
}
|
9
|
+
SkyLogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyLogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
10
|
+
SkyLogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyLogModule });
|
11
|
+
SkyLogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyLogModule });
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyLogModule, decorators: [{
|
13
|
+
type: NgModule,
|
14
|
+
args: [{}]
|
15
|
+
}] });
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9sb2cvbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6Qzs7O0dBR0c7QUFFSCxNQUFNLE9BQU8sWUFBWTs7eUdBQVosWUFBWTswR0FBWixZQUFZOzBHQUFaLFlBQVk7MkZBQVosWUFBWTtrQkFEeEIsUUFBUTttQkFBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBUaGUgYFNreUxvZ1NlcnZpY2VgIG5vIGxvbmdlciBuZWVkcyB0aGUgYFNreUxvZ01vZHVsZWAuXG4gKiBUaGUgYFNreUxvZ01vZHVsZWAgY2FuIGJlIHJlbW92ZWQgZnJvbSB5b3VyIHByb2plY3QuXG4gKi9cbkBOZ01vZHVsZSh7fSlcbmV4cG9ydCBjbGFzcyBTa3lMb2dNb2R1bGUge31cbiJdfQ==
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
/**
|
4
|
+
* @deprecated The `SkyLogService` will be removed in the next major version of `@skyux/core`.
|
5
|
+
*/
|
6
|
+
export class SkyLogService {
|
7
|
+
warn(message, ...optionalParams) {
|
8
|
+
/*istanbul ignore else */
|
9
|
+
if (window.console) {
|
10
|
+
// eslint-disable-next-line prefer-spread,prefer-rest-params
|
11
|
+
window.console.warn.apply(window.console, arguments);
|
12
|
+
}
|
13
|
+
}
|
14
|
+
}
|
15
|
+
SkyLogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyLogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
16
|
+
SkyLogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyLogService, providedIn: 'root' });
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyLogService, decorators: [{
|
18
|
+
type: Injectable,
|
19
|
+
args: [{
|
20
|
+
providedIn: 'root',
|
21
|
+
}]
|
22
|
+
}] });
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvbG9nL2xvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDOztHQUVHO0FBSUgsTUFBTSxPQUFPLGFBQWE7SUFDakIsSUFBSSxDQUFDLE9BQWEsRUFBRSxHQUFHLGNBQXFCO1FBQ2pELHlCQUF5QjtRQUN6QixJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUU7WUFDbEIsNERBQTREO1lBQzVELE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQ3REO0lBQ0gsQ0FBQzs7MEdBUFUsYUFBYTs4R0FBYixhQUFhLGNBRlosTUFBTTsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBUaGUgYFNreUxvZ1NlcnZpY2VgIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIG9mIGBAc2t5dXgvY29yZWAuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lMb2dTZXJ2aWNlIHtcbiAgcHVibGljIHdhcm4obWVzc2FnZT86IGFueSwgLi4ub3B0aW9uYWxQYXJhbXM6IGFueVtdKTogdm9pZCB7XG4gICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh3aW5kb3cuY29uc29sZSkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1zcHJlYWQscHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgICB3aW5kb3cuY29uc29sZS53YXJuLmFwcGx5KHdpbmRvdy5jb25zb2xlLCBhcmd1bWVudHMpO1xuICAgIH1cbiAgfVxufVxuIl19
|
@@ -0,0 +1,20 @@
|
|
1
|
+
export var SkyMediaBreakpoints;
|
2
|
+
(function (SkyMediaBreakpoints) {
|
3
|
+
/**
|
4
|
+
* Indicates screen widths of 767px or less.
|
5
|
+
*/
|
6
|
+
SkyMediaBreakpoints[SkyMediaBreakpoints["xs"] = 1] = "xs";
|
7
|
+
/**
|
8
|
+
* Indicates screen widths of 768px to 991px.
|
9
|
+
*/
|
10
|
+
SkyMediaBreakpoints[SkyMediaBreakpoints["sm"] = 2] = "sm";
|
11
|
+
/**
|
12
|
+
* Indicates screen widths of 992px to 1199px.
|
13
|
+
*/
|
14
|
+
SkyMediaBreakpoints[SkyMediaBreakpoints["md"] = 3] = "md";
|
15
|
+
/**
|
16
|
+
* Indicates screen widths of 1200px or greater.
|
17
|
+
*/
|
18
|
+
SkyMediaBreakpoints[SkyMediaBreakpoints["lg"] = 4] = "lg";
|
19
|
+
})(SkyMediaBreakpoints || (SkyMediaBreakpoints = {}));
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtYnJlYWtwb2ludHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvbWVkaWEtcXVlcnkvbWVkaWEtYnJlYWtwb2ludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksbUJBb0JYO0FBcEJELFdBQVksbUJBQW1CO0lBQzdCOztPQUVHO0lBQ0gseURBQU0sQ0FBQTtJQUVOOztPQUVHO0lBQ0gseURBQUUsQ0FBQTtJQUVGOztPQUVHO0lBQ0gseURBQUUsQ0FBQTtJQUVGOztPQUVHO0lBQ0gseURBQUUsQ0FBQTtBQUNKLENBQUMsRUFwQlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQW9COUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTa3lNZWRpYUJyZWFrcG9pbnRzIHtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBzY3JlZW4gd2lkdGhzIG9mIDc2N3B4IG9yIGxlc3MuXG4gICAqL1xuICB4cyA9IDEsXG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBzY3JlZW4gd2lkdGhzIG9mIDc2OHB4IHRvIDk5MXB4LlxuICAgKi9cbiAgc20sXG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBzY3JlZW4gd2lkdGhzIG9mIDk5MnB4IHRvIDExOTlweC5cbiAgICovXG4gIG1kLFxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgc2NyZWVuIHdpZHRocyBvZiAxMjAwcHggb3IgZ3JlYXRlci5cbiAgICovXG4gIGxnLFxufVxuIl19
|