@covalent/core 6.4.0 → 6.4.2
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/breadcrumbs/breadcrumbs.component.d.ts +1 -1
- package/common/styles/font/_font.scss +1 -35
- package/dialogs/src/README.md +223 -0
- package/dialogs/window-dialog/window-dialog.component.d.ts +1 -1
- package/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.d.ts +1 -1
- package/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.d.ts +1 -1
- package/dynamic-menu/dynamic-menu.component.d.ts +1 -1
- package/esm2020/breadcrumbs/breadcrumb/breadcrumb.component.mjs +92 -0
- package/esm2020/breadcrumbs/breadcrumbs.component.mjs +131 -0
- package/{esm2022 → esm2020}/breadcrumbs/breadcrumbs.module.mjs +5 -5
- package/esm2020/common/behaviors/control-value-accesor.mixin.mjs +41 -0
- package/esm2020/common/behaviors/disable-ripple.mixin.mjs +24 -0
- package/{esm2022 → esm2020}/common/behaviors/disabled.mixin.mjs +2 -2
- package/{esm2022 → esm2020}/common/common.module.mjs +17 -17
- package/esm2020/common/directives/fullscreen/fullscreen.directive.mjs +85 -0
- package/esm2020/common/forms/auto-trim/auto-trim.directive.mjs +36 -0
- package/esm2020/common/functions/convert.mjs +84 -0
- package/esm2020/common/functions/download.mjs +75 -0
- package/esm2020/common/pipes/bytes/bytes.pipe.mjs +42 -0
- package/esm2020/common/pipes/decimal-bytes/decimal-bytes.pipe.mjs +42 -0
- package/esm2020/common/pipes/digits/digits.pipe.mjs +39 -0
- package/{esm2022 → esm2020}/common/pipes/time-ago/time-ago.pipe.mjs +4 -4
- package/{esm2022 → esm2020}/common/pipes/time-difference/time-difference.pipe.mjs +4 -4
- package/{esm2022 → esm2020}/common/pipes/time-until/time-until.pipe.mjs +4 -4
- package/esm2020/common/pipes/truncate/truncate.pipe.mjs +27 -0
- package/esm2020/common/services/icon.service.mjs +1089 -0
- package/esm2020/common/services/router-path.service.mjs +29 -0
- package/esm2020/dialogs/alert-dialog/alert-dialog.component.mjs +23 -0
- package/esm2020/dialogs/confirm-dialog/confirm-dialog.component.mjs +28 -0
- package/esm2020/dialogs/dialog.component.mjs +57 -0
- package/{esm2022 → esm2020}/dialogs/dialogs.module.mjs +39 -39
- package/esm2020/dialogs/prompt-dialog/prompt-dialog.component.mjs +75 -0
- package/esm2020/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.mjs +216 -0
- package/esm2020/dialogs/services/dialog.service.mjs +174 -0
- package/esm2020/dialogs/window-dialog/window-dialog.component.mjs +38 -0
- package/esm2020/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.mjs +30 -0
- package/esm2020/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.mjs +24 -0
- package/esm2020/dynamic-menu/dynamic-menu.component.mjs +28 -0
- package/{esm2022 → esm2020}/dynamic-menu/dynamic-menu.module.mjs +19 -19
- package/esm2020/file/directives/file-drop.directive.mjs +139 -0
- package/esm2020/file/directives/file-select.directive.mjs +77 -0
- package/esm2020/file/file-input/file-input.component.mjs +128 -0
- package/esm2020/file/file-upload/file-upload.component.mjs +174 -0
- package/{esm2022 → esm2020}/file/file.module.mjs +21 -21
- package/esm2020/file/services/file.service.mjs +64 -0
- package/esm2020/json-formatter/json-formatter.component.mjs +217 -0
- package/{esm2022 → esm2020}/json-formatter/json-formatter.module.mjs +5 -5
- package/esm2020/layout/layout-card-over/layout-card-over.component.mjs +40 -0
- package/esm2020/layout/layout-footer/layout-footer.component.mjs +33 -0
- package/esm2020/layout/layout-manage-list/layout-manage-list.component.mjs +93 -0
- package/{esm2022 → esm2020}/layout/layout-manage-list/layout-manage-list.directives.mjs +10 -10
- package/esm2020/layout/layout-nav/layout-nav.component.mjs +50 -0
- package/esm2020/layout/layout-nav-list/layout-nav-list.component.mjs +128 -0
- package/{esm2022 → esm2020}/layout/layout-nav-list/layout-nav-list.directives.mjs +10 -10
- package/esm2020/layout/layout-toggle.class.mjs +92 -0
- package/esm2020/layout/layout.component.mjs +92 -0
- package/{esm2022 → esm2020}/layout/layout.directives.mjs +10 -10
- package/{esm2022 → esm2020}/layout/layout.module.mjs +55 -55
- package/esm2020/layout/navigation-drawer/navigation-drawer.component.mjs +163 -0
- package/esm2020/loading/directives/loading.directive.mjs +126 -0
- package/esm2020/loading/loading.component.mjs +187 -0
- package/{esm2022 → esm2020}/loading/loading.module.mjs +13 -13
- package/esm2020/loading/services/loading.factory.mjs +207 -0
- package/esm2020/loading/services/loading.service.mjs +213 -0
- package/{esm2022 → esm2020}/menu/menu.component.mjs +4 -4
- package/{esm2022 → esm2020}/menu/menu.module.mjs +5 -5
- package/esm2020/message/message.component.mjs +203 -0
- package/{esm2022 → esm2020}/message/message.module.mjs +7 -7
- package/esm2020/search/search-box/search-box.component.mjs +194 -0
- package/esm2020/search/search-input/search-input.component.mjs +207 -0
- package/{esm2022 → esm2020}/search/search.module.mjs +13 -13
- package/esm2020/side-sheet/side-sheet-container.mjs +274 -0
- package/esm2020/side-sheet/side-sheet-ref.mjs +26 -0
- package/{esm2022 → esm2020}/side-sheet/side-sheet.config.mjs +5 -2
- package/esm2020/side-sheet/side-sheet.content-directives.mjs +201 -0
- package/esm2020/side-sheet/side-sheet.mjs +228 -0
- package/{esm2022 → esm2020}/side-sheet/side-sheet.module.mjs +14 -14
- package/esm2020/user-profile/user-profile-menu/user-profile-menu.component.mjs +23 -0
- package/esm2020/user-profile/user-profile.component.mjs +19 -0
- package/{esm2022 → esm2020}/user-profile/user-profile.module.mjs +15 -15
- package/{fesm2022 → fesm2015}/covalent-core-breadcrumbs.mjs +22 -28
- package/{fesm2022 → fesm2015}/covalent-core-breadcrumbs.mjs.map +1 -1
- package/fesm2015/covalent-core-common.mjs +2281 -0
- package/fesm2015/covalent-core-common.mjs.map +1 -0
- package/fesm2015/covalent-core-dialogs.mjs +668 -0
- package/fesm2015/covalent-core-dialogs.mjs.map +1 -0
- package/fesm2015/covalent-core-dynamic-menu.mjs +126 -0
- package/fesm2015/covalent-core-dynamic-menu.mjs.map +1 -0
- package/fesm2015/covalent-core-file.mjs +621 -0
- package/fesm2015/covalent-core-file.mjs.map +1 -0
- package/fesm2015/covalent-core-json-formatter.mjs +298 -0
- package/fesm2015/covalent-core-json-formatter.mjs.map +1 -0
- package/fesm2015/covalent-core-layout.mjs +1024 -0
- package/{fesm2022 → fesm2015}/covalent-core-layout.mjs.map +1 -1
- package/fesm2015/covalent-core-loading.mjs +766 -0
- package/fesm2015/covalent-core-loading.mjs.map +1 -0
- package/{fesm2022 → fesm2015}/covalent-core-menu.mjs +7 -7
- package/{fesm2022 → fesm2015}/covalent-core-menu.mjs.map +1 -1
- package/fesm2015/covalent-core-message.mjs +284 -0
- package/fesm2015/covalent-core-message.mjs.map +1 -0
- package/fesm2015/covalent-core-search.mjs +430 -0
- package/fesm2015/covalent-core-search.mjs.map +1 -0
- package/fesm2015/covalent-core-side-sheet.mjs +784 -0
- package/fesm2015/covalent-core-side-sheet.mjs.map +1 -0
- package/fesm2015/covalent-core-user-profile.mjs +83 -0
- package/fesm2015/covalent-core-user-profile.mjs.map +1 -0
- package/fesm2020/covalent-core-breadcrumbs.mjs +243 -0
- package/fesm2020/covalent-core-breadcrumbs.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/covalent-core-common.mjs +1125 -1131
- package/fesm2020/covalent-core-common.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/covalent-core-dialogs.mjs +82 -111
- package/fesm2020/covalent-core-dialogs.mjs.map +1 -0
- package/fesm2020/covalent-core-dynamic-menu.mjs +126 -0
- package/{fesm2022 → fesm2020}/covalent-core-dynamic-menu.mjs.map +1 -1
- package/{fesm2022 → fesm2020}/covalent-core-file.mjs +110 -148
- package/{fesm2022 → fesm2020}/covalent-core-file.mjs.map +1 -1
- package/{fesm2022 → fesm2020}/covalent-core-json-formatter.mjs +21 -26
- package/{fesm2022 → fesm2020}/covalent-core-json-formatter.mjs.map +1 -1
- package/{fesm2022 → fesm2020}/covalent-core-layout.mjs +271 -396
- package/fesm2020/covalent-core-layout.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/covalent-core-loading.mjs +78 -100
- package/{fesm2022 → fesm2020}/covalent-core-loading.mjs.map +1 -1
- package/fesm2020/covalent-core-menu.mjs +37 -0
- package/fesm2020/covalent-core-menu.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/covalent-core-message.mjs +23 -42
- package/{fesm2022 → fesm2020}/covalent-core-message.mjs.map +1 -1
- package/fesm2020/covalent-core-search.mjs +427 -0
- package/fesm2020/covalent-core-search.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/covalent-core-side-sheet.mjs +99 -124
- package/{fesm2022 → fesm2020}/covalent-core-side-sheet.mjs.map +1 -1
- package/fesm2020/covalent-core-user-profile.mjs +83 -0
- package/fesm2020/covalent-core-user-profile.mjs.map +1 -0
- package/fesm2020/covalent-core.mjs +4 -0
- package/fesm2020/covalent-core.mjs.map +1 -0
- package/file/directives/file-drop.directive.d.ts +1 -1
- package/file/directives/file-select.directive.d.ts +1 -1
- package/file/file-input/file-input.component.d.ts +1 -1
- package/file/file-upload/file-upload.component.d.ts +1 -1
- package/file/src/file-input/README.md +147 -0
- package/file/src/file-upload/README.md +136 -0
- package/json-formatter/json-formatter.component.d.ts +1 -1
- package/layout/layout-card-over/layout-card-over.component.d.ts +1 -1
- package/layout/layout-footer/layout-footer.component.d.ts +1 -1
- package/layout/layout-manage-list/layout-manage-list.component.d.ts +1 -1
- package/layout/layout-manage-list/layout-manage-list.directives.d.ts +3 -3
- package/layout/layout-nav/layout-nav.component.d.ts +1 -1
- package/layout/layout-nav-list/layout-nav-list.component.d.ts +1 -1
- package/layout/layout-nav-list/layout-nav-list.directives.d.ts +3 -3
- package/layout/layout-toggle.class.d.ts +1 -1
- package/layout/layout.component.d.ts +1 -1
- package/layout/layout.directives.d.ts +3 -3
- package/layout/navigation-drawer/navigation-drawer.component.d.ts +1 -1
- package/layout/src/layout-card-over/README.md +43 -0
- package/layout/src/layout-manage-list/README.md +80 -0
- package/layout/src/layout-nav/README.md +50 -0
- package/layout/src/layout-nav-list/README.md +105 -0
- package/loading/directives/loading.directive.d.ts +1 -1
- package/message/message.component.d.ts +1 -1
- package/package.json +91 -55
- package/search/search-box/search-box.component.d.ts +1 -1
- package/search/search-input/search-input.component.d.ts +1 -1
- package/search/src/search-box/README.md +73 -0
- package/search/src/search-input/README.md +74 -0
- package/side-sheet/side-sheet.content-directives.d.ts +2 -2
- package/user-profile/user-profile-menu/user-profile-menu.component.d.ts +1 -1
- package/user-profile/user-profile.component.d.ts +1 -1
- package/common/styles/font/MaterialIcons-Regular-v48.woff2 +0 -0
- package/esm2022/breadcrumbs/breadcrumb/breadcrumb.component.mjs +0 -94
- package/esm2022/breadcrumbs/breadcrumbs.component.mjs +0 -135
- package/esm2022/common/behaviors/control-value-accesor.mixin.mjs +0 -43
- package/esm2022/common/behaviors/disable-ripple.mixin.mjs +0 -24
- package/esm2022/common/directives/fullscreen/fullscreen.directive.mjs +0 -87
- package/esm2022/common/forms/auto-trim/auto-trim.directive.mjs +0 -37
- package/esm2022/common/functions/convert.mjs +0 -84
- package/esm2022/common/functions/download.mjs +0 -75
- package/esm2022/common/pipes/bytes/bytes.pipe.mjs +0 -42
- package/esm2022/common/pipes/decimal-bytes/decimal-bytes.pipe.mjs +0 -42
- package/esm2022/common/pipes/digits/digits.pipe.mjs +0 -41
- package/esm2022/common/pipes/truncate/truncate.pipe.mjs +0 -27
- package/esm2022/common/services/icon.service.mjs +0 -1087
- package/esm2022/common/services/router-path.service.mjs +0 -30
- package/esm2022/dialogs/alert-dialog/alert-dialog.component.mjs +0 -26
- package/esm2022/dialogs/confirm-dialog/confirm-dialog.component.mjs +0 -31
- package/esm2022/dialogs/dialog.component.mjs +0 -60
- package/esm2022/dialogs/prompt-dialog/prompt-dialog.component.mjs +0 -84
- package/esm2022/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.mjs +0 -220
- package/esm2022/dialogs/services/dialog.service.mjs +0 -179
- package/esm2022/dialogs/window-dialog/window-dialog.component.mjs +0 -40
- package/esm2022/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.mjs +0 -30
- package/esm2022/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.mjs +0 -23
- package/esm2022/dynamic-menu/dynamic-menu.component.mjs +0 -28
- package/esm2022/file/directives/file-drop.directive.mjs +0 -145
- package/esm2022/file/directives/file-select.directive.mjs +0 -78
- package/esm2022/file/file-input/file-input.component.mjs +0 -146
- package/esm2022/file/file-upload/file-upload.component.mjs +0 -185
- package/esm2022/file/services/file.service.mjs +0 -66
- package/esm2022/json-formatter/json-formatter.component.mjs +0 -222
- package/esm2022/layout/layout-card-over/layout-card-over.component.mjs +0 -50
- package/esm2022/layout/layout-footer/layout-footer.component.mjs +0 -36
- package/esm2022/layout/layout-manage-list/layout-manage-list.component.mjs +0 -92
- package/esm2022/layout/layout-nav/layout-nav.component.mjs +0 -76
- package/esm2022/layout/layout-nav-list/layout-nav-list.component.mjs +0 -154
- package/esm2022/layout/layout-toggle.class.mjs +0 -96
- package/esm2022/layout/layout.component.mjs +0 -91
- package/esm2022/layout/navigation-drawer/navigation-drawer.component.mjs +0 -221
- package/esm2022/loading/directives/loading.directive.mjs +0 -133
- package/esm2022/loading/loading.component.mjs +0 -193
- package/esm2022/loading/services/loading.factory.mjs +0 -210
- package/esm2022/loading/services/loading.service.mjs +0 -219
- package/esm2022/message/message.component.mjs +0 -222
- package/esm2022/search/search-box/search-box.component.mjs +0 -198
- package/esm2022/search/search-input/search-input.component.mjs +0 -214
- package/esm2022/side-sheet/side-sheet-container.mjs +0 -285
- package/esm2022/side-sheet/side-sheet-ref.mjs +0 -30
- package/esm2022/side-sheet/side-sheet.content-directives.mjs +0 -206
- package/esm2022/side-sheet/side-sheet.mjs +0 -236
- package/esm2022/user-profile/user-profile-menu/user-profile-menu.component.mjs +0 -25
- package/esm2022/user-profile/user-profile.component.mjs +0 -21
- package/fesm2022/covalent-core-common.mjs.map +0 -1
- package/fesm2022/covalent-core-dialogs.mjs.map +0 -1
- package/fesm2022/covalent-core-dynamic-menu.mjs +0 -125
- package/fesm2022/covalent-core-search.mjs +0 -438
- package/fesm2022/covalent-core-search.mjs.map +0 -1
- package/fesm2022/covalent-core-user-profile.mjs +0 -87
- package/fesm2022/covalent-core-user-profile.mjs.map +0 -1
- /package/{esm2022 → esm2020}/breadcrumbs/covalent-core-breadcrumbs.mjs +0 -0
- /package/{esm2022 → esm2020}/breadcrumbs/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/bounce/bounce.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/collapse/collapse.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/common/interfaces.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/fade/fadeInOut.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/flash/flash.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/headshake/headshake.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/jello/jello.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/pulse/pulse.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/animations/rotate/rotate.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/common/covalent-core-common.mjs +0 -0
- /package/{esm2022 → esm2020}/common/forms/validators/validators.mjs +0 -0
- /package/{esm2022 → esm2020}/common/functions/clipboard.mjs +0 -0
- /package/{esm2022 → esm2020}/common/functions/file.mjs +0 -0
- /package/{esm2022 → esm2020}/common/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/covalent-core.mjs +0 -0
- /package/{esm2022 → esm2020}/dialogs/covalent-core-dialogs.mjs +0 -0
- /package/{esm2022 → esm2020}/dialogs/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/dynamic-menu/covalent-core-dynamic-menu.mjs +0 -0
- /package/{esm2022 → esm2020}/dynamic-menu/dynamic-menu.menu.mjs +0 -0
- /package/{esm2022 → esm2020}/dynamic-menu/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/file/covalent-core-file.mjs +0 -0
- /package/{esm2022 → esm2020}/file/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/json-formatter/collapse.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/json-formatter/covalent-core-json-formatter.mjs +0 -0
- /package/{esm2022 → esm2020}/json-formatter/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/layout/covalent-core-layout.mjs +0 -0
- /package/{esm2022 → esm2020}/layout/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/loading/covalent-core-loading.mjs +0 -0
- /package/{esm2022 → esm2020}/loading/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/menu/covalent-core-menu.mjs +0 -0
- /package/{esm2022 → esm2020}/menu/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/message/collapse.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/message/covalent-core-message.mjs +0 -0
- /package/{esm2022 → esm2020}/message/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/search/covalent-core-search.mjs +0 -0
- /package/{esm2022 → esm2020}/search/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/side-sheet/covalent-core-side-sheet.mjs +0 -0
- /package/{esm2022 → esm2020}/side-sheet/public_api.mjs +0 -0
- /package/{esm2022 → esm2020}/side-sheet/side-sheet.animation.mjs +0 -0
- /package/{esm2022 → esm2020}/user-profile/covalent-core-user-profile.mjs +0 -0
- /package/{esm2022 → esm2020}/user-profile/public_api.mjs +0 -0
- /package/{fesm2022 → fesm2015}/covalent-core.mjs +0 -0
- /package/{fesm2022 → fesm2015}/covalent-core.mjs.map +0 -0
@@ -30,5 +30,5 @@ export declare class TdBreadcrumbsComponent implements OnInit, AfterContentInit,
|
|
30
30
|
private setCrumbIcons;
|
31
31
|
private _calculateVisibility;
|
32
32
|
static ɵfac: i0.ɵɵFactoryDeclaration<TdBreadcrumbsComponent, never>;
|
33
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TdBreadcrumbsComponent, "td-breadcrumbs", never, { "separatorIcon":
|
33
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TdBreadcrumbsComponent, "td-breadcrumbs", never, { "separatorIcon": "separatorIcon"; }, {}, ["_breadcrumbs"], ["*"], false, never>;
|
34
34
|
}
|
@@ -1,41 +1,7 @@
|
|
1
1
|
$mat-font-url: 'styles/font/' !default;
|
2
2
|
|
3
3
|
@mixin covalent-material-icons() {
|
4
|
-
@
|
5
|
-
font-family: 'Material Icons';
|
6
|
-
font-style: normal;
|
7
|
-
font-weight: 400;
|
8
|
-
src: url($mat-font-url + 'MaterialIcons-Regular-v48.woff2') format('woff2');
|
9
|
-
}
|
10
|
-
|
11
|
-
.material-icons {
|
12
|
-
/* stylelint-disable-next-line font-family-no-missing-generic-family-keyword */
|
13
|
-
font-family: 'Material Icons';
|
14
|
-
font-weight: normal;
|
15
|
-
font-style: normal;
|
16
|
-
font-size: 24px; /* Preferred icon size */
|
17
|
-
display: inline-block;
|
18
|
-
width: 1em;
|
19
|
-
height: 1em;
|
20
|
-
line-height: 1;
|
21
|
-
text-transform: none;
|
22
|
-
letter-spacing: normal;
|
23
|
-
word-wrap: normal;
|
24
|
-
white-space: nowrap;
|
25
|
-
direction: ltr;
|
26
|
-
|
27
|
-
/* Support for all WebKit browsers. */
|
28
|
-
-webkit-font-smoothing: antialiased;
|
29
|
-
|
30
|
-
/* Support for Safari and Chrome. */
|
31
|
-
text-rendering: optimizeLegibility;
|
32
|
-
|
33
|
-
/* Support for Firefox. */
|
34
|
-
-moz-osx-font-smoothing: grayscale;
|
35
|
-
|
36
|
-
/* Support for IE. */
|
37
|
-
font-feature-settings: 'liga';
|
38
|
-
}
|
4
|
+
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block');
|
39
5
|
|
40
6
|
// Ensure our size prevails over material
|
41
7
|
mat-icon.material-icons {
|
@@ -0,0 +1,223 @@
|
|
1
|
+
# TdDialogService
|
2
|
+
|
3
|
+
Service provided with methods that wrap the @angular/material [MatDialog] service and provide an easier experience for simple dialogs.
|
4
|
+
|
5
|
+
Note: if no [ViewContainerRef] is provided, [TdDialogService] will throw an error.
|
6
|
+
|
7
|
+
<br/>
|
8
|
+
|
9
|
+
## API Summary
|
10
|
+
|
11
|
+
#### Methods
|
12
|
+
|
13
|
+
- openAlert: function(IAlertConfig): MatDialogRef<TdAlertDialogComponent>
|
14
|
+
- Opens an alert dialog with the provided config.
|
15
|
+
- openConfirm: function(IConfirmConfig): MatDialogRef<TdConfirmDialogComponent>
|
16
|
+
- Opens a confirm dialog with the provided config.
|
17
|
+
- openPrompt: function(IPromptConfig): MatDialogRef<TdPromptDialogComponent>
|
18
|
+
- Opens a prompt dialog with the provided config.
|
19
|
+
- open: function<T>(component: ComponentType<T>, config: MatDialogConfig): MatDialogRef<T>
|
20
|
+
- Wrapper function over the open() method in MatDialog. Opens a modal dialog containing the given component.
|
21
|
+
- openDraggable: function<T>(IDraggableConfig<T>): MatDialogRef<T>
|
22
|
+
- Opens a draggable dialog containing the given component
|
23
|
+
- closeAll: function()
|
24
|
+
- Wrapper function over the closeAll() method in MatDialog. Closes all of the currently-open dialogs.
|
25
|
+
|
26
|
+
## Usage
|
27
|
+
|
28
|
+
TypeScript
|
29
|
+
|
30
|
+
```typescript
|
31
|
+
import { ViewContainerRef } from '@angular/core';
|
32
|
+
import { TdDialogService } from '@covalent/core/dialogs';
|
33
|
+
...
|
34
|
+
})
|
35
|
+
export class Demo {
|
36
|
+
constructor(private _dialogService: TdDialogService,
|
37
|
+
private _viewContainerRef: ViewContainerRef) {
|
38
|
+
...
|
39
|
+
}
|
40
|
+
|
41
|
+
openAlert(): void {
|
42
|
+
this._dialogService.openAlert({
|
43
|
+
message: 'This is how simple it is to create an alert with this wrapper service.',
|
44
|
+
disableClose: true | false, // defaults to false
|
45
|
+
viewContainerRef: this._viewContainerRef, //OPTIONAL
|
46
|
+
title: 'Alert', //OPTIONAL, hides if not provided
|
47
|
+
closeButton: 'Close', //OPTIONAL, defaults to 'CLOSE'
|
48
|
+
width: '400px', //OPTIONAL, defaults to 400px
|
49
|
+
});
|
50
|
+
}
|
51
|
+
|
52
|
+
openConfirm(): void {
|
53
|
+
this._dialogService.openConfirm({
|
54
|
+
message: 'This is how simple it is to create a confirm with this wrapper service. Do you agree?',
|
55
|
+
disableClose: true | false, // defaults to false
|
56
|
+
viewContainerRef: this._viewContainerRef, //OPTIONAL
|
57
|
+
title: 'Confirm', //OPTIONAL, hides if not provided
|
58
|
+
cancelButton: 'Disagree', //OPTIONAL, defaults to 'CANCEL'
|
59
|
+
acceptButton: 'Agree', //OPTIONAL, defaults to 'ACCEPT'
|
60
|
+
isDestructive: false, //OPTIONAL, defaults to false
|
61
|
+
width: '500px', //OPTIONAL, defaults to 400px
|
62
|
+
}).afterClosed().subscribe((accept: boolean) => {
|
63
|
+
if (accept) {
|
64
|
+
// DO SOMETHING
|
65
|
+
} else {
|
66
|
+
// DO SOMETHING ELSE
|
67
|
+
}
|
68
|
+
});
|
69
|
+
}
|
70
|
+
|
71
|
+
openPrompt(): void {
|
72
|
+
this._dialogService.openPrompt({
|
73
|
+
message: 'This is how simple it is to create a prompt with this wrapper service. Prompt something.',
|
74
|
+
disableClose: true | false, // defaults to false
|
75
|
+
viewContainerRef: this._viewContainerRef, //OPTIONAL
|
76
|
+
title: 'Prompt', //OPTIONAL, hides if not provided
|
77
|
+
value: 'Prepopulated value', //OPTIONAL
|
78
|
+
cancelButton: 'Cancel', //OPTIONAL, defaults to 'CANCEL'
|
79
|
+
acceptButton: 'Ok', //OPTIONAL, defaults to 'ACCEPT'
|
80
|
+
width: '400px', //OPTIONAL, defaults to 400px
|
81
|
+
}).afterClosed().subscribe((newValue: string) => {
|
82
|
+
if (newValue) {
|
83
|
+
// DO SOMETHING
|
84
|
+
} else {
|
85
|
+
// DO SOMETHING ELSE
|
86
|
+
}
|
87
|
+
});
|
88
|
+
}
|
89
|
+
|
90
|
+
openDraggable(): void {
|
91
|
+
this._dialogService.openDraggable({
|
92
|
+
component: DraggableDemoComponent,
|
93
|
+
config: { height: '300px' },
|
94
|
+
// CSS selectors of element(s) inside the component meant to be drag handle(s)
|
95
|
+
dragHandleSelectors: ['.drag-handle'],
|
96
|
+
// Class that will be added to the component signifying drag-ability
|
97
|
+
draggableClass: 'custom-class',
|
98
|
+
});
|
99
|
+
}
|
100
|
+
}
|
101
|
+
```
|
102
|
+
|
103
|
+
```typescript
|
104
|
+
import { Component } from '@angular/core';
|
105
|
+
|
106
|
+
@Component({
|
107
|
+
selector: 'app-draggable-demo',
|
108
|
+
template: `
|
109
|
+
<h2>Draggable dialog</h2>
|
110
|
+
<p>Draggable via the drag handle</p>
|
111
|
+
<button mat-icon-button class="drag-handle">
|
112
|
+
<mat-icon>drag_handle</mat-icon>
|
113
|
+
</button>
|
114
|
+
`,
|
115
|
+
})
|
116
|
+
export class DraggableDemoComponent {}
|
117
|
+
```
|
118
|
+
|
119
|
+
## Setup
|
120
|
+
|
121
|
+
Import the [CovalentDialogsModule] in your NgModule:
|
122
|
+
|
123
|
+
```typescript
|
124
|
+
import { CovalentDialogsModule } from '@covalent/core/dialogs';
|
125
|
+
|
126
|
+
@NgModule({
|
127
|
+
imports: [
|
128
|
+
CovalentDialogsModule,
|
129
|
+
...
|
130
|
+
],
|
131
|
+
...
|
132
|
+
})
|
133
|
+
export class MyModule {}
|
134
|
+
```
|
135
|
+
|
136
|
+
After that, just inject [TdDialogService] and use it for your dialogs.
|
137
|
+
|
138
|
+
# ResizableDraggableDialog
|
139
|
+
|
140
|
+
A utility to make a draggable dialog resizable.
|
141
|
+
|
142
|
+
## Usage
|
143
|
+
|
144
|
+
```ts
|
145
|
+
constructor(
|
146
|
+
private _dialogService: TdDialogService,
|
147
|
+
@Inject(DOCUMENT) private _document: any,
|
148
|
+
private _renderer2: Renderer2,
|
149
|
+
) {}
|
150
|
+
```
|
151
|
+
|
152
|
+
```ts
|
153
|
+
const {
|
154
|
+
matDialogRef,
|
155
|
+
dragRefSubject,
|
156
|
+
}: IDraggableRefs<DraggableResizableDialogComponent> = this._dialogService.openDraggable(
|
157
|
+
{
|
158
|
+
component: DraggableResizableDialogComponent,
|
159
|
+
// CSS selectors of element(s) inside the component meant to be drag handle(s)
|
160
|
+
dragHandleSelectors: ['.drag-handle'],
|
161
|
+
}
|
162
|
+
);
|
163
|
+
|
164
|
+
let resizableDraggableDialog: ResizableDraggableDialog;
|
165
|
+
dragRefSubject.subscribe((dragRf: DragRef) => {
|
166
|
+
resizableDraggableDialog = new ResizableDraggableDialog(
|
167
|
+
this._document,
|
168
|
+
this._renderer2,
|
169
|
+
matDialogRef,
|
170
|
+
dragRf
|
171
|
+
);
|
172
|
+
});
|
173
|
+
|
174
|
+
// Detach resize-ability event listeners after dialog closes
|
175
|
+
matDialogRef.afterClosed().subscribe(() => resizableDraggableDialog.detach());
|
176
|
+
```
|
177
|
+
|
178
|
+
# TdWindowDialogComponent
|
179
|
+
|
180
|
+
A component that can be utilized to create a dialog with a toolbar
|
181
|
+
|
182
|
+
## API Summary
|
183
|
+
|
184
|
+
#### Inputs
|
185
|
+
|
186
|
+
- title: string
|
187
|
+
- Title that appears in toolbar
|
188
|
+
- closeLabel: string
|
189
|
+
- Label to be used on close button
|
190
|
+
- toolbarColor: ThemePalette
|
191
|
+
- Toolbar color
|
192
|
+
|
193
|
+
#### Outputs
|
194
|
+
|
195
|
+
- closed: string
|
196
|
+
- Emitted when close button is clicked
|
197
|
+
|
198
|
+
## Usage
|
199
|
+
|
200
|
+
```ts
|
201
|
+
@Component({
|
202
|
+
template: `
|
203
|
+
<td-window-dialog
|
204
|
+
[title]="'Title'"
|
205
|
+
[toolbarColor]="'accent'"
|
206
|
+
[closeLabel]="'Close'"
|
207
|
+
(closed)="closed.emit()"
|
208
|
+
>
|
209
|
+
<p>Comes with a handy toolbar</p>
|
210
|
+
</td-window-dialog>
|
211
|
+
`,
|
212
|
+
})
|
213
|
+
export class DraggableResizableWindowDialogComponent {
|
214
|
+
@Output() closed: EventEmitter<void> = new EventEmitter();
|
215
|
+
}
|
216
|
+
```
|
217
|
+
|
218
|
+
```ts
|
219
|
+
const matDialogRef: MatDialogRef<DraggableResizableWindowDialogComponent> =
|
220
|
+
this._dialogService.open(DraggableResizableWindowDialogComponent);
|
221
|
+
// listen to close event
|
222
|
+
matDialogRef.componentInstance.closed.subscribe(() => matDialogRef.close());
|
223
|
+
```
|
@@ -12,5 +12,5 @@ export declare class TdWindowDialogComponent {
|
|
12
12
|
toolbarHeight: number;
|
13
13
|
toggleDockedState(): void;
|
14
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<TdWindowDialogComponent, never>;
|
15
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TdWindowDialogComponent, "td-window-dialog", never, { "toolbarColor":
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TdWindowDialogComponent, "td-window-dialog", never, { "toolbarColor": "toolbarColor"; "docked": "docked"; "title": "title"; "toggleDockedStateLabel": "toggleDockedStateLabel"; "closeLabel": "closeLabel"; }, { "dockToggled": "dockToggled"; "closed": "closed"; }, never, ["*"], false, never>;
|
16
16
|
}
|
@@ -8,5 +8,5 @@ export declare class TdDynamicMenuItemComponent {
|
|
8
8
|
childMenu: MatMenu;
|
9
9
|
emitClicked(event: ITdDynamicMenuLinkClickEvent): void;
|
10
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<TdDynamicMenuItemComponent, never>;
|
11
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TdDynamicMenuItemComponent, "td-dynamic-menu-item", never, { "items":
|
11
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TdDynamicMenuItemComponent, "td-dynamic-menu-item", never, { "items": "items"; }, { "itemClicked": "itemClicked"; }, never, never, false, never>;
|
12
12
|
}
|
@@ -6,5 +6,5 @@ export declare class TdDynamicMenuLinkComponent {
|
|
6
6
|
itemClicked: EventEmitter<ITdDynamicMenuLinkClickEvent>;
|
7
7
|
emitClicked(): void;
|
8
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<TdDynamicMenuLinkComponent, never>;
|
9
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TdDynamicMenuLinkComponent, "td-dynamic-menu-link", never, { "item":
|
9
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TdDynamicMenuLinkComponent, "td-dynamic-menu-link", never, { "item": "item"; }, { "itemClicked": "itemClicked"; }, never, never, false, never>;
|
10
10
|
}
|
@@ -7,5 +7,5 @@ export declare class TdDynamicMenuComponent {
|
|
7
7
|
itemClicked: EventEmitter<ITdDynamicMenuLinkClickEvent>;
|
8
8
|
emitClicked(event: ITdDynamicMenuLinkClickEvent): void;
|
9
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<TdDynamicMenuComponent, never>;
|
10
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TdDynamicMenuComponent, "td-dynamic-menu", never, { "trigger":
|
10
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TdDynamicMenuComponent, "td-dynamic-menu", never, { "trigger": "trigger"; "items": "items"; }, { "itemClicked": "itemClicked"; }, never, never, false, never>;
|
11
11
|
}
|
@@ -0,0 +1,92 @@
|
|
1
|
+
import { Component, ElementRef, HostBinding, ChangeDetectionStrategy, ChangeDetectorRef, } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@angular/common";
|
4
|
+
import * as i2 from "@angular/material/icon";
|
5
|
+
export class TdBreadcrumbComponent {
|
6
|
+
// Sets the icon url shown between breadcrumbs. Defaults to 'chevron_right'
|
7
|
+
get separatorIcon() {
|
8
|
+
return this._separatorIcon;
|
9
|
+
}
|
10
|
+
set separatorIcon(separatorIcon) {
|
11
|
+
this._separatorIcon = separatorIcon;
|
12
|
+
setTimeout(() => {
|
13
|
+
this._changeDetectorRef.markForCheck();
|
14
|
+
});
|
15
|
+
}
|
16
|
+
// Should show the right chevron or not before the label
|
17
|
+
get displayIcon() {
|
18
|
+
return this._displayIcon;
|
19
|
+
}
|
20
|
+
set displayIcon(displayIcon) {
|
21
|
+
this._displayIcon = displayIcon;
|
22
|
+
setTimeout(() => {
|
23
|
+
this._changeDetectorRef.markForCheck();
|
24
|
+
});
|
25
|
+
}
|
26
|
+
get displayCrumb() {
|
27
|
+
return this._displayCrumb;
|
28
|
+
}
|
29
|
+
/**
|
30
|
+
* Whether to display the crumb or not
|
31
|
+
*/
|
32
|
+
set displayCrumb(shouldDisplay) {
|
33
|
+
this._displayCrumb = shouldDisplay;
|
34
|
+
setTimeout(() => {
|
35
|
+
this._changeDetectorRef.markForCheck();
|
36
|
+
});
|
37
|
+
}
|
38
|
+
/**
|
39
|
+
* Width of the DOM element of the crumb
|
40
|
+
*/
|
41
|
+
get width() {
|
42
|
+
return this._width;
|
43
|
+
}
|
44
|
+
/**
|
45
|
+
* Gets the display style of the crumb
|
46
|
+
*/
|
47
|
+
get displayBinding() {
|
48
|
+
// Set the display to none on the component, just in case the end user is hiding
|
49
|
+
// and showing them instead of the component doing itself for reasons like responsive
|
50
|
+
return this._displayCrumb ? undefined : 'none';
|
51
|
+
}
|
52
|
+
constructor(_elementRef, _changeDetectorRef) {
|
53
|
+
this._elementRef = _elementRef;
|
54
|
+
this._changeDetectorRef = _changeDetectorRef;
|
55
|
+
this._displayCrumb = true;
|
56
|
+
this._width = 0;
|
57
|
+
this._displayIcon = true;
|
58
|
+
this._separatorIcon = 'chevron_right';
|
59
|
+
this.matButtonClass = true;
|
60
|
+
this.tdBreadCrumbClass = true;
|
61
|
+
}
|
62
|
+
ngAfterViewInit() {
|
63
|
+
// set the width from the actual rendered DOM element
|
64
|
+
setTimeout(() => {
|
65
|
+
this._width = (this._elementRef.nativeElement).getBoundingClientRect().width;
|
66
|
+
this._changeDetectorRef.markForCheck();
|
67
|
+
});
|
68
|
+
}
|
69
|
+
/**
|
70
|
+
* Stop click propagation when clicking on icon
|
71
|
+
*/
|
72
|
+
_handleIconClick(event) {
|
73
|
+
event.stopPropagation();
|
74
|
+
event.preventDefault();
|
75
|
+
}
|
76
|
+
}
|
77
|
+
TdBreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TdBreadcrumbComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
78
|
+
TdBreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TdBreadcrumbComponent, selector: "td-breadcrumb, a[td-breadcrumb]", host: { properties: { "class.mdc-button": "this.matButtonClass", "class.td-breadcrumb": "this.tdBreadCrumbClass", "style.display": "this.displayBinding" } }, ngImport: i0, template: "<ng-content></ng-content>\n<mat-icon\n *ngIf=\"displayIcon\"\n class=\"td-breadcrumb-separator-icon\"\n [style.cursor]=\"'default'\"\n (click)=\"_handleIconClick($event)\"\n >{{ separatorIcon }}</mat-icon\n>\n", styles: [":host.td-breadcrumb{display:inline-block;box-sizing:border-box;flex-direction:row;align-items:center;align-content:center;max-width:100%;justify-content:flex-end}:host.td-breadcrumb ::ng-deep>*{margin:0 10px}:host .td-breadcrumb-separator-icon{display:inline-flex;vertical-align:middle}:host.mat-button{min-width:0;padding:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
79
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TdBreadcrumbComponent, decorators: [{
|
80
|
+
type: Component,
|
81
|
+
args: [{ selector: 'td-breadcrumb, a[td-breadcrumb]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n<mat-icon\n *ngIf=\"displayIcon\"\n class=\"td-breadcrumb-separator-icon\"\n [style.cursor]=\"'default'\"\n (click)=\"_handleIconClick($event)\"\n >{{ separatorIcon }}</mat-icon\n>\n", styles: [":host.td-breadcrumb{display:inline-block;box-sizing:border-box;flex-direction:row;align-items:center;align-content:center;max-width:100%;justify-content:flex-end}:host.td-breadcrumb ::ng-deep>*{margin:0 10px}:host .td-breadcrumb-separator-icon{display:inline-flex;vertical-align:middle}:host.mat-button{min-width:0;padding:0}\n"] }]
|
82
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { matButtonClass: [{
|
83
|
+
type: HostBinding,
|
84
|
+
args: ['class.mdc-button']
|
85
|
+
}], tdBreadCrumbClass: [{
|
86
|
+
type: HostBinding,
|
87
|
+
args: ['class.td-breadcrumb']
|
88
|
+
}], displayBinding: [{
|
89
|
+
type: HostBinding,
|
90
|
+
args: ['style.display']
|
91
|
+
}] } });
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWRjcnVtYnMvc3JjL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWRjcnVtYnMvc3JjL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBRVgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQzs7OztBQVF2QixNQUFNLE9BQU8scUJBQXFCO0lBU2hDLDJFQUEyRTtJQUMzRSxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFDRCxJQUFXLGFBQWEsQ0FBQyxhQUFxQjtRQUM1QyxJQUFJLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQztRQUNwQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHdEQUF3RDtJQUN4RCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFXLFdBQVcsQ0FBQyxXQUFvQjtRQUN6QyxJQUFJLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQztRQUNoQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFlBQVksQ0FBQyxhQUFzQjtRQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQ0ksY0FBYztRQUNoQixnRkFBZ0Y7UUFDaEYscUZBQXFGO1FBQ3JGLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDakQsQ0FBQztJQUVELFlBQ1UsV0FBdUIsRUFDdkIsa0JBQXFDO1FBRHJDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUEvRHZDLGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFDWCxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixtQkFBYyxHQUFHLGVBQWUsQ0FBQztRQUVSLG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ25CLHNCQUFpQixHQUFHLElBQUksQ0FBQztJQTBEMUQsQ0FBQztJQUVKLGVBQWU7UUFDYixxREFBcUQ7UUFDckQsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxNQUFNLEdBQWlCLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUM5QixDQUFDLHFCQUFxQixFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLEtBQVk7UUFDM0IsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN6QixDQUFDOzttSEFuRlUscUJBQXFCO3VHQUFyQixxQkFBcUIscU9DZmxDLHdOQVFBOzRGRE9hLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxpQ0FBaUMsbUJBRzFCLHVCQUF1QixDQUFDLE1BQU07aUlBUWQsY0FBYztzQkFBOUMsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBQ0ssaUJBQWlCO3NCQUFwRCxXQUFXO3VCQUFDLHFCQUFxQjtnQkFpRDlCLGNBQWM7c0JBRGpCLFdBQVc7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RkLWJyZWFkY3J1bWIsIGFbdGQtYnJlYWRjcnVtYl0nLFxuICBzdHlsZVVybHM6IFsnLi9icmVhZGNydW1iLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRkQnJlYWRjcnVtYkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIF9kaXNwbGF5Q3J1bWIgPSB0cnVlO1xuICBwcml2YXRlIF93aWR0aCA9IDA7XG4gIHByaXZhdGUgX2Rpc3BsYXlJY29uID0gdHJ1ZTtcbiAgcHJpdmF0ZSBfc2VwYXJhdG9ySWNvbiA9ICdjaGV2cm9uX3JpZ2h0JztcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1kYy1idXR0b24nKSBtYXRCdXR0b25DbGFzcyA9IHRydWU7XG4gIEBIb3N0QmluZGluZygnY2xhc3MudGQtYnJlYWRjcnVtYicpIHRkQnJlYWRDcnVtYkNsYXNzID0gdHJ1ZTtcblxuICAvLyBTZXRzIHRoZSBpY29uIHVybCBzaG93biBiZXR3ZWVuIGJyZWFkY3J1bWJzLiBEZWZhdWx0cyB0byAnY2hldnJvbl9yaWdodCdcbiAgcHVibGljIGdldCBzZXBhcmF0b3JJY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3NlcGFyYXRvckljb247XG4gIH1cbiAgcHVibGljIHNldCBzZXBhcmF0b3JJY29uKHNlcGFyYXRvckljb246IHN0cmluZykge1xuICAgIHRoaXMuX3NlcGFyYXRvckljb24gPSBzZXBhcmF0b3JJY29uO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICAvLyBTaG91bGQgc2hvdyB0aGUgcmlnaHQgY2hldnJvbiBvciBub3QgYmVmb3JlIHRoZSBsYWJlbFxuICBwdWJsaWMgZ2V0IGRpc3BsYXlJY29uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNwbGF5SWNvbjtcbiAgfVxuICBwdWJsaWMgc2V0IGRpc3BsYXlJY29uKGRpc3BsYXlJY29uOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzcGxheUljb24gPSBkaXNwbGF5SWNvbjtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGRpc3BsYXlDcnVtYigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzcGxheUNydW1iO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZGlzcGxheSB0aGUgY3J1bWIgb3Igbm90XG4gICAqL1xuICBzZXQgZGlzcGxheUNydW1iKHNob3VsZERpc3BsYXk6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNwbGF5Q3J1bWIgPSBzaG91bGREaXNwbGF5O1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogV2lkdGggb2YgdGhlIERPTSBlbGVtZW50IG9mIHRoZSBjcnVtYlxuICAgKi9cbiAgZ2V0IHdpZHRoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3dpZHRoO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGRpc3BsYXkgc3R5bGUgb2YgdGhlIGNydW1iXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLmRpc3BsYXknKVxuICBnZXQgZGlzcGxheUJpbmRpbmcoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAvLyBTZXQgdGhlIGRpc3BsYXkgdG8gbm9uZSBvbiB0aGUgY29tcG9uZW50LCBqdXN0IGluIGNhc2UgdGhlIGVuZCB1c2VyIGlzIGhpZGluZ1xuICAgIC8vIGFuZCBzaG93aW5nIHRoZW0gaW5zdGVhZCBvZiB0aGUgY29tcG9uZW50IGRvaW5nIGl0c2VsZiBmb3IgcmVhc29ucyBsaWtlIHJlc3BvbnNpdmVcbiAgICByZXR1cm4gdGhpcy5fZGlzcGxheUNydW1iID8gdW5kZWZpbmVkIDogJ25vbmUnO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvLyBzZXQgdGhlIHdpZHRoIGZyb20gdGhlIGFjdHVhbCByZW5kZXJlZCBET00gZWxlbWVudFxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5fd2lkdGggPSAoPEhUTUxFbGVtZW50PihcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50XG4gICAgICApKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0b3AgY2xpY2sgcHJvcGFnYXRpb24gd2hlbiBjbGlja2luZyBvbiBpY29uXG4gICAqL1xuICBfaGFuZGxlSWNvbkNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjxtYXQtaWNvblxuICAqbmdJZj1cImRpc3BsYXlJY29uXCJcbiAgY2xhc3M9XCJ0ZC1icmVhZGNydW1iLXNlcGFyYXRvci1pY29uXCJcbiAgW3N0eWxlLmN1cnNvcl09XCInZGVmYXVsdCdcIlxuICAoY2xpY2spPVwiX2hhbmRsZUljb25DbGljaygkZXZlbnQpXCJcbiAgPnt7IHNlcGFyYXRvckljb24gfX08L21hdC1pY29uXG4+XG4iXX0=
|
@@ -0,0 +1,131 @@
|
|
1
|
+
import { Component, ContentChildren, QueryList, ChangeDetectionStrategy, ChangeDetectorRef, ElementRef, Input, HostBinding, } from '@angular/core';
|
2
|
+
import { fromEvent, Subject } from 'rxjs';
|
3
|
+
import { debounceTime, startWith, takeUntil } from 'rxjs/operators';
|
4
|
+
import { TdBreadcrumbComponent } from './breadcrumb/breadcrumb.component';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export class TdBreadcrumbsComponent {
|
7
|
+
/**
|
8
|
+
* Sets the icon url shown between breadcrumbs. Defaults to 'chevron_right'.
|
9
|
+
*/
|
10
|
+
set separatorIcon(separatorIcon) {
|
11
|
+
this._separatorIcon = separatorIcon;
|
12
|
+
this.setCrumbIcons();
|
13
|
+
}
|
14
|
+
get separatorIcon() {
|
15
|
+
return this._separatorIcon;
|
16
|
+
}
|
17
|
+
constructor(_elementRef, _changeDetectorRef) {
|
18
|
+
this._elementRef = _elementRef;
|
19
|
+
this._changeDetectorRef = _changeDetectorRef;
|
20
|
+
this._resizing = false;
|
21
|
+
this._separatorIcon = 'chevron_right';
|
22
|
+
this._destroy$ = new Subject();
|
23
|
+
this.tdBreadCrumbsClass = true;
|
24
|
+
// the list of hidden breadcrumbs not shown right now (responsive)
|
25
|
+
this.hiddenBreadcrumbs = [];
|
26
|
+
}
|
27
|
+
ngOnInit() {
|
28
|
+
fromEvent(window, 'resize')
|
29
|
+
.pipe(debounceTime(10), takeUntil(this._destroy$))
|
30
|
+
.subscribe(() => {
|
31
|
+
if (!this._resizing) {
|
32
|
+
this._resizing = true;
|
33
|
+
setTimeout(() => {
|
34
|
+
this._calculateVisibility();
|
35
|
+
this._resizing = false;
|
36
|
+
this._changeDetectorRef.markForCheck();
|
37
|
+
}, 100);
|
38
|
+
}
|
39
|
+
});
|
40
|
+
}
|
41
|
+
ngAfterContentInit() {
|
42
|
+
// Note: doesn't need to unsubscribe since `QueryList.changes`
|
43
|
+
// gets completed by Angular when the view is destroyed.
|
44
|
+
this._breadcrumbs.changes
|
45
|
+
.pipe(startWith(this._breadcrumbs))
|
46
|
+
.subscribe(() => {
|
47
|
+
this.setCrumbIcons();
|
48
|
+
this._changeDetectorRef.markForCheck();
|
49
|
+
});
|
50
|
+
}
|
51
|
+
ngOnDestroy() {
|
52
|
+
this._destroy$.next();
|
53
|
+
}
|
54
|
+
/*
|
55
|
+
* Current width of the element container
|
56
|
+
*/
|
57
|
+
get nativeElementWidth() {
|
58
|
+
const element = this._elementRef.nativeElement;
|
59
|
+
// Need to take into account border, margin and padding that might be around all the crumbs
|
60
|
+
const style = window.getComputedStyle(element);
|
61
|
+
const borderLeft = parseInt(style.borderLeft, 10);
|
62
|
+
const borderRight = parseInt(style.borderRight, 10);
|
63
|
+
const marginLeft = parseInt(style.marginLeft, 10);
|
64
|
+
const marginRight = parseInt(style.marginRight, 10);
|
65
|
+
const paddingLeft = parseInt(style.paddingLeft, 10);
|
66
|
+
const paddingRight = parseInt(style.paddingRight, 10);
|
67
|
+
return (element.getBoundingClientRect().width -
|
68
|
+
borderLeft -
|
69
|
+
borderRight -
|
70
|
+
marginLeft -
|
71
|
+
marginRight -
|
72
|
+
paddingLeft -
|
73
|
+
paddingRight);
|
74
|
+
}
|
75
|
+
/**
|
76
|
+
* The total count of individual breadcrumbs
|
77
|
+
*/
|
78
|
+
get count() {
|
79
|
+
return this._breadcrumbs ? this._breadcrumbs.length : 0;
|
80
|
+
}
|
81
|
+
/**
|
82
|
+
* Set the crumb icon separators
|
83
|
+
*/
|
84
|
+
setCrumbIcons() {
|
85
|
+
if (this._breadcrumbs) {
|
86
|
+
const breadcrumbArray = this._breadcrumbs.toArray();
|
87
|
+
breadcrumbArray.forEach((breadcrumb, index) => {
|
88
|
+
breadcrumb.separatorIcon = this.separatorIcon;
|
89
|
+
// don't show the icon on the last breadcrumb
|
90
|
+
breadcrumb.displayIcon = index < breadcrumbArray.length - 1;
|
91
|
+
});
|
92
|
+
}
|
93
|
+
}
|
94
|
+
_calculateVisibility() {
|
95
|
+
const crumbsArray = this._breadcrumbs.toArray();
|
96
|
+
let crumbWidthSum = 0;
|
97
|
+
const hiddenCrumbs = [];
|
98
|
+
// loop through crumbs in reverse order to calculate which ones should be removed
|
99
|
+
for (let i = crumbsArray.length - 1; i >= 0; i--) {
|
100
|
+
const breadcrumb = crumbsArray[i];
|
101
|
+
// if crumb exceeds width, then we skip it from the sum and add it into the hiddencrumbs array
|
102
|
+
// and hide it
|
103
|
+
if (crumbWidthSum + breadcrumb.width > this.nativeElementWidth) {
|
104
|
+
breadcrumb.displayCrumb = false;
|
105
|
+
hiddenCrumbs.push(breadcrumb);
|
106
|
+
}
|
107
|
+
else {
|
108
|
+
// else we show it
|
109
|
+
breadcrumb.displayCrumb = true;
|
110
|
+
}
|
111
|
+
crumbWidthSum += breadcrumb.width;
|
112
|
+
}
|
113
|
+
this.hiddenBreadcrumbs = hiddenCrumbs;
|
114
|
+
this._changeDetectorRef.markForCheck();
|
115
|
+
}
|
116
|
+
}
|
117
|
+
TdBreadcrumbsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TdBreadcrumbsComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
118
|
+
TdBreadcrumbsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TdBreadcrumbsComponent, selector: "td-breadcrumbs", inputs: { separatorIcon: "separatorIcon" }, host: { properties: { "class.td-breadcrumbs": "this.tdBreadCrumbsClass" } }, queries: [{ propertyName: "_breadcrumbs", predicate: TdBreadcrumbComponent, descendants: true }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;align-items:center}:host.td-breadcrumbs{white-space:nowrap}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TdBreadcrumbsComponent, decorators: [{
|
120
|
+
type: Component,
|
121
|
+
args: [{ selector: 'td-breadcrumbs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:flex;align-items:center}:host.td-breadcrumbs{white-space:nowrap}\n"] }]
|
122
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { tdBreadCrumbsClass: [{
|
123
|
+
type: HostBinding,
|
124
|
+
args: ['class.td-breadcrumbs']
|
125
|
+
}], _breadcrumbs: [{
|
126
|
+
type: ContentChildren,
|
127
|
+
args: [TdBreadcrumbComponent, { descendants: true }]
|
128
|
+
}], separatorIcon: [{
|
129
|
+
type: Input
|
130
|
+
}] } });
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2JyZWFkY3J1bWJzL3NyYy9icmVhZGNydW1icy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWRjcnVtYnMvc3JjL2JyZWFkY3J1bWJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFHVCx1QkFBdUIsRUFFdkIsaUJBQWlCLEVBQ2pCLFVBQVUsRUFDVixLQUFLLEVBQ0wsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQVExRSxNQUFNLE9BQU8sc0JBQXNCO0lBZWpDOztPQUVHO0lBQ0gsSUFBb0IsYUFBYSxDQUFDLGFBQXFCO1FBQ3JELElBQUksQ0FBQyxjQUFjLEdBQUcsYUFBYSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsWUFDVSxXQUF1QixFQUN2QixrQkFBcUM7UUFEckMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQXpCdkMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixtQkFBYyxHQUFHLGVBQWUsQ0FBQztRQUNqQyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVILHVC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QXVCLENBQUMsTUFBTTtpSUFTVixrQkFBa0I7c0JBQXRELFdBQVc7dUJBQUMsc0JBQXNCO2dCQUluQyxZQUFZO3NCQURYLGVBQWU7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQVF6QyxhQUFhO3NCQUFoQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbiAgT25Jbml0LFxuICBPbkRlc3Ryb3ksXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIEhvc3RCaW5kaW5nLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN0YXJ0V2l0aCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBUZEJyZWFkY3J1bWJDb21wb25lbnQgfSBmcm9tICcuL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZC1icmVhZGNydW1icycsXG4gIHN0eWxlVXJsczogWycuL2JyZWFkY3J1bWJzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1icy5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUZEJyZWFkY3J1bWJzQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3lcbntcbiAgcHJpdmF0ZSBfcmVzaXppbmcgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfc2VwYXJhdG9ySWNvbiA9ICdjaGV2cm9uX3JpZ2h0JztcbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudGQtYnJlYWRjcnVtYnMnKSB0ZEJyZWFkQ3J1bWJzQ2xhc3MgPSB0cnVlO1xuXG4gIC8vIGFsbCB0aGUgc3ViIGNvbXBvbmVudHMsIHdoaWNoIGFyZSB0aGUgaW5kaXZpZHVhbCBicmVhZGNydW1ic1xuICBAQ29udGVudENoaWxkcmVuKFRkQnJlYWRjcnVtYkNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBfYnJlYWRjcnVtYnMhOiBRdWVyeUxpc3Q8VGRCcmVhZGNydW1iQ29tcG9uZW50PjtcbiAgLy8gdGhlIGxpc3Qgb2YgaGlkZGVuIGJyZWFkY3J1bWJzIG5vdCBzaG93biByaWdodCBub3cgKHJlc3BvbnNpdmUpXG4gIGhpZGRlbkJyZWFkY3J1bWJzOiBUZEJyZWFkY3J1bWJDb21wb25lbnRbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBpY29uIHVybCBzaG93biBiZXR3ZWVuIGJyZWFkY3J1bWJzLiBEZWZhdWx0cyB0byAnY2hldnJvbl9yaWdodCcuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgc2V0IHNlcGFyYXRvckljb24oc2VwYXJhdG9ySWNvbjogc3RyaW5nKSB7XG4gICAgdGhpcy5fc2VwYXJhdG9ySWNvbiA9IHNlcGFyYXRvckljb247XG4gICAgdGhpcy5zZXRDcnVtYkljb25zKCk7XG4gIH1cbiAgcHVibGljIGdldCBzZXBhcmF0b3JJY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3NlcGFyYXRvckljb247XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMTApLCB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5fcmVzaXppbmcpIHtcbiAgICAgICAgICB0aGlzLl9yZXNpemluZyA9IHRydWU7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jYWxjdWxhdGVWaXNpYmlsaXR5KCk7XG4gICAgICAgICAgICB0aGlzLl9yZXNpemluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgfSwgMTAwKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgLy8gTm90ZTogZG9lc24ndCBuZWVkIHRvIHVuc3Vic2NyaWJlIHNpbmNlIGBRdWVyeUxpc3QuY2hhbmdlc2BcbiAgICAvLyBnZXRzIGNvbXBsZXRlZCBieSBBbmd1bGFyIHdoZW4gdGhlIHZpZXcgaXMgZGVzdHJveWVkLlxuICAgIHRoaXMuX2JyZWFkY3J1bWJzLmNoYW5nZXNcbiAgICAgIC5waXBlKHN0YXJ0V2l0aCh0aGlzLl9icmVhZGNydW1icykpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRDcnVtYkljb25zKCk7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICAvKlxuICAgKiBDdXJyZW50IHdpZHRoIG9mIHRoZSBlbGVtZW50IGNvbnRhaW5lclxuICAgKi9cbiAgZ2V0IG5hdGl2ZUVsZW1lbnRXaWR0aCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gPEhUTUxFbGVtZW50PnRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAvLyBOZWVkIHRvIHRha2UgaW50byBhY2NvdW50IGJvcmRlciwgbWFyZ2luIGFuZCBwYWRkaW5nIHRoYXQgbWlnaHQgYmUgYXJvdW5kIGFsbCB0aGUgY3J1bWJzXG4gICAgY29uc3Qgc3R5bGU6IENTU1N0eWxlRGVjbGFyYXRpb24gPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KTtcbiAgICBjb25zdCBib3JkZXJMZWZ0OiBudW1iZXIgPSBwYXJzZUludChzdHlsZS5ib3JkZXJMZWZ0LCAxMCk7XG4gICAgY29uc3QgYm9yZGVyUmlnaHQ6IG51bWJlciA9IHBhcnNlSW50KHN0eWxlLmJvcmRlclJpZ2h0LCAxMCk7XG4gICAgY29uc3QgbWFyZ2luTGVmdDogbnVtYmVyID0gcGFyc2VJbnQoc3R5bGUubWFyZ2luTGVmdCwgMTApO1xuICAgIGNvbnN0IG1hcmdpblJpZ2h0OiBudW1iZXIgPSBwYXJzZUludChzdHlsZS5tYXJnaW5SaWdodCwgMTApO1xuICAgIGNvbnN0IHBhZGRpbmdMZWZ0OiBudW1iZXIgPSBwYXJzZUludChzdHlsZS5wYWRkaW5nTGVmdCwgMTApO1xuICAgIGNvbnN0IHBhZGRpbmdSaWdodDogbnVtYmVyID0gcGFyc2VJbnQoc3R5bGUucGFkZGluZ1JpZ2h0LCAxMCk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCAtXG4gICAgICBib3JkZXJMZWZ0IC1cbiAgICAgIGJvcmRlclJpZ2h0IC1cbiAgICAgIG1hcmdpbkxlZnQgLVxuICAgICAgbWFyZ2luUmlnaHQgLVxuICAgICAgcGFkZGluZ0xlZnQgLVxuICAgICAgcGFkZGluZ1JpZ2h0XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdG90YWwgY291bnQgb2YgaW5kaXZpZHVhbCBicmVhZGNydW1ic1xuICAgKi9cbiAgZ2V0IGNvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2JyZWFkY3J1bWJzID8gdGhpcy5fYnJlYWRjcnVtYnMubGVuZ3RoIDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGNydW1iIGljb24gc2VwYXJhdG9yc1xuICAgKi9cbiAgcHJpdmF0ZSBzZXRDcnVtYkljb25zKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9icmVhZGNydW1icykge1xuICAgICAgY29uc3QgYnJlYWRjcnVtYkFycmF5OiBUZEJyZWFkY3J1bWJDb21wb25lbnRbXSA9XG4gICAgICAgIHRoaXMuX2JyZWFkY3J1bWJzLnRvQXJyYXkoKTtcbiAgICAgIGJyZWFkY3J1bWJBcnJheS5mb3JFYWNoKFxuICAgICAgICAoYnJlYWRjcnVtYjogVGRCcmVhZGNydW1iQ29tcG9uZW50LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgYnJlYWRjcnVtYi5zZXBhcmF0b3JJY29uID0gdGhpcy5zZXBhcmF0b3JJY29uO1xuICAgICAgICAgIC8vIGRvbid0IHNob3cgdGhlIGljb24gb24gdGhlIGxhc3QgYnJlYWRjcnVtYlxuICAgICAgICAgIGJyZWFkY3J1bWIuZGlzcGxheUljb24gPSBpbmRleCA8IGJyZWFkY3J1bWJBcnJheS5sZW5ndGggLSAxO1xuICAgICAgICB9XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZVZpc2liaWxpdHkoKTogdm9pZCB7XG4gICAgY29uc3QgY3J1bWJzQXJyYXk6IFRkQnJlYWRjcnVtYkNvbXBvbmVudFtdID0gdGhpcy5fYnJlYWRjcnVtYnMudG9BcnJheSgpO1xuICAgIGxldCBjcnVtYldpZHRoU3VtID0gMDtcbiAgICBjb25zdCBoaWRkZW5DcnVtYnM6IFRkQnJlYWRjcnVtYkNvbXBvbmVudFtdID0gW107XG4gICAgLy8gbG9vcCB0aHJvdWdoIGNydW1icyBpbiByZXZlcnNlIG9yZGVyIHRvIGNhbGN1bGF0ZSB3aGljaCBvbmVzIHNob3VsZCBiZSByZW1vdmVkXG4gICAgZm9yIChsZXQgaTogbnVtYmVyID0gY3J1bWJzQXJyYXkubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIGNvbnN0IGJyZWFkY3J1bWI6IFRkQnJlYWRjcnVtYkNvbXBvbmVudCA9IGNydW1ic0FycmF5W2ldO1xuXG4gICAgICAvLyBpZiBjcnVtYiBleGNlZWRzIHdpZHRoLCB0aGVuIHdlIHNraXAgaXQgZnJvbSB0aGUgc3VtIGFuZCBhZGQgaXQgaW50byB0aGUgaGlkZGVuY3J1bWJzIGFycmF5XG4gICAgICAvLyBhbmQgaGlkZSBpdFxuICAgICAgaWYgKGNydW1iV2lkdGhTdW0gKyBicmVhZGNydW1iLndpZHRoID4gdGhpcy5uYXRpdmVFbGVtZW50V2lkdGgpIHtcbiAgICAgICAgYnJlYWRjcnVtYi5kaXNwbGF5Q3J1bWIgPSBmYWxzZTtcbiAgICAgICAgaGlkZGVuQ3J1bWJzLnB1c2goYnJlYWRjcnVtYik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBlbHNlIHdlIHNob3cgaXRcbiAgICAgICAgYnJlYWRjcnVtYi5kaXNwbGF5Q3J1bWIgPSB0cnVlO1xuICAgICAgfVxuICAgICAgY3J1bWJXaWR0aFN1bSArPSBicmVhZGNydW1iLndpZHRoO1xuICAgIH1cblxuICAgIHRoaXMuaGlkZGVuQnJlYWRjcnVtYnMgPSBoaWRkZW5DcnVtYnM7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
|
@@ -5,11 +5,11 @@ import { TdBreadcrumbsComponent } from './breadcrumbs.component';
|
|
5
5
|
import { TdBreadcrumbComponent } from './breadcrumb/breadcrumb.component';
|
6
6
|
import * as i0 from "@angular/core";
|
7
7
|
export class CovalentBreadcrumbsModule {
|
8
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CovalentBreadcrumbsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
9
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: CovalentBreadcrumbsModule, declarations: [TdBreadcrumbsComponent, TdBreadcrumbComponent], imports: [CommonModule, MatIconModule], exports: [TdBreadcrumbsComponent, TdBreadcrumbComponent] });
|
10
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CovalentBreadcrumbsModule, imports: [CommonModule, MatIconModule] });
|
11
8
|
}
|
12
|
-
i0.ɵɵ
|
9
|
+
CovalentBreadcrumbsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CovalentBreadcrumbsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
10
|
+
CovalentBreadcrumbsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CovalentBreadcrumbsModule, declarations: [TdBreadcrumbsComponent, TdBreadcrumbComponent], imports: [CommonModule, MatIconModule], exports: [TdBreadcrumbsComponent, TdBreadcrumbComponent] });
|
11
|
+
CovalentBreadcrumbsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CovalentBreadcrumbsModule, imports: [CommonModule, MatIconModule] });
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CovalentBreadcrumbsModule, decorators: [{
|
13
13
|
type: NgModule,
|
14
14
|
args: [{
|
15
15
|
imports: [CommonModule, MatIconModule],
|
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
17
17
|
exports: [TdBreadcrumbsComponent, TdBreadcrumbComponent],
|
18
18
|
}]
|
19
19
|
}] });
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2JyZWFkY3J1bWJzL3NyYy9icmVhZGNydW1icy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQU8xRSxNQUFNLE9BQU8seUJBQXlCOzt1SEFBekIseUJBQXlCO3dIQUF6Qix5QkFBeUIsaUJBSHJCLHNCQUFzQixFQUFFLHFCQUFxQixhQURsRCxZQUFZLEVBQUUsYUFBYSxhQUUzQixzQkFBc0IsRUFBRSxxQkFBcUI7d0hBRTVDLHlCQUF5QixZQUoxQixZQUFZLEVBQUUsYUFBYTs0RkFJMUIseUJBQXlCO2tCQUxyQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7b0JBQ3RDLFlBQVksRUFBRSxDQUFDLHNCQUFzQixFQUFFLHFCQUFxQixDQUFDO29CQUM3RCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxxQkFBcUIsQ0FBQztpQkFDekQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcblxuaW1wb3J0IHsgVGRCcmVhZGNydW1ic0NvbXBvbmVudCB9IGZyb20gJy4vYnJlYWRjcnVtYnMuY29tcG9uZW50JztcbmltcG9ydCB7IFRkQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEljb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtUZEJyZWFkY3J1bWJzQ29tcG9uZW50LCBUZEJyZWFkY3J1bWJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbVGRCcmVhZGNydW1ic0NvbXBvbmVudCwgVGRCcmVhZGNydW1iQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQ292YWxlbnRCcmVhZGNydW1ic01vZHVsZSB7fVxuIl19
|
@@ -0,0 +1,41 @@
|
|
1
|
+
import { Subject } from 'rxjs';
|
2
|
+
const noop = () => {
|
3
|
+
// empty method
|
4
|
+
};
|
5
|
+
/** Mixin to augment a component with ngModel support. */
|
6
|
+
export function mixinControlValueAccessor(base, initialValue) {
|
7
|
+
return class extends base {
|
8
|
+
constructor(...args) {
|
9
|
+
super(...args);
|
10
|
+
this._value = initialValue instanceof Array
|
11
|
+
? Object.assign([], initialValue)
|
12
|
+
: initialValue;
|
13
|
+
this.onChange = (_) => noop;
|
14
|
+
this.onTouched = () => noop;
|
15
|
+
this._subjectValueChanges = new Subject();
|
16
|
+
this.valueChanges = this._subjectValueChanges.asObservable();
|
17
|
+
}
|
18
|
+
set value(v) {
|
19
|
+
if (v !== this._value) {
|
20
|
+
this._value = v;
|
21
|
+
this.onChange(v);
|
22
|
+
this._changeDetectorRef.markForCheck();
|
23
|
+
this._subjectValueChanges.next(v);
|
24
|
+
}
|
25
|
+
}
|
26
|
+
get value() {
|
27
|
+
return this._value;
|
28
|
+
}
|
29
|
+
writeValue(value) {
|
30
|
+
this.value = value;
|
31
|
+
this._changeDetectorRef.markForCheck();
|
32
|
+
}
|
33
|
+
registerOnChange(fn) {
|
34
|
+
this.onChange = fn;
|
35
|
+
}
|
36
|
+
registerOnTouched(fn) {
|
37
|
+
this.onTouched = fn;
|
38
|
+
}
|
39
|
+
};
|
40
|
+
}
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC12YWx1ZS1hY2Nlc29yLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbW1vbi9zcmMvYmVoYXZpb3JzL2NvbnRyb2wtdmFsdWUtYWNjZXNvci5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSTNDLE1BQU0sSUFBSSxHQUFRLEdBQUcsRUFBRTtJQUNyQixlQUFlO0FBQ2pCLENBQUMsQ0FBQztBQWFGLHlEQUF5RDtBQUN6RCxNQUFNLFVBQVUseUJBQXlCLENBRXZDLElBQU8sRUFBRSxZQUFrQjtJQUMzQixPQUFPLEtBQU0sU0FBUSxJQUFJO1FBUXZCLFlBQVksR0FBRyxJQUFXO1lBQ3hCLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBUlQsV0FBTSxHQUNaLFlBQVksWUFBWSxLQUFLO2dCQUMzQixDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsWUFBWSxDQUFDO2dCQUNqQyxDQUFDLENBQUMsWUFBWSxDQUFDO1lBbUNuQixhQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQztZQUM1QixjQUFTLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO1lBOUJyQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztZQUMvQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMvRCxDQUFDO1FBRUQsSUFBSSxLQUFLLENBQUMsQ0FBTTtZQUNkLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDbkM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxLQUFLO1lBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3JCLENBQUM7UUFFRCxVQUFVLENBQUMsS0FBVTtZQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekMsQ0FBQztRQUVELGdCQUFnQixDQUFDLEVBQU87WUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUVELGlCQUFpQixDQUFDLEVBQU87WUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDdEIsQ0FBQztLQUlGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbnR5cGUgQ29uc3RydWN0b3I8VD4gPSBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBUO1xuXG5jb25zdCBub29wOiBhbnkgPSAoKSA9PiB7XG4gIC8vIGVtcHR5IG1ldGhvZFxufTtcblxuZXhwb3J0IGludGVyZmFjZSBJQ29udHJvbFZhbHVlQWNjZXNzb3IgZXh0ZW5kcyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHZhbHVlOiBhbnk7XG4gIHZhbHVlQ2hhbmdlczogT2JzZXJ2YWJsZTxhbnk+O1xuICBvbkNoYW5nZTogKF86IGFueSkgPT4gYW55O1xuICBvblRvdWNoZWQ6ICgpID0+IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSGFzQ2hhbmdlRGV0ZWN0b3JSZWYge1xuICBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmO1xufVxuXG4vKiogTWl4aW4gdG8gYXVnbWVudCBhIGNvbXBvbmVudCB3aXRoIG5nTW9kZWwgc3VwcG9ydC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaXhpbkNvbnRyb2xWYWx1ZUFjY2Vzc29yPFxuICBUIGV4dGVuZHMgQ29uc3RydWN0b3I8SUhhc0NoYW5nZURldGVjdG9yUmVmPlxuPihiYXNlOiBULCBpbml0aWFsVmFsdWU/OiBhbnkpOiBDb25zdHJ1Y3RvcjxJQ29udHJvbFZhbHVlQWNjZXNzb3I+ICYgVCB7XG4gIHJldHVybiBjbGFzcyBleHRlbmRzIGJhc2Uge1xuICAgIHByaXZhdGUgX3ZhbHVlOiBhbnkgPVxuICAgICAgaW5pdGlhbFZhbHVlIGluc3RhbmNlb2YgQXJyYXlcbiAgICAgICAgPyBPYmplY3QuYXNzaWduKFtdLCBpbml0aWFsVmFsdWUpXG4gICAgICAgIDogaW5pdGlhbFZhbHVlO1xuICAgIHByaXZhdGUgX3N1YmplY3RWYWx1ZUNoYW5nZXM6IFN1YmplY3Q8YW55PjtcbiAgICB2YWx1ZUNoYW5nZXM6IE9ic2VydmFibGU8YW55PjtcblxuICAgIGNvbnN0cnVjdG9yKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgICBzdXBlciguLi5hcmdzKTtcbiAgICAgIHRoaXMuX3N1YmplY3RWYWx1ZUNoYW5nZXMgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlcyA9IHRoaXMuX3N1YmplY3RWYWx1ZUNoYW5nZXMuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgc2V0IHZhbHVlKHY6IGFueSkge1xuICAgICAgaWYgKHYgIT09IHRoaXMuX3ZhbHVlKSB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdjtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2KTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIHRoaXMuX3N1YmplY3RWYWx1ZUNoYW5nZXMubmV4dCh2KTtcbiAgICAgIH1cbiAgICB9XG4gICAgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlID0gKF86IGFueSkgPT4gbm9vcDtcbiAgICBvblRvdWNoZWQgPSAoKSA9PiBub29wO1xuICB9O1xufVxuIl19
|