@skyux/list-builder 5.0.2 → 5.5.0
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/README.md +6 -4
- package/bundles/skyux-list-builder.umd.js +95 -94
- package/documentation.json +681 -468
- package/esm2015/index.js +78 -0
- package/esm2015/index.js.map +1 -0
- package/esm2015/lib/modules/list/list-data-request.model.js +18 -0
- package/esm2015/lib/modules/list/list-data-request.model.js.map +1 -0
- package/esm2015/lib/modules/list/list-data-response.model.js +9 -0
- package/esm2015/lib/modules/list/list-data-response.model.js.map +1 -0
- package/esm2015/lib/modules/list/list-data.provider.js +7 -0
- package/esm2015/lib/modules/list/list-data.provider.js.map +1 -0
- package/esm2015/lib/modules/list/list-paging.component.js +13 -0
- package/esm2015/lib/modules/list/list-paging.component.js.map +1 -0
- package/esm2015/lib/modules/list/list-view.component.js +28 -0
- package/esm2015/lib/modules/list/list-view.component.js.map +1 -0
- package/esm2015/lib/modules/list/list.component.js +305 -0
- package/esm2015/lib/modules/list/list.component.js.map +1 -0
- package/esm2015/lib/modules/list/list.module.js +18 -0
- package/esm2015/lib/modules/list/list.module.js.map +1 -0
- package/esm2015/lib/modules/list/state/filters/filters.orchestrator.js +16 -0
- package/esm2015/lib/modules/list/state/filters/filters.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list/state/filters/update.action.js +9 -0
- package/esm2015/lib/modules/list/state/filters/update.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/items/items.orchestrator.js +53 -0
- package/esm2015/lib/modules/list/state/items/items.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list/state/items/load.action.js +12 -0
- package/esm2015/lib/modules/list/state/items/load.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/items/set-items-selected.action.js +13 -0
- package/esm2015/lib/modules/list/state/items/set-items-selected.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/items/set-loading.action.js +9 -0
- package/esm2015/lib/modules/list/state/items/set-loading.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/list-state-action.type.js +2 -0
- package/esm2015/lib/modules/list/state/list-state-action.type.js.map +1 -0
- package/esm2015/lib/modules/list/state/list-state.model.js +24 -0
- package/esm2015/lib/modules/list/state/list-state.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/list-state.rxstate.js +80 -0
- package/esm2015/lib/modules/list/state/list-state.rxstate.js.map +1 -0
- package/esm2015/lib/modules/list/state/list-state.state-node.js +37 -0
- package/esm2015/lib/modules/list/state/list-state.state-node.js.map +1 -0
- package/esm2015/lib/modules/list/state/paging/paging.model.js +14 -0
- package/esm2015/lib/modules/list/state/paging/paging.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/paging/paging.orchestrator.js +27 -0
- package/esm2015/lib/modules/list/state/paging/paging.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list/state/paging/set-items-per-page.action.js +9 -0
- package/esm2015/lib/modules/list/state/paging/set-items-per-page.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/paging/set-max-pages.action.js +9 -0
- package/esm2015/lib/modules/list/state/paging/set-max-pages.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/paging/set-page-number.action.js +9 -0
- package/esm2015/lib/modules/list/state/paging/set-page-number.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/search/search.model.js +32 -0
- package/esm2015/lib/modules/list/state/search/search.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/search/search.orchestrator.js +47 -0
- package/esm2015/lib/modules/list/state/search/search.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list/state/search/set-field-selectors.action.js +9 -0
- package/esm2015/lib/modules/list/state/search/set-field-selectors.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/search/set-functions.action.js +9 -0
- package/esm2015/lib/modules/list/state/search/set-functions.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/search/set-options.action.js +11 -0
- package/esm2015/lib/modules/list/state/search/set-options.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/search/set-search-text.action.js +9 -0
- package/esm2015/lib/modules/list/state/search/set-search-text.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/selected/load.action.js +9 -0
- package/esm2015/lib/modules/list/state/selected/load.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/selected/selected.model.js +9 -0
- package/esm2015/lib/modules/list/state/selected/selected.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/selected/selected.orchestrator.js +56 -0
- package/esm2015/lib/modules/list/state/selected/selected.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list/state/selected/set-item-selected.action.js +10 -0
- package/esm2015/lib/modules/list/state/selected/set-item-selected.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/selected/set-items-selected.action.js +11 -0
- package/esm2015/lib/modules/list/state/selected/set-items-selected.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/selected/set-loading.action.js +9 -0
- package/esm2015/lib/modules/list/state/selected/set-loading.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/sort/label.model.js +25 -0
- package/esm2015/lib/modules/list/state/sort/label.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/sort/set-available.action.js +9 -0
- package/esm2015/lib/modules/list/state/sort/set-available.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/sort/set-field-selectors.action.js +9 -0
- package/esm2015/lib/modules/list/state/sort/set-field-selectors.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/sort/set-global.action.js +9 -0
- package/esm2015/lib/modules/list/state/sort/set-global.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/sort/sort.model.js +27 -0
- package/esm2015/lib/modules/list/state/sort/sort.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/sort/sort.orchestrator.js +30 -0
- package/esm2015/lib/modules/list/state/sort/sort.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/disable.action.js +9 -0
- package/esm2015/lib/modules/list/state/toolbar/disable.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/load.action.js +10 -0
- package/esm2015/lib/modules/list/state/toolbar/load.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/remove.action.js +9 -0
- package/esm2015/lib/modules/list/state/toolbar/remove.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/set-exists.action.js +9 -0
- package/esm2015/lib/modules/list/state/toolbar/set-exists.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/set-type.action.js +9 -0
- package/esm2015/lib/modules/list/state/toolbar/set-type.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/show-multiselect-toolbar.action.js +9 -0
- package/esm2015/lib/modules/list/state/toolbar/show-multiselect-toolbar.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/toolbar-item.model.js +16 -0
- package/esm2015/lib/modules/list/state/toolbar/toolbar-item.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/toolbar.model.js +17 -0
- package/esm2015/lib/modules/list/state/toolbar/toolbar.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/toolbar/toolbar.orchestrator.js +80 -0
- package/esm2015/lib/modules/list/state/toolbar/toolbar.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list/state/views/load.action.js +9 -0
- package/esm2015/lib/modules/list/state/views/load.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/views/set-active.action.js +9 -0
- package/esm2015/lib/modules/list/state/views/set-active.action.js.map +1 -0
- package/esm2015/lib/modules/list/state/views/view.model.js +10 -0
- package/esm2015/lib/modules/list/state/views/view.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/views/views.model.js +13 -0
- package/esm2015/lib/modules/list/state/views/views.model.js.map +1 -0
- package/esm2015/lib/modules/list/state/views/views.orchestrator.js +21 -0
- package/esm2015/lib/modules/list/state/views/views.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list-data-provider-in-memory/list-data-in-memory.provider.js +160 -0
- package/esm2015/lib/modules/list-data-provider-in-memory/list-data-in-memory.provider.js.map +1 -0
- package/esm2015/lib/modules/list-filters/filter.model.js +18 -0
- package/esm2015/lib/modules/list-filters/filter.model.js.map +1 -0
- package/esm2015/lib/modules/list-filters/list-filter-button.component.js +44 -0
- package/esm2015/lib/modules/list-filters/list-filter-button.component.js.map +1 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline-item-renderer.component.js +34 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline-item-renderer.component.js.map +1 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline-item.component.js +45 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline-item.component.js.map +1 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline.component.js +74 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline.component.js.map +1 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline.model.js +21 -0
- package/esm2015/lib/modules/list-filters/list-filter-inline.model.js.map +1 -0
- package/esm2015/lib/modules/list-filters/list-filter-summary.component.js +60 -0
- package/esm2015/lib/modules/list-filters/list-filter-summary.component.js.map +1 -0
- package/esm2015/lib/modules/list-filters/list-filters.module.js +41 -0
- package/esm2015/lib/modules/list-filters/list-filters.module.js.map +1 -0
- package/esm2015/lib/modules/list-paging/list-paging.component.js +89 -0
- package/esm2015/lib/modules/list-paging/list-paging.component.js.map +1 -0
- package/esm2015/lib/modules/list-paging/list-paging.module.js +19 -0
- package/esm2015/lib/modules/list-paging/list-paging.module.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-multiselect-toolbar.component.js +153 -0
- package/esm2015/lib/modules/list-toolbar/list-multiselect-toolbar.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js +33 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.js +2 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.js.map +1 -0
- package/esm2015/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.js +6 -5
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js +45 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js +46 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js +36 -0
- package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-item-renderer.component.js +30 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-item-renderer.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-item.component.js +47 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-item.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-search-actions.component.js +19 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-search-actions.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-sort.component.js +25 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-sort.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-view-actions.component.js +21 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar-view-actions.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar.component.js +360 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar.component.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar.module.js +87 -0
- package/esm2015/lib/modules/list-toolbar/list-toolbar.module.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/config/config.model.js +14 -0
- package/esm2015/lib/modules/list-toolbar/state/config/config.model.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/config/config.orchestrator.js +21 -0
- package/esm2015/lib/modules/list-toolbar/state/config/config.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/config/set-search-enabled.action.js +9 -0
- package/esm2015/lib/modules/list-toolbar/state/config/set-search-enabled.action.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js +10 -0
- package/esm2015/lib/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state-action.type.js +2 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state-action.type.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state.model.js +10 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state.model.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state.rxstate.js +19 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state.rxstate.js.map +1 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state.state-node.js +23 -0
- package/esm2015/lib/modules/list-toolbar/state/toolbar-state.state-node.js.map +1 -0
- package/esm2015/lib/modules/shared/sky-list-builder-resources.module.js +53 -0
- package/esm2015/lib/modules/shared/sky-list-builder-resources.module.js.map +1 -0
- package/esm2015/skyux-list-builder.js +2 -2
- package/esm2015/skyux-list-builder.js.map +1 -0
- package/fesm2015/skyux-list-builder.js +117 -116
- package/fesm2015/skyux-list-builder.js.map +1 -1
- package/index.d.ts +74 -0
- package/{modules → lib/modules}/list/list-data-request.model.d.ts +0 -0
- package/{modules → lib/modules}/list/list-data-response.model.d.ts +0 -0
- package/{modules → lib/modules}/list/list-data.provider.d.ts +0 -0
- package/{modules → lib/modules}/list/list-paging.component.d.ts +0 -0
- package/{modules → lib/modules}/list/list-view.component.d.ts +0 -0
- package/{modules → lib/modules}/list/list.component.d.ts +0 -0
- package/{modules → lib/modules}/list/list.module.d.ts +0 -0
- package/{modules → lib/modules}/list/state/filters/filters.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list/state/filters/update.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/items/items.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list/state/items/load.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/items/set-items-selected.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/items/set-loading.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/list-state-action.type.d.ts +0 -0
- package/{modules → lib/modules}/list/state/list-state.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/list-state.rxstate.d.ts +0 -0
- package/{modules → lib/modules}/list/state/list-state.state-node.d.ts +0 -0
- package/{modules → lib/modules}/list/state/paging/paging.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/paging/paging.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list/state/paging/set-items-per-page.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/paging/set-max-pages.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/paging/set-page-number.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/search/search.model.d.ts +1 -0
- package/{modules → lib/modules}/list/state/search/search.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list/state/search/set-field-selectors.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/search/set-functions.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/search/set-options.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/search/set-search-text.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/selected/load.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/selected/selected.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/selected/selected.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list/state/selected/set-item-selected.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/selected/set-items-selected.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/selected/set-loading.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/sort/label.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/sort/set-available.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/sort/set-field-selectors.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/sort/set-global.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/sort/sort.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/sort/sort.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/disable.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/load.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/remove.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/set-exists.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/set-type.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/show-multiselect-toolbar.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/toolbar-item.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/toolbar.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/toolbar/toolbar.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list/state/views/load.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/views/set-active.action.d.ts +0 -0
- package/{modules → lib/modules}/list/state/views/view.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/views/views.model.d.ts +0 -0
- package/{modules → lib/modules}/list/state/views/views.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list-data-provider-in-memory/list-data-in-memory.provider.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/filter.model.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/list-filter-button.component.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/list-filter-inline-item-renderer.component.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/list-filter-inline-item.component.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/list-filter-inline.component.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/list-filter-inline.model.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/list-filter-summary.component.d.ts +0 -0
- package/{modules → lib/modules}/list-filters/list-filters.module.d.ts +0 -0
- package/{modules → lib/modules}/list-paging/list-paging.component.d.ts +0 -0
- package/{modules → lib/modules}/list-paging/list-paging.module.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-multiselect-toolbar.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-action.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-action.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions.module.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions.service.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-toolbar-item-renderer.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-toolbar-item.component.d.ts +3 -3
- package/{modules → lib/modules}/list-toolbar/list-toolbar-search-actions.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-toolbar-sort.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-toolbar-view-actions.component.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/list-toolbar.component.d.ts +2 -2
- package/{modules → lib/modules}/list-toolbar/list-toolbar.module.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/config/config.model.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/config/config.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/config/set-search-enabled.action.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/config/set-sort-selector-enabled.action.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/toolbar-state-action.type.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/toolbar-state.model.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/toolbar-state.rxstate.d.ts +0 -0
- package/{modules → lib/modules}/list-toolbar/state/toolbar-state.state-node.d.ts +0 -0
- package/{modules → lib/modules}/shared/sky-list-builder-resources.module.d.ts +0 -0
- package/package.json +27 -13
- package/skyux-list-builder.d.ts +1 -1
- package/LICENSE +0 -21
- package/esm2015/modules/list/list-data-request.model.js +0 -18
- package/esm2015/modules/list/list-data-response.model.js +0 -9
- package/esm2015/modules/list/list-data.provider.js +0 -7
- package/esm2015/modules/list/list-paging.component.js +0 -13
- package/esm2015/modules/list/list-view.component.js +0 -28
- package/esm2015/modules/list/list.component.js +0 -304
- package/esm2015/modules/list/list.module.js +0 -18
- package/esm2015/modules/list/state/filters/filters.orchestrator.js +0 -16
- package/esm2015/modules/list/state/filters/update.action.js +0 -9
- package/esm2015/modules/list/state/items/items.orchestrator.js +0 -53
- package/esm2015/modules/list/state/items/load.action.js +0 -12
- package/esm2015/modules/list/state/items/set-items-selected.action.js +0 -13
- package/esm2015/modules/list/state/items/set-loading.action.js +0 -9
- package/esm2015/modules/list/state/list-state-action.type.js +0 -2
- package/esm2015/modules/list/state/list-state.model.js +0 -24
- package/esm2015/modules/list/state/list-state.rxstate.js +0 -80
- package/esm2015/modules/list/state/list-state.state-node.js +0 -36
- package/esm2015/modules/list/state/paging/paging.model.js +0 -14
- package/esm2015/modules/list/state/paging/paging.orchestrator.js +0 -27
- package/esm2015/modules/list/state/paging/set-items-per-page.action.js +0 -9
- package/esm2015/modules/list/state/paging/set-max-pages.action.js +0 -9
- package/esm2015/modules/list/state/paging/set-page-number.action.js +0 -9
- package/esm2015/modules/list/state/search/search.model.js +0 -31
- package/esm2015/modules/list/state/search/search.orchestrator.js +0 -47
- package/esm2015/modules/list/state/search/set-field-selectors.action.js +0 -9
- package/esm2015/modules/list/state/search/set-functions.action.js +0 -9
- package/esm2015/modules/list/state/search/set-options.action.js +0 -11
- package/esm2015/modules/list/state/search/set-search-text.action.js +0 -9
- package/esm2015/modules/list/state/selected/load.action.js +0 -9
- package/esm2015/modules/list/state/selected/selected.model.js +0 -9
- package/esm2015/modules/list/state/selected/selected.orchestrator.js +0 -56
- package/esm2015/modules/list/state/selected/set-item-selected.action.js +0 -10
- package/esm2015/modules/list/state/selected/set-items-selected.action.js +0 -11
- package/esm2015/modules/list/state/selected/set-loading.action.js +0 -9
- package/esm2015/modules/list/state/sort/label.model.js +0 -25
- package/esm2015/modules/list/state/sort/set-available.action.js +0 -9
- package/esm2015/modules/list/state/sort/set-field-selectors.action.js +0 -9
- package/esm2015/modules/list/state/sort/set-global.action.js +0 -9
- package/esm2015/modules/list/state/sort/sort.model.js +0 -27
- package/esm2015/modules/list/state/sort/sort.orchestrator.js +0 -30
- package/esm2015/modules/list/state/toolbar/disable.action.js +0 -9
- package/esm2015/modules/list/state/toolbar/load.action.js +0 -10
- package/esm2015/modules/list/state/toolbar/remove.action.js +0 -9
- package/esm2015/modules/list/state/toolbar/set-exists.action.js +0 -9
- package/esm2015/modules/list/state/toolbar/set-type.action.js +0 -9
- package/esm2015/modules/list/state/toolbar/show-multiselect-toolbar.action.js +0 -9
- package/esm2015/modules/list/state/toolbar/toolbar-item.model.js +0 -16
- package/esm2015/modules/list/state/toolbar/toolbar.model.js +0 -17
- package/esm2015/modules/list/state/toolbar/toolbar.orchestrator.js +0 -80
- package/esm2015/modules/list/state/views/load.action.js +0 -9
- package/esm2015/modules/list/state/views/set-active.action.js +0 -9
- package/esm2015/modules/list/state/views/view.model.js +0 -10
- package/esm2015/modules/list/state/views/views.model.js +0 -13
- package/esm2015/modules/list/state/views/views.orchestrator.js +0 -21
- package/esm2015/modules/list-data-provider-in-memory/list-data-in-memory.provider.js +0 -160
- package/esm2015/modules/list-filters/filter.model.js +0 -18
- package/esm2015/modules/list-filters/list-filter-button.component.js +0 -43
- package/esm2015/modules/list-filters/list-filter-inline-item-renderer.component.js +0 -34
- package/esm2015/modules/list-filters/list-filter-inline-item.component.js +0 -45
- package/esm2015/modules/list-filters/list-filter-inline.component.js +0 -72
- package/esm2015/modules/list-filters/list-filter-inline.model.js +0 -21
- package/esm2015/modules/list-filters/list-filter-summary.component.js +0 -58
- package/esm2015/modules/list-filters/list-filters.module.js +0 -41
- package/esm2015/modules/list-paging/list-paging.component.js +0 -87
- package/esm2015/modules/list-paging/list-paging.module.js +0 -19
- package/esm2015/modules/list-toolbar/list-multiselect-toolbar.component.js +0 -151
- package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js +0 -32
- package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-action.js +0 -2
- package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js +0 -44
- package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js +0 -46
- package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js +0 -36
- package/esm2015/modules/list-toolbar/list-toolbar-item-renderer.component.js +0 -30
- package/esm2015/modules/list-toolbar/list-toolbar-item.component.js +0 -47
- package/esm2015/modules/list-toolbar/list-toolbar-search-actions.component.js +0 -19
- package/esm2015/modules/list-toolbar/list-toolbar-sort.component.js +0 -25
- package/esm2015/modules/list-toolbar/list-toolbar-view-actions.component.js +0 -21
- package/esm2015/modules/list-toolbar/list-toolbar.component.js +0 -358
- package/esm2015/modules/list-toolbar/list-toolbar.module.js +0 -87
- package/esm2015/modules/list-toolbar/state/config/config.model.js +0 -14
- package/esm2015/modules/list-toolbar/state/config/config.orchestrator.js +0 -21
- package/esm2015/modules/list-toolbar/state/config/set-search-enabled.action.js +0 -9
- package/esm2015/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js +0 -10
- package/esm2015/modules/list-toolbar/state/toolbar-state-action.type.js +0 -2
- package/esm2015/modules/list-toolbar/state/toolbar-state.model.js +0 -10
- package/esm2015/modules/list-toolbar/state/toolbar-state.rxstate.js +0 -19
- package/esm2015/modules/list-toolbar/state/toolbar-state.state-node.js +0 -21
- package/esm2015/modules/shared/sky-list-builder-resources.module.js +0 -53
- package/esm2015/public-api.js +0 -78
- package/public-api.d.ts +0 -74
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ContentChildren, TemplateRef, EventEmitter, } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Creates a filter in the list's inline filter area.
|
|
5
|
-
*/
|
|
6
|
-
export class SkyListFilterInlineItemComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.onChange = new EventEmitter();
|
|
9
|
-
}
|
|
10
|
-
ngOnInit() {
|
|
11
|
-
if (this.name === undefined || this.name.length === 0) {
|
|
12
|
-
throw new Error('Inline filter requires a name.');
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
get template() {
|
|
16
|
-
return this.templates.length > 0
|
|
17
|
-
? this.templates.first
|
|
18
|
-
: this.templateInput;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
SkyListFilterInlineItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFilterInlineItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
22
|
-
SkyListFilterInlineItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyListFilterInlineItemComponent, selector: "sky-list-filter-inline-item", inputs: { name: "name", value: "value", defaultValue: "defaultValue", filterFunction: ["filter", "filterFunction"], templateInput: ["template", "templateInput"] }, queries: [{ propertyName: "templates", predicate: TemplateRef }], ngImport: i0, template: '<ng-content></ng-content>', isInline: true });
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFilterInlineItemComponent, decorators: [{
|
|
24
|
-
type: Component,
|
|
25
|
-
args: [{
|
|
26
|
-
selector: 'sky-list-filter-inline-item',
|
|
27
|
-
template: '<ng-content></ng-content>',
|
|
28
|
-
}]
|
|
29
|
-
}], propDecorators: { name: [{
|
|
30
|
-
type: Input
|
|
31
|
-
}], value: [{
|
|
32
|
-
type: Input
|
|
33
|
-
}], defaultValue: [{
|
|
34
|
-
type: Input
|
|
35
|
-
}], filterFunction: [{
|
|
36
|
-
type: Input,
|
|
37
|
-
args: ['filter']
|
|
38
|
-
}], templateInput: [{
|
|
39
|
-
type: Input,
|
|
40
|
-
args: ['template']
|
|
41
|
-
}], templates: [{
|
|
42
|
-
type: ContentChildren,
|
|
43
|
-
args: [TemplateRef]
|
|
44
|
-
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1maWx0ZXItaW5saW5lLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlzdC1idWlsZGVyL3NyYy9tb2R1bGVzL2xpc3QtZmlsdGVycy9saXN0LWZpbHRlci1pbmxpbmUtaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsZUFBZSxFQUNmLFdBQVcsRUFHWCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7O0FBSXZCOztHQUVHO0FBS0gsTUFBTSxPQUFPLGdDQUFnQztJQUo3QztRQTZDUyxhQUFRLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7S0FnQjlEO0lBWFEsUUFBUTtRQUNiLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JELE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztTQUNuRDtJQUNILENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUs7WUFDdEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDekIsQ0FBQzs7OEhBeERVLGdDQUFnQztrSEFBaEMsZ0NBQWdDLGlRQTJDMUIsV0FBVyw2QkE3Q2xCLDJCQUEyQjs0RkFFMUIsZ0NBQWdDO2tCQUo1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLFFBQVEsRUFBRSwyQkFBMkI7aUJBQ3RDOzhCQU9RLElBQUk7c0JBRFYsS0FBSztnQkFPQyxLQUFLO3NCQURYLEtBQUs7Z0JBUUMsWUFBWTtzQkFEbEIsS0FBSztnQkFXQyxjQUFjO3NCQURwQixLQUFLO3VCQUFDLFFBQVE7Z0JBV1IsYUFBYTtzQkFEbkIsS0FBSzt1QkFBQyxVQUFVO2dCQU1ULFNBQVM7c0JBRGhCLGVBQWU7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgVGVtcGxhdGVSZWYsXG4gIFF1ZXJ5TGlzdCxcbiAgT25Jbml0LFxuICBFdmVudEVtaXR0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBMaXN0SXRlbU1vZGVsIH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBmaWx0ZXIgaW4gdGhlIGxpc3QncyBpbmxpbmUgZmlsdGVyIGFyZWEuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LWZpbHRlci1pbmxpbmUtaXRlbScsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG59KVxuZXhwb3J0IGNsYXNzIFNreUxpc3RGaWx0ZXJJbmxpbmVJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgZmlsdGVyLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgZmlsdGVyLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHZhbHVlOiBhbnk7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgZmlsdGVyLiBJZiB0aGUgdmFsdWUgb2YgdGhlIGZpbHRlclxuICAgKiBpcyBzZXQgdG8gdGhlIGRlZmF1bHQgdmFsdWUsIHRoZW4gdGhlIGZpbHRlciBpcyBub3QgYXBwbGllZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkZWZhdWx0VmFsdWU6IGFueTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBmdW5jdGlvbiB0byBhcHBseSB0byBkZXRlcm1pbmUgd2hldGhlciBhbiBpdGVtIGlzIGZpbHRlcmVkLlxuICAgKiBUaGlzIHByb3BlcnR5IGlzIHJlcXVpcmVkIHdoZW4gdXNpbmcgYW4gaW4tbWVtb3J5IGRhdGEgcHJvdmlkZXIuIEZvciBpbmZvcm1hdGlvblxuICAgKiBhYm91dCBgTGlzdEl0ZW1Nb2RlbGAsIHNlZSB0aGVcbiAgICogW3NoYXJlZCBjbGFzc2VzIGZvciBsaXN0c10oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC1saXN0LWJ1aWxkZXItY29tbW9uL2RvY3MvbGlzdC1idWlsZGVyLWNvbW1vbikuXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ2ZpbHRlcicpXG4gIHB1YmxpYyBmaWx0ZXJGdW5jdGlvbjogKGl0ZW06IExpc3RJdGVtTW9kZWwsIGZpbHRlcjogYW55KSA9PiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHRlbXBsYXRlIGZvciB0aGUgZmlsdGVyLiBUaGUgdGVtcGxhdGUgY2FuIGFjY2VzcyB0aGUgYGZpbHRlcmBcbiAgICogdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgYHZhbHVlYCBvZiB0aGUgZmlsdGVyIGNvbnRyb2wsIHdoaWNoIHNob3VsZCBiZSBib3VuZCB0b1xuICAgKiBgbmdNb2RlbGAsIGFuZCB0aGUgYGNoYW5nZWRgIGZ1bmN0aW9uLCB3aGljaCBzaG91bGQgYmUgY2FsbGVkIHdoZW4gdGhlIG1vZGVsIGNoYW5nZXMuXG4gICAqIEByZXF1aXJlZFxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCd0ZW1wbGF0ZScpXG4gIHB1YmxpYyB0ZW1wbGF0ZUlucHV0OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHB1YmxpYyBvbkNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBAQ29udGVudENoaWxkcmVuKFRlbXBsYXRlUmVmKVxuICBwcml2YXRlIHRlbXBsYXRlczogUXVlcnlMaXN0PFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5uYW1lID09PSB1bmRlZmluZWQgfHwgdGhpcy5uYW1lLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbmxpbmUgZmlsdGVyIHJlcXVpcmVzIGEgbmFtZS4nKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgIHJldHVybiB0aGlzLnRlbXBsYXRlcy5sZW5ndGggPiAwXG4gICAgICA/IHRoaXMudGVtcGxhdGVzLmZpcnN0XG4gICAgICA6IHRoaXMudGVtcGxhdGVJbnB1dDtcbiAgfVxufVxuIl19
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { Component, ContentChildren, } from '@angular/core';
|
|
2
|
-
import { take } from 'rxjs/operators';
|
|
3
|
-
import { SkyListFilterInlineItemComponent } from './list-filter-inline-item.component';
|
|
4
|
-
import { ListFilterModel } from './filter.model';
|
|
5
|
-
import { ListPagingSetPageNumberAction } from '../list/state/paging/set-page-number.action';
|
|
6
|
-
import { SkyListFilterInlineModel } from './list-filter-inline.model';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "../list/state/list-state.rxstate";
|
|
9
|
-
import * as i2 from "../list/state/list-state.state-node";
|
|
10
|
-
import * as i3 from "@skyux/lists";
|
|
11
|
-
import * as i4 from "./list-filter-inline-item-renderer.component";
|
|
12
|
-
import * as i5 from "@angular/common";
|
|
13
|
-
/**
|
|
14
|
-
* Creates an inline filter area for the list. Place each filter
|
|
15
|
-
* in a `sky-list-filter-inline-item` component.
|
|
16
|
-
*/
|
|
17
|
-
export class SkyListFilterInlineComponent {
|
|
18
|
-
constructor(dispatcher, state) {
|
|
19
|
-
this.dispatcher = dispatcher;
|
|
20
|
-
this.state = state;
|
|
21
|
-
this.inlineFilters = [];
|
|
22
|
-
}
|
|
23
|
-
ngAfterContentInit() {
|
|
24
|
-
this.inlineFilters = this.filters.map((filter) => {
|
|
25
|
-
return new SkyListFilterInlineModel({
|
|
26
|
-
name: filter.name,
|
|
27
|
-
filterFunction: filter.filterFunction,
|
|
28
|
-
template: filter.template,
|
|
29
|
-
value: filter.value,
|
|
30
|
-
defaultValue: filter.defaultValue,
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
this.inlineFilters.forEach((filter) => {
|
|
34
|
-
filter.onChange.subscribe((value) => {
|
|
35
|
-
this.applyFilters();
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
this.dispatcher.filtersUpdate(this.getFilterModelFromInline(this.inlineFilters));
|
|
39
|
-
}
|
|
40
|
-
applyFilters() {
|
|
41
|
-
this.state.pipe(take(1)).subscribe((currentState) => {
|
|
42
|
-
if (currentState.paging.pageNumber &&
|
|
43
|
-
currentState.paging.pageNumber !== 1) {
|
|
44
|
-
this.dispatcher.next(new ListPagingSetPageNumberAction(Number(1)));
|
|
45
|
-
}
|
|
46
|
-
this.dispatcher.filtersUpdate(this.getFilterModelFromInline(this.inlineFilters));
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
getFilterModelFromInline(inlineFilters) {
|
|
50
|
-
return inlineFilters.map((filter) => {
|
|
51
|
-
return new ListFilterModel({
|
|
52
|
-
name: filter.name,
|
|
53
|
-
value: filter.value,
|
|
54
|
-
filterFunction: filter.filterFunction,
|
|
55
|
-
defaultValue: filter.defaultValue,
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
SkyListFilterInlineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFilterInlineComponent, deps: [{ token: i1.ListStateDispatcher }, { token: i2.ListState }], target: i0.ɵɵFactoryTarget.Component });
|
|
61
|
-
SkyListFilterInlineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyListFilterInlineComponent, selector: "sky-list-filter-inline", queries: [{ propertyName: "filters", predicate: SkyListFilterInlineItemComponent }], ngImport: i0, template: "<ng-content></ng-content>\n\n<sky-filter-inline>\n <sky-filter-inline-item *ngFor=\"let filter of inlineFilters\">\n <sky-list-filter-inline-item-renderer\n [template]=\"filter.template\"\n [filter]=\"filter\"\n >\n </sky-list-filter-inline-item-renderer>\n </sky-filter-inline-item>\n</sky-filter-inline>\n", components: [{ type: i3.λ2, selector: "sky-filter-inline" }, { type: i3.λ3, selector: "sky-filter-inline-item" }, { type: i4.SkyListFilterInlineItemRendererComponent, selector: "sky-list-filter-inline-item-renderer", inputs: ["template", "filter"] }], directives: [{ type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFilterInlineComponent, decorators: [{
|
|
63
|
-
type: Component,
|
|
64
|
-
args: [{
|
|
65
|
-
selector: 'sky-list-filter-inline',
|
|
66
|
-
templateUrl: './list-filter-inline.component.html',
|
|
67
|
-
}]
|
|
68
|
-
}], ctorParameters: function () { return [{ type: i1.ListStateDispatcher }, { type: i2.ListState }]; }, propDecorators: { filters: [{
|
|
69
|
-
type: ContentChildren,
|
|
70
|
-
args: [SkyListFilterInlineItemComponent]
|
|
71
|
-
}] } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1maWx0ZXItaW5saW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0LWZpbHRlcnMvbGlzdC1maWx0ZXItaW5saW5lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0LWZpbHRlcnMvbGlzdC1maWx0ZXItaW5saW5lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsZUFBZSxHQUdoQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEMsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFNdkYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBRTVGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7O0FBRXRFOzs7R0FHRztBQUtILE1BQU0sT0FBTyw0QkFBNEI7SUFNdkMsWUFDVSxVQUErQixFQUMvQixLQUFnQjtRQURoQixlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUMvQixVQUFLLEdBQUwsS0FBSyxDQUFXO1FBUG5CLGtCQUFhLEdBQW9DLEVBQUUsQ0FBQztJQVF4RCxDQUFDO0lBRUcsa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUMvQyxPQUFPLElBQUksd0JBQXdCLENBQUM7Z0JBQ2xDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtnQkFDakIsY0FBYyxFQUFFLE1BQU0sQ0FBQyxjQUFjO2dCQUNyQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7Z0JBQ3pCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztnQkFDbkIsWUFBWSxFQUFFLE1BQU0sQ0FBQyxZQUFZO2FBQ2xDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNwQyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO2dCQUN2QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUMzQixJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUNsRCxDQUFDO0lBQ0osQ0FBQztJQUVNLFlBQVk7UUFDakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUU7WUFDbEQsSUFDRSxZQUFZLENBQUMsTUFBTSxDQUFDLFVBQVU7Z0JBQzlCLFlBQVksQ0FBQyxNQUFNLENBQUMsVUFBVSxLQUFLLENBQUMsRUFDcEM7Z0JBQ0EsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSw2QkFBNkIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BFO1lBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQzNCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQ2xELENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx3QkFBd0IsQ0FDOUIsYUFBOEM7UUFFOUMsT0FBTyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDbEMsT0FBTyxJQUFJLGVBQWUsQ0FBQztnQkFDekIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7Z0JBQ25CLGNBQWMsRUFBRSxNQUFNLENBQUMsY0FBYztnQkFDckMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxZQUFZO2FBQ2xDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEhBM0RVLDRCQUE0Qjs4R0FBNUIsNEJBQTRCLHNGQUd0QixnQ0FBZ0MsNkJDaENuRCwwVUFXQTs0RkRrQmEsNEJBQTRCO2tCQUp4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFdBQVcsRUFBRSxxQ0FBcUM7aUJBQ25EO2tJQUtTLE9BQU87c0JBRGQsZUFBZTt1QkFBQyxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgUXVlcnlMaXN0LFxuICBBZnRlckNvbnRlbnRJbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5TGlzdEZpbHRlcklubGluZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2xpc3QtZmlsdGVyLWlubGluZS1pdGVtLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IExpc3RTdGF0ZSB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvbGlzdC1zdGF0ZS5zdGF0ZS1ub2RlJztcblxuaW1wb3J0IHsgTGlzdFN0YXRlRGlzcGF0Y2hlciB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvbGlzdC1zdGF0ZS5yeHN0YXRlJztcblxuaW1wb3J0IHsgTGlzdEZpbHRlck1vZGVsIH0gZnJvbSAnLi9maWx0ZXIubW9kZWwnO1xuXG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbiB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvcGFnaW5nL3NldC1wYWdlLW51bWJlci5hY3Rpb24nO1xuXG5pbXBvcnQgeyBTa3lMaXN0RmlsdGVySW5saW5lTW9kZWwgfSBmcm9tICcuL2xpc3QtZmlsdGVyLWlubGluZS5tb2RlbCc7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBpbmxpbmUgZmlsdGVyIGFyZWEgZm9yIHRoZSBsaXN0LiBQbGFjZSBlYWNoIGZpbHRlclxuICogaW4gYSBgc2t5LWxpc3QtZmlsdGVyLWlubGluZS1pdGVtYCBjb21wb25lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LWZpbHRlci1pbmxpbmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC1maWx0ZXItaW5saW5lLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdEZpbHRlcklubGluZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICBwdWJsaWMgaW5saW5lRmlsdGVyczogQXJyYXk8U2t5TGlzdEZpbHRlcklubGluZU1vZGVsPiA9IFtdO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oU2t5TGlzdEZpbHRlcklubGluZUl0ZW1Db21wb25lbnQpXG4gIHByaXZhdGUgZmlsdGVyczogUXVlcnlMaXN0PFNreUxpc3RGaWx0ZXJJbmxpbmVJdGVtQ29tcG9uZW50PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRpc3BhdGNoZXI6IExpc3RTdGF0ZURpc3BhdGNoZXIsXG4gICAgcHJpdmF0ZSBzdGF0ZTogTGlzdFN0YXRlXG4gICkge31cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMuaW5saW5lRmlsdGVycyA9IHRoaXMuZmlsdGVycy5tYXAoKGZpbHRlcikgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBTa3lMaXN0RmlsdGVySW5saW5lTW9kZWwoe1xuICAgICAgICBuYW1lOiBmaWx0ZXIubmFtZSxcbiAgICAgICAgZmlsdGVyRnVuY3Rpb246IGZpbHRlci5maWx0ZXJGdW5jdGlvbixcbiAgICAgICAgdGVtcGxhdGU6IGZpbHRlci50ZW1wbGF0ZSxcbiAgICAgICAgdmFsdWU6IGZpbHRlci52YWx1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBmaWx0ZXIuZGVmYXVsdFZhbHVlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmlubGluZUZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG4gICAgICBmaWx0ZXIub25DaGFuZ2Uuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuYXBwbHlGaWx0ZXJzKCk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRoaXMuZGlzcGF0Y2hlci5maWx0ZXJzVXBkYXRlKFxuICAgICAgdGhpcy5nZXRGaWx0ZXJNb2RlbEZyb21JbmxpbmUodGhpcy5pbmxpbmVGaWx0ZXJzKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgYXBwbHlGaWx0ZXJzKCkge1xuICAgIHRoaXMuc3RhdGUucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGN1cnJlbnRTdGF0ZSkgPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBjdXJyZW50U3RhdGUucGFnaW5nLnBhZ2VOdW1iZXIgJiZcbiAgICAgICAgY3VycmVudFN0YXRlLnBhZ2luZy5wYWdlTnVtYmVyICE9PSAxXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQobmV3IExpc3RQYWdpbmdTZXRQYWdlTnVtYmVyQWN0aW9uKE51bWJlcigxKSkpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmRpc3BhdGNoZXIuZmlsdGVyc1VwZGF0ZShcbiAgICAgICAgdGhpcy5nZXRGaWx0ZXJNb2RlbEZyb21JbmxpbmUodGhpcy5pbmxpbmVGaWx0ZXJzKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsdGVyTW9kZWxGcm9tSW5saW5lKFxuICAgIGlubGluZUZpbHRlcnM6IEFycmF5PFNreUxpc3RGaWx0ZXJJbmxpbmVNb2RlbD5cbiAgKSB7XG4gICAgcmV0dXJuIGlubGluZUZpbHRlcnMubWFwKChmaWx0ZXIpID0+IHtcbiAgICAgIHJldHVybiBuZXcgTGlzdEZpbHRlck1vZGVsKHtcbiAgICAgICAgbmFtZTogZmlsdGVyLm5hbWUsXG4gICAgICAgIHZhbHVlOiBmaWx0ZXIudmFsdWUsXG4gICAgICAgIGZpbHRlckZ1bmN0aW9uOiBmaWx0ZXIuZmlsdGVyRnVuY3Rpb24sXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZmlsdGVyLmRlZmF1bHRWYWx1ZSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbjxza3ktZmlsdGVyLWlubGluZT5cbiAgPHNreS1maWx0ZXItaW5saW5lLWl0ZW0gKm5nRm9yPVwibGV0IGZpbHRlciBvZiBpbmxpbmVGaWx0ZXJzXCI+XG4gICAgPHNreS1saXN0LWZpbHRlci1pbmxpbmUtaXRlbS1yZW5kZXJlclxuICAgICAgW3RlbXBsYXRlXT1cImZpbHRlci50ZW1wbGF0ZVwiXG4gICAgICBbZmlsdGVyXT1cImZpbHRlclwiXG4gICAgPlxuICAgIDwvc2t5LWxpc3QtZmlsdGVyLWlubGluZS1pdGVtLXJlbmRlcmVyPlxuICA8L3NreS1maWx0ZXItaW5saW5lLWl0ZW0+XG48L3NreS1maWx0ZXItaW5saW5lPlxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from '@angular/core';
|
|
2
|
-
/**
|
|
3
|
-
* @internal
|
|
4
|
-
*/
|
|
5
|
-
export class SkyListFilterInlineModel {
|
|
6
|
-
constructor(data) {
|
|
7
|
-
this.onChange = new EventEmitter();
|
|
8
|
-
if (data) {
|
|
9
|
-
this.name = data.name;
|
|
10
|
-
this.filterFunction = data.filterFunction;
|
|
11
|
-
this.value = data.value;
|
|
12
|
-
this.template = data.template;
|
|
13
|
-
this.defaultValue = data.defaultValue;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
changed(value) {
|
|
17
|
-
this.value = value;
|
|
18
|
-
this.onChange.emit(value);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1maWx0ZXItaW5saW5lLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlzdC1idWlsZGVyL3NyYy9tb2R1bGVzL2xpc3QtZmlsdGVycy9saXN0LWZpbHRlci1pbmxpbmUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFlBQVksRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUUxRDs7R0FFRztBQUNILE1BQU0sT0FBTyx3QkFBd0I7SUFRbkMsWUFBWSxJQUFVO1FBSGYsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBSTNELElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUMxQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzlCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztTQUN2QztJQUNILENBQUM7SUFFTSxPQUFPLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXN0SXRlbU1vZGVsIH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lMaXN0RmlsdGVySW5saW5lTW9kZWwge1xuICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICBwdWJsaWMgdmFsdWU6IGFueTtcbiAgcHVibGljIGRlZmF1bHRWYWx1ZTogYW55O1xuICBwdWJsaWMgZmlsdGVyRnVuY3Rpb246IChpdGVtOiBMaXN0SXRlbU1vZGVsLCBmaWx0ZXI6IGFueSkgPT4gYm9vbGVhbjtcbiAgcHVibGljIG9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgY29uc3RydWN0b3IoZGF0YT86IGFueSkge1xuICAgIGlmIChkYXRhKSB7XG4gICAgICB0aGlzLm5hbWUgPSBkYXRhLm5hbWU7XG4gICAgICB0aGlzLmZpbHRlckZ1bmN0aW9uID0gZGF0YS5maWx0ZXJGdW5jdGlvbjtcbiAgICAgIHRoaXMudmFsdWUgPSBkYXRhLnZhbHVlO1xuICAgICAgdGhpcy50ZW1wbGF0ZSA9IGRhdGEudGVtcGxhdGU7XG4gICAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IGRhdGEuZGVmYXVsdFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VkKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxufVxuIl19
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Output, } from '@angular/core';
|
|
2
|
-
import { map as observableMap, take } from 'rxjs/operators';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../list/state/list-state.state-node";
|
|
5
|
-
import * as i2 from "../list/state/list-state.rxstate";
|
|
6
|
-
import * as i3 from "@skyux/lists";
|
|
7
|
-
import * as i4 from "@angular/common";
|
|
8
|
-
/**
|
|
9
|
-
* Creates a filter summary based on the
|
|
10
|
-
* [list component's](https://developer.blackbaud.com/skyux/components/list/overview#list-properties)
|
|
11
|
-
* `appliedFilters` property. Place this component within the
|
|
12
|
-
* [`sky-list-toolbar`](https://developer.blackbaud.com/skyux/components/list/toolbar) component.
|
|
13
|
-
*/
|
|
14
|
-
export class SkyListFilterSummaryComponent {
|
|
15
|
-
constructor(state, dispatcher) {
|
|
16
|
-
this.state = state;
|
|
17
|
-
this.dispatcher = dispatcher;
|
|
18
|
-
/**
|
|
19
|
-
* Emits a `ListFilterModel` when users select a summary item. A common use case is
|
|
20
|
-
* to open a filter modal when this event is received.
|
|
21
|
-
*/
|
|
22
|
-
this.summaryItemClick = new EventEmitter();
|
|
23
|
-
}
|
|
24
|
-
ngAfterContentInit() {
|
|
25
|
-
// The setTimeout here is to ensure we avoid any ExpressionChangedAfterItHasBeenCheckedError issues.
|
|
26
|
-
setTimeout(() => {
|
|
27
|
-
this.appliedFilters = this.state.pipe(observableMap((state) => {
|
|
28
|
-
return state.filters.filter((filter) => {
|
|
29
|
-
return (filter.value !== '' &&
|
|
30
|
-
filter.value !== undefined &&
|
|
31
|
-
filter.value !== false &&
|
|
32
|
-
filter.value !== filter.defaultValue);
|
|
33
|
-
});
|
|
34
|
-
}));
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
filterSummaryItemDismiss(index) {
|
|
38
|
-
this.appliedFilters.pipe(take(1)).subscribe((filters) => {
|
|
39
|
-
filters.splice(index, 1);
|
|
40
|
-
this.dispatcher.filtersUpdate(filters.slice());
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
filterSummaryItemClick(item) {
|
|
44
|
-
this.summaryItemClick.emit(item);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
SkyListFilterSummaryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFilterSummaryComponent, deps: [{ token: i1.ListState }, { token: i2.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
-
SkyListFilterSummaryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyListFilterSummaryComponent, selector: "sky-list-filter-summary", outputs: { summaryItemClick: "summaryItemClick" }, ngImport: i0, template: "<sky-filter-summary>\n <sky-filter-summary-item\n *ngFor=\"let item of appliedFilters | async; let i = index\"\n (dismiss)=\"filterSummaryItemDismiss(i)\"\n (itemClick)=\"filterSummaryItemClick(item)\"\n [dismissible]=\"item.dismissible\"\n >\n {{ item.label || item.value }}\n </sky-filter-summary-item>\n</sky-filter-summary>\n", components: [{ type: i3.λ5, selector: "sky-filter-summary" }, { type: i3.λ4, selector: "sky-filter-summary-item", inputs: ["dismissible"], outputs: ["dismiss", "itemClick"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i4.AsyncPipe } });
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFilterSummaryComponent, decorators: [{
|
|
50
|
-
type: Component,
|
|
51
|
-
args: [{
|
|
52
|
-
selector: 'sky-list-filter-summary',
|
|
53
|
-
templateUrl: './list-filter-summary.component.html',
|
|
54
|
-
}]
|
|
55
|
-
}], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.ListStateDispatcher }]; }, propDecorators: { summaryItemClick: [{
|
|
56
|
-
type: Output
|
|
57
|
-
}] } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1maWx0ZXItc3VtbWFyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saXN0LWJ1aWxkZXIvc3JjL21vZHVsZXMvbGlzdC1maWx0ZXJzL2xpc3QtZmlsdGVyLXN1bW1hcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlzdC1idWlsZGVyL3NyYy9tb2R1bGVzL2xpc3QtZmlsdGVycy9saXN0LWZpbHRlci1zdW1tYXJ5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsR0FBRyxJQUFJLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBUTVEOzs7OztHQUtHO0FBS0gsTUFBTSxPQUFPLDZCQUE2QjtJQVV4QyxZQUNVLEtBQWdCLEVBQ2hCLFVBQStCO1FBRC9CLFVBQUssR0FBTCxLQUFLLENBQVc7UUFDaEIsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUFYekM7OztXQUdHO1FBRUkscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7SUFPM0QsQ0FBQztJQUVHLGtCQUFrQjtRQUN2QixvR0FBb0c7UUFDcEcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ25DLGFBQWEsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUN0QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQ3JDLE9BQU8sQ0FDTCxNQUFNLENBQUMsS0FBSyxLQUFLLEVBQUU7d0JBQ25CLE1BQU0sQ0FBQyxLQUFLLEtBQUssU0FBUzt3QkFDMUIsTUFBTSxDQUFDLEtBQUssS0FBSyxLQUFLO3dCQUN0QixNQUFNLENBQUMsS0FBSyxLQUFLLE1BQU0sQ0FBQyxZQUFZLENBQ3JDLENBQUM7Z0JBQ0osQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sd0JBQXdCLENBQUMsS0FBYTtRQUMzQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN0RCxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxzQkFBc0IsQ0FBQyxJQUFxQjtRQUNqRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7OzJIQTFDVSw2QkFBNkI7K0dBQTdCLDZCQUE2QixrSEMzQjFDLDZWQVVBOzRGRGlCYSw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsV0FBVyxFQUFFLHNDQUFzQztpQkFDcEQ7a0lBT1EsZ0JBQWdCO3NCQUR0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgbWFwIGFzIG9ic2VydmFibGVNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IExpc3RTdGF0ZSB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvbGlzdC1zdGF0ZS5zdGF0ZS1ub2RlJztcblxuaW1wb3J0IHsgTGlzdFN0YXRlRGlzcGF0Y2hlciB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvbGlzdC1zdGF0ZS5yeHN0YXRlJztcblxuaW1wb3J0IHsgTGlzdEZpbHRlck1vZGVsIH0gZnJvbSAnLi9maWx0ZXIubW9kZWwnO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBmaWx0ZXIgc3VtbWFyeSBiYXNlZCBvbiB0aGVcbiAqIFtsaXN0IGNvbXBvbmVudCdzXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvbGlzdC9vdmVydmlldyNsaXN0LXByb3BlcnRpZXMpXG4gKiBgYXBwbGllZEZpbHRlcnNgIHByb3BlcnR5LiBQbGFjZSB0aGlzIGNvbXBvbmVudCB3aXRoaW4gdGhlXG4gKiBbYHNreS1saXN0LXRvb2xiYXJgXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvbGlzdC90b29sYmFyKSBjb21wb25lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LWZpbHRlci1zdW1tYXJ5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpc3QtZmlsdGVyLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lMaXN0RmlsdGVyU3VtbWFyeUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAvKipcbiAgICogRW1pdHMgYSBgTGlzdEZpbHRlck1vZGVsYCB3aGVuIHVzZXJzIHNlbGVjdCBhIHN1bW1hcnkgaXRlbS4gQSBjb21tb24gdXNlIGNhc2UgaXNcbiAgICogdG8gb3BlbiBhIGZpbHRlciBtb2RhbCB3aGVuIHRoaXMgZXZlbnQgaXMgcmVjZWl2ZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHN1bW1hcnlJdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPExpc3RGaWx0ZXJNb2RlbD4oKTtcblxuICBwdWJsaWMgYXBwbGllZEZpbHRlcnM6IE9ic2VydmFibGU8QXJyYXk8TGlzdEZpbHRlck1vZGVsPj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdGF0ZTogTGlzdFN0YXRlLFxuICAgIHByaXZhdGUgZGlzcGF0Y2hlcjogTGlzdFN0YXRlRGlzcGF0Y2hlclxuICApIHt9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAvLyBUaGUgc2V0VGltZW91dCBoZXJlIGlzIHRvIGVuc3VyZSB3ZSBhdm9pZCBhbnkgRXhwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvciBpc3N1ZXMuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmFwcGxpZWRGaWx0ZXJzID0gdGhpcy5zdGF0ZS5waXBlKFxuICAgICAgICBvYnNlcnZhYmxlTWFwKChzdGF0ZSkgPT4ge1xuICAgICAgICAgIHJldHVybiBzdGF0ZS5maWx0ZXJzLmZpbHRlcigoZmlsdGVyKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICBmaWx0ZXIudmFsdWUgIT09ICcnICYmXG4gICAgICAgICAgICAgIGZpbHRlci52YWx1ZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgIGZpbHRlci52YWx1ZSAhPT0gZmFsc2UgJiZcbiAgICAgICAgICAgICAgZmlsdGVyLnZhbHVlICE9PSBmaWx0ZXIuZGVmYXVsdFZhbHVlXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXJTdW1tYXJ5SXRlbURpc21pc3MoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuYXBwbGllZEZpbHRlcnMucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGZpbHRlcnMpID0+IHtcbiAgICAgIGZpbHRlcnMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHRoaXMuZGlzcGF0Y2hlci5maWx0ZXJzVXBkYXRlKGZpbHRlcnMuc2xpY2UoKSk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZmlsdGVyU3VtbWFyeUl0ZW1DbGljayhpdGVtOiBMaXN0RmlsdGVyTW9kZWwpIHtcbiAgICB0aGlzLnN1bW1hcnlJdGVtQ2xpY2suZW1pdChpdGVtKTtcbiAgfVxufVxuIiwiPHNreS1maWx0ZXItc3VtbWFyeT5cbiAgPHNreS1maWx0ZXItc3VtbWFyeS1pdGVtXG4gICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgYXBwbGllZEZpbHRlcnMgfCBhc3luYzsgbGV0IGkgPSBpbmRleFwiXG4gICAgKGRpc21pc3MpPVwiZmlsdGVyU3VtbWFyeUl0ZW1EaXNtaXNzKGkpXCJcbiAgICAoaXRlbUNsaWNrKT1cImZpbHRlclN1bW1hcnlJdGVtQ2xpY2soaXRlbSlcIlxuICAgIFtkaXNtaXNzaWJsZV09XCJpdGVtLmRpc21pc3NpYmxlXCJcbiAgPlxuICAgIHt7IGl0ZW0ubGFiZWwgfHwgaXRlbS52YWx1ZSB9fVxuICA8L3NreS1maWx0ZXItc3VtbWFyeS1pdGVtPlxuPC9za3ktZmlsdGVyLXN1bW1hcnk+XG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { SkyFilterModule } from '@skyux/lists';
|
|
4
|
-
import { SkyListFilterButtonComponent } from './list-filter-button.component';
|
|
5
|
-
import { SkyListFilterSummaryComponent } from './list-filter-summary.component';
|
|
6
|
-
import { SkyListFilterInlineItemComponent } from './list-filter-inline-item.component';
|
|
7
|
-
import { SkyListFilterInlineComponent } from './list-filter-inline.component';
|
|
8
|
-
import { SkyListFilterInlineItemRendererComponent } from './list-filter-inline-item-renderer.component';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class SkyListFiltersModule {
|
|
11
|
-
}
|
|
12
|
-
SkyListFiltersModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFiltersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
13
|
-
SkyListFiltersModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFiltersModule, declarations: [SkyListFilterButtonComponent,
|
|
14
|
-
SkyListFilterSummaryComponent,
|
|
15
|
-
SkyListFilterInlineItemComponent,
|
|
16
|
-
SkyListFilterInlineComponent,
|
|
17
|
-
SkyListFilterInlineItemRendererComponent], imports: [CommonModule, SkyFilterModule], exports: [SkyListFilterButtonComponent,
|
|
18
|
-
SkyListFilterSummaryComponent,
|
|
19
|
-
SkyListFilterInlineItemComponent,
|
|
20
|
-
SkyListFilterInlineComponent] });
|
|
21
|
-
SkyListFiltersModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFiltersModule, imports: [[CommonModule, SkyFilterModule]] });
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListFiltersModule, decorators: [{
|
|
23
|
-
type: NgModule,
|
|
24
|
-
args: [{
|
|
25
|
-
declarations: [
|
|
26
|
-
SkyListFilterButtonComponent,
|
|
27
|
-
SkyListFilterSummaryComponent,
|
|
28
|
-
SkyListFilterInlineItemComponent,
|
|
29
|
-
SkyListFilterInlineComponent,
|
|
30
|
-
SkyListFilterInlineItemRendererComponent,
|
|
31
|
-
],
|
|
32
|
-
imports: [CommonModule, SkyFilterModule],
|
|
33
|
-
exports: [
|
|
34
|
-
SkyListFilterButtonComponent,
|
|
35
|
-
SkyListFilterSummaryComponent,
|
|
36
|
-
SkyListFilterInlineItemComponent,
|
|
37
|
-
SkyListFilterInlineComponent,
|
|
38
|
-
],
|
|
39
|
-
}]
|
|
40
|
-
}] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1maWx0ZXJzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0LWZpbHRlcnMvbGlzdC1maWx0ZXJzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRS9DLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOztBQWtCeEcsTUFBTSxPQUFPLG9CQUFvQjs7a0hBQXBCLG9CQUFvQjttSEFBcEIsb0JBQW9CLGlCQWQ3Qiw0QkFBNEI7UUFDNUIsNkJBQTZCO1FBQzdCLGdDQUFnQztRQUNoQyw0QkFBNEI7UUFDNUIsd0NBQXdDLGFBRWhDLFlBQVksRUFBRSxlQUFlLGFBRXJDLDRCQUE0QjtRQUM1Qiw2QkFBNkI7UUFDN0IsZ0NBQWdDO1FBQ2hDLDRCQUE0QjttSEFHbkIsb0JBQW9CLFlBUnRCLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQzs0RkFRN0Isb0JBQW9CO2tCQWhCaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osNEJBQTRCO3dCQUM1Qiw2QkFBNkI7d0JBQzdCLGdDQUFnQzt3QkFDaEMsNEJBQTRCO3dCQUM1Qix3Q0FBd0M7cUJBQ3pDO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7b0JBQ3hDLE9BQU8sRUFBRTt3QkFDUCw0QkFBNEI7d0JBQzVCLDZCQUE2Qjt3QkFDN0IsZ0NBQWdDO3dCQUNoQyw0QkFBNEI7cUJBQzdCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IFNreUZpbHRlck1vZHVsZSB9IGZyb20gJ0Bza3l1eC9saXN0cyc7XG5cbmltcG9ydCB7IFNreUxpc3RGaWx0ZXJCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2xpc3QtZmlsdGVyLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5TGlzdEZpbHRlclN1bW1hcnlDb21wb25lbnQgfSBmcm9tICcuL2xpc3QtZmlsdGVyLXN1bW1hcnkuY29tcG9uZW50JztcbmltcG9ydCB7IFNreUxpc3RGaWx0ZXJJbmxpbmVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9saXN0LWZpbHRlci1pbmxpbmUtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5TGlzdEZpbHRlcklubGluZUNvbXBvbmVudCB9IGZyb20gJy4vbGlzdC1maWx0ZXItaW5saW5lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lMaXN0RmlsdGVySW5saW5lSXRlbVJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9saXN0LWZpbHRlci1pbmxpbmUtaXRlbS1yZW5kZXJlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTa3lMaXN0RmlsdGVyQnV0dG9uQ29tcG9uZW50LFxuICAgIFNreUxpc3RGaWx0ZXJTdW1tYXJ5Q29tcG9uZW50LFxuICAgIFNreUxpc3RGaWx0ZXJJbmxpbmVJdGVtQ29tcG9uZW50LFxuICAgIFNreUxpc3RGaWx0ZXJJbmxpbmVDb21wb25lbnQsXG4gICAgU2t5TGlzdEZpbHRlcklubGluZUl0ZW1SZW5kZXJlckNvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgU2t5RmlsdGVyTW9kdWxlXSxcbiAgZXhwb3J0czogW1xuICAgIFNreUxpc3RGaWx0ZXJCdXR0b25Db21wb25lbnQsXG4gICAgU2t5TGlzdEZpbHRlclN1bW1hcnlDb21wb25lbnQsXG4gICAgU2t5TGlzdEZpbHRlcklubGluZUl0ZW1Db21wb25lbnQsXG4gICAgU2t5TGlzdEZpbHRlcklubGluZUNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdEZpbHRlcnNNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ChangeDetectionStrategy, forwardRef, } from '@angular/core';
|
|
2
|
-
import { getValue } from '@skyux/list-builder-common';
|
|
3
|
-
import { distinctUntilChanged, map as observableMap, scan, } from 'rxjs/operators';
|
|
4
|
-
import { ListPagingComponent } from '../list/list-paging.component';
|
|
5
|
-
import { ListPagingSetMaxPagesAction } from '../list/state/paging/set-max-pages.action';
|
|
6
|
-
import { ListPagingSetItemsPerPageAction } from '../list/state/paging/set-items-per-page.action';
|
|
7
|
-
import { ListPagingSetPageNumberAction } from '../list/state/paging/set-page-number.action';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../list/state/list-state.state-node";
|
|
10
|
-
import * as i2 from "../list/state/list-state.rxstate";
|
|
11
|
-
import * as i3 from "@skyux/lists";
|
|
12
|
-
import * as i4 from "@angular/common";
|
|
13
|
-
/* istanbul ignore next */
|
|
14
|
-
const listPagingComponentRef = forwardRef(() => SkyListPagingComponent);
|
|
15
|
-
/**
|
|
16
|
-
* Displays a pagination control for a SKY UX-themed list of data.
|
|
17
|
-
*/
|
|
18
|
-
export class SkyListPagingComponent extends ListPagingComponent {
|
|
19
|
-
constructor(state, dispatcher) {
|
|
20
|
-
super(state, dispatcher);
|
|
21
|
-
/**
|
|
22
|
-
* Specifies the number of list items per page.
|
|
23
|
-
* @default 10
|
|
24
|
-
*/
|
|
25
|
-
this.pageSize = 10;
|
|
26
|
-
/**
|
|
27
|
-
* Specifies the maximum pages to display.
|
|
28
|
-
* @default 5
|
|
29
|
-
*/
|
|
30
|
-
this.maxPages = 5;
|
|
31
|
-
/**
|
|
32
|
-
* Specifies the current page number.
|
|
33
|
-
* @default 1
|
|
34
|
-
*/
|
|
35
|
-
this.pageNumber = 1;
|
|
36
|
-
}
|
|
37
|
-
ngOnInit() {
|
|
38
|
-
this.currentPageNumber = this.state.pipe(observableMap((s) => s.paging.pageNumber));
|
|
39
|
-
this.maxDisplayedPages = this.state.pipe(observableMap((s) => s.paging.maxDisplayedPages));
|
|
40
|
-
this.itemsPerPage = this.state.pipe(observableMap((s) => s.paging.itemsPerPage));
|
|
41
|
-
this.itemCount = this.state.pipe(observableMap((s) => {
|
|
42
|
-
return s.items;
|
|
43
|
-
}), scan((previousValue, newValue) => {
|
|
44
|
-
if (previousValue.lastUpdate > newValue.lastUpdate) {
|
|
45
|
-
return previousValue;
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
return newValue;
|
|
49
|
-
}
|
|
50
|
-
}), observableMap((result) => {
|
|
51
|
-
return result.count;
|
|
52
|
-
}), distinctUntilChanged());
|
|
53
|
-
// subscribe to or use inputs
|
|
54
|
-
getValue(this.pageSize, (pageSize) => this.dispatcher.next(new ListPagingSetItemsPerPageAction(Number(pageSize))));
|
|
55
|
-
getValue(this.maxPages, (maxPages) => this.dispatcher.next(new ListPagingSetMaxPagesAction(Number(maxPages))));
|
|
56
|
-
getValue(this.pageNumber, (pageNumber) => this.dispatcher.next(new ListPagingSetPageNumberAction(Number(pageNumber))));
|
|
57
|
-
}
|
|
58
|
-
pageChange(currentPage) {
|
|
59
|
-
// Paging must be updated after list data has been updated.
|
|
60
|
-
// Adding a setTimeout will pull it out of the stream.
|
|
61
|
-
setTimeout(() => {
|
|
62
|
-
this.dispatcher.next(new ListPagingSetPageNumberAction(Number(currentPage)));
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
SkyListPagingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListPagingComponent, deps: [{ token: i1.ListState }, { token: i2.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
67
|
-
SkyListPagingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyListPagingComponent, selector: "sky-list-paging", inputs: { pageSize: "pageSize", maxPages: "maxPages", pageNumber: "pageNumber" }, providers: [
|
|
68
|
-
{ provide: ListPagingComponent, useExisting: listPagingComponentRef },
|
|
69
|
-
], usesInheritance: true, ngImport: i0, template: "<sky-paging\n [pageSize]=\"itemsPerPage | async\"\n [maxPages]=\"maxDisplayedPages | async\"\n [currentPage]=\"currentPageNumber | async\"\n [itemCount]=\"itemCount | async\"\n (currentPageChange)=\"pageChange($event)\"\n>\n</sky-paging>\n", components: [{ type: i3.λ7, selector: "sky-paging", inputs: ["currentPage", "itemCount", "maxPages", "pageSize", "pagingLabel"], outputs: ["currentPageChange"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListPagingComponent, decorators: [{
|
|
71
|
-
type: Component,
|
|
72
|
-
args: [{
|
|
73
|
-
selector: 'sky-list-paging',
|
|
74
|
-
templateUrl: './list-paging.component.html',
|
|
75
|
-
providers: [
|
|
76
|
-
{ provide: ListPagingComponent, useExisting: listPagingComponentRef },
|
|
77
|
-
],
|
|
78
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
79
|
-
}]
|
|
80
|
-
}], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.ListStateDispatcher }]; }, propDecorators: { pageSize: [{
|
|
81
|
-
type: Input
|
|
82
|
-
}], maxPages: [{
|
|
83
|
-
type: Input
|
|
84
|
-
}], pageNumber: [{
|
|
85
|
-
type: Input
|
|
86
|
-
}] } });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYWdpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlzdC1idWlsZGVyL3NyYy9tb2R1bGVzL2xpc3QtcGFnaW5nL2xpc3QtcGFnaW5nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0LXBhZ2luZy9saXN0LXBhZ2luZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCx1QkFBdUIsRUFDdkIsVUFBVSxHQUVYLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBYSxRQUFRLEVBQWlCLE1BQU0sNEJBQTRCLENBQUM7QUFJaEYsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixHQUFHLElBQUksYUFBYSxFQUNwQixJQUFJLEdBQ0wsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUdwRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUV4RixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUVqRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7O0FBRTVGLDBCQUEwQjtBQUMxQixNQUFNLHNCQUFzQixHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBRXhFOztHQUVHO0FBU0gsTUFBTSxPQUFPLHNCQUNYLFNBQVEsbUJBQW1CO0lBZ0MzQixZQUFZLEtBQWdCLEVBQUUsVUFBK0I7UUFDM0QsS0FBSyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQTlCM0I7OztXQUdHO1FBRUksYUFBUSxHQUFnQyxFQUFFLENBQUM7UUFFbEQ7OztXQUdH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LG1CQUFtQixFQUFFLFdBQVcsRUFBRSxzQkFBc0IsRUFBRTtxQkFDdEU7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO2tJQVVRLFFBQVE7c0JBRGQsS0FBSztnQkFRQyxRQUFRO3NCQURkLEtBQUs7Z0JBUUMsVUFBVTtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBmb3J3YXJkUmVmLFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBc3luY0xpc3QsIGdldFZhbHVlLCBMaXN0SXRlbU1vZGVsIH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBtYXAgYXMgb2JzZXJ2YWJsZU1hcCxcbiAgc2Nhbixcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBMaXN0UGFnaW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vbGlzdC9saXN0LXBhZ2luZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdFN0YXRlIH0gZnJvbSAnLi4vbGlzdC9zdGF0ZS9saXN0LXN0YXRlLnN0YXRlLW5vZGUnO1xuaW1wb3J0IHsgTGlzdFN0YXRlRGlzcGF0Y2hlciB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvbGlzdC1zdGF0ZS5yeHN0YXRlJztcbmltcG9ydCB7IExpc3RQYWdpbmdTZXRNYXhQYWdlc0FjdGlvbiB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvcGFnaW5nL3NldC1tYXgtcGFnZXMuYWN0aW9uJztcblxuaW1wb3J0IHsgTGlzdFBhZ2luZ1NldEl0ZW1zUGVyUGFnZUFjdGlvbiB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvcGFnaW5nL3NldC1pdGVtcy1wZXItcGFnZS5hY3Rpb24nO1xuXG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbiB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvcGFnaW5nL3NldC1wYWdlLW51bWJlci5hY3Rpb24nO1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuY29uc3QgbGlzdFBhZ2luZ0NvbXBvbmVudFJlZiA9IGZvcndhcmRSZWYoKCkgPT4gU2t5TGlzdFBhZ2luZ0NvbXBvbmVudCk7XG5cbi8qKlxuICogRGlzcGxheXMgYSBwYWdpbmF0aW9uIGNvbnRyb2wgZm9yIGEgU0tZIFVYLXRoZW1lZCBsaXN0IG9mIGRhdGEuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LXBhZ2luZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXBhZ2luZy5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogTGlzdFBhZ2luZ0NvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IGxpc3RQYWdpbmdDb21wb25lbnRSZWYgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreUxpc3RQYWdpbmdDb21wb25lbnRcbiAgZXh0ZW5kcyBMaXN0UGFnaW5nQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0XG57XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBsaXN0IGl0ZW1zIHBlciBwYWdlLlxuICAgKiBAZGVmYXVsdCAxMFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBhZ2VTaXplOiBPYnNlcnZhYmxlPG51bWJlcj4gfCBudW1iZXIgPSAxMDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBtYXhpbXVtIHBhZ2VzIHRvIGRpc3BsYXkuXG4gICAqIEBkZWZhdWx0IDVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXhQYWdlczogT2JzZXJ2YWJsZTxudW1iZXI+IHwgbnVtYmVyID0gNTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZU51bWJlcjogT2JzZXJ2YWJsZTxudW1iZXI+IHwgbnVtYmVyID0gMTtcblxuICBwdWJsaWMgY3VycmVudFBhZ2VOdW1iZXI6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICBwdWJsaWMgbWF4RGlzcGxheWVkUGFnZXM6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICBwdWJsaWMgaXRlbXNQZXJQYWdlOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgcHVibGljIGl0ZW1Db3VudDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gIGNvbnN0cnVjdG9yKHN0YXRlOiBMaXN0U3RhdGUsIGRpc3BhdGNoZXI6IExpc3RTdGF0ZURpc3BhdGNoZXIpIHtcbiAgICBzdXBlcihzdGF0ZSwgZGlzcGF0Y2hlcik7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jdXJyZW50UGFnZU51bWJlciA9IHRoaXMuc3RhdGUucGlwZShcbiAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMucGFnaW5nLnBhZ2VOdW1iZXIpXG4gICAgKTtcblxuICAgIHRoaXMubWF4RGlzcGxheWVkUGFnZXMgPSB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLnBhZ2luZy5tYXhEaXNwbGF5ZWRQYWdlcylcbiAgICApO1xuXG4gICAgdGhpcy5pdGVtc1BlclBhZ2UgPSB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLnBhZ2luZy5pdGVtc1BlclBhZ2UpXG4gICAgKTtcblxuICAgIHRoaXMuaXRlbUNvdW50ID0gdGhpcy5zdGF0ZS5waXBlKFxuICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4ge1xuICAgICAgICByZXR1cm4gcy5pdGVtcztcbiAgICAgIH0pLFxuICAgICAgc2NhbihcbiAgICAgICAgKFxuICAgICAgICAgIHByZXZpb3VzVmFsdWU6IEFzeW5jTGlzdDxMaXN0SXRlbU1vZGVsPixcbiAgICAgICAgICBuZXdWYWx1ZTogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+XG4gICAgICAgICkgPT4ge1xuICAgICAgICAgIGlmIChwcmV2aW91c1ZhbHVlLmxhc3RVcGRhdGUgPiBuZXdWYWx1ZS5sYXN0VXBkYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4gcHJldmlvdXNWYWx1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKSxcbiAgICAgIG9ic2VydmFibGVNYXAoKHJlc3VsdDogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+KSA9PiB7XG4gICAgICAgIHJldHVybiByZXN1bHQuY291bnQ7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApO1xuXG4gICAgLy8gc3Vic2NyaWJlIHRvIG9yIHVzZSBpbnB1dHNcbiAgICBnZXRWYWx1ZSh0aGlzLnBhZ2VTaXplLCAocGFnZVNpemU6IG51bWJlcikgPT5cbiAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KFxuICAgICAgICBuZXcgTGlzdFBhZ2luZ1NldEl0ZW1zUGVyUGFnZUFjdGlvbihOdW1iZXIocGFnZVNpemUpKVxuICAgICAgKVxuICAgICk7XG4gICAgZ2V0VmFsdWUodGhpcy5tYXhQYWdlcywgKG1heFBhZ2VzOiBudW1iZXIpID0+XG4gICAgICB0aGlzLmRpc3BhdGNoZXIubmV4dChuZXcgTGlzdFBhZ2luZ1NldE1heFBhZ2VzQWN0aW9uKE51bWJlcihtYXhQYWdlcykpKVxuICAgICk7XG4gICAgZ2V0VmFsdWUodGhpcy5wYWdlTnVtYmVyLCAocGFnZU51bWJlcjogbnVtYmVyKSA9PlxuICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQoXG4gICAgICAgIG5ldyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbihOdW1iZXIocGFnZU51bWJlcikpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBwYWdlQ2hhbmdlKGN1cnJlbnRQYWdlOiBudW1iZXIpIHtcbiAgICAvLyBQYWdpbmcgbXVzdCBiZSB1cGRhdGVkIGFmdGVyIGxpc3QgZGF0YSBoYXMgYmVlbiB1cGRhdGVkLlxuICAgIC8vIEFkZGluZyBhIHNldFRpbWVvdXQgd2lsbCBwdWxsIGl0IG91dCBvZiB0aGUgc3RyZWFtLlxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQoXG4gICAgICAgIG5ldyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbihOdW1iZXIoY3VycmVudFBhZ2UpKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPHNreS1wYWdpbmdcbiAgW3BhZ2VTaXplXT1cIml0ZW1zUGVyUGFnZSB8IGFzeW5jXCJcbiAgW21heFBhZ2VzXT1cIm1heERpc3BsYXllZFBhZ2VzIHwgYXN5bmNcIlxuICBbY3VycmVudFBhZ2VdPVwiY3VycmVudFBhZ2VOdW1iZXIgfCBhc3luY1wiXG4gIFtpdGVtQ291bnRdPVwiaXRlbUNvdW50IHwgYXN5bmNcIlxuICAoY3VycmVudFBhZ2VDaGFuZ2UpPVwicGFnZUNoYW5nZSgkZXZlbnQpXCJcbj5cbjwvc2t5LXBhZ2luZz5cbiJdfQ==
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { SkyListPagingComponent } from './list-paging.component';
|
|
4
|
-
import { SkyPagingModule } from '@skyux/lists';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class SkyListPagingModule {
|
|
7
|
-
}
|
|
8
|
-
SkyListPagingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListPagingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
-
SkyListPagingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListPagingModule, declarations: [SkyListPagingComponent], imports: [CommonModule, SkyPagingModule], exports: [SkyListPagingComponent] });
|
|
10
|
-
SkyListPagingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListPagingModule, imports: [[CommonModule, SkyPagingModule]] });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListPagingModule, decorators: [{
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
declarations: [SkyListPagingComponent],
|
|
15
|
-
imports: [CommonModule, SkyPagingModule],
|
|
16
|
-
exports: [SkyListPagingComponent],
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYWdpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlzdC1idWlsZGVyL3NyYy9tb2R1bGVzL2xpc3QtcGFnaW5nL2xpc3QtcGFnaW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQU8vQyxNQUFNLE9BQU8sbUJBQW1COztpSEFBbkIsbUJBQW1CO2tIQUFuQixtQkFBbUIsaUJBSmYsc0JBQXNCLGFBQzNCLFlBQVksRUFBRSxlQUFlLGFBQzdCLHNCQUFzQjtrSEFFckIsbUJBQW1CLFlBSHJCLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQzs0RkFHN0IsbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDO29CQUN4QyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNreUxpc3RQYWdpbmdDb21wb25lbnQgfSBmcm9tICcuL2xpc3QtcGFnaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lQYWdpbmdNb2R1bGUgfSBmcm9tICdAc2t5dXgvbGlzdHMnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTa3lMaXN0UGFnaW5nQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgU2t5UGFnaW5nTW9kdWxlXSxcbiAgZXhwb3J0czogW1NreUxpc3RQYWdpbmdDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lMaXN0UGFnaW5nTW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import { distinctUntilChanged, map as observableMap, take, takeUntil, } from 'rxjs/operators';
|
|
4
|
-
import { ListFilterModel } from '../list-filters/filter.model';
|
|
5
|
-
import { ListPagingSetPageNumberAction } from '../list/state/paging/set-page-number.action';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../list/state/list-state.state-node";
|
|
8
|
-
import * as i2 from "../list/state/list-state.rxstate";
|
|
9
|
-
import * as i3 from "@skyux/layout";
|
|
10
|
-
import * as i4 from "./list-toolbar-item-renderer.component";
|
|
11
|
-
import * as i5 from "@skyux/forms";
|
|
12
|
-
import * as i6 from "@angular/common";
|
|
13
|
-
import * as i7 from "@skyux/i18n";
|
|
14
|
-
let uniqueId = 0;
|
|
15
|
-
/**
|
|
16
|
-
* @internal
|
|
17
|
-
*/
|
|
18
|
-
export class SkyListMultiselectToolbarComponent {
|
|
19
|
-
constructor(state, dispatcher) {
|
|
20
|
-
this.state = state;
|
|
21
|
-
this.dispatcher = dispatcher;
|
|
22
|
-
this.showOnlySelected = false;
|
|
23
|
-
this.multiselectToolbarId = `sky-list-multiselect-toolbar-${uniqueId++}`;
|
|
24
|
-
this.selectedIdMap = new Map();
|
|
25
|
-
this.ngUnsubscribe = new Subject();
|
|
26
|
-
}
|
|
27
|
-
ngOnInit() {
|
|
28
|
-
this.state
|
|
29
|
-
.pipe(observableMap((t) => t.selected.item), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.selectedMapEqual))
|
|
30
|
-
.subscribe((model) => {
|
|
31
|
-
this.selectedIdMap = model.selectedIdMap;
|
|
32
|
-
if (this.showOnlySelected) {
|
|
33
|
-
this.reapplyFilter(true);
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
// If 'show-selected' filter is programatically set from a child component (e.g. checkilst),
|
|
37
|
-
// make sure the checked state of the 'show-selected' checkbox stays in sync.
|
|
38
|
-
this.state
|
|
39
|
-
.pipe(observableMap((t) => t.filters), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.showSelectedValuesEqual))
|
|
40
|
-
.subscribe((filters) => {
|
|
41
|
-
const showSelectedFilter = filters.find((filter) => filter.name === 'show-selected');
|
|
42
|
-
if (showSelectedFilter) {
|
|
43
|
-
this.showOnlySelected = showSelectedFilter.value === 'true';
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
ngOnDestroy() {
|
|
48
|
-
this.ngUnsubscribe.next();
|
|
49
|
-
this.ngUnsubscribe.complete();
|
|
50
|
-
}
|
|
51
|
-
selectAll() {
|
|
52
|
-
this.state
|
|
53
|
-
.pipe(observableMap((state) => state.items.items), take(1))
|
|
54
|
-
.subscribe((items) => {
|
|
55
|
-
this.dispatcher.setSelected(items.map((item) => item.id), true);
|
|
56
|
-
if (this.showOnlySelected) {
|
|
57
|
-
this.reapplyFilter(this.showOnlySelected);
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
clearSelections() {
|
|
62
|
-
this.state
|
|
63
|
-
.pipe(observableMap((state) => state.items.items), take(1))
|
|
64
|
-
.subscribe((items) => {
|
|
65
|
-
this.dispatcher.setSelected(items.map((item) => item.id), false);
|
|
66
|
-
if (this.showOnlySelected) {
|
|
67
|
-
this.reapplyFilter(this.showOnlySelected);
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
changeVisibleItems(change) {
|
|
72
|
-
this.showOnlySelected = change.checked;
|
|
73
|
-
this.reapplyFilter(change.checked);
|
|
74
|
-
}
|
|
75
|
-
reapplyFilter(isSelected) {
|
|
76
|
-
let self = this;
|
|
77
|
-
this.state
|
|
78
|
-
.pipe(observableMap((state) => state.filters), take(1))
|
|
79
|
-
.subscribe((filters) => {
|
|
80
|
-
filters = filters.filter((filter) => filter.name !== 'show-selected');
|
|
81
|
-
filters.push(self.getShowSelectedFilter(isSelected));
|
|
82
|
-
this.dispatcher.filtersUpdate(filters);
|
|
83
|
-
});
|
|
84
|
-
// If "show selected" is checked and paging is enabled, go to page one.
|
|
85
|
-
/* istanbul ignore else */
|
|
86
|
-
if (isSelected) {
|
|
87
|
-
this.state.pipe(take(1)).subscribe((currentState) => {
|
|
88
|
-
if (currentState.paging.pageNumber &&
|
|
89
|
-
currentState.paging.pageNumber !== 1) {
|
|
90
|
-
this.dispatcher.next(new ListPagingSetPageNumberAction(Number(1)));
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
this.dispatcher.toolbarSetDisabled(isSelected);
|
|
95
|
-
}
|
|
96
|
-
getShowSelectedFilter(isSelected) {
|
|
97
|
-
return new ListFilterModel({
|
|
98
|
-
name: 'show-selected',
|
|
99
|
-
value: isSelected.toString(),
|
|
100
|
-
filterFunction: (model, showOnlySelected) => {
|
|
101
|
-
/* istanbul ignore else */
|
|
102
|
-
if (showOnlySelected.toString() !== false.toString()) {
|
|
103
|
-
return this.selectedIdMap.get(model.id);
|
|
104
|
-
}
|
|
105
|
-
},
|
|
106
|
-
defaultValue: false.toString(),
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
showSelectedValuesEqual(prev, next) {
|
|
110
|
-
const prevShowSelectedFilter = prev.find((filter) => filter.name === 'show-selected');
|
|
111
|
-
const nextShowSelectedFilter = next.find((filter) => filter.name === 'show-selected');
|
|
112
|
-
// Both undefined.
|
|
113
|
-
if (!prevShowSelectedFilter && !nextShowSelectedFilter) {
|
|
114
|
-
return true;
|
|
115
|
-
}
|
|
116
|
-
// Only one undefined.
|
|
117
|
-
if ((prevShowSelectedFilter && !nextShowSelectedFilter) ||
|
|
118
|
-
(!prevShowSelectedFilter && nextShowSelectedFilter)) {
|
|
119
|
-
return false;
|
|
120
|
-
}
|
|
121
|
-
// Defined, but with different "value".
|
|
122
|
-
return prevShowSelectedFilter.value === nextShowSelectedFilter.value;
|
|
123
|
-
}
|
|
124
|
-
selectedMapEqual(prev, next) {
|
|
125
|
-
if (prev.selectedIdMap.size !== next.selectedIdMap.size) {
|
|
126
|
-
return false;
|
|
127
|
-
}
|
|
128
|
-
for (let i = 0; i < next.selectedIdMap.size; i++) {
|
|
129
|
-
const key = Array.from(next.selectedIdMap.keys())[i];
|
|
130
|
-
const value = next.selectedIdMap.get(key);
|
|
131
|
-
/* istanbul ignore next */
|
|
132
|
-
if (value !== prev.selectedIdMap.get(key)) {
|
|
133
|
-
return false;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
return true;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
SkyListMultiselectToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListMultiselectToolbarComponent, deps: [{ token: i1.ListState }, { token: i2.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
140
|
-
SkyListMultiselectToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyListMultiselectToolbarComponent, selector: "sky-list-multiselect-toolbar", inputs: { showOnlySelected: "showOnlySelected" }, ngImport: i0, template: "<sky-toolbar class=\"sky-list-multiselect-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-list-toolbar-item-renderer [template]=\"selectAllTemplate\">\n </sky-list-toolbar-item-renderer>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-list-toolbar-item-renderer [template]=\"clearSelectionsTemplate\">\n </sky-list-toolbar-item-renderer>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <ng-container *ngTemplateOutlet=\"showSelectedTemplate\"></ng-container>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n</sky-toolbar>\n\n<ng-template #selectAllTemplate>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.id]=\"multiselectToolbarId + '-select-all'\"\n (click)=\"selectAll(); $event.preventDefault()\"\n >\n {{ 'skyux_list_mutliselect_select_all' | skyLibResources }}\n </button>\n</ng-template>\n\n<ng-template #clearSelectionsTemplate>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.id]=\"multiselectToolbarId + '-clear-all'\"\n (click)=\"clearSelections(); $event.preventDefault()\"\n >\n {{ 'skyux_list_multiselect_clear_all' | skyLibResources }}\n </button>\n</ng-template>\n\n<ng-template #showSelectedTemplate>\n <sky-checkbox\n [attr.id]=\"multiselectToolbarId + '-show-selected'\"\n [checked]=\"showOnlySelected\"\n (change)=\"changeVisibleItems($event)\"\n >\n <sky-checkbox-label>\n {{ 'skyux_list_mutliselect_show_selected' | skyLibResources }}\n </sky-checkbox-label>\n </sky-checkbox>\n</ng-template>\n", styles: [":host-context(sky-toolbar +) .sky-list-multiselect-toolbar ::ng-deep .sky-toolbar-container,:host-context(.sky-list-toolbar-search +) .sky-list-multiselect-toolbar ::ng-deep .sky-toolbar-container{border-top:none}\n"], components: [{ type: i3.λ37, selector: "sky-toolbar" }, { type: i3.λ38, selector: "sky-toolbar-section" }, { type: i3.λ39, selector: "sky-toolbar-item" }, { type: i4.SkyListToolbarItemRendererComponent, selector: "sky-list-toolbar-item-renderer", inputs: ["template"] }, { type: i3.λ40, selector: "sky-toolbar-view-actions" }, { type: i5.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i5.λ4, selector: "sky-checkbox-label" }], directives: [{ type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "skyLibResources": i7.SkyLibResourcesPipe } });
|
|
141
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListMultiselectToolbarComponent, decorators: [{
|
|
142
|
-
type: Component,
|
|
143
|
-
args: [{
|
|
144
|
-
selector: 'sky-list-multiselect-toolbar',
|
|
145
|
-
templateUrl: './list-multiselect-toolbar.component.html',
|
|
146
|
-
styleUrls: ['./list-multiselect-toolbar.component.scss'],
|
|
147
|
-
}]
|
|
148
|
-
}], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.ListStateDispatcher }]; }, propDecorators: { showOnlySelected: [{
|
|
149
|
-
type: Input
|
|
150
|
-
}] } });
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1tdWx0aXNlbGVjdC10b29sYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0LXRvb2xiYXIvbGlzdC1tdWx0aXNlbGVjdC10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0LXRvb2xiYXIvbGlzdC1tdWx0aXNlbGVjdC10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9CLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsR0FBRyxJQUFJLGFBQWEsRUFDcEIsSUFBSSxFQUNKLFNBQVMsR0FDVixNQUFNLGdCQUFnQixDQUFDO0FBSXhCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUkvRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7Ozs7O0FBUTVGLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQUVqQjs7R0FFRztBQU1ILE1BQU0sT0FBTyxrQ0FBa0M7SUFVN0MsWUFDVSxLQUFnQixFQUNoQixVQUErQjtRQUQvQixVQUFLLEdBQUwsS0FBSyxDQUFXO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQXFCO1FBVmxDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUV6Qix5QkFBb0IsR0FBRyxnQ0FBZ0MsUUFBUSxFQUFFLEVBQUUsQ0FBQztRQUVuRSxrQkFBYSxHQUFHLElBQUksR0FBRyxFQUFtQixDQUFDO1FBRTNDLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUtuQyxDQUFDO0lB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QUVELHVDQUF1QztRQUN2QyxPQUFPLHNCQUFzQixDQUFDLEtBQUssS0FBSyxzQkFBc0IsQ0FBQyxLQUFLLENBQUM7SUFDdkUsQ0FBQztJQUVPLGdCQUFnQixDQUN0QixJQUF1QixFQUN2QixJQUF1QjtRQUV2QixJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1lBQ3ZELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDaEQsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDMUMsMEJBQTBCO1lBQzFCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN6QyxPQUFPLEtBQUssQ0FBQzthQUNkO1NBQ0Y7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O2dJQXJMVSxrQ0FBa0M7b0hBQWxDLGtDQUFrQyxzSENuQy9DLDJqREFpREE7NEZEZGEsa0NBQWtDO2tCQUw5QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFdBQVcsRUFBRSwyQ0FBMkM7b0JBQ3hELFNBQVMsRUFBRSxDQUFDLDJDQUEyQyxDQUFDO2lCQUN6RDtrSUFHUSxnQkFBZ0I7c0JBRHRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBtYXAgYXMgb2JzZXJ2YWJsZU1hcCxcbiAgdGFrZSxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreUNoZWNrYm94Q2hhbmdlIH0gZnJvbSAnQHNreXV4L2Zvcm1zJztcblxuaW1wb3J0IHsgTGlzdEZpbHRlck1vZGVsIH0gZnJvbSAnLi4vbGlzdC1maWx0ZXJzL2ZpbHRlci5tb2RlbCc7XG5cbmltcG9ydCB7IExpc3RJdGVtTW9kZWwgfSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbmltcG9ydCB7IExpc3RQYWdpbmdTZXRQYWdlTnVtYmVyQWN0aW9uIH0gZnJvbSAnLi4vbGlzdC9zdGF0ZS9wYWdpbmcvc2V0LXBhZ2UtbnVtYmVyLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RTZWxlY3RlZE1vZGVsIH0gZnJvbSAnLi4vbGlzdC9zdGF0ZS9zZWxlY3RlZC9zZWxlY3RlZC5tb2RlbCc7XG5cbmltcG9ydCB7IExpc3RTdGF0ZSB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvbGlzdC1zdGF0ZS5zdGF0ZS1ub2RlJztcblxuaW1wb3J0IHsgTGlzdFN0YXRlRGlzcGF0Y2hlciB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvbGlzdC1zdGF0ZS5yeHN0YXRlJztcblxubGV0IHVuaXF1ZUlkID0gMDtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWxpc3QtbXVsdGlzZWxlY3QtdG9vbGJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LW11bHRpc2VsZWN0LXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saXN0LW11bHRpc2VsZWN0LXRvb2xiYXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdE11bHRpc2VsZWN0VG9vbGJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgcHVibGljIHNob3dPbmx5U2VsZWN0ZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgbXVsdGlzZWxlY3RUb29sYmFySWQgPSBgc2t5LWxpc3QtbXVsdGlzZWxlY3QtdG9vbGJhci0ke3VuaXF1ZUlkKyt9YDtcblxuICBwcml2YXRlIHNlbGVjdGVkSWRNYXAgPSBuZXcgTWFwPHN0cmluZywgYm9vbGVhbj4oKTtcblxuICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RhdGU6IExpc3RTdGF0ZSxcbiAgICBwcml2YXRlIGRpc3BhdGNoZXI6IExpc3RTdGF0ZURpc3BhdGNoZXJcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlXG4gICAgICAucGlwZShcbiAgICAgICAgb2JzZXJ2YWJsZU1hcCgodCkgPT4gdC5zZWxlY3RlZC5pdGVtKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKHRoaXMuc2VsZWN0ZWRNYXBFcXVhbClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKG1vZGVsOiBMaXN0U2VsZWN0ZWRNb2RlbCkgPT4ge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSWRNYXAgPSBtb2RlbC5zZWxlY3RlZElkTWFwO1xuXG4gICAgICAgIGlmICh0aGlzLnNob3dPbmx5U2VsZWN0ZWQpIHtcbiAgICAgICAgICB0aGlzLnJlYXBwbHlGaWx0ZXIodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgLy8gSWYgJ3Nob3ctc2VsZWN0ZWQnIGZpbHRlciBpcyBwcm9ncmFtYXRpY2FsbHkgc2V0IGZyb20gYSBjaGlsZCBjb21wb25lbnQgKGUuZy4gY2hlY2tpbHN0KSxcbiAgICAvLyBtYWtlIHN1cmUgdGhlIGNoZWNrZWQgc3RhdGUgb2YgdGhlICdzaG93LXNlbGVjdGVkJyBjaGVja2JveCBzdGF5cyBpbiBzeW5jLlxuICAgIHRoaXMuc3RhdGVcbiAgICAgIC5waXBlKFxuICAgICAgICBvYnNlcnZhYmxlTWFwKCh0KSA9PiB0LmZpbHRlcnMpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQodGhpcy5zaG93U2VsZWN0ZWRWYWx1ZXNFcXVhbClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcnM6IExpc3RGaWx0ZXJNb2RlbFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IHNob3dTZWxlY3RlZEZpbHRlciA9IGZpbHRlcnMuZmluZChcbiAgICAgICAgICAoZmlsdGVyKSA9PiBmaWx0ZXIubmFtZSA9PT0gJ3Nob3ctc2VsZWN0ZWQnXG4gICAgICAgICk7XG4gICAgICAgIGlmIChzaG93U2VsZWN0ZWRGaWx0ZXIpIHtcbiAgICAgICAgICB0aGlzLnNob3dPbmx5U2VsZWN0ZWQgPSBzaG93U2VsZWN0ZWRGaWx0ZXIudmFsdWUgPT09ICd0cnVlJztcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RBbGwoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVxuICAgICAgLnBpcGUoXG4gICAgICAgIG9ic2VydmFibGVNYXAoKHN0YXRlKSA9PiBzdGF0ZS5pdGVtcy5pdGVtcyksXG4gICAgICAgIHRha2UoMSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGl0ZW1zKSA9PiB7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2hlci5zZXRTZWxlY3RlZChcbiAgICAgICAgICBpdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uaWQpLFxuICAgICAgICAgIHRydWVcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHRoaXMuc2hvd09ubHlTZWxlY3RlZCkge1xuICAgICAgICAgIHRoaXMucmVhcHBseUZpbHRlcih0aGlzLnNob3dPbmx5U2VsZWN0ZWQpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhclNlbGVjdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVxuICAgICAgLnBpcGUoXG4gICAgICAgIG9ic2VydmFibGVNYXAoKHN0YXRlKSA9PiBzdGF0ZS5pdGVtcy5pdGVtcyksXG4gICAgICAgIHRha2UoMSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGl0ZW1zKSA9PiB7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2hlci5zZXRTZWxlY3RlZChcbiAgICAgICAgICBpdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uaWQpLFxuICAgICAgICAgIGZhbHNlXG4gICAgICAgICk7XG4gICAgICAgIGlmICh0aGlzLnNob3dPbmx5U2VsZWN0ZWQpIHtcbiAgICAgICAgICB0aGlzLnJlYXBwbHlGaWx0ZXIodGhpcy5zaG93T25seVNlbGVjdGVkKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlVmlzaWJsZUl0ZW1zKGNoYW5nZTogU2t5Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dPbmx5U2VsZWN0ZWQgPSBjaGFuZ2UuY2hlY2tlZDtcbiAgICB0aGlzLnJlYXBwbHlGaWx0ZXIoY2hhbmdlLmNoZWNrZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFwcGx5RmlsdGVyKGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBsZXQgc2VsZiA9IHRoaXM7XG5cbiAgICB0aGlzLnN0YXRlXG4gICAgICAucGlwZShcbiAgICAgICAgb2JzZXJ2YWJsZU1hcCgoc3RhdGUpID0+IHN0YXRlLmZpbHRlcnMpLFxuICAgICAgICB0YWtlKDEpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChmaWx0ZXJzOiBMaXN0RmlsdGVyTW9kZWxbXSkgPT4ge1xuICAgICAgICBmaWx0ZXJzID0gZmlsdGVycy5maWx0ZXIoKGZpbHRlcikgPT4gZmlsdGVyLm5hbWUgIT09ICdzaG93LXNlbGVjdGVkJyk7XG4gICAgICAgIGZpbHRlcnMucHVzaChzZWxmLmdldFNob3dTZWxlY3RlZEZpbHRlcihpc1NlbGVjdGVkKSk7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2hlci5maWx0ZXJzVXBkYXRlKGZpbHRlcnMpO1xuICAgICAgfSk7XG5cbiAgICAvLyBJZiBcInNob3cgc2VsZWN0ZWRcIiBpcyBjaGVja2VkIGFuZCBwYWdpbmcgaXMgZW5hYmxlZCwgZ28gdG8gcGFnZSBvbmUuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoaXNTZWxlY3RlZCkge1xuICAgICAgdGhpcy5zdGF0ZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoY3VycmVudFN0YXRlKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBjdXJyZW50U3RhdGUucGFnaW5nLnBhZ2VOdW1iZXIgJiZcbiAgICAgICAgICBjdXJyZW50U3RhdGUucGFnaW5nLnBhZ2VOdW1iZXIgIT09IDFcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQobmV3IExpc3RQYWdpbmdTZXRQYWdlTnVtYmVyQWN0aW9uKE51bWJlcigxKSkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5kaXNwYXRjaGVyLnRvb2xiYXJTZXREaXNhYmxlZChpc1NlbGVjdGVkKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2hvd1NlbGVjdGVkRmlsdGVyKGlzU2VsZWN0ZWQ6IGJvb2xlYW4pOiBMaXN0RmlsdGVyTW9kZWwge1xuICAgIHJldHVybiBuZXcgTGlzdEZpbHRlck1vZGVsKHtcbiAgICAgIG5hbWU6ICdzaG93LXNlbGVjdGVkJyxcbiAgICAgIHZhbHVlOiBpc1NlbGVjdGVkLnRvU3RyaW5nKCksXG4gICAgICBmaWx0ZXJGdW5jdGlvbjogKG1vZGVsOiBMaXN0SXRlbU1vZGVsLCBzaG93T25seVNlbGVjdGVkOiBib29sZWFuKSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmIChzaG93T25seVNlbGVjdGVkLnRvU3RyaW5nKCkgIT09IGZhbHNlLnRvU3RyaW5nKCkpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZElkTWFwLmdldChtb2RlbC5pZCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLnRvU3RyaW5nKCksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNob3dTZWxlY3RlZFZhbHVlc0VxdWFsKFxuICAgIHByZXY6IExpc3RGaWx0ZXJNb2RlbFtdLFxuICAgIG5leHQ6IExpc3RGaWx0ZXJNb2RlbFtdXG4gICk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHByZXZTaG93U2VsZWN0ZWRGaWx0ZXIgPSBwcmV2LmZpbmQoXG4gICAgICAoZmlsdGVyKSA9PiBmaWx0ZXIubmFtZSA9PT0gJ3Nob3ctc2VsZWN0ZWQnXG4gICAgKTtcbiAgICBjb25zdCBuZXh0U2hvd1NlbGVjdGVkRmlsdGVyID0gbmV4dC5maW5kKFxuICAgICAgKGZpbHRlcikgPT4gZmlsdGVyLm5hbWUgPT09ICdzaG93LXNlbGVjdGVkJ1xuICAgICk7XG5cbiAgICAvLyBCb3RoIHVuZGVmaW5lZC5cbiAgICBpZiAoIXByZXZTaG93U2VsZWN0ZWRGaWx0ZXIgJiYgIW5leHRTaG93U2VsZWN0ZWRGaWx0ZXIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8vIE9ubHkgb25lIHVuZGVmaW5lZC5cbiAgICBpZiAoXG4gICAgICAocHJldlNob3dTZWxlY3RlZEZpbHRlciAmJiAhbmV4dFNob3dTZWxlY3RlZEZpbHRlcikgfHxcbiAgICAgICghcHJldlNob3dTZWxlY3RlZEZpbHRlciAmJiBuZXh0U2hvd1NlbGVjdGVkRmlsdGVyKVxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIERlZmluZWQsIGJ1dCB3aXRoIGRpZmZlcmVudCBcInZhbHVlXCIuXG4gICAgcmV0dXJuIHByZXZTaG93U2VsZWN0ZWRGaWx0ZXIudmFsdWUgPT09IG5leHRTaG93U2VsZWN0ZWRGaWx0ZXIudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdGVkTWFwRXF1YWwoXG4gICAgcHJldjogTGlzdFNlbGVjdGVkTW9kZWwsXG4gICAgbmV4dDogTGlzdFNlbGVjdGVkTW9kZWxcbiAgKTogYm9vbGVhbiB7XG4gICAgaWYgKHByZXYuc2VsZWN0ZWRJZE1hcC5zaXplICE9PSBuZXh0LnNlbGVjdGVkSWRNYXAuc2l6ZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbmV4dC5zZWxlY3RlZElkTWFwLnNpemU7IGkrKykge1xuICAgICAgY29uc3Qga2V5ID0gQXJyYXkuZnJvbShuZXh0LnNlbGVjdGVkSWRNYXAua2V5cygpKVtpXTtcbiAgICAgIGNvbnN0IHZhbHVlID0gbmV4dC5zZWxlY3RlZElkTWFwLmdldChrZXkpO1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgIGlmICh2YWx1ZSAhPT0gcHJldi5zZWxlY3RlZElkTWFwLmdldChrZXkpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIiwiPHNreS10b29sYmFyIGNsYXNzPVwic2t5LWxpc3QtbXVsdGlzZWxlY3QtdG9vbGJhclwiPlxuICA8c2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgICA8c2t5LXRvb2xiYXItaXRlbT5cbiAgICAgIDxza3ktbGlzdC10b29sYmFyLWl0ZW0tcmVuZGVyZXIgW3RlbXBsYXRlXT1cInNlbGVjdEFsbFRlbXBsYXRlXCI+XG4gICAgICA8L3NreS1saXN0LXRvb2xiYXItaXRlbS1yZW5kZXJlcj5cbiAgICA8L3NreS10b29sYmFyLWl0ZW0+XG4gICAgPHNreS10b29sYmFyLWl0ZW0+XG4gICAgICA8c2t5LWxpc3QtdG9vbGJhci1pdGVtLXJlbmRlcmVyIFt0ZW1wbGF0ZV09XCJjbGVhclNlbGVjdGlvbnNUZW1wbGF0ZVwiPlxuICAgICAgPC9za3ktbGlzdC10b29sYmFyLWl0ZW0tcmVuZGVyZXI+XG4gICAgPC9za3ktdG9vbGJhci1pdGVtPlxuICAgIDxza3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2hvd1NlbGVjdGVkVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3NreS10b29sYmFyLXZpZXctYWN0aW9ucz5cbiAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuPC9za3ktdG9vbGJhcj5cblxuPG5nLXRlbXBsYXRlICNzZWxlY3RBbGxUZW1wbGF0ZT5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwic2t5LWJ0biBza3ktYnRuLWxpbmtcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIFthdHRyLmlkXT1cIm11bHRpc2VsZWN0VG9vbGJhcklkICsgJy1zZWxlY3QtYWxsJ1wiXG4gICAgKGNsaWNrKT1cInNlbGVjdEFsbCgpOyAkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID5cbiAgICB7eyAnc2t5dXhfbGlzdF9tdXRsaXNlbGVjdF9zZWxlY3RfYWxsJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY2xlYXJTZWxlY3Rpb25zVGVtcGxhdGU+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rXCJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBbYXR0ci5pZF09XCJtdWx0aXNlbGVjdFRvb2xiYXJJZCArICctY2xlYXItYWxsJ1wiXG4gICAgKGNsaWNrKT1cImNsZWFyU2VsZWN0aW9ucygpOyAkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID5cbiAgICB7eyAnc2t5dXhfbGlzdF9tdWx0aXNlbGVjdF9jbGVhcl9hbGwnIHwgc2t5TGliUmVzb3VyY2VzIH19XG4gIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzaG93U2VsZWN0ZWRUZW1wbGF0ZT5cbiAgPHNreS1jaGVja2JveFxuICAgIFthdHRyLmlkXT1cIm11bHRpc2VsZWN0VG9vbGJhcklkICsgJy1zaG93LXNlbGVjdGVkJ1wiXG4gICAgW2NoZWNrZWRdPVwic2hvd09ubHlTZWxlY3RlZFwiXG4gICAgKGNoYW5nZSk9XCJjaGFuZ2VWaXNpYmxlSXRlbXMoJGV2ZW50KVwiXG4gID5cbiAgICA8c2t5LWNoZWNrYm94LWxhYmVsPlxuICAgICAge3sgJ3NreXV4X2xpc3RfbXV0bGlzZWxlY3Rfc2hvd19zZWxlY3RlZCcgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICA8L3NreS1jaGVja2JveC1sYWJlbD5cbiAgPC9za3ktY2hlY2tib3g+XG48L25nLXRlbXBsYXRlPlxuIl19
|