@covalent/core 3.1.0 → 3.1.2-beta.6
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/covalent-core-breadcrumbs.metadata.json +1 -1
- package/breadcrumbs/package.json +1 -3
- package/bundles/covalent-core-breadcrumbs.umd.js +131 -167
- package/bundles/covalent-core-breadcrumbs.umd.js.map +1 -1
- package/bundles/covalent-core-breadcrumbs.umd.min.js +1 -1
- package/bundles/covalent-core-breadcrumbs.umd.min.js.map +1 -1
- package/bundles/covalent-core-chips.umd.js +533 -708
- package/bundles/covalent-core-chips.umd.js.map +1 -1
- package/bundles/covalent-core-chips.umd.min.js +12 -12
- package/bundles/covalent-core-chips.umd.min.js.map +1 -1
- package/bundles/covalent-core-common.umd.js +566 -571
- package/bundles/covalent-core-common.umd.js.map +1 -1
- package/bundles/covalent-core-common.umd.min.js +13 -12
- package/bundles/covalent-core-common.umd.min.js.map +1 -1
- package/bundles/covalent-core-data-table.umd.js +727 -1038
- package/bundles/covalent-core-data-table.umd.js.map +1 -1
- package/bundles/covalent-core-data-table.umd.min.js +12 -12
- package/bundles/covalent-core-data-table.umd.min.js.map +1 -1
- package/bundles/covalent-core-dialogs.umd.js +515 -592
- package/bundles/covalent-core-dialogs.umd.js.map +1 -1
- package/bundles/covalent-core-dialogs.umd.min.js +1 -15
- package/bundles/covalent-core-dialogs.umd.min.js.map +1 -1
- package/bundles/covalent-core-dynamic-menu.umd.js +73 -62
- package/bundles/covalent-core-dynamic-menu.umd.js.map +1 -1
- package/bundles/covalent-core-dynamic-menu.umd.min.js +1 -1
- package/bundles/covalent-core-dynamic-menu.umd.min.js.map +1 -1
- package/bundles/covalent-core-expansion-panel.umd.js +465 -449
- package/bundles/covalent-core-expansion-panel.umd.js.map +1 -1
- package/bundles/covalent-core-expansion-panel.umd.min.js +12 -12
- package/bundles/covalent-core-expansion-panel.umd.min.js.map +1 -1
- package/bundles/covalent-core-file.umd.js +533 -598
- package/bundles/covalent-core-file.umd.js.map +1 -1
- package/bundles/covalent-core-file.umd.min.js +13 -12
- package/bundles/covalent-core-file.umd.min.js.map +1 -1
- package/bundles/covalent-core-json-formatter.umd.js +101 -152
- package/bundles/covalent-core-json-formatter.umd.js.map +1 -1
- package/bundles/covalent-core-json-formatter.umd.min.js +1 -1
- package/bundles/covalent-core-json-formatter.umd.min.js.map +1 -1
- package/bundles/covalent-core-layout.umd.js +845 -883
- package/bundles/covalent-core-layout.umd.js.map +1 -1
- package/bundles/covalent-core-layout.umd.min.js +13 -12
- package/bundles/covalent-core-layout.umd.min.js.map +1 -1
- package/bundles/covalent-core-loading.umd.js +481 -723
- package/bundles/covalent-core-loading.umd.js.map +1 -1
- package/bundles/covalent-core-loading.umd.min.js +12 -12
- package/bundles/covalent-core-loading.umd.min.js.map +1 -1
- package/bundles/covalent-core-media.umd.js +395 -375
- package/bundles/covalent-core-media.umd.js.map +1 -1
- package/bundles/covalent-core-media.umd.min.js +12 -12
- package/bundles/covalent-core-media.umd.min.js.map +1 -1
- package/bundles/covalent-core-menu.umd.js +37 -17
- package/bundles/covalent-core-menu.umd.js.map +1 -1
- package/bundles/covalent-core-menu.umd.min.js +1 -1
- package/bundles/covalent-core-menu.umd.min.js.map +1 -1
- package/bundles/covalent-core-message.umd.js +96 -152
- package/bundles/covalent-core-message.umd.js.map +1 -1
- package/bundles/covalent-core-message.umd.min.js +1 -1
- package/bundles/covalent-core-message.umd.min.js.map +1 -1
- package/bundles/covalent-core-nav-links.umd.js +63 -75
- package/bundles/covalent-core-nav-links.umd.js.map +1 -1
- package/bundles/covalent-core-nav-links.umd.min.js +1 -1
- package/bundles/covalent-core-nav-links.umd.min.js.map +1 -1
- package/bundles/covalent-core-notifications.umd.js +77 -101
- package/bundles/covalent-core-notifications.umd.js.map +1 -1
- package/bundles/covalent-core-notifications.umd.min.js +1 -1
- package/bundles/covalent-core-notifications.umd.min.js.map +1 -1
- package/bundles/covalent-core-paging.umd.js +89 -166
- package/bundles/covalent-core-paging.umd.js.map +1 -1
- package/bundles/covalent-core-paging.umd.min.js +1 -1
- package/bundles/covalent-core-paging.umd.min.js.map +1 -1
- package/bundles/covalent-core-search.umd.js +469 -418
- package/bundles/covalent-core-search.umd.js.map +1 -1
- package/bundles/covalent-core-search.umd.min.js +12 -12
- package/bundles/covalent-core-search.umd.min.js.map +1 -1
- package/bundles/covalent-core-sidesheet.umd.js +72 -52
- package/bundles/covalent-core-sidesheet.umd.js.map +1 -1
- package/bundles/covalent-core-sidesheet.umd.min.js +1 -1
- package/bundles/covalent-core-sidesheet.umd.min.js.map +1 -1
- package/bundles/covalent-core-steps.umd.js +663 -822
- package/bundles/covalent-core-steps.umd.js.map +1 -1
- package/bundles/covalent-core-steps.umd.min.js +12 -12
- package/bundles/covalent-core-steps.umd.min.js.map +1 -1
- package/bundles/covalent-core-tab-select.umd.js +446 -385
- package/bundles/covalent-core-tab-select.umd.js.map +1 -1
- package/bundles/covalent-core-tab-select.umd.min.js +12 -12
- package/bundles/covalent-core-tab-select.umd.min.js.map +1 -1
- package/bundles/covalent-core-user-profile.umd.js +65 -48
- package/bundles/covalent-core-user-profile.umd.js.map +1 -1
- package/bundles/covalent-core-user-profile.umd.min.js +1 -1
- package/bundles/covalent-core-user-profile.umd.min.js.map +1 -1
- package/bundles/covalent-core-virtual-scroll.umd.js +412 -356
- package/bundles/covalent-core-virtual-scroll.umd.js.map +1 -1
- package/bundles/covalent-core-virtual-scroll.umd.min.js +12 -12
- package/bundles/covalent-core-virtual-scroll.umd.min.js.map +1 -1
- package/bundles/covalent-core.umd.js +0 -8
- package/bundles/covalent-core.umd.js.map +1 -1
- package/chips/covalent-core-chips.metadata.json +1 -1
- package/chips/package.json +1 -3
- package/common/_common-theme.scss +11 -0
- package/common/package.json +1 -3
- package/data-table/covalent-core-data-table.metadata.json +1 -1
- package/data-table/package.json +1 -3
- package/dialogs/_dialog-theme.scss +6 -0
- package/dialogs/covalent-core-dialogs.metadata.json +1 -1
- package/dialogs/package.json +1 -3
- package/dialogs/window-dialog/window-dialog.component.scss +4 -0
- package/dynamic-menu/covalent-core-dynamic-menu.metadata.json +1 -1
- package/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.scss +0 -4
- package/dynamic-menu/package.json +1 -3
- package/esm2015/breadcrumbs/breadcrumb/breadcrumb.component.js +4 -3
- package/esm2015/breadcrumbs/breadcrumbs.component.js +3 -2
- package/esm2015/breadcrumbs/breadcrumbs.module.js +3 -2
- package/esm2015/breadcrumbs/covalent-core-breadcrumbs.js +3 -2
- package/esm2015/breadcrumbs/index.js +3 -2
- package/esm2015/breadcrumbs/public-api.js +3 -2
- package/esm2015/chips/chips.component.js +4 -3
- package/esm2015/chips/chips.module.js +3 -2
- package/esm2015/chips/covalent-core-chips.js +3 -2
- package/esm2015/chips/index.js +3 -2
- package/esm2015/chips/public-api.js +3 -2
- package/esm2015/common/animations/bounce/bounce.animation.js +3 -2
- package/esm2015/common/animations/collapse/collapse.animation.js +3 -2
- package/esm2015/common/animations/common/interfaces.js +3 -2
- package/esm2015/common/animations/fade/fadeInOut.animation.js +3 -2
- package/esm2015/common/animations/flash/flash.animation.js +3 -2
- package/esm2015/common/animations/headshake/headshake.animation.js +3 -2
- package/esm2015/common/animations/jello/jello.animation.js +3 -2
- package/esm2015/common/animations/pulse/pulse.animation.js +3 -2
- package/esm2015/common/animations/rotate/rotate.animation.js +3 -2
- package/esm2015/common/behaviors/control-value-accesor.mixin.js +3 -2
- package/esm2015/common/behaviors/disable-ripple.mixin.js +3 -2
- package/esm2015/common/behaviors/disabled.mixin.js +3 -2
- package/esm2015/common/common.module.js +3 -2
- package/esm2015/common/covalent-core-common.js +3 -2
- package/esm2015/common/directives/fullscreen/fullscreen.directive.js +3 -2
- package/esm2015/common/forms/auto-trim/auto-trim.directive.js +3 -2
- package/esm2015/common/forms/validators/validators.js +3 -2
- package/esm2015/common/functions/clipboard.js +3 -2
- package/esm2015/common/functions/convert.js +3 -2
- package/esm2015/common/functions/download.js +3 -2
- package/esm2015/common/functions/file.js +3 -2
- package/esm2015/common/index.js +3 -2
- package/esm2015/common/pipes/bytes/bytes.pipe.js +3 -2
- package/esm2015/common/pipes/decimal-bytes/decimal-bytes.pipe.js +3 -2
- package/esm2015/common/pipes/digits/digits.pipe.js +3 -2
- package/esm2015/common/pipes/time-ago/time-ago.pipe.js +3 -2
- package/esm2015/common/pipes/time-difference/time-difference.pipe.js +3 -2
- package/esm2015/common/pipes/time-until/time-until.pipe.js +3 -2
- package/esm2015/common/pipes/truncate/truncate.pipe.js +3 -2
- package/esm2015/common/public-api.js +3 -2
- package/esm2015/common/services/icon.service.js +3 -2
- package/esm2015/common/services/router-path.service.js +3 -2
- package/esm2015/covalent-core.js +3 -2
- package/esm2015/data-table/covalent-core-data-table.js +3 -2
- package/esm2015/data-table/data-table-cell/data-table-cell.component.js +4 -3
- package/esm2015/data-table/data-table-column/data-table-column.component.js +4 -3
- package/esm2015/data-table/data-table-row/data-table-row.component.js +3 -2
- package/esm2015/data-table/data-table-table/data-table-table.component.js +4 -3
- package/esm2015/data-table/data-table.component.js +6 -5
- package/esm2015/data-table/data-table.module.js +3 -2
- package/esm2015/data-table/directives/data-table-template.directive.js +3 -2
- package/esm2015/data-table/index.js +3 -2
- package/esm2015/data-table/public-api.js +3 -2
- package/esm2015/data-table/services/data-table.service.js +3 -2
- package/esm2015/dialogs/alert-dialog/alert-dialog.component.js +3 -2
- package/esm2015/dialogs/confirm-dialog/confirm-dialog.component.js +3 -2
- package/esm2015/dialogs/covalent-core-dialogs.js +3 -2
- package/esm2015/dialogs/dialog.component.js +4 -3
- package/esm2015/dialogs/dialogs.module.js +3 -2
- package/esm2015/dialogs/index.js +3 -2
- package/esm2015/dialogs/prompt-dialog/prompt-dialog.component.js +4 -3
- package/esm2015/dialogs/public-api.js +3 -2
- package/esm2015/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.js +14 -13
- package/esm2015/dialogs/services/dialog.service.js +3 -2
- package/esm2015/dialogs/window-dialog/window-dialog.component.js +4 -3
- package/esm2015/dynamic-menu/covalent-core-dynamic-menu.js +3 -2
- package/esm2015/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.js +5 -4
- package/esm2015/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.js +4 -3
- package/esm2015/dynamic-menu/dynamic-menu.component.js +3 -2
- package/esm2015/dynamic-menu/dynamic-menu.module.js +3 -2
- package/esm2015/dynamic-menu/index.js +3 -2
- package/esm2015/dynamic-menu/public_api.js +3 -2
- package/esm2015/expansion-panel/covalent-core-expansion-panel.js +3 -2
- package/esm2015/expansion-panel/expansion-panel-group.component.js +3 -2
- package/esm2015/expansion-panel/expansion-panel.component.js +4 -3
- package/esm2015/expansion-panel/expansion-panel.module.js +3 -2
- package/esm2015/expansion-panel/index.js +3 -2
- package/esm2015/expansion-panel/public-api.js +3 -2
- package/esm2015/file/covalent-core-file.js +3 -2
- package/esm2015/file/directives/file-drop.directive.js +3 -2
- package/esm2015/file/directives/file-select.directive.js +3 -2
- package/esm2015/file/file-input/file-input.component.js +3 -2
- package/esm2015/file/file-upload/file-upload.component.js +4 -3
- package/esm2015/file/file.module.js +3 -2
- package/esm2015/file/index.js +3 -2
- package/esm2015/file/public-api.js +3 -2
- package/esm2015/file/services/file.service.js +3 -2
- package/esm2015/index.js +4 -2
- package/esm2015/json-formatter/covalent-core-json-formatter.js +3 -2
- package/esm2015/json-formatter/index.js +3 -2
- package/esm2015/json-formatter/json-formatter.component.js +4 -3
- package/esm2015/json-formatter/json-formatter.module.js +3 -2
- package/esm2015/json-formatter/public-api.js +3 -2
- package/esm2015/layout/covalent-core-layout.js +4 -3
- package/esm2015/layout/index.js +4 -3
- package/esm2015/layout/layout-card-over/layout-card-over.component.js +4 -3
- package/esm2015/layout/layout-footer/layout-footer.component.js +3 -2
- package/esm2015/layout/layout-manage-list/layout-manage-list.component.js +4 -3
- package/esm2015/layout/layout-manage-list/layout-manage-list.directives.js +7 -6
- package/esm2015/layout/layout-nav/layout-nav.component.js +4 -3
- package/esm2015/layout/layout-nav-list/layout-nav-list.component.js +4 -3
- package/esm2015/layout/layout-nav-list/layout-nav-list.directives.js +7 -6
- package/esm2015/layout/layout-toggle.class.js +22 -12
- package/esm2015/layout/layout.component.js +4 -3
- package/esm2015/layout/layout.directives.js +7 -6
- package/esm2015/layout/layout.module.js +3 -2
- package/esm2015/layout/navigation-drawer/navigation-drawer.component.js +4 -3
- package/esm2015/layout/public-api.js +4 -3
- package/esm2015/loading/covalent-core-loading.js +3 -2
- package/esm2015/loading/directives/loading.directive.js +3 -2
- package/esm2015/loading/index.js +3 -2
- package/esm2015/loading/loading.component.js +13 -12
- package/esm2015/loading/loading.module.js +3 -2
- package/esm2015/loading/public-api.js +3 -2
- package/esm2015/loading/services/loading.factory.js +3 -2
- package/esm2015/loading/services/loading.service.js +3 -2
- package/esm2015/media/covalent-core-media.js +3 -2
- package/esm2015/media/directives/media-toggle.directive.js +3 -2
- package/esm2015/media/index.js +3 -2
- package/esm2015/media/media.module.js +3 -2
- package/esm2015/media/public-api.js +3 -2
- package/esm2015/media/services/media.service.js +3 -2
- package/esm2015/menu/covalent-core-menu.js +3 -2
- package/esm2015/menu/index.js +3 -2
- package/esm2015/menu/menu.component.js +4 -3
- package/esm2015/menu/menu.module.js +3 -2
- package/esm2015/menu/public-api.js +3 -2
- package/esm2015/message/covalent-core-message.js +3 -2
- package/esm2015/message/index.js +3 -2
- package/esm2015/message/message.component.js +4 -3
- package/esm2015/message/message.module.js +3 -2
- package/esm2015/message/public-api.js +3 -2
- package/esm2015/nav-links/covalent-core-nav-links.js +3 -2
- package/esm2015/nav-links/index.js +3 -2
- package/esm2015/nav-links/nav-links.component.js +3 -2
- package/esm2015/nav-links/nav-links.module.js +3 -2
- package/esm2015/nav-links/public-api.js +3 -2
- package/esm2015/notifications/covalent-core-notifications.js +3 -2
- package/esm2015/notifications/index.js +3 -2
- package/esm2015/notifications/notification-count.component.js +10 -9
- package/esm2015/notifications/notifications.module.js +3 -2
- package/esm2015/notifications/public-api.js +3 -2
- package/esm2015/paging/covalent-core-paging.js +3 -2
- package/esm2015/paging/index.js +3 -2
- package/esm2015/paging/paging-bar.component.js +4 -3
- package/esm2015/paging/paging.module.js +3 -2
- package/esm2015/paging/public-api.js +3 -2
- package/esm2015/search/covalent-core-search.js +3 -2
- package/esm2015/search/index.js +3 -2
- package/esm2015/search/public-api.js +3 -2
- package/esm2015/search/search-box/search-box.component.js +4 -3
- package/esm2015/search/search-input/search-input.component.js +4 -3
- package/esm2015/search/search.module.js +3 -2
- package/esm2015/sidesheet/covalent-core-sidesheet.js +3 -2
- package/esm2015/sidesheet/index.js +3 -2
- package/esm2015/sidesheet/public-api.js +3 -2
- package/esm2015/sidesheet/sidesheet.component.js +4 -3
- package/esm2015/sidesheet/sidesheet.module.js +3 -2
- package/esm2015/steps/covalent-core-steps.js +3 -2
- package/esm2015/steps/index.js +3 -2
- package/esm2015/steps/nav/nav-step-link/nav-step-link.component.js +4 -3
- package/esm2015/steps/nav/nav-steps-horizontal/nav-steps-horizontal.component.js +4 -3
- package/esm2015/steps/nav/nav-steps-vertical/nav-steps-vertical.component.js +4 -3
- package/esm2015/steps/public-api.js +3 -2
- package/esm2015/steps/step-body/step-body.component.js +4 -3
- package/esm2015/steps/step-header/step-header.component.js +4 -3
- package/esm2015/steps/step.component.js +6 -5
- package/esm2015/steps/steps.component.js +6 -5
- package/esm2015/steps/steps.module.js +3 -2
- package/esm2015/tab-select/covalent-core-tab-select.js +3 -2
- package/esm2015/tab-select/index.js +3 -2
- package/esm2015/tab-select/public-api.js +3 -2
- package/esm2015/tab-select/tab-option.component.js +3 -2
- package/esm2015/tab-select/tab-select.component.js +3 -2
- package/esm2015/tab-select/tab-select.module.js +3 -2
- package/esm2015/user-profile/covalent-core-user-profile.js +3 -2
- package/esm2015/user-profile/index.js +3 -2
- package/esm2015/user-profile/public_api.js +3 -2
- package/esm2015/user-profile/user-profile-menu/user-profile-menu.component.js +4 -3
- package/esm2015/user-profile/user-profile.component.js +3 -2
- package/esm2015/user-profile/user-profile.module.js +3 -2
- package/esm2015/virtual-scroll/covalent-core-virtual-scroll.js +3 -2
- package/esm2015/virtual-scroll/index.js +3 -2
- package/esm2015/virtual-scroll/public-api.js +3 -2
- package/esm2015/virtual-scroll/virtual-scroll-container.component.js +4 -3
- package/esm2015/virtual-scroll/virtual-scroll-row.directive.js +3 -2
- package/esm2015/virtual-scroll/virtual-scroll.module.js +3 -2
- package/expansion-panel/covalent-core-expansion-panel.metadata.json +1 -1
- package/expansion-panel/package.json +1 -3
- package/fesm2015/covalent-core-breadcrumbs.js +13 -7
- package/fesm2015/covalent-core-breadcrumbs.js.map +1 -1
- package/fesm2015/covalent-core-chips.js +11 -6
- package/fesm2015/covalent-core-chips.js.map +1 -1
- package/fesm2015/covalent-core-common.js +62 -31
- package/fesm2015/covalent-core-common.js.map +1 -1
- package/fesm2015/covalent-core-data-table.js +28 -17
- package/fesm2015/covalent-core-data-table.js.map +1 -1
- package/fesm2015/covalent-core-dialogs.js +36 -25
- package/fesm2015/covalent-core-dialogs.js.map +1 -1
- package/fesm2015/covalent-core-dynamic-menu.js +17 -10
- package/fesm2015/covalent-core-dynamic-menu.js.map +1 -1
- package/fesm2015/covalent-core-expansion-panel.js +13 -7
- package/fesm2015/covalent-core-expansion-panel.js.map +1 -1
- package/fesm2015/covalent-core-file.js +19 -10
- package/fesm2015/covalent-core-file.js.map +1 -1
- package/fesm2015/covalent-core-json-formatter.js +11 -6
- package/fesm2015/covalent-core-json-formatter.js.map +1 -1
- package/fesm2015/covalent-core-layout.js +65 -41
- package/fesm2015/covalent-core-layout.js.map +1 -1
- package/fesm2015/covalent-core-loading.js +26 -18
- package/fesm2015/covalent-core-loading.js.map +1 -1
- package/fesm2015/covalent-core-media.js +12 -6
- package/fesm2015/covalent-core-media.js.map +1 -1
- package/fesm2015/covalent-core-menu.js +11 -6
- package/fesm2015/covalent-core-menu.js.map +1 -1
- package/fesm2015/covalent-core-message.js +11 -6
- package/fesm2015/covalent-core-message.js.map +1 -1
- package/fesm2015/covalent-core-nav-links.js +10 -5
- package/fesm2015/covalent-core-nav-links.js.map +1 -1
- package/fesm2015/covalent-core-notifications.js +17 -12
- package/fesm2015/covalent-core-notifications.js.map +1 -1
- package/fesm2015/covalent-core-paging.js +11 -6
- package/fesm2015/covalent-core-paging.js.map +1 -1
- package/fesm2015/covalent-core-search.js +14 -8
- package/fesm2015/covalent-core-search.js.map +1 -1
- package/fesm2015/covalent-core-sidesheet.js +11 -6
- package/fesm2015/covalent-core-sidesheet.js.map +1 -1
- package/fesm2015/covalent-core-steps.js +33 -22
- package/fesm2015/covalent-core-steps.js.map +1 -1
- package/fesm2015/covalent-core-tab-select.js +12 -6
- package/fesm2015/covalent-core-tab-select.js.map +1 -1
- package/fesm2015/covalent-core-user-profile.js +13 -7
- package/fesm2015/covalent-core-user-profile.js.map +1 -1
- package/fesm2015/covalent-core-virtual-scroll.js +13 -7
- package/fesm2015/covalent-core-virtual-scroll.js.map +1 -1
- package/fesm2015/covalent-core.js +4 -2
- package/fesm2015/covalent-core.js.map +1 -1
- package/file/covalent-core-file.metadata.json +1 -1
- package/file/package.json +1 -3
- package/json-formatter/covalent-core-json-formatter.metadata.json +1 -1
- package/json-formatter/package.json +1 -3
- package/layout/covalent-core-layout.metadata.json +1 -1
- package/layout/layout-manage-list/layout-manage-list.directives.d.ts +4 -4
- package/layout/layout-nav-list/layout-nav-list.directives.d.ts +4 -4
- package/layout/layout-toggle.class.d.ts +1 -1
- package/layout/layout.directives.d.ts +4 -4
- package/layout/package.json +1 -3
- package/loading/covalent-core-loading.metadata.json +1 -1
- package/loading/package.json +1 -3
- package/media/package.json +1 -3
- package/menu/covalent-core-menu.metadata.json +1 -1
- package/menu/package.json +1 -3
- package/message/covalent-core-message.metadata.json +1 -1
- package/message/package.json +1 -3
- package/nav-links/package.json +1 -3
- package/notifications/covalent-core-notifications.metadata.json +1 -1
- package/notifications/package.json +1 -3
- package/package.json +12 -12
- package/paging/covalent-core-paging.metadata.json +1 -1
- package/paging/package.json +1 -3
- package/schematics/components.js +1 -0
- package/schematics/components.js.map +1 -1
- package/schematics/ng-add/files/theme.scss +1 -1
- package/schematics/ng-add/index.js +4 -6
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-update/index.js +1 -0
- package/schematics/ng-update/index.js.map +1 -1
- package/schematics/ng-update/target-version.js +1 -0
- package/schematics/ng-update/target-version.js.map +1 -1
- package/schematics/version-names.js +1 -0
- package/schematics/version-names.js.map +1 -1
- package/search/covalent-core-search.metadata.json +1 -1
- package/search/package.json +1 -3
- package/sidesheet/covalent-core-sidesheet.metadata.json +1 -1
- package/sidesheet/package.json +1 -3
- package/steps/covalent-core-steps.metadata.json +1 -1
- package/steps/package.json +1 -3
- package/tab-select/covalent-core-tab-select.metadata.json +1 -1
- package/tab-select/package.json +1 -3
- package/theming/prebuilt/blue-grey-deep-orange.css +193 -28
- package/theming/prebuilt/blue-grey-deep-orange.css.map +1 -1
- package/theming/prebuilt/blue-orange.css +193 -28
- package/theming/prebuilt/blue-orange.css.map +1 -1
- package/theming/prebuilt/indigo-pink.css +193 -28
- package/theming/prebuilt/indigo-pink.css.map +1 -1
- package/theming/prebuilt/orange-light-blue.css +193 -28
- package/theming/prebuilt/orange-light-blue.css.map +1 -1
- package/theming/prebuilt/teal-orange.css +193 -28
- package/theming/prebuilt/teal-orange.css.map +1 -1
- package/user-profile/covalent-core-user-profile.metadata.json +1 -1
- package/user-profile/package.json +1 -3
- package/virtual-scroll/covalent-core-virtual-scroll.metadata.json +1 -1
- package/virtual-scroll/package.json +1 -3
- package/esm5/breadcrumbs/breadcrumb/breadcrumb.component.js +0 -216
- package/esm5/breadcrumbs/breadcrumbs.component.js +0 -286
- package/esm5/breadcrumbs/breadcrumbs.module.js +0 -23
- package/esm5/breadcrumbs/covalent-core-breadcrumbs.js +0 -9
- package/esm5/breadcrumbs/index.js +0 -6
- package/esm5/breadcrumbs/public-api.js +0 -8
- package/esm5/chips/chips.component.js +0 -1453
- package/esm5/chips/chips.module.js +0 -26
- package/esm5/chips/covalent-core-chips.js +0 -9
- package/esm5/chips/index.js +0 -6
- package/esm5/chips/public-api.js +0 -7
- package/esm5/common/animations/bounce/bounce.animation.js +0 -75
- package/esm5/common/animations/collapse/collapse.animation.js +0 -66
- package/esm5/common/animations/common/interfaces.js +0 -17
- package/esm5/common/animations/fade/fadeInOut.animation.js +0 -52
- package/esm5/common/animations/flash/flash.animation.js +0 -39
- package/esm5/common/animations/headshake/headshake.animation.js +0 -40
- package/esm5/common/animations/jello/jello.animation.js +0 -43
- package/esm5/common/animations/pulse/pulse.animation.js +0 -37
- package/esm5/common/animations/rotate/rotate.animation.js +0 -40
- package/esm5/common/behaviors/control-value-accesor.mixin.js +0 -127
- package/esm5/common/behaviors/disable-ripple.mixin.js +0 -75
- package/esm5/common/behaviors/disabled.mixin.js +0 -75
- package/esm5/common/common.module.js +0 -57
- package/esm5/common/covalent-core-common.js +0 -11
- package/esm5/common/directives/fullscreen/fullscreen.directive.js +0 -228
- package/esm5/common/forms/auto-trim/auto-trim.directive.js +0 -52
- package/esm5/common/forms/validators/validators.js +0 -73
- package/esm5/common/functions/clipboard.js +0 -29
- package/esm5/common/functions/convert.js +0 -120
- package/esm5/common/functions/download.js +0 -93
- package/esm5/common/functions/file.js +0 -28
- package/esm5/common/index.js +0 -6
- package/esm5/common/pipes/bytes/bytes.pipe.js +0 -54
- package/esm5/common/pipes/decimal-bytes/decimal-bytes.pipe.js +0 -54
- package/esm5/common/pipes/digits/digits.pipe.js +0 -72
- package/esm5/common/pipes/time-ago/time-ago.pipe.js +0 -89
- package/esm5/common/pipes/time-difference/time-difference.pipe.js +0 -74
- package/esm5/common/pipes/time-until/time-until.pipe.js +0 -89
- package/esm5/common/pipes/truncate/truncate.pipe.js +0 -42
- package/esm5/common/public-api.js +0 -43
- package/esm5/common/services/icon.service.js +0 -1118
- package/esm5/common/services/router-path.service.js +0 -69
- package/esm5/covalent-core.js +0 -9
- package/esm5/data-table/covalent-core-data-table.js +0 -9
- package/esm5/data-table/data-table-cell/data-table-cell.component.js +0 -98
- package/esm5/data-table/data-table-column/data-table-column.component.js +0 -257
- package/esm5/data-table/data-table-row/data-table-row.component.js +0 -145
- package/esm5/data-table/data-table-table/data-table-table.component.js +0 -40
- package/esm5/data-table/data-table.component.js +0 -2079
- package/esm5/data-table/data-table.module.js +0 -42
- package/esm5/data-table/directives/data-table-template.directive.js +0 -31
- package/esm5/data-table/index.js +0 -6
- package/esm5/data-table/public-api.js +0 -13
- package/esm5/data-table/services/data-table.service.js +0 -184
- package/esm5/dialogs/alert-dialog/alert-dialog.component.js +0 -48
- package/esm5/dialogs/confirm-dialog/confirm-dialog.component.js +0 -63
- package/esm5/dialogs/covalent-core-dialogs.js +0 -10
- package/esm5/dialogs/dialog.component.js +0 -76
- package/esm5/dialogs/dialogs.module.js +0 -60
- package/esm5/dialogs/index.js +0 -6
- package/esm5/dialogs/prompt-dialog/prompt-dialog.component.js +0 -100
- package/esm5/dialogs/public-api.js +0 -12
- package/esm5/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.js +0 -356
- package/esm5/dialogs/services/dialog.service.js +0 -441
- package/esm5/dialogs/window-dialog/window-dialog.component.js +0 -60
- package/esm5/dynamic-menu/covalent-core-dynamic-menu.js +0 -10
- package/esm5/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.js +0 -45
- package/esm5/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.js +0 -39
- package/esm5/dynamic-menu/dynamic-menu.component.js +0 -94
- package/esm5/dynamic-menu/dynamic-menu.module.js +0 -29
- package/esm5/dynamic-menu/index.js +0 -6
- package/esm5/dynamic-menu/public_api.js +0 -8
- package/esm5/expansion-panel/covalent-core-expansion-panel.js +0 -9
- package/esm5/expansion-panel/expansion-panel-group.component.js +0 -251
- package/esm5/expansion-panel/expansion-panel.component.js +0 -344
- package/esm5/expansion-panel/expansion-panel.module.js +0 -34
- package/esm5/expansion-panel/index.js +0 -6
- package/esm5/expansion-panel/public-api.js +0 -8
- package/esm5/file/covalent-core-file.js +0 -9
- package/esm5/file/directives/file-drop.directive.js +0 -276
- package/esm5/file/directives/file-select.directive.js +0 -124
- package/esm5/file/file-input/file-input.component.js +0 -225
- package/esm5/file/file-upload/file-upload.component.js +0 -284
- package/esm5/file/file.module.js +0 -38
- package/esm5/file/index.js +0 -6
- package/esm5/file/public-api.js +0 -11
- package/esm5/file/services/file.service.js +0 -137
- package/esm5/index.js +0 -5
- package/esm5/json-formatter/covalent-core-json-formatter.js +0 -9
- package/esm5/json-formatter/index.js +0 -6
- package/esm5/json-formatter/json-formatter.component.js +0 -433
- package/esm5/json-formatter/json-formatter.module.js +0 -23
- package/esm5/json-formatter/public-api.js +0 -7
- package/esm5/layout/covalent-core-layout.js +0 -9
- package/esm5/layout/index.js +0 -6
- package/esm5/layout/layout-card-over/layout-card-over.component.js +0 -72
- package/esm5/layout/layout-footer/layout-footer.component.js +0 -77
- package/esm5/layout/layout-manage-list/layout-manage-list.component.js +0 -175
- package/esm5/layout/layout-manage-list/layout-manage-list.directives.js +0 -147
- package/esm5/layout/layout-nav/layout-nav.component.js +0 -108
- package/esm5/layout/layout-nav-list/layout-nav-list.component.js +0 -257
- package/esm5/layout/layout-nav-list/layout-nav-list.directives.js +0 -147
- package/esm5/layout/layout-toggle.class.js +0 -214
- package/esm5/layout/layout.component.js +0 -175
- package/esm5/layout/layout.directives.js +0 -144
- package/esm5/layout/layout.module.js +0 -67
- package/esm5/layout/navigation-drawer/navigation-drawer.component.js +0 -364
- package/esm5/layout/public-api.js +0 -17
- package/esm5/loading/covalent-core-loading.js +0 -9
- package/esm5/loading/directives/loading.directive.js +0 -304
- package/esm5/loading/index.js +0 -6
- package/esm5/loading/loading.component.js +0 -367
- package/esm5/loading/loading.module.js +0 -33
- package/esm5/loading/public-api.js +0 -10
- package/esm5/loading/services/loading.factory.js +0 -378
- package/esm5/loading/services/loading.service.js +0 -494
- package/esm5/media/covalent-core-media.js +0 -9
- package/esm5/media/directives/media-toggle.directive.js +0 -261
- package/esm5/media/index.js +0 -6
- package/esm5/media/media.module.js +0 -23
- package/esm5/media/public-api.js +0 -8
- package/esm5/media/services/media.service.js +0 -229
- package/esm5/menu/covalent-core-menu.js +0 -9
- package/esm5/menu/index.js +0 -6
- package/esm5/menu/menu.component.js +0 -19
- package/esm5/menu/menu.module.js +0 -25
- package/esm5/menu/public-api.js +0 -7
- package/esm5/message/covalent-core-message.js +0 -9
- package/esm5/message/index.js +0 -6
- package/esm5/message/message.component.js +0 -402
- package/esm5/message/message.module.js +0 -24
- package/esm5/message/public-api.js +0 -7
- package/esm5/nav-links/covalent-core-nav-links.js +0 -9
- package/esm5/nav-links/index.js +0 -6
- package/esm5/nav-links/nav-links.component.js +0 -171
- package/esm5/nav-links/nav-links.module.js +0 -40
- package/esm5/nav-links/public-api.js +0 -7
- package/esm5/notifications/covalent-core-notifications.js +0 -9
- package/esm5/notifications/index.js +0 -6
- package/esm5/notifications/notification-count.component.js +0 -268
- package/esm5/notifications/notifications.module.js +0 -23
- package/esm5/notifications/public-api.js +0 -7
- package/esm5/paging/covalent-core-paging.js +0 -9
- package/esm5/paging/index.js +0 -6
- package/esm5/paging/paging-bar.component.js +0 -542
- package/esm5/paging/paging.module.js +0 -23
- package/esm5/paging/public-api.js +0 -7
- package/esm5/search/covalent-core-search.js +0 -9
- package/esm5/search/index.js +0 -6
- package/esm5/search/public-api.js +0 -8
- package/esm5/search/search-box/search-box.component.js +0 -298
- package/esm5/search/search-input/search-input.component.js +0 -297
- package/esm5/search/search.module.js +0 -26
- package/esm5/sidesheet/covalent-core-sidesheet.js +0 -9
- package/esm5/sidesheet/index.js +0 -6
- package/esm5/sidesheet/public-api.js +0 -7
- package/esm5/sidesheet/sidesheet.component.js +0 -89
- package/esm5/sidesheet/sidesheet.module.js +0 -30
- package/esm5/steps/covalent-core-steps.js +0 -9
- package/esm5/steps/index.js +0 -6
- package/esm5/steps/nav/nav-step-link/nav-step-link.component.js +0 -165
- package/esm5/steps/nav/nav-steps-horizontal/nav-steps-horizontal.component.js +0 -464
- package/esm5/steps/nav/nav-steps-vertical/nav-steps-vertical.component.js +0 -143
- package/esm5/steps/public-api.js +0 -13
- package/esm5/steps/step-body/step-body.component.js +0 -103
- package/esm5/steps/step-header/step-header.component.js +0 -101
- package/esm5/steps/step.component.js +0 -399
- package/esm5/steps/steps.component.js +0 -313
- package/esm5/steps/steps.module.js +0 -47
- package/esm5/tab-select/covalent-core-tab-select.js +0 -9
- package/esm5/tab-select/index.js +0 -6
- package/esm5/tab-select/public-api.js +0 -8
- package/esm5/tab-select/tab-option.component.js +0 -86
- package/esm5/tab-select/tab-select.component.js +0 -344
- package/esm5/tab-select/tab-select.module.js +0 -34
- package/esm5/user-profile/covalent-core-user-profile.js +0 -9
- package/esm5/user-profile/index.js +0 -6
- package/esm5/user-profile/public_api.js +0 -8
- package/esm5/user-profile/user-profile-menu/user-profile-menu.component.js +0 -42
- package/esm5/user-profile/user-profile.component.js +0 -29
- package/esm5/user-profile/user-profile.module.js +0 -36
- package/esm5/virtual-scroll/covalent-core-virtual-scroll.js +0 -9
- package/esm5/virtual-scroll/index.js +0 -6
- package/esm5/virtual-scroll/public-api.js +0 -8
- package/esm5/virtual-scroll/virtual-scroll-container.component.js +0 -468
- package/esm5/virtual-scroll/virtual-scroll-row.directive.js +0 -24
- package/esm5/virtual-scroll/virtual-scroll.module.js +0 -24
- package/fesm5/covalent-core-breadcrumbs.js +0 -535
- package/fesm5/covalent-core-breadcrumbs.js.map +0 -1
- package/fesm5/covalent-core-chips.js +0 -1484
- package/fesm5/covalent-core-chips.js.map +0 -1
- package/fesm5/covalent-core-common.js +0 -2961
- package/fesm5/covalent-core-common.js.map +0 -1
- package/fesm5/covalent-core-data-table.js +0 -2863
- package/fesm5/covalent-core-data-table.js.map +0 -1
- package/fesm5/covalent-core-dialogs.js +0 -1189
- package/fesm5/covalent-core-dialogs.js.map +0 -1
- package/fesm5/covalent-core-dynamic-menu.js +0 -214
- package/fesm5/covalent-core-dynamic-menu.js.map +0 -1
- package/fesm5/covalent-core-expansion-panel.js +0 -631
- package/fesm5/covalent-core-expansion-panel.js.map +0 -1
- package/fesm5/covalent-core-file.js +0 -1068
- package/fesm5/covalent-core-file.js.map +0 -1
- package/fesm5/covalent-core-json-formatter.js +0 -470
- package/fesm5/covalent-core-json-formatter.js.map +0 -1
- package/fesm5/covalent-core-layout.js +0 -1906
- package/fesm5/covalent-core-layout.js.map +0 -1
- package/fesm5/covalent-core-loading.js +0 -1562
- package/fesm5/covalent-core-loading.js.map +0 -1
- package/fesm5/covalent-core-media.js +0 -522
- package/fesm5/covalent-core-media.js.map +0 -1
- package/fesm5/covalent-core-menu.js +0 -58
- package/fesm5/covalent-core-menu.js.map +0 -1
- package/fesm5/covalent-core-message.js +0 -439
- package/fesm5/covalent-core-message.js.map +0 -1
- package/fesm5/covalent-core-nav-links.js +0 -224
- package/fesm5/covalent-core-nav-links.js.map +0 -1
- package/fesm5/covalent-core-notifications.js +0 -303
- package/fesm5/covalent-core-notifications.js.map +0 -1
- package/fesm5/covalent-core-paging.js +0 -579
- package/fesm5/covalent-core-paging.js.map +0 -1
- package/fesm5/covalent-core-search.js +0 -623
- package/fesm5/covalent-core-search.js.map +0 -1
- package/fesm5/covalent-core-sidesheet.js +0 -129
- package/fesm5/covalent-core-sidesheet.js.map +0 -1
- package/fesm5/covalent-core-steps.js +0 -1704
- package/fesm5/covalent-core-steps.js.map +0 -1
- package/fesm5/covalent-core-tab-select.js +0 -467
- package/fesm5/covalent-core-tab-select.js.map +0 -1
- package/fesm5/covalent-core-user-profile.js +0 -118
- package/fesm5/covalent-core-user-profile.js.map +0 -1
- package/fesm5/covalent-core-virtual-scroll.js +0 -526
- package/fesm5/covalent-core-virtual-scroll.js.map +0 -1
- package/fesm5/covalent-core.js +0 -10
- package/fesm5/covalent-core.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"covalent-core-expansion-panel.js","sources":["ng://@covalent/core/expansion-panel/expansion-panel.component.ts","ng://@covalent/core/expansion-panel/expansion-panel-group.component.ts","ng://@covalent/core/expansion-panel/expansion-panel.module.ts"],"sourcesContent":["import {\n Component,\n Directive,\n Input,\n Output,\n TemplateRef,\n ViewContainerRef,\n ContentChild,\n ElementRef,\n Renderer2,\n} from '@angular/core';\nimport { EventEmitter } from '@angular/core';\nimport { TemplatePortalDirective } from '@angular/cdk/portal';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\n\nimport {\n tdCollapseAnimation,\n ICanDisable,\n mixinDisabled,\n ICanDisableRipple,\n mixinDisableRipple,\n tdRotateAnimation,\n} from '@covalent/core/common';\n\n@Directive({\n selector: '[td-expansion-panel-header]ng-template',\n})\nexport class TdExpansionPanelHeaderDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Directive({\n selector: '[td-expansion-panel-label]ng-template',\n})\nexport class TdExpansionPanelLabelDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Directive({\n selector: '[td-expansion-panel-sublabel]ng-template',\n})\nexport class TdExpansionPanelSublabelDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Component({\n selector: 'td-expansion-summary',\n template: '<ng-content></ng-content>',\n})\nexport class TdExpansionPanelSummaryComponent {}\n\nexport class TdExpansionPanelBase {}\n\n/* tslint:disable-next-line */\nexport const _TdExpansionPanelMixinBase = mixinDisableRipple(mixinDisabled(TdExpansionPanelBase));\n\n@Component({\n selector: 'td-expansion-panel',\n styleUrls: ['./expansion-panel.component.scss'],\n templateUrl: './expansion-panel.component.html',\n inputs: ['disabled', 'disableRipple'],\n animations: [tdCollapseAnimation, tdRotateAnimation],\n})\nexport class TdExpansionPanelComponent extends _TdExpansionPanelMixinBase implements ICanDisable, ICanDisableRipple {\n private _expand: boolean = false;\n\n @ContentChild(TdExpansionPanelHeaderDirective)\n expansionPanelHeader: TdExpansionPanelHeaderDirective;\n @ContentChild(TdExpansionPanelLabelDirective) expansionPanelLabel: TdExpansionPanelLabelDirective;\n @ContentChild(TdExpansionPanelSublabelDirective)\n expansionPanelSublabel: TdExpansionPanelSublabelDirective;\n\n /**\n * label?: string\n * Sets label of [TdExpansionPanelComponent] header.\n * Defaults to 'Click to expand'\n */\n @Input() label: string;\n\n /**\n * sublabel?: string\n * Sets sublabel of [TdExpansionPanelComponent] header.\n */\n @Input() sublabel: string;\n\n /**\n * expand?: boolean\n * Toggles [TdExpansionPanelComponent] between expand/collapse.\n */\n @Input('expand')\n set expand(expand: boolean) {\n this._setExpand(coerceBooleanProperty(expand));\n }\n get expand(): boolean {\n return this._expand;\n }\n\n /**\n * expanded?: function\n * Event emitted when [TdExpansionPanelComponent] is expanded.\n */\n @Output() expanded: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * collapsed?: function\n * Event emitted when [TdExpansionPanelComponent] is collapsed.\n */\n @Output() collapsed: EventEmitter<void> = new EventEmitter<void>();\n\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef) {\n super();\n this._renderer.addClass(this._elementRef.nativeElement, 'td-expansion-panel');\n }\n\n /**\n * Method executed when [TdExpansionPanelComponent] is clicked.\n */\n clickEvent(): void {\n this._setExpand(!this._expand);\n }\n\n /**\n * Toggle expand state of [TdExpansionPanelComponent]\n * retuns 'true' if successful, else 'false'.\n */\n toggle(): boolean {\n return this._setExpand(!this._expand);\n }\n\n /**\n * Opens [TdExpansionPanelComponent]\n * retuns 'true' if successful, else 'false'.\n */\n open(): boolean {\n return this._setExpand(true);\n }\n\n /**\n * Closes [TdExpansionPanelComponent]\n * retuns 'true' if successful, else 'false'.\n */\n close(): boolean {\n return this._setExpand(false);\n }\n\n /** Method executed when the disabled value changes */\n onDisabledChange(v: boolean): void {\n if (v && this._expand) {\n this._expand = false;\n this._onCollapsed();\n }\n }\n\n /**\n * Method to change expand state internally and emit the [onExpanded] event if 'true' or [onCollapsed]\n * event if 'false'. (Blocked if [disabled] is 'true')\n */\n private _setExpand(newExpand: boolean): boolean {\n if (this.disabled) {\n return false;\n }\n if (this._expand !== newExpand) {\n this._expand = newExpand;\n if (newExpand) {\n this._renderer.addClass(this._elementRef.nativeElement, 'td-expanded');\n this._onExpanded();\n } else {\n this._renderer.removeClass(this._elementRef.nativeElement, 'td-expanded');\n this._onCollapsed();\n }\n return true;\n }\n return false;\n }\n\n private _onExpanded(): void {\n this.expanded.emit();\n }\n\n private _onCollapsed(): void {\n this.collapsed.emit();\n }\n}\n","import {\n Component,\n Renderer2,\n ElementRef,\n QueryList,\n ContentChildren,\n AfterContentInit,\n Input,\n OnDestroy,\n} from '@angular/core';\nimport { TdExpansionPanelComponent } from './expansion-panel.component';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'td-expansion-panel-group',\n styleUrls: ['./expansion-panel-group.component.scss'],\n templateUrl: './expansion-panel-group.component.html',\n})\nexport class TdExpansionPanelGroupComponent implements AfterContentInit, OnDestroy {\n private _multi: boolean = false;\n\n private _lastOpenedPanels: TdExpansionPanelComponent[] = [];\n\n private _destroyed: Subject<boolean> = new Subject<boolean>();\n private _stopWatchingPanels: Subject<boolean> = new Subject<boolean>();\n\n /**\n * multi?: boolean\n * Sets whether multiple panels can be opened at a given time.\n * Set to false for accordion mode.\n * Defaults to false.\n */\n @Input('multi')\n set multi(multi: boolean) {\n this._multi = coerceBooleanProperty(multi);\n if (this._multi === false && this._lastOpenedPanels.length > 0) {\n this._closeAllExcept(this._lastOpenedPanels[this._lastOpenedPanels.length - 1]);\n }\n }\n\n @ContentChildren(TdExpansionPanelComponent, { descendants: true }) expansionPanels: QueryList<\n TdExpansionPanelComponent\n >;\n\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef) {\n this._renderer.addClass(this._elementRef.nativeElement, 'td-expansion-panel-group');\n }\n\n ngOnDestroy(): void {\n this._destroyed.next(true);\n this._destroyed.unsubscribe();\n this._stopWatchingPanels.next(true);\n this._stopWatchingPanels.unsubscribe();\n }\n\n public ngAfterContentInit(): void {\n if (!this._multi) {\n const openedPanels: TdExpansionPanelComponent[] = this.expansionPanels.filter(\n (expansionPanel: TdExpansionPanelComponent) => expansionPanel.expand,\n );\n const numOpenedPanels: number = openedPanels.length;\n if (numOpenedPanels > 1) {\n this._closeAllExcept(openedPanels[numOpenedPanels - 1]);\n }\n }\n\n this._attachListeners(this.expansionPanels);\n\n this.expansionPanels.changes\n .pipe(takeUntil(this._destroyed))\n .subscribe((expansionPanels: QueryList<TdExpansionPanelComponent>) => {\n this._stopWatchingPanels.next(true);\n this._stopWatchingPanels.unsubscribe();\n this._stopWatchingPanels = new Subject<boolean>();\n this._attachListeners(expansionPanels);\n });\n }\n\n /**\n * Opens all expansion panels, only if multi set set to true.\n */\n public openAll(): void {\n if (this._multi) {\n this.expansionPanels.forEach((expansionPanel: TdExpansionPanelComponent) => {\n expansionPanel.open();\n });\n }\n }\n\n /**\n * Closes all expansion panels\n */\n public closeAll(): void {\n this.expansionPanels.forEach((expansionPanel: TdExpansionPanelComponent) => {\n expansionPanel.close();\n });\n }\n\n private _attachListeners(expansionPanels: QueryList<TdExpansionPanelComponent>): void {\n this._lastOpenedPanels = [];\n expansionPanels.forEach((expansionPanel: TdExpansionPanelComponent) => {\n expansionPanel.expanded.pipe(takeUntil(this._stopWatchingPanels)).subscribe(() => {\n const indexOfPanel: number = this._lastOpenedPanels.indexOf(expansionPanel);\n if (indexOfPanel !== -1) {\n this._lastOpenedPanels.splice(indexOfPanel, 1);\n }\n this._lastOpenedPanels.push(expansionPanel);\n\n if (!this._multi) {\n this._closeAllExcept(expansionPanel);\n }\n });\n\n expansionPanel.collapsed.pipe(takeUntil(this._stopWatchingPanels)).subscribe(() => {\n const indexOfPanel: number = this._lastOpenedPanels.indexOf(expansionPanel);\n if (indexOfPanel !== -1) {\n this._lastOpenedPanels.splice(indexOfPanel, 1);\n }\n });\n });\n }\n\n private _closeAllExcept(expansionPanel: TdExpansionPanelComponent): void {\n this.expansionPanels.forEach((panel: TdExpansionPanelComponent) => {\n if (panel !== expansionPanel) {\n panel.close();\n }\n });\n }\n}\n","import { Type } from '@angular/core';\nimport { NgModule } from '@angular/core';\n\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport {\n TdExpansionPanelComponent,\n TdExpansionPanelHeaderDirective,\n TdExpansionPanelLabelDirective,\n TdExpansionPanelSublabelDirective,\n TdExpansionPanelSummaryComponent,\n} from './expansion-panel.component';\nimport { TdExpansionPanelGroupComponent } from './expansion-panel-group.component';\n\nconst TD_EXPANSION_PANEL: Type<any>[] = [\n TdExpansionPanelGroupComponent,\n TdExpansionPanelComponent,\n TdExpansionPanelHeaderDirective,\n TdExpansionPanelLabelDirective,\n TdExpansionPanelSublabelDirective,\n TdExpansionPanelSummaryComponent,\n];\n\n@NgModule({\n imports: [CommonModule, MatRippleModule, MatIconModule, PortalModule],\n declarations: [TD_EXPANSION_PANEL],\n exports: [TD_EXPANSION_PANEL],\n})\nexport class CovalentExpansionPanelModule {}\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"covalent-core-expansion-panel.js","sources":["../../../../src/platform/core/expansion-panel/expansion-panel.component.ts","../../../../src/platform/core/expansion-panel/expansion-panel-group.component.ts","../../../../src/platform/core/expansion-panel/expansion-panel.module.ts"],"sourcesContent":["import {\n Component,\n Directive,\n Input,\n Output,\n TemplateRef,\n ViewContainerRef,\n ContentChild,\n ElementRef,\n Renderer2,\n} from '@angular/core';\nimport { EventEmitter } from '@angular/core';\nimport { TemplatePortalDirective } from '@angular/cdk/portal';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\n\nimport {\n tdCollapseAnimation,\n ICanDisable,\n mixinDisabled,\n ICanDisableRipple,\n mixinDisableRipple,\n tdRotateAnimation,\n} from '@covalent/core/common';\n\n@Directive({\n selector: '[td-expansion-panel-header]ng-template',\n})\nexport class TdExpansionPanelHeaderDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Directive({\n selector: '[td-expansion-panel-label]ng-template',\n})\nexport class TdExpansionPanelLabelDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Directive({\n selector: '[td-expansion-panel-sublabel]ng-template',\n})\nexport class TdExpansionPanelSublabelDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Component({\n selector: 'td-expansion-summary',\n template: '<ng-content></ng-content>',\n})\nexport class TdExpansionPanelSummaryComponent {}\n\nexport class TdExpansionPanelBase {}\n\n/* tslint:disable-next-line */\nexport const _TdExpansionPanelMixinBase = mixinDisableRipple(mixinDisabled(TdExpansionPanelBase));\n\n@Component({\n selector: 'td-expansion-panel',\n styleUrls: ['./expansion-panel.component.scss'],\n templateUrl: './expansion-panel.component.html',\n inputs: ['disabled', 'disableRipple'],\n animations: [tdCollapseAnimation, tdRotateAnimation],\n})\nexport class TdExpansionPanelComponent extends _TdExpansionPanelMixinBase implements ICanDisable, ICanDisableRipple {\n private _expand: boolean = false;\n\n @ContentChild(TdExpansionPanelHeaderDirective)\n expansionPanelHeader: TdExpansionPanelHeaderDirective;\n @ContentChild(TdExpansionPanelLabelDirective) expansionPanelLabel: TdExpansionPanelLabelDirective;\n @ContentChild(TdExpansionPanelSublabelDirective)\n expansionPanelSublabel: TdExpansionPanelSublabelDirective;\n\n /**\n * label?: string\n * Sets label of [TdExpansionPanelComponent] header.\n * Defaults to 'Click to expand'\n */\n @Input() label: string;\n\n /**\n * sublabel?: string\n * Sets sublabel of [TdExpansionPanelComponent] header.\n */\n @Input() sublabel: string;\n\n /**\n * expand?: boolean\n * Toggles [TdExpansionPanelComponent] between expand/collapse.\n */\n @Input('expand')\n set expand(expand: boolean) {\n this._setExpand(coerceBooleanProperty(expand));\n }\n get expand(): boolean {\n return this._expand;\n }\n\n /**\n * expanded?: function\n * Event emitted when [TdExpansionPanelComponent] is expanded.\n */\n @Output() expanded: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * collapsed?: function\n * Event emitted when [TdExpansionPanelComponent] is collapsed.\n */\n @Output() collapsed: EventEmitter<void> = new EventEmitter<void>();\n\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef) {\n super();\n this._renderer.addClass(this._elementRef.nativeElement, 'td-expansion-panel');\n }\n\n /**\n * Method executed when [TdExpansionPanelComponent] is clicked.\n */\n clickEvent(): void {\n this._setExpand(!this._expand);\n }\n\n /**\n * Toggle expand state of [TdExpansionPanelComponent]\n * retuns 'true' if successful, else 'false'.\n */\n toggle(): boolean {\n return this._setExpand(!this._expand);\n }\n\n /**\n * Opens [TdExpansionPanelComponent]\n * retuns 'true' if successful, else 'false'.\n */\n open(): boolean {\n return this._setExpand(true);\n }\n\n /**\n * Closes [TdExpansionPanelComponent]\n * retuns 'true' if successful, else 'false'.\n */\n close(): boolean {\n return this._setExpand(false);\n }\n\n /** Method executed when the disabled value changes */\n onDisabledChange(v: boolean): void {\n if (v && this._expand) {\n this._expand = false;\n this._onCollapsed();\n }\n }\n\n /**\n * Method to change expand state internally and emit the [onExpanded] event if 'true' or [onCollapsed]\n * event if 'false'. (Blocked if [disabled] is 'true')\n */\n private _setExpand(newExpand: boolean): boolean {\n if (this.disabled) {\n return false;\n }\n if (this._expand !== newExpand) {\n this._expand = newExpand;\n if (newExpand) {\n this._renderer.addClass(this._elementRef.nativeElement, 'td-expanded');\n this._onExpanded();\n } else {\n this._renderer.removeClass(this._elementRef.nativeElement, 'td-expanded');\n this._onCollapsed();\n }\n return true;\n }\n return false;\n }\n\n private _onExpanded(): void {\n this.expanded.emit();\n }\n\n private _onCollapsed(): void {\n this.collapsed.emit();\n }\n}\n","import {\n Component,\n Renderer2,\n ElementRef,\n QueryList,\n ContentChildren,\n AfterContentInit,\n Input,\n OnDestroy,\n} from '@angular/core';\nimport { TdExpansionPanelComponent } from './expansion-panel.component';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'td-expansion-panel-group',\n styleUrls: ['./expansion-panel-group.component.scss'],\n templateUrl: './expansion-panel-group.component.html',\n})\nexport class TdExpansionPanelGroupComponent implements AfterContentInit, OnDestroy {\n private _multi: boolean = false;\n\n private _lastOpenedPanels: TdExpansionPanelComponent[] = [];\n\n private _destroyed: Subject<boolean> = new Subject<boolean>();\n private _stopWatchingPanels: Subject<boolean> = new Subject<boolean>();\n\n /**\n * multi?: boolean\n * Sets whether multiple panels can be opened at a given time.\n * Set to false for accordion mode.\n * Defaults to false.\n */\n @Input('multi')\n set multi(multi: boolean) {\n this._multi = coerceBooleanProperty(multi);\n if (this._multi === false && this._lastOpenedPanels.length > 0) {\n this._closeAllExcept(this._lastOpenedPanels[this._lastOpenedPanels.length - 1]);\n }\n }\n\n @ContentChildren(TdExpansionPanelComponent, { descendants: true })\n expansionPanels: QueryList<TdExpansionPanelComponent>;\n\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef) {\n this._renderer.addClass(this._elementRef.nativeElement, 'td-expansion-panel-group');\n }\n\n ngOnDestroy(): void {\n this._destroyed.next(true);\n this._destroyed.unsubscribe();\n this._stopWatchingPanels.next(true);\n this._stopWatchingPanels.unsubscribe();\n }\n\n public ngAfterContentInit(): void {\n if (!this._multi) {\n const openedPanels: TdExpansionPanelComponent[] = this.expansionPanels.filter(\n (expansionPanel: TdExpansionPanelComponent) => expansionPanel.expand,\n );\n const numOpenedPanels: number = openedPanels.length;\n if (numOpenedPanels > 1) {\n this._closeAllExcept(openedPanels[numOpenedPanels - 1]);\n }\n }\n\n this._attachListeners(this.expansionPanels);\n\n this.expansionPanels.changes\n .pipe(takeUntil(this._destroyed))\n .subscribe((expansionPanels: QueryList<TdExpansionPanelComponent>) => {\n this._stopWatchingPanels.next(true);\n this._stopWatchingPanels.unsubscribe();\n this._stopWatchingPanels = new Subject<boolean>();\n this._attachListeners(expansionPanels);\n });\n }\n\n /**\n * Opens all expansion panels, only if multi set set to true.\n */\n public openAll(): void {\n if (this._multi) {\n this.expansionPanels.forEach((expansionPanel: TdExpansionPanelComponent) => {\n expansionPanel.open();\n });\n }\n }\n\n /**\n * Closes all expansion panels\n */\n public closeAll(): void {\n this.expansionPanels.forEach((expansionPanel: TdExpansionPanelComponent) => {\n expansionPanel.close();\n });\n }\n\n private _attachListeners(expansionPanels: QueryList<TdExpansionPanelComponent>): void {\n this._lastOpenedPanels = [];\n expansionPanels.forEach((expansionPanel: TdExpansionPanelComponent) => {\n expansionPanel.expanded.pipe(takeUntil(this._stopWatchingPanels)).subscribe(() => {\n const indexOfPanel: number = this._lastOpenedPanels.indexOf(expansionPanel);\n if (indexOfPanel !== -1) {\n this._lastOpenedPanels.splice(indexOfPanel, 1);\n }\n this._lastOpenedPanels.push(expansionPanel);\n\n if (!this._multi) {\n this._closeAllExcept(expansionPanel);\n }\n });\n\n expansionPanel.collapsed.pipe(takeUntil(this._stopWatchingPanels)).subscribe(() => {\n const indexOfPanel: number = this._lastOpenedPanels.indexOf(expansionPanel);\n if (indexOfPanel !== -1) {\n this._lastOpenedPanels.splice(indexOfPanel, 1);\n }\n });\n });\n }\n\n private _closeAllExcept(expansionPanel: TdExpansionPanelComponent): void {\n this.expansionPanels.forEach((panel: TdExpansionPanelComponent) => {\n if (panel !== expansionPanel) {\n panel.close();\n }\n });\n }\n}\n","import { Type } from '@angular/core';\nimport { NgModule } from '@angular/core';\n\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport {\n TdExpansionPanelComponent,\n TdExpansionPanelHeaderDirective,\n TdExpansionPanelLabelDirective,\n TdExpansionPanelSublabelDirective,\n TdExpansionPanelSummaryComponent,\n} from './expansion-panel.component';\nimport { TdExpansionPanelGroupComponent } from './expansion-panel-group.component';\n\nconst TD_EXPANSION_PANEL: Type<any>[] = [\n TdExpansionPanelGroupComponent,\n TdExpansionPanelComponent,\n TdExpansionPanelHeaderDirective,\n TdExpansionPanelLabelDirective,\n TdExpansionPanelSublabelDirective,\n TdExpansionPanelSummaryComponent,\n];\n\n@NgModule({\n imports: [CommonModule, MatRippleModule, MatIconModule, PortalModule],\n declarations: [TD_EXPANSION_PANEL],\n exports: [TD_EXPANSION_PANEL],\n})\nexport class CovalentExpansionPanelModule {}\n"],"names":[],"mappings":"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"}
|
@@ -12,7 +12,8 @@ import { tap } from 'rxjs/operators';
|
|
12
12
|
|
13
13
|
/**
|
14
14
|
* @fileoverview added by tsickle
|
15
|
-
*
|
15
|
+
* Generated from: directives/file-select.directive.ts
|
16
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
16
17
|
*/
|
17
18
|
class TdFileSelectDirective {
|
18
19
|
/**
|
@@ -105,7 +106,8 @@ if (false) {
|
|
105
106
|
|
106
107
|
/**
|
107
108
|
* @fileoverview added by tsickle
|
108
|
-
*
|
109
|
+
* Generated from: directives/file-drop.directive.ts
|
110
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
109
111
|
*/
|
110
112
|
class TdFileDropBase {
|
111
113
|
}
|
@@ -291,7 +293,8 @@ if (false) {
|
|
291
293
|
|
292
294
|
/**
|
293
295
|
* @fileoverview added by tsickle
|
294
|
-
*
|
296
|
+
* Generated from: file-input/file-input.component.ts
|
297
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
295
298
|
*/
|
296
299
|
class TdFileInputLabelDirective extends TemplatePortalDirective {
|
297
300
|
/**
|
@@ -471,7 +474,8 @@ if (false) {
|
|
471
474
|
|
472
475
|
/**
|
473
476
|
* @fileoverview added by tsickle
|
474
|
-
*
|
477
|
+
* Generated from: file-upload/file-upload.component.ts
|
478
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
475
479
|
*/
|
476
480
|
class TdFileUploadBase {
|
477
481
|
/**
|
@@ -618,7 +622,7 @@ TdFileUploadComponent.decorators = [
|
|
618
622
|
selector: 'td-file-upload',
|
619
623
|
inputs: ['disabled', 'value'],
|
620
624
|
template: "<td-file-input\n *ngIf=\"!value\"\n [(ngModel)]=\"value\"\n [multiple]=\"multiple\"\n [disabled]=\"disabled\"\n [accept]=\"accept\"\n [color]=\"defaultColor\"\n (select)=\"handleSelect($event)\"\n>\n <ng-template [cdkPortalOutlet]=\"inputLabel\" [ngIf]=\"true\"></ng-template>\n</td-file-input>\n<div *ngIf=\"value\">\n <button\n #fileUpload\n class=\"td-file-upload\"\n mat-raised-button\n type=\"button\"\n [color]=\"activeColor\"\n (keyup.delete)=\"_cancel()\"\n (keyup.backspace)=\"_cancel()\"\n (keyup.escape)=\"_cancel()\"\n (click)=\"uploadPressed()\"\n >\n <ng-content></ng-content>\n </button>\n <button mat-icon-button type=\"button\" class=\"td-file-upload-cancel\" [color]=\"cancelColor\" (click)=\"_cancel()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n",
|
621
|
-
styles: [".td-file-upload{padding-left:8px;padding-right:8px}.td-file-upload-cancel{height:24px;
|
625
|
+
styles: [".td-file-upload{padding-left:8px;padding-right:8px}.td-file-upload-cancel{height:24px;left:-12px;position:relative;top:24px;width:24px}::ng-deep [dir=rtl] .td-file-upload-cancel{left:0;right:-12px}.td-file-upload-cancel mat-icon{border-radius:12px;vertical-align:baseline}.drop-zone{border-radius:3px}.drop-zone *{pointer-events:none}"]
|
622
626
|
}] }
|
623
627
|
];
|
624
628
|
/** @nocollapse */
|
@@ -702,7 +706,8 @@ if (false) {
|
|
702
706
|
|
703
707
|
/**
|
704
708
|
* @fileoverview added by tsickle
|
705
|
-
*
|
709
|
+
* Generated from: services/file.service.ts
|
710
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
706
711
|
*/
|
707
712
|
/**
|
708
713
|
* @record
|
@@ -806,7 +811,8 @@ if (false) {
|
|
806
811
|
|
807
812
|
/**
|
808
813
|
* @fileoverview added by tsickle
|
809
|
-
*
|
814
|
+
* Generated from: file.module.ts
|
815
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
810
816
|
*/
|
811
817
|
/** @type {?} */
|
812
818
|
const TD_FILE = [
|
@@ -829,17 +835,20 @@ CovalentFileModule.decorators = [
|
|
829
835
|
|
830
836
|
/**
|
831
837
|
* @fileoverview added by tsickle
|
832
|
-
*
|
838
|
+
* Generated from: public-api.ts
|
839
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
833
840
|
*/
|
834
841
|
|
835
842
|
/**
|
836
843
|
* @fileoverview added by tsickle
|
837
|
-
*
|
844
|
+
* Generated from: index.ts
|
845
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
838
846
|
*/
|
839
847
|
|
840
848
|
/**
|
841
849
|
* @fileoverview added by tsickle
|
842
|
-
*
|
850
|
+
* Generated from: covalent-core-file.ts
|
851
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
843
852
|
*/
|
844
853
|
|
845
854
|
export { CovalentFileModule, TdFileDropBase, TdFileDropDirective, TdFileInputBase, TdFileInputComponent, TdFileInputLabelDirective, TdFileSelectDirective, TdFileService, TdFileUploadBase, TdFileUploadComponent, _TdFileDropMixinBase, _TdFileInputMixinBase, _TdFileUploadMixinBase };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"covalent-core-file.js","sources":["ng://@covalent/core/file/directives/file-select.directive.ts","ng://@covalent/core/file/directives/file-drop.directive.ts","ng://@covalent/core/file/file-input/file-input.component.ts","ng://@covalent/core/file/file-upload/file-upload.component.ts","ng://@covalent/core/file/services/file.service.ts","ng://@covalent/core/file/file.module.ts"],"sourcesContent":["import { Directive, Input, Output, EventEmitter } from '@angular/core';\nimport { HostListener, HostBinding, Host, Optional } from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { NgModel } from '@angular/forms';\n\n@Directive({\n selector: '[tdFileSelect]',\n})\nexport class TdFileSelectDirective {\n private _multiple: boolean = false;\n\n /**\n * multiple?: boolean\n * Sets whether multiple files can be selected at once in host element, or just a single file.\n * Can also be 'multiple' native attribute.\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n\n /**\n * fileSelect?: function\n * Event emitted when a file or files are selected in host [HTMLInputElement].\n * Emits a [FileList | File] object.\n * Alternative to not use [(ngModel)].\n */\n @Output() fileSelect: EventEmitter<FileList | File> = new EventEmitter<FileList | File>();\n\n /**\n * Binds native 'multiple' attribute if [multiple] property is 'true'.\n */\n @HostBinding('attr.multiple')\n get multipleBinding(): string {\n return this._multiple ? '' : undefined;\n }\n\n constructor(@Optional() @Host() private model: NgModel) {}\n\n /**\n * Listens to 'change' host event to get [HTMLInputElement] files.\n * Emits the 'fileSelect' event with a [FileList] or [File] depending if 'multiple' attr exists in host.\n * Uses [(ngModel)] if declared, instead of emitting 'fileSelect' event.\n */\n @HostListener('change', ['$event'])\n onChange(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n const fileInputEl: HTMLInputElement = event.target;\n const files: FileList = fileInputEl.files;\n if (files.length) {\n const value: FileList | File = this._multiple ? (files.length > 1 ? files : files[0]) : files[0];\n this.model ? this.model.update.emit(value) : this.fileSelect.emit(value);\n }\n }\n }\n}\n","import { Directive, Input, Output, EventEmitter } from '@angular/core';\nimport { HostListener, HostBinding, ElementRef, Renderer2 } from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\n\nimport { ICanDisable, mixinDisabled } from '@covalent/core/common';\n\nexport class TdFileDropBase {}\n\n/* tslint:disable-next-line */\nexport const _TdFileDropMixinBase = mixinDisabled(TdFileDropBase);\n\n@Directive({\n selector: '[tdFileDrop]',\n inputs: ['disabled'],\n})\nexport class TdFileDropDirective extends _TdFileDropMixinBase implements ICanDisable {\n private _multiple: boolean = false;\n\n /**\n * multiple?: boolean\n * Sets whether multiple files can be dropped at once in host element, or just a single file.\n * Can also be 'multiple' native attribute.\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n\n /**\n * fileDrop?: function\n * Event emitted when a file or files are dropped in host element after being validated.\n * Emits a [FileList | File] object.\n */\n @Output() fileDrop: EventEmitter<FileList | File> = new EventEmitter<FileList | File>();\n\n /**\n * Binds native 'multiple' attribute if [multiple] property is 'true'.\n */\n @HostBinding('attr.multiple')\n get multipleBinding(): string {\n return this._multiple ? '' : undefined;\n }\n\n /**\n * Binds native 'disabled' attribute if [disabled] property is 'true'.\n */\n @HostBinding('attr.disabled')\n get disabledBinding(): string {\n return this.disabled ? '' : undefined;\n }\n\n constructor(private _renderer: Renderer2, private _element: ElementRef) {\n super();\n }\n\n /**\n * Listens to 'drop' host event to get validated transfer items.\n * Emits the 'fileDrop' event with a [FileList] or [File] depending if 'multiple' attr exists in host.\n * Stops event propagation and default action from browser for 'drop' event.\n */\n @HostListener('drop', ['$event'])\n onDrop(event: Event): void {\n if (!this.disabled) {\n const transfer: DataTransfer = (<DragEvent>event).dataTransfer;\n const files: FileList = transfer.files;\n if (files.length) {\n const value: FileList | File = this._multiple ? (files.length > 1 ? files : files[0]) : files[0];\n this.fileDrop.emit(value);\n }\n }\n this._renderer.removeClass(this._element.nativeElement, 'drop-zone');\n this._stopEvent(event);\n }\n\n /**\n * Listens to 'dragover' host event to validate transfer items.\n * Checks if 'multiple' attr exists in host to allow multiple file drops.\n * Stops event propagation and default action from browser for 'dragover' event.\n */\n @HostListener('dragover', ['$event'])\n onDragOver(event: Event): void {\n const transfer: DataTransfer = (<DragEvent>event).dataTransfer;\n transfer.dropEffect = this._typeCheck(transfer.types);\n if (\n this.disabled ||\n (!this._multiple && ((transfer.items && transfer.items.length > 1) || (<any>transfer).mozItemCount > 1))\n ) {\n transfer.dropEffect = 'none';\n } else {\n transfer.dropEffect = 'copy';\n }\n this._stopEvent(event);\n }\n\n /**\n * Listens to 'dragenter' host event to add animation class 'drop-zone' which can be overriden in host.\n * Stops event propagation and default action from browser for 'dragenter' event.\n */\n @HostListener('dragenter', ['$event'])\n onDragEnter(event: Event): void {\n if (!this.disabled) {\n this._renderer.addClass(this._element.nativeElement, 'drop-zone');\n }\n this._stopEvent(event);\n }\n\n /**\n * Listens to 'dragleave' host event to remove animation class 'drop-zone'.\n * Stops event propagation and default action from browser for 'dragleave' event.\n */\n @HostListener('dragleave', ['$event'])\n onDragLeave(event: Event): void {\n this._renderer.removeClass(this._element.nativeElement, 'drop-zone');\n this._stopEvent(event);\n }\n\n /**\n * Validates if the transfer item types are 'Files'.\n */\n private _typeCheck(types: ReadonlyArray<string> | DOMStringList): string {\n let dropEffect: string = 'none';\n if (\n types &&\n (((<any>types).contains && (<any>types).contains('Files')) ||\n ((<any>types).indexOf && (<any>types).indexOf('Files') !== -1))\n ) {\n dropEffect = 'copy';\n }\n\n return dropEffect;\n }\n\n private _stopEvent(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n }\n}\n","import {\n Component,\n Directive,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n ViewChild,\n ElementRef,\n Renderer2,\n TemplateRef,\n ViewContainerRef,\n ChangeDetectorRef,\n forwardRef,\n} from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { TemplatePortalDirective } from '@angular/cdk/portal';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\n\nimport { ICanDisable, mixinDisabled, IControlValueAccessor, mixinControlValueAccessor } from '@covalent/core/common';\n\n@Directive({\n selector: '[td-file-input-label]ng-template',\n})\nexport class TdFileInputLabelDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\nexport class TdFileInputBase {\n constructor(public _changeDetectorRef: ChangeDetectorRef) {}\n}\n\n/* tslint:disable-next-line */\nexport const _TdFileInputMixinBase = mixinControlValueAccessor(mixinDisabled(TdFileInputBase));\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TdFileInputComponent),\n multi: true,\n },\n ],\n selector: 'td-file-input',\n inputs: ['disabled', 'value'],\n styleUrls: ['./file-input.component.scss'],\n templateUrl: './file-input.component.html',\n})\nexport class TdFileInputComponent extends _TdFileInputMixinBase implements IControlValueAccessor, ICanDisable {\n private _multiple: boolean = false;\n\n /** The native `<input type=\"file\"> element */\n @ViewChild('fileInput', { static: true }) _inputElement: ElementRef;\n get inputElement(): HTMLInputElement {\n return this._inputElement.nativeElement;\n }\n\n /**\n * color?: 'accent' | 'primary' | 'warn'\n * Sets button color. Uses same color palette accepted as [MatButton].\n */\n @Input() color: 'accent' | 'primary' | 'warn';\n\n /**\n * multiple?: boolean\n * Sets if multiple files can be dropped/selected at once in [TdFileInputComponent].\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n get multiple(): boolean {\n return this._multiple;\n }\n\n /**\n * accept?: string\n * Sets files accepted when opening the file browser dialog.\n * Same as 'accept' attribute in <input/> element.\n */\n @Input() accept: string;\n\n /**\n * select?: function\n * Event emitted a file is selected\n * Emits a [File | FileList] object.\n */\n @Output() select: EventEmitter<File | FileList> = new EventEmitter<File | FileList>();\n\n constructor(private _renderer: Renderer2, _changeDetectorRef: ChangeDetectorRef) {\n super(_changeDetectorRef);\n }\n\n /**\n * Method executed when a file is selected.\n */\n handleSelect(files: File | FileList): void {\n this.writeValue(files);\n this.select.emit(files);\n }\n\n /**\n * Used to clear the selected files from the [TdFileInputComponent].\n */\n clear(): void {\n this.writeValue(undefined);\n this._renderer.setProperty(this.inputElement, 'value', '');\n }\n\n /** Method executed when the disabled value changes */\n onDisabledChange(v: boolean): void {\n if (v) {\n this.clear();\n }\n }\n /**\n * Sets disable to the component. Implemented as part of ControlValueAccessor.\n */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n ViewChild,\n ContentChild,\n ChangeDetectorRef,\n forwardRef,\n} from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { ICanDisable, mixinDisabled, IControlValueAccessor, mixinControlValueAccessor } from '@covalent/core/common';\nimport { TdFileInputComponent, TdFileInputLabelDirective } from '../file-input/file-input.component';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\n\nexport class TdFileUploadBase {\n constructor(public _changeDetectorRef: ChangeDetectorRef) {}\n}\n\n/* tslint:disable-next-line */\nexport const _TdFileUploadMixinBase = mixinControlValueAccessor(mixinDisabled(TdFileUploadBase));\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TdFileUploadComponent),\n multi: true,\n },\n ],\n selector: 'td-file-upload',\n inputs: ['disabled', 'value'],\n styleUrls: ['./file-upload.component.scss'],\n templateUrl: './file-upload.component.html',\n})\nexport class TdFileUploadComponent extends _TdFileUploadMixinBase implements IControlValueAccessor, ICanDisable {\n private _multiple: boolean = false;\n private _required: boolean = false;\n\n @ViewChild(TdFileInputComponent) fileInput: TdFileInputComponent;\n\n @ContentChild(TdFileInputLabelDirective) inputLabel: TdFileInputLabelDirective;\n\n /**\n * defaultColor?: 'accent' | 'primary' | 'warn'\n * Sets browse button color. Uses same color palette accepted as [MatButton] and defaults to 'primary'.\n */\n @Input() defaultColor: 'accent' | 'primary' | 'warn' = 'primary';\n\n /**\n * activeColor?: 'accent' | 'primary' | 'warn'\n * Sets upload button color. Uses same color palette accepted as [MatButton] and defaults to 'accent'.\n */\n @Input() activeColor: 'accent' | 'primary' | 'warn' = 'accent';\n\n /**\n * cancelColor?: 'accent' | 'primary' | 'warn'\n * Sets cancel button color. Uses same color palette accepted as [MatButton] and defaults to 'warn'.\n */\n @Input() cancelColor: 'accent' | 'primary' | 'warn' = 'warn';\n\n /**\n * multiple?: boolean\n * Sets if multiple files can be dropped/selected at once in [TdFileUploadComponent].\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n get multiple(): boolean {\n return this._multiple;\n }\n\n /**\n * required?: boolean\n * Forces at least one file upload.\n * Defaults to 'false'\n */\n @Input('required')\n set required(required: boolean) {\n this._required = coerceBooleanProperty(required);\n }\n get required(): boolean {\n return this._required;\n }\n\n /**\n * accept?: string\n * Sets files accepted when opening the file browser dialog.\n * Same as 'accept' attribute in <input/> element.\n */\n @Input() accept: string;\n\n /**\n * select?: function\n * Event emitted when a file is selected.\n * Emits a [File | FileList] object.\n */\n @Output() select: EventEmitter<File | FileList> = new EventEmitter<File | FileList>();\n\n /**\n * upload?: function\n * Event emitted when upload button is clicked.\n * Emits a [File | FileList] object.\n */\n @Output() upload: EventEmitter<File | FileList> = new EventEmitter<File | FileList>();\n\n /**\n * cancel?: function\n * Event emitted when cancel button is clicked.\n */\n @Output() cancel: EventEmitter<void> = new EventEmitter<void>();\n\n constructor(_changeDetectorRef: ChangeDetectorRef) {\n super(_changeDetectorRef);\n }\n\n /**\n * Method executed when upload button is clicked.\n */\n uploadPressed(): void {\n if (this.value) {\n this.upload.emit(this.value);\n }\n }\n\n /**\n * Method executed when a file is selected.\n */\n handleSelect(value: File | FileList): void {\n this.value = value;\n this.select.emit(value);\n }\n\n /**\n * Methods executed when cancel button is clicked.\n * Clears files.\n */\n _cancel(): void {\n this.value = undefined;\n this.cancel.emit();\n // check if the file input is rendered before clearing it\n if (this.fileInput) {\n this.fileInput.clear();\n }\n }\n\n /** Method executed when the disabled value changes */\n onDisabledChange(v: boolean): void {\n if (v) {\n this._cancel();\n }\n }\n}\n","import { Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpEvent, HttpEventType, HttpHeaders, HttpParams } from '@angular/common/http';\nimport { Observable, Subject, Subscriber } from 'rxjs';\nimport { tap } from 'rxjs/operators';\n\nexport interface IUploadExtras {\n headers?: { [name: string]: string | string[] };\n params?: { [param: string]: string | string[] };\n}\n\n@Injectable()\nexport class TdFileService {\n private _progressSubject: Subject<number> = new Subject<number>();\n private _progressObservable: Observable<number>;\n\n /**\n * Gets progress observable to keep track of the files being uploaded.\n * Needs to be supported by backend.\n */\n get progress(): Observable<number> {\n return this._progressObservable;\n }\n\n /**\n * Creates a new instance\n * @param _http the http client instance\n * @breaking-change 3.0.0 remove 'Optional' decorator once the legay upload method is removed\n */\n constructor(@Optional() private readonly _http: HttpClient) {\n this._progressObservable = this._progressSubject.asObservable();\n }\n\n /**\n * Uploads a file to a URL.\n */\n send(\n url: string,\n method: string,\n body: File | FormData,\n { headers, params }: IUploadExtras = {},\n ): Observable<HttpEvent<any>> {\n if (!this._http) {\n throw new Error('The HttpClient module needs to be imported at root module level');\n }\n const req: HttpRequest<File | FormData> = new HttpRequest(method.toUpperCase(), url, body, {\n reportProgress: true,\n headers: new HttpHeaders(headers || {}),\n params: new HttpParams({ fromObject: params || {} }),\n });\n return this._http.request(req).pipe(tap((event: HttpEvent<any>) => this.handleEvent(event)));\n }\n\n private handleEvent<T = any>(event: HttpEvent<T>): void {\n switch (event.type) {\n case HttpEventType.Sent:\n this._progressSubject.next(0);\n break;\n case HttpEventType.UploadProgress:\n this._progressSubject.next(Math.round((100 * event.loaded) / event.total));\n break;\n case HttpEventType.Response:\n this._progressSubject.next(100);\n break;\n default:\n break;\n }\n }\n}\n","import { Type } from '@angular/core';\nimport { NgModule } from '@angular/core';\n\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { PortalModule } from '@angular/cdk/portal';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\n\nimport { TdFileSelectDirective } from './directives/file-select.directive';\nimport { TdFileDropDirective } from './directives/file-drop.directive';\nimport { TdFileUploadComponent } from './file-upload/file-upload.component';\nimport { TdFileInputComponent, TdFileInputLabelDirective } from './file-input/file-input.component';\nimport { TdFileService } from './services/file.service';\n\nconst TD_FILE: Type<any>[] = [\n TdFileSelectDirective,\n TdFileDropDirective,\n TdFileUploadComponent,\n TdFileInputComponent,\n TdFileInputLabelDirective,\n];\n\n@NgModule({\n imports: [FormsModule, CommonModule, MatIconModule, MatButtonModule, PortalModule],\n declarations: [TD_FILE],\n exports: [TD_FILE],\n providers: [TdFileService],\n})\nexport class CovalentFileModule {}\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"covalent-core-file.js","sources":["../../../src/platform/core/file/directives/file-select.directive.ts","../../../src/platform/core/file/directives/file-drop.directive.ts","../../../src/platform/core/file/file-input/file-input.component.ts","../../../src/platform/core/file/file-upload/file-upload.component.ts","../../../src/platform/core/file/services/file.service.ts","../../../../src/platform/core/file/file.module.ts"],"sourcesContent":["import { Directive, Input, Output, EventEmitter } from '@angular/core';\nimport { HostListener, HostBinding, Host, Optional } from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { NgModel } from '@angular/forms';\n\n@Directive({\n selector: '[tdFileSelect]',\n})\nexport class TdFileSelectDirective {\n private _multiple: boolean = false;\n\n /**\n * multiple?: boolean\n * Sets whether multiple files can be selected at once in host element, or just a single file.\n * Can also be 'multiple' native attribute.\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n\n /**\n * fileSelect?: function\n * Event emitted when a file or files are selected in host [HTMLInputElement].\n * Emits a [FileList | File] object.\n * Alternative to not use [(ngModel)].\n */\n @Output() fileSelect: EventEmitter<FileList | File> = new EventEmitter<FileList | File>();\n\n /**\n * Binds native 'multiple' attribute if [multiple] property is 'true'.\n */\n @HostBinding('attr.multiple')\n get multipleBinding(): string {\n return this._multiple ? '' : undefined;\n }\n\n constructor(@Optional() @Host() private model: NgModel) {}\n\n /**\n * Listens to 'change' host event to get [HTMLInputElement] files.\n * Emits the 'fileSelect' event with a [FileList] or [File] depending if 'multiple' attr exists in host.\n * Uses [(ngModel)] if declared, instead of emitting 'fileSelect' event.\n */\n @HostListener('change', ['$event'])\n onChange(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n const fileInputEl: HTMLInputElement = event.target;\n const files: FileList = fileInputEl.files;\n if (files.length) {\n const value: FileList | File = this._multiple ? (files.length > 1 ? files : files[0]) : files[0];\n this.model ? this.model.update.emit(value) : this.fileSelect.emit(value);\n }\n }\n }\n}\n","import { Directive, Input, Output, EventEmitter } from '@angular/core';\nimport { HostListener, HostBinding, ElementRef, Renderer2 } from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\n\nimport { ICanDisable, mixinDisabled } from '@covalent/core/common';\n\nexport class TdFileDropBase {}\n\n/* tslint:disable-next-line */\nexport const _TdFileDropMixinBase = mixinDisabled(TdFileDropBase);\n\n@Directive({\n selector: '[tdFileDrop]',\n inputs: ['disabled'],\n})\nexport class TdFileDropDirective extends _TdFileDropMixinBase implements ICanDisable {\n private _multiple: boolean = false;\n\n /**\n * multiple?: boolean\n * Sets whether multiple files can be dropped at once in host element, or just a single file.\n * Can also be 'multiple' native attribute.\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n\n /**\n * fileDrop?: function\n * Event emitted when a file or files are dropped in host element after being validated.\n * Emits a [FileList | File] object.\n */\n @Output() fileDrop: EventEmitter<FileList | File> = new EventEmitter<FileList | File>();\n\n /**\n * Binds native 'multiple' attribute if [multiple] property is 'true'.\n */\n @HostBinding('attr.multiple')\n get multipleBinding(): string {\n return this._multiple ? '' : undefined;\n }\n\n /**\n * Binds native 'disabled' attribute if [disabled] property is 'true'.\n */\n @HostBinding('attr.disabled')\n get disabledBinding(): string {\n return this.disabled ? '' : undefined;\n }\n\n constructor(private _renderer: Renderer2, private _element: ElementRef) {\n super();\n }\n\n /**\n * Listens to 'drop' host event to get validated transfer items.\n * Emits the 'fileDrop' event with a [FileList] or [File] depending if 'multiple' attr exists in host.\n * Stops event propagation and default action from browser for 'drop' event.\n */\n @HostListener('drop', ['$event'])\n onDrop(event: Event): void {\n if (!this.disabled) {\n const transfer: DataTransfer = (<DragEvent>event).dataTransfer;\n const files: FileList = transfer.files;\n if (files.length) {\n const value: FileList | File = this._multiple ? (files.length > 1 ? files : files[0]) : files[0];\n this.fileDrop.emit(value);\n }\n }\n this._renderer.removeClass(this._element.nativeElement, 'drop-zone');\n this._stopEvent(event);\n }\n\n /**\n * Listens to 'dragover' host event to validate transfer items.\n * Checks if 'multiple' attr exists in host to allow multiple file drops.\n * Stops event propagation and default action from browser for 'dragover' event.\n */\n @HostListener('dragover', ['$event'])\n onDragOver(event: Event): void {\n const transfer: DataTransfer = (<DragEvent>event).dataTransfer;\n transfer.dropEffect = this._typeCheck(transfer.types);\n if (\n this.disabled ||\n (!this._multiple && ((transfer.items && transfer.items.length > 1) || (<any>transfer).mozItemCount > 1))\n ) {\n transfer.dropEffect = 'none';\n } else {\n transfer.dropEffect = 'copy';\n }\n this._stopEvent(event);\n }\n\n /**\n * Listens to 'dragenter' host event to add animation class 'drop-zone' which can be overriden in host.\n * Stops event propagation and default action from browser for 'dragenter' event.\n */\n @HostListener('dragenter', ['$event'])\n onDragEnter(event: Event): void {\n if (!this.disabled) {\n this._renderer.addClass(this._element.nativeElement, 'drop-zone');\n }\n this._stopEvent(event);\n }\n\n /**\n * Listens to 'dragleave' host event to remove animation class 'drop-zone'.\n * Stops event propagation and default action from browser for 'dragleave' event.\n */\n @HostListener('dragleave', ['$event'])\n onDragLeave(event: Event): void {\n this._renderer.removeClass(this._element.nativeElement, 'drop-zone');\n this._stopEvent(event);\n }\n\n /**\n * Validates if the transfer item types are 'Files'.\n */\n private _typeCheck(types: ReadonlyArray<string> | DOMStringList): string {\n let dropEffect: string = 'none';\n if (\n types &&\n (((<any>types).contains && (<any>types).contains('Files')) ||\n ((<any>types).indexOf && (<any>types).indexOf('Files') !== -1))\n ) {\n dropEffect = 'copy';\n }\n\n return dropEffect;\n }\n\n private _stopEvent(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n }\n}\n","import {\n Component,\n Directive,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n ViewChild,\n ElementRef,\n Renderer2,\n TemplateRef,\n ViewContainerRef,\n ChangeDetectorRef,\n forwardRef,\n} from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { TemplatePortalDirective } from '@angular/cdk/portal';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\n\nimport { ICanDisable, mixinDisabled, IControlValueAccessor, mixinControlValueAccessor } from '@covalent/core/common';\n\n@Directive({\n selector: '[td-file-input-label]ng-template',\n})\nexport class TdFileInputLabelDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\nexport class TdFileInputBase {\n constructor(public _changeDetectorRef: ChangeDetectorRef) {}\n}\n\n/* tslint:disable-next-line */\nexport const _TdFileInputMixinBase = mixinControlValueAccessor(mixinDisabled(TdFileInputBase));\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TdFileInputComponent),\n multi: true,\n },\n ],\n selector: 'td-file-input',\n inputs: ['disabled', 'value'],\n styleUrls: ['./file-input.component.scss'],\n templateUrl: './file-input.component.html',\n})\nexport class TdFileInputComponent extends _TdFileInputMixinBase implements IControlValueAccessor, ICanDisable {\n private _multiple: boolean = false;\n\n /** The native `<input type=\"file\"> element */\n @ViewChild('fileInput', { static: true }) _inputElement: ElementRef;\n get inputElement(): HTMLInputElement {\n return this._inputElement.nativeElement;\n }\n\n /**\n * color?: 'accent' | 'primary' | 'warn'\n * Sets button color. Uses same color palette accepted as [MatButton].\n */\n @Input() color: 'accent' | 'primary' | 'warn';\n\n /**\n * multiple?: boolean\n * Sets if multiple files can be dropped/selected at once in [TdFileInputComponent].\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n get multiple(): boolean {\n return this._multiple;\n }\n\n /**\n * accept?: string\n * Sets files accepted when opening the file browser dialog.\n * Same as 'accept' attribute in <input/> element.\n */\n @Input() accept: string;\n\n /**\n * select?: function\n * Event emitted a file is selected\n * Emits a [File | FileList] object.\n */\n @Output() select: EventEmitter<File | FileList> = new EventEmitter<File | FileList>();\n\n constructor(private _renderer: Renderer2, _changeDetectorRef: ChangeDetectorRef) {\n super(_changeDetectorRef);\n }\n\n /**\n * Method executed when a file is selected.\n */\n handleSelect(files: File | FileList): void {\n this.writeValue(files);\n this.select.emit(files);\n }\n\n /**\n * Used to clear the selected files from the [TdFileInputComponent].\n */\n clear(): void {\n this.writeValue(undefined);\n this._renderer.setProperty(this.inputElement, 'value', '');\n }\n\n /** Method executed when the disabled value changes */\n onDisabledChange(v: boolean): void {\n if (v) {\n this.clear();\n }\n }\n /**\n * Sets disable to the component. Implemented as part of ControlValueAccessor.\n */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n ViewChild,\n ContentChild,\n ChangeDetectorRef,\n forwardRef,\n} from '@angular/core';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { ICanDisable, mixinDisabled, IControlValueAccessor, mixinControlValueAccessor } from '@covalent/core/common';\nimport { TdFileInputComponent, TdFileInputLabelDirective } from '../file-input/file-input.component';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\n\nexport class TdFileUploadBase {\n constructor(public _changeDetectorRef: ChangeDetectorRef) {}\n}\n\n/* tslint:disable-next-line */\nexport const _TdFileUploadMixinBase = mixinControlValueAccessor(mixinDisabled(TdFileUploadBase));\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TdFileUploadComponent),\n multi: true,\n },\n ],\n selector: 'td-file-upload',\n inputs: ['disabled', 'value'],\n styleUrls: ['./file-upload.component.scss'],\n templateUrl: './file-upload.component.html',\n})\nexport class TdFileUploadComponent extends _TdFileUploadMixinBase implements IControlValueAccessor, ICanDisable {\n private _multiple: boolean = false;\n private _required: boolean = false;\n\n @ViewChild(TdFileInputComponent) fileInput: TdFileInputComponent;\n\n @ContentChild(TdFileInputLabelDirective) inputLabel: TdFileInputLabelDirective;\n\n /**\n * defaultColor?: 'accent' | 'primary' | 'warn'\n * Sets browse button color. Uses same color palette accepted as [MatButton] and defaults to 'primary'.\n */\n @Input() defaultColor: 'accent' | 'primary' | 'warn' = 'primary';\n\n /**\n * activeColor?: 'accent' | 'primary' | 'warn'\n * Sets upload button color. Uses same color palette accepted as [MatButton] and defaults to 'accent'.\n */\n @Input() activeColor: 'accent' | 'primary' | 'warn' = 'accent';\n\n /**\n * cancelColor?: 'accent' | 'primary' | 'warn'\n * Sets cancel button color. Uses same color palette accepted as [MatButton] and defaults to 'warn'.\n */\n @Input() cancelColor: 'accent' | 'primary' | 'warn' = 'warn';\n\n /**\n * multiple?: boolean\n * Sets if multiple files can be dropped/selected at once in [TdFileUploadComponent].\n */\n @Input('multiple')\n set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n get multiple(): boolean {\n return this._multiple;\n }\n\n /**\n * required?: boolean\n * Forces at least one file upload.\n * Defaults to 'false'\n */\n @Input('required')\n set required(required: boolean) {\n this._required = coerceBooleanProperty(required);\n }\n get required(): boolean {\n return this._required;\n }\n\n /**\n * accept?: string\n * Sets files accepted when opening the file browser dialog.\n * Same as 'accept' attribute in <input/> element.\n */\n @Input() accept: string;\n\n /**\n * select?: function\n * Event emitted when a file is selected.\n * Emits a [File | FileList] object.\n */\n @Output() select: EventEmitter<File | FileList> = new EventEmitter<File | FileList>();\n\n /**\n * upload?: function\n * Event emitted when upload button is clicked.\n * Emits a [File | FileList] object.\n */\n @Output() upload: EventEmitter<File | FileList> = new EventEmitter<File | FileList>();\n\n /**\n * cancel?: function\n * Event emitted when cancel button is clicked.\n */\n @Output() cancel: EventEmitter<void> = new EventEmitter<void>();\n\n constructor(_changeDetectorRef: ChangeDetectorRef) {\n super(_changeDetectorRef);\n }\n\n /**\n * Method executed when upload button is clicked.\n */\n uploadPressed(): void {\n if (this.value) {\n this.upload.emit(this.value);\n }\n }\n\n /**\n * Method executed when a file is selected.\n */\n handleSelect(value: File | FileList): void {\n this.value = value;\n this.select.emit(value);\n }\n\n /**\n * Methods executed when cancel button is clicked.\n * Clears files.\n */\n _cancel(): void {\n this.value = undefined;\n this.cancel.emit();\n // check if the file input is rendered before clearing it\n if (this.fileInput) {\n this.fileInput.clear();\n }\n }\n\n /** Method executed when the disabled value changes */\n onDisabledChange(v: boolean): void {\n if (v) {\n this._cancel();\n }\n }\n}\n","import { Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpEvent, HttpEventType, HttpHeaders, HttpParams } from '@angular/common/http';\nimport { Observable, Subject, Subscriber } from 'rxjs';\nimport { tap } from 'rxjs/operators';\n\nexport interface IUploadExtras {\n headers?: { [name: string]: string | string[] };\n params?: { [param: string]: string | string[] };\n}\n\n@Injectable()\nexport class TdFileService {\n private _progressSubject: Subject<number> = new Subject<number>();\n private _progressObservable: Observable<number>;\n\n /**\n * Gets progress observable to keep track of the files being uploaded.\n * Needs to be supported by backend.\n */\n get progress(): Observable<number> {\n return this._progressObservable;\n }\n\n /**\n * Creates a new instance\n * @param _http the http client instance\n * @breaking-change 3.0.0 remove 'Optional' decorator once the legay upload method is removed\n */\n constructor(@Optional() private readonly _http: HttpClient) {\n this._progressObservable = this._progressSubject.asObservable();\n }\n\n /**\n * Uploads a file to a URL.\n */\n send(\n url: string,\n method: string,\n body: File | FormData,\n { headers, params }: IUploadExtras = {},\n ): Observable<HttpEvent<any>> {\n if (!this._http) {\n throw new Error('The HttpClient module needs to be imported at root module level');\n }\n const req: HttpRequest<File | FormData> = new HttpRequest(method.toUpperCase(), url, body, {\n reportProgress: true,\n headers: new HttpHeaders(headers || {}),\n params: new HttpParams({ fromObject: params || {} }),\n });\n return this._http.request(req).pipe(tap((event: HttpEvent<any>) => this.handleEvent(event)));\n }\n\n private handleEvent<T = any>(event: HttpEvent<T>): void {\n switch (event.type) {\n case HttpEventType.Sent:\n this._progressSubject.next(0);\n break;\n case HttpEventType.UploadProgress:\n this._progressSubject.next(Math.round((100 * event.loaded) / event.total));\n break;\n case HttpEventType.Response:\n this._progressSubject.next(100);\n break;\n default:\n break;\n }\n }\n}\n","import { Type } from '@angular/core';\nimport { NgModule } from '@angular/core';\n\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { PortalModule } from '@angular/cdk/portal';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\n\nimport { TdFileSelectDirective } from './directives/file-select.directive';\nimport { TdFileDropDirective } from './directives/file-drop.directive';\nimport { TdFileUploadComponent } from './file-upload/file-upload.component';\nimport { TdFileInputComponent, TdFileInputLabelDirective } from './file-input/file-input.component';\nimport { TdFileService } from './services/file.service';\n\nconst TD_FILE: Type<any>[] = [\n TdFileSelectDirective,\n TdFileDropDirective,\n TdFileUploadComponent,\n TdFileInputComponent,\n TdFileInputLabelDirective,\n];\n\n@NgModule({\n imports: [FormsModule, CommonModule, MatIconModule, MatButtonModule, PortalModule],\n declarations: [TD_FILE],\n exports: [TD_FILE],\n providers: [TdFileService],\n})\nexport class CovalentFileModule {}\n"],"names":[],"mappings":"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"}
|
@@ -7,7 +7,8 @@ import { tdCollapseAnimation } from '@covalent/core/common';
|
|
7
7
|
|
8
8
|
/**
|
9
9
|
* @fileoverview added by tsickle
|
10
|
-
*
|
10
|
+
* Generated from: json-formatter.component.ts
|
11
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
11
12
|
*/
|
12
13
|
class TdJsonFormatterComponent {
|
13
14
|
/**
|
@@ -270,7 +271,7 @@ TdJsonFormatterComponent.decorators = [
|
|
270
271
|
selector: 'td-json-formatter',
|
271
272
|
template: "<div class=\"td-json-formatter-wrapper\">\n <a\n class=\"td-key\"\n [class.td-key-node]=\"hasChildren()\"\n [class.td-key-leaf]=\"!hasChildren()\"\n [tabIndex]=\"isObject() ? 0 : -1\"\n (keydown.enter)=\"toggle()\"\n (click)=\"toggle()\"\n >\n <mat-icon class=\"td-node-icon\" *ngIf=\"hasChildren()\">\n {{ open ? 'keyboard_arrow_down' : isRTL ? 'keyboard_arrow_left' : 'keyboard_arrow_right' }}\n </mat-icon>\n <span *ngIf=\"key\" class=\"key\">{{ key }}:</span>\n <span class=\"value\">\n <span [class.td-empty]=\"!hasChildren()\" *ngIf=\"isObject()\" [matTooltip]=\"getPreview()\" matTooltipPosition=\"after\">\n <span class=\"td-object-name\">{{ getObjectName() }}</span>\n <span class=\"td-array-length\" *ngIf=\"isArray()\">[{{ data.length }}]</span>\n </span>\n <span *ngIf=\"!isObject()\" [class]=\"getType(data)\">{{ getValue(data) }}</span>\n </span>\n </a>\n <div class=\"td-object-children\" [@tdCollapse]=\"!(hasChildren() && open)\">\n <ng-template let-key ngFor [ngForOf]=\"children\">\n <td-json-formatter [key]=\"key\" [data]=\"data[key]\" [levelsOpen]=\"levelsOpen - 1\"></td-json-formatter>\n </ng-template>\n </div>\n</div>\n",
|
272
273
|
animations: [tdCollapseAnimation],
|
273
|
-
styles: [":host{display:block}.td-json-formatter-wrapper{padding-
|
274
|
+
styles: [":host{display:block}.td-json-formatter-wrapper{padding-bottom:2px;padding-top:2px}.td-json-formatter-wrapper .td-key{-ms-flex-align:start;-ms-flex-direction:row;-ms-flex-line-pack:center;-ms-flex-pack:start;align-content:center;align-items:flex-start;box-sizing:border-box;display:-ms-flexbox;display:flex;flex-direction:row;justify-content:flex-start;max-width:100%}.td-json-formatter-wrapper .td-key.td-key-node:hover{cursor:pointer}.td-json-formatter-wrapper .td-object-children.ng-animating{overflow:hidden}.td-json-formatter-wrapper .td-object-children .td-key,.td-json-formatter-wrapper .td-object-children .td-object-children{padding-left:24px}::ng-deep [dir=rtl] .td-json-formatter-wrapper .td-object-children .td-key,::ng-deep [dir=rtl] .td-json-formatter-wrapper .td-object-children .td-object-children{padding-left:0;padding-right:24px}.td-json-formatter-wrapper .td-object-children .td-key.td-key-leaf,.td-json-formatter-wrapper .td-object-children .td-object-children.td-key-leaf{padding-left:48px}::ng-deep [dir=rtl] .td-json-formatter-wrapper .td-object-children .td-key.td-key-leaf,::ng-deep [dir=rtl] .td-json-formatter-wrapper .td-object-children .td-object-children.td-key-leaf{padding-left:0;padding-right:48px}.td-json-formatter-wrapper .value{margin-left:5px}::ng-deep [dir=rtl] .td-json-formatter-wrapper .value{padding-left:0;padding-right:5px}.td-json-formatter-wrapper .value .td-empty{opacity:.5;text-decoration:line-through}.td-json-formatter-wrapper .value .date,.td-json-formatter-wrapper .value .string{word-break:break-word}"]
|
274
275
|
}] }
|
275
276
|
];
|
276
277
|
/** @nocollapse */
|
@@ -341,7 +342,8 @@ if (false) {
|
|
341
342
|
|
342
343
|
/**
|
343
344
|
* @fileoverview added by tsickle
|
344
|
-
*
|
345
|
+
* Generated from: json-formatter.module.ts
|
346
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
345
347
|
*/
|
346
348
|
class CovalentJsonFormatterModule {
|
347
349
|
}
|
@@ -355,17 +357,20 @@ CovalentJsonFormatterModule.decorators = [
|
|
355
357
|
|
356
358
|
/**
|
357
359
|
* @fileoverview added by tsickle
|
358
|
-
*
|
360
|
+
* Generated from: public-api.ts
|
361
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
359
362
|
*/
|
360
363
|
|
361
364
|
/**
|
362
365
|
* @fileoverview added by tsickle
|
363
|
-
*
|
366
|
+
* Generated from: index.ts
|
367
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
364
368
|
*/
|
365
369
|
|
366
370
|
/**
|
367
371
|
* @fileoverview added by tsickle
|
368
|
-
*
|
372
|
+
* Generated from: covalent-core-json-formatter.ts
|
373
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
369
374
|
*/
|
370
375
|
|
371
376
|
export { CovalentJsonFormatterModule, TdJsonFormatterComponent };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"covalent-core-json-formatter.js","sources":["ng://@covalent/core/json-formatter/json-formatter.component.ts","ng://@covalent/core/json-formatter/json-formatter.module.ts"],"sourcesContent":["import { Component, Input, ChangeDetectionStrategy, ChangeDetectorRef, Optional } from '@angular/core';\nimport { Dir } from '@angular/cdk/bidi';\nimport { tdCollapseAnimation } from '@covalent/core/common';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'td-json-formatter',\n styleUrls: ['./json-formatter.component.scss'],\n templateUrl: './json-formatter.component.html',\n animations: [tdCollapseAnimation],\n})\nexport class TdJsonFormatterComponent {\n /**\n * Max length for property names. Any names bigger than this get trunctated.\n */\n private static KEY_MAX_LENGTH: number = 30;\n\n /**\n * Max length for preview string. Any names bigger than this get trunctated.\n */\n private static PREVIEW_STRING_MAX_LENGTH: number = 80;\n\n /**\n * Max tooltip preview elements.\n */\n private static PREVIEW_LIMIT: number = 5;\n\n private _key: string;\n private _data: any;\n private _children: string[];\n private _open: boolean = false;\n private _levelsOpen: number = 0;\n\n /**\n * levelsOpen?: number\n * Levels opened by default when JS object is formatted and rendered.\n */\n @Input('levelsOpen')\n set levelsOpen(levelsOpen: number) {\n if (!Number.isInteger(levelsOpen)) {\n throw new Error('[levelsOpen] needs to be an integer.');\n }\n this._levelsOpen = levelsOpen;\n this._open = levelsOpen > 0;\n }\n get levelsOpen(): number {\n return this._levelsOpen;\n }\n\n get open(): boolean {\n return this._open;\n }\n\n /**\n * key?: string\n * Tag to be displayed next to formatted object.\n */\n @Input('key')\n set key(key: string) {\n this._key = key;\n }\n get key(): string {\n const elipsis: string = this._key && this._key.length > TdJsonFormatterComponent.KEY_MAX_LENGTH ? 'â¦' : '';\n return this._key ? this._key.substring(0, TdJsonFormatterComponent.KEY_MAX_LENGTH) + elipsis : this._key;\n }\n\n /**\n * data: any\n * JS object to be formatted.\n */\n @Input('data')\n set data(data: any) {\n this._data = data;\n this.parseChildren();\n }\n get data(): any {\n return this._data;\n }\n\n get children(): string[] {\n return this._children;\n }\n\n get isRTL(): boolean {\n if (this._dir) {\n return this._dir.dir === 'rtl';\n }\n return false;\n }\n\n constructor(private _changeDetectorRef: ChangeDetectorRef, @Optional() private _dir: Dir) {}\n\n /**\n * Refreshes json-formatter and rerenders [data]\n */\n refresh(): void {\n this._changeDetectorRef.markForCheck();\n }\n\n /**\n * Toggles collapse/expanded state of component.\n */\n toggle(): void {\n this._open = !this._open;\n }\n\n isObject(): boolean {\n return this.getType(this._data) === 'object';\n }\n\n isArray(): boolean {\n return Array.isArray(this._data);\n }\n\n hasChildren(): boolean {\n return this._children && this._children.length > 0;\n }\n\n /**\n * Gets parsed value depending on value type.\n */\n getValue(value: any): string {\n const type: string = this.getType(value);\n if (type === 'undefined' || type === 'null') {\n return type;\n } else if (type === 'date') {\n value = new Date(value).toString();\n } else if (type === 'string') {\n value = '\"' + value + '\"';\n } else if (type === 'function') {\n // Remove content of the function\n return (\n value\n .toString()\n .replace(/[\\r\\n]/g, '')\n .replace(/\\{.*\\}/, '') + '{â¦}'\n );\n } else if (Array.isArray(value)) {\n return this.getObjectName() + ' [' + value.length + ']';\n }\n return value;\n }\n\n /**\n * Gets type of object.\n * returns 'null' if object is null and 'date' if value is object and can be parsed to a date.\n */\n getType(object: any): string {\n if (typeof object === 'object') {\n if (!object) {\n return 'null';\n }\n if (Array.isArray(object)) {\n return 'object';\n }\n const date: Date = new Date(object);\n if (Object.prototype.toString.call(date) === '[object Date]' && !Number.isNaN(date.getTime())) {\n return 'date';\n }\n }\n return typeof object;\n }\n\n /**\n * Generates string representation depending if its an object or function.\n * see: http://stackoverflow.com/a/332429\n */\n getObjectName(): string {\n const object: any = this._data;\n if (this.isObject() && !object.constructor) {\n return 'Object';\n }\n const funcNameRegex: RegExp = /function (.{1,})\\(/;\n const results: RegExpExecArray = funcNameRegex.exec(object.constructor.toString());\n if (results && results.length > 1) {\n return results[1];\n } else {\n return '';\n }\n }\n\n /**\n * Creates preview of nodes children to render in tooltip depending if its an array or an object.\n */\n getPreview(): string {\n let previewData: string[];\n let startChar: string = '{ ';\n let endChar: string = ' }';\n if (this.isArray()) {\n const previewArray: any[] = this._data.slice(0, TdJsonFormatterComponent.PREVIEW_LIMIT);\n previewData = previewArray.map((obj: any) => {\n return this.getValue(obj);\n });\n startChar = '[';\n endChar = ']';\n } else {\n const previewKeys: string[] = this._children.slice(0, TdJsonFormatterComponent.PREVIEW_LIMIT);\n previewData = previewKeys.map((key: string) => {\n return key + ': ' + this.getValue(this._data[key]);\n });\n }\n const previewString: string = previewData.join(', ');\n const ellipsis: string =\n previewData.length >= TdJsonFormatterComponent.PREVIEW_LIMIT ||\n previewString.length > TdJsonFormatterComponent.PREVIEW_STRING_MAX_LENGTH\n ? 'â¦'\n : '';\n return (\n startChar + previewString.substring(0, TdJsonFormatterComponent.PREVIEW_STRING_MAX_LENGTH) + ellipsis + endChar\n );\n }\n\n private parseChildren(): void {\n if (this.isObject()) {\n this._children = Object.keys(this._data);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { TdJsonFormatterComponent } from './json-formatter.component';\n\n@NgModule({\n imports: [CommonModule, MatTooltipModule, MatIconModule],\n declarations: [TdJsonFormatterComponent],\n exports: [TdJsonFormatterComponent],\n})\nexport class CovalentJsonFormatterModule {}\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"covalent-core-json-formatter.js","sources":["../../../../src/platform/core/json-formatter/json-formatter.component.ts","../../../../src/platform/core/json-formatter/json-formatter.module.ts"],"sourcesContent":["import { Component, Input, ChangeDetectionStrategy, ChangeDetectorRef, Optional } from '@angular/core';\nimport { Dir } from '@angular/cdk/bidi';\nimport { tdCollapseAnimation } from '@covalent/core/common';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'td-json-formatter',\n styleUrls: ['./json-formatter.component.scss'],\n templateUrl: './json-formatter.component.html',\n animations: [tdCollapseAnimation],\n})\nexport class TdJsonFormatterComponent {\n /**\n * Max length for property names. Any names bigger than this get trunctated.\n */\n private static KEY_MAX_LENGTH: number = 30;\n\n /**\n * Max length for preview string. Any names bigger than this get trunctated.\n */\n private static PREVIEW_STRING_MAX_LENGTH: number = 80;\n\n /**\n * Max tooltip preview elements.\n */\n private static PREVIEW_LIMIT: number = 5;\n\n private _key: string;\n private _data: any;\n private _children: string[];\n private _open: boolean = false;\n private _levelsOpen: number = 0;\n\n /**\n * levelsOpen?: number\n * Levels opened by default when JS object is formatted and rendered.\n */\n @Input('levelsOpen')\n set levelsOpen(levelsOpen: number) {\n if (!Number.isInteger(levelsOpen)) {\n throw new Error('[levelsOpen] needs to be an integer.');\n }\n this._levelsOpen = levelsOpen;\n this._open = levelsOpen > 0;\n }\n get levelsOpen(): number {\n return this._levelsOpen;\n }\n\n get open(): boolean {\n return this._open;\n }\n\n /**\n * key?: string\n * Tag to be displayed next to formatted object.\n */\n @Input('key')\n set key(key: string) {\n this._key = key;\n }\n get key(): string {\n const elipsis: string = this._key && this._key.length > TdJsonFormatterComponent.KEY_MAX_LENGTH ? '…' : '';\n return this._key ? this._key.substring(0, TdJsonFormatterComponent.KEY_MAX_LENGTH) + elipsis : this._key;\n }\n\n /**\n * data: any\n * JS object to be formatted.\n */\n @Input('data')\n set data(data: any) {\n this._data = data;\n this.parseChildren();\n }\n get data(): any {\n return this._data;\n }\n\n get children(): string[] {\n return this._children;\n }\n\n get isRTL(): boolean {\n if (this._dir) {\n return this._dir.dir === 'rtl';\n }\n return false;\n }\n\n constructor(private _changeDetectorRef: ChangeDetectorRef, @Optional() private _dir: Dir) {}\n\n /**\n * Refreshes json-formatter and rerenders [data]\n */\n refresh(): void {\n this._changeDetectorRef.markForCheck();\n }\n\n /**\n * Toggles collapse/expanded state of component.\n */\n toggle(): void {\n this._open = !this._open;\n }\n\n isObject(): boolean {\n return this.getType(this._data) === 'object';\n }\n\n isArray(): boolean {\n return Array.isArray(this._data);\n }\n\n hasChildren(): boolean {\n return this._children && this._children.length > 0;\n }\n\n /**\n * Gets parsed value depending on value type.\n */\n getValue(value: any): string {\n const type: string = this.getType(value);\n if (type === 'undefined' || type === 'null') {\n return type;\n } else if (type === 'date') {\n value = new Date(value).toString();\n } else if (type === 'string') {\n value = '\"' + value + '\"';\n } else if (type === 'function') {\n // Remove content of the function\n return (\n value\n .toString()\n .replace(/[\\r\\n]/g, '')\n .replace(/\\{.*\\}/, '') + '{…}'\n );\n } else if (Array.isArray(value)) {\n return this.getObjectName() + ' [' + value.length + ']';\n }\n return value;\n }\n\n /**\n * Gets type of object.\n * returns 'null' if object is null and 'date' if value is object and can be parsed to a date.\n */\n getType(object: any): string {\n if (typeof object === 'object') {\n if (!object) {\n return 'null';\n }\n if (Array.isArray(object)) {\n return 'object';\n }\n const date: Date = new Date(object);\n if (Object.prototype.toString.call(date) === '[object Date]' && !Number.isNaN(date.getTime())) {\n return 'date';\n }\n }\n return typeof object;\n }\n\n /**\n * Generates string representation depending if its an object or function.\n * see: http://stackoverflow.com/a/332429\n */\n getObjectName(): string {\n const object: any = this._data;\n if (this.isObject() && !object.constructor) {\n return 'Object';\n }\n const funcNameRegex: RegExp = /function (.{1,})\\(/;\n const results: RegExpExecArray = funcNameRegex.exec(object.constructor.toString());\n if (results && results.length > 1) {\n return results[1];\n } else {\n return '';\n }\n }\n\n /**\n * Creates preview of nodes children to render in tooltip depending if its an array or an object.\n */\n getPreview(): string {\n let previewData: string[];\n let startChar: string = '{ ';\n let endChar: string = ' }';\n if (this.isArray()) {\n const previewArray: any[] = this._data.slice(0, TdJsonFormatterComponent.PREVIEW_LIMIT);\n previewData = previewArray.map((obj: any) => {\n return this.getValue(obj);\n });\n startChar = '[';\n endChar = ']';\n } else {\n const previewKeys: string[] = this._children.slice(0, TdJsonFormatterComponent.PREVIEW_LIMIT);\n previewData = previewKeys.map((key: string) => {\n return key + ': ' + this.getValue(this._data[key]);\n });\n }\n const previewString: string = previewData.join(', ');\n const ellipsis: string =\n previewData.length >= TdJsonFormatterComponent.PREVIEW_LIMIT ||\n previewString.length > TdJsonFormatterComponent.PREVIEW_STRING_MAX_LENGTH\n ? '…'\n : '';\n return (\n startChar + previewString.substring(0, TdJsonFormatterComponent.PREVIEW_STRING_MAX_LENGTH) + ellipsis + endChar\n );\n }\n\n private parseChildren(): void {\n if (this.isObject()) {\n this._children = Object.keys(this._data);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { TdJsonFormatterComponent } from './json-formatter.component';\n\n@NgModule({\n imports: [CommonModule, MatTooltipModule, MatIconModule],\n declarations: [TdJsonFormatterComponent],\n exports: [TdJsonFormatterComponent],\n})\nexport class CovalentJsonFormatterModule {}\n"],"names":[],"mappings":"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"}
|