@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
package/esm2015/index.js
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
export * from './lib/modules/list/list-data-request.model';
|
|
2
|
+
export * from './lib/modules/list/list-data-response.model';
|
|
3
|
+
export * from './lib/modules/list/list-data.provider';
|
|
4
|
+
export * from './lib/modules/list/list.module';
|
|
5
|
+
export * from './lib/modules/list/state/list-state-action.type';
|
|
6
|
+
export * from './lib/modules/list/state/list-state.model';
|
|
7
|
+
export * from './lib/modules/list/state/list-state.rxstate';
|
|
8
|
+
export * from './lib/modules/list/state/list-state.state-node';
|
|
9
|
+
export * from './lib/modules/list/state/filters/filters.orchestrator';
|
|
10
|
+
export * from './lib/modules/list/state/filters/update.action';
|
|
11
|
+
export * from './lib/modules/list/state/items/items.orchestrator';
|
|
12
|
+
export * from './lib/modules/list/state/items/load.action';
|
|
13
|
+
export * from './lib/modules/list/state/items/set-items-selected.action';
|
|
14
|
+
export * from './lib/modules/list/state/items/set-loading.action';
|
|
15
|
+
export * from './lib/modules/list/state/paging/paging.model';
|
|
16
|
+
export * from './lib/modules/list/state/paging/paging.orchestrator';
|
|
17
|
+
export * from './lib/modules/list/state/paging/set-items-per-page.action';
|
|
18
|
+
export * from './lib/modules/list/state/paging/set-max-pages.action';
|
|
19
|
+
export * from './lib/modules/list/state/paging/set-page-number.action';
|
|
20
|
+
export * from './lib/modules/list/state/search/search.model';
|
|
21
|
+
export * from './lib/modules/list/state/search/search.orchestrator';
|
|
22
|
+
export * from './lib/modules/list/state/search/set-field-selectors.action';
|
|
23
|
+
export * from './lib/modules/list/state/search/set-functions.action';
|
|
24
|
+
export * from './lib/modules/list/state/search/set-options.action';
|
|
25
|
+
export * from './lib/modules/list/state/search/set-search-text.action';
|
|
26
|
+
export * from './lib/modules/list/state/selected/load.action';
|
|
27
|
+
export * from './lib/modules/list/state/selected/selected.model';
|
|
28
|
+
export * from './lib/modules/list/state/selected/selected.orchestrator';
|
|
29
|
+
export * from './lib/modules/list/state/selected/set-item-selected.action';
|
|
30
|
+
export * from './lib/modules/list/state/selected/set-items-selected.action';
|
|
31
|
+
export * from './lib/modules/list/state/selected/set-loading.action';
|
|
32
|
+
export * from './lib/modules/list/state/sort/label.model';
|
|
33
|
+
export * from './lib/modules/list/state/sort/set-available.action';
|
|
34
|
+
export * from './lib/modules/list/state/sort/set-field-selectors.action';
|
|
35
|
+
export * from './lib/modules/list/state/sort/set-global.action';
|
|
36
|
+
export * from './lib/modules/list/state/sort/sort.model';
|
|
37
|
+
export * from './lib/modules/list/state/sort/sort.orchestrator';
|
|
38
|
+
export * from './lib/modules/list/state/toolbar/disable.action';
|
|
39
|
+
export * from './lib/modules/list/state/toolbar/load.action';
|
|
40
|
+
export * from './lib/modules/list/state/toolbar/remove.action';
|
|
41
|
+
export * from './lib/modules/list/state/toolbar/set-exists.action';
|
|
42
|
+
export * from './lib/modules/list/state/toolbar/set-type.action';
|
|
43
|
+
export * from './lib/modules/list/state/toolbar/show-multiselect-toolbar.action';
|
|
44
|
+
export * from './lib/modules/list/state/toolbar/toolbar-item.model';
|
|
45
|
+
export * from './lib/modules/list/state/toolbar/toolbar.model';
|
|
46
|
+
export * from './lib/modules/list/state/toolbar/toolbar.orchestrator';
|
|
47
|
+
export * from './lib/modules/list/state/views/load.action';
|
|
48
|
+
export * from './lib/modules/list/state/views/set-active.action';
|
|
49
|
+
export * from './lib/modules/list/state/views/view.model';
|
|
50
|
+
export * from './lib/modules/list/state/views/views.model';
|
|
51
|
+
export * from './lib/modules/list/state/views/views.orchestrator';
|
|
52
|
+
export * from './lib/modules/list-data-provider-in-memory/list-data-in-memory.provider';
|
|
53
|
+
export * from './lib/modules/list-filters/filter.model';
|
|
54
|
+
export * from './lib/modules/list-filters/list-filter-inline.model';
|
|
55
|
+
export * from './lib/modules/list-filters/list-filters.module';
|
|
56
|
+
export * from './lib/modules/list-paging/list-paging.module';
|
|
57
|
+
export * from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-action';
|
|
58
|
+
export * from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module';
|
|
59
|
+
export * from './lib/modules/list-toolbar/list-toolbar.module';
|
|
60
|
+
// The following exports are used internally by `@skyux/list-builder-view-grids`.
|
|
61
|
+
export * from './lib/modules/list/list-view.component';
|
|
62
|
+
export * from './lib/modules/list/list.component';
|
|
63
|
+
export * from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component';
|
|
64
|
+
export * from './lib/modules/list-toolbar/list-toolbar.component';
|
|
65
|
+
// Components and directives must be exported to support Angular's "partial" Ivy compiler.
|
|
66
|
+
// Obscure names are used to indicate types are not part of the public API.
|
|
67
|
+
export { SkyListFilterButtonComponent as λ1 } from './lib/modules/list-filters/list-filter-button.component';
|
|
68
|
+
export { SkyListFilterSummaryComponent as λ2 } from './lib/modules/list-filters/list-filter-summary.component';
|
|
69
|
+
export { SkyListFilterInlineItemComponent as λ3 } from './lib/modules/list-filters/list-filter-inline-item.component';
|
|
70
|
+
export { SkyListFilterInlineComponent as λ4 } from './lib/modules/list-filters/list-filter-inline.component';
|
|
71
|
+
export { SkyListPagingComponent as λ5 } from './lib/modules/list-paging/list-paging.component';
|
|
72
|
+
export { SkyListSecondaryActionComponent as λ6 } from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component';
|
|
73
|
+
export { SkyListSecondaryActionsComponent as λ7 } from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component';
|
|
74
|
+
export { SkyListToolbarItemComponent as λ8 } from './lib/modules/list-toolbar/list-toolbar-item.component';
|
|
75
|
+
export { SkyListToolbarSortComponent as λ9 } from './lib/modules/list-toolbar/list-toolbar-sort.component';
|
|
76
|
+
export { SkyListToolbarViewActionsComponent as λ10 } from './lib/modules/list-toolbar/list-toolbar-view-actions.component';
|
|
77
|
+
export { SkyListToolbarSearchActionsComponent as λ11 } from './lib/modules/list-toolbar/list-toolbar-search-actions.component';
|
|
78
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/components/list-builder/src/index.ts"],"names":[],"mappings":"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","sourcesContent":["export * from './lib/modules/list/list-data-request.model';\nexport * from './lib/modules/list/list-data-response.model';\nexport * from './lib/modules/list/list-data.provider';\nexport * from './lib/modules/list/list.module';\n\nexport * from './lib/modules/list/state/list-state-action.type';\nexport * from './lib/modules/list/state/list-state.model';\nexport * from './lib/modules/list/state/list-state.rxstate';\nexport * from './lib/modules/list/state/list-state.state-node';\n\nexport * from './lib/modules/list/state/filters/filters.orchestrator';\nexport * from './lib/modules/list/state/filters/update.action';\n\nexport * from './lib/modules/list/state/items/items.orchestrator';\nexport * from './lib/modules/list/state/items/load.action';\nexport * from './lib/modules/list/state/items/set-items-selected.action';\nexport * from './lib/modules/list/state/items/set-loading.action';\n\nexport * from './lib/modules/list/state/paging/paging.model';\nexport * from './lib/modules/list/state/paging/paging.orchestrator';\nexport * from './lib/modules/list/state/paging/set-items-per-page.action';\nexport * from './lib/modules/list/state/paging/set-max-pages.action';\nexport * from './lib/modules/list/state/paging/set-page-number.action';\n\nexport * from './lib/modules/list/state/search/search.model';\nexport * from './lib/modules/list/state/search/search.orchestrator';\nexport * from './lib/modules/list/state/search/set-field-selectors.action';\nexport * from './lib/modules/list/state/search/set-functions.action';\nexport * from './lib/modules/list/state/search/set-options.action';\nexport * from './lib/modules/list/state/search/set-search-text.action';\n\nexport * from './lib/modules/list/state/selected/load.action';\nexport * from './lib/modules/list/state/selected/selected.model';\nexport * from './lib/modules/list/state/selected/selected.orchestrator';\nexport * from './lib/modules/list/state/selected/set-item-selected.action';\nexport * from './lib/modules/list/state/selected/set-items-selected.action';\nexport * from './lib/modules/list/state/selected/set-loading.action';\n\nexport * from './lib/modules/list/state/sort/label.model';\nexport * from './lib/modules/list/state/sort/set-available.action';\nexport * from './lib/modules/list/state/sort/set-field-selectors.action';\nexport * from './lib/modules/list/state/sort/set-global.action';\nexport * from './lib/modules/list/state/sort/sort.model';\nexport * from './lib/modules/list/state/sort/sort.orchestrator';\n\nexport * from './lib/modules/list/state/toolbar/disable.action';\nexport * from './lib/modules/list/state/toolbar/load.action';\nexport * from './lib/modules/list/state/toolbar/remove.action';\nexport * from './lib/modules/list/state/toolbar/set-exists.action';\nexport * from './lib/modules/list/state/toolbar/set-type.action';\nexport * from './lib/modules/list/state/toolbar/show-multiselect-toolbar.action';\nexport * from './lib/modules/list/state/toolbar/toolbar-item.model';\nexport * from './lib/modules/list/state/toolbar/toolbar.model';\nexport * from './lib/modules/list/state/toolbar/toolbar.orchestrator';\n\nexport * from './lib/modules/list/state/views/load.action';\nexport * from './lib/modules/list/state/views/set-active.action';\nexport * from './lib/modules/list/state/views/view.model';\nexport * from './lib/modules/list/state/views/views.model';\nexport * from './lib/modules/list/state/views/views.orchestrator';\n\nexport * from './lib/modules/list-data-provider-in-memory/list-data-in-memory.provider';\n\nexport * from './lib/modules/list-filters/filter.model';\nexport * from './lib/modules/list-filters/list-filter-inline.model';\nexport * from './lib/modules/list-filters/list-filters.module';\n\nexport * from './lib/modules/list-paging/list-paging.module';\n\nexport * from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-action';\nexport * from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module';\n\nexport * from './lib/modules/list-toolbar/list-toolbar.module';\n\n// The following exports are used internally by `@skyux/list-builder-view-grids`.\nexport * from './lib/modules/list/list-view.component';\nexport * from './lib/modules/list/list.component';\nexport * from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component';\nexport * from './lib/modules/list-toolbar/list-toolbar.component';\n\n// Components and directives must be exported to support Angular's \"partial\" Ivy compiler.\n// Obscure names are used to indicate types are not part of the public API.\nexport { SkyListFilterButtonComponent as λ1 } from './lib/modules/list-filters/list-filter-button.component';\nexport { SkyListFilterSummaryComponent as λ2 } from './lib/modules/list-filters/list-filter-summary.component';\nexport { SkyListFilterInlineItemComponent as λ3 } from './lib/modules/list-filters/list-filter-inline-item.component';\nexport { SkyListFilterInlineComponent as λ4 } from './lib/modules/list-filters/list-filter-inline.component';\nexport { SkyListPagingComponent as λ5 } from './lib/modules/list-paging/list-paging.component';\nexport { SkyListSecondaryActionComponent as λ6 } from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component';\nexport { SkyListSecondaryActionsComponent as λ7 } from './lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component';\nexport { SkyListToolbarItemComponent as λ8 } from './lib/modules/list-toolbar/list-toolbar-item.component';\nexport { SkyListToolbarSortComponent as λ9 } from './lib/modules/list-toolbar/list-toolbar-sort.component';\nexport { SkyListToolbarViewActionsComponent as λ10 } from './lib/modules/list-toolbar/list-toolbar-view-actions.component';\nexport { SkyListToolbarSearchActionsComponent as λ11 } from './lib/modules/list-toolbar/list-toolbar-search-actions.component';\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export class ListDataRequestModel {
|
|
2
|
+
constructor(data) {
|
|
3
|
+
/**
|
|
4
|
+
* Indicates whether to disable the search bar and filter button.
|
|
5
|
+
* @default false
|
|
6
|
+
*/
|
|
7
|
+
this.isToolbarDisabled = false;
|
|
8
|
+
if (data !== undefined) {
|
|
9
|
+
this.filters = data.filters;
|
|
10
|
+
this.pageSize = data.pageSize;
|
|
11
|
+
this.pageNumber = data.pageNumber;
|
|
12
|
+
this.search = data.search;
|
|
13
|
+
this.sort = data.sort;
|
|
14
|
+
this.isToolbarDisabled = data.isToolbarDisabled;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=list-data-request.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-data-request.model.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder/src/lib/modules/list/list-data-request.model.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,oBAAoB;IA+B/B,YAAY,IAAU;QANtB;;;WAGG;QACI,sBAAiB,GAAY,KAAK,CAAC;QAGxC,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;SACjD;IACH,CAAC;CACF","sourcesContent":["import { ListFilterModel } from '../list-filters/filter.model';\nimport { ListSearchModel } from './state/search/search.model';\nimport { ListSortModel } from './state/sort/sort.model';\n\nexport class ListDataRequestModel {\n /**\n * Specifies a function to determine whether items are filtered.\n * This property is required when using an in-memory data provider.\n */\n public filters: ListFilterModel[];\n /**\n * Specifies the number of items to display per page.\n */\n public pageSize: number;\n /**\n * Specifies the current page number.\n */\n public pageNumber: number;\n /**\n * Specifies a function to dynamically manage the data source when users\n * change the text in the list field. The search function must return an\n * array or a promise of an array. The `search` property is particularly useful\n * when the data source does not live in the source code.\n */\n public search: ListSearchModel;\n /**\n * Specifies a set of fields to sort by.\n */\n public sort: ListSortModel;\n /**\n * Indicates whether to disable the search bar and filter button.\n * @default false\n */\n public isToolbarDisabled: boolean = false;\n\n constructor(data?: any) {\n if (data !== undefined) {\n this.filters = data.filters;\n this.pageSize = data.pageSize;\n this.pageNumber = data.pageNumber;\n this.search = data.search;\n this.sort = data.sort;\n this.isToolbarDisabled = data.isToolbarDisabled;\n }\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-data-response.model.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder/src/lib/modules/list/list-data-response.model.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,qBAAqB;IAWhC,YAAY,IAAU;QACpB,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;SACzB;IACH,CAAC;CACF","sourcesContent":["import { ListItemModel } from '@skyux/list-builder-common';\n\nexport class ListDataResponseModel {\n /**\n * The total number of records in the list.\n */\n public count: number;\n /**\n * An array of the items returned. For information about `ListItemModel`, see the\n * [shared classes for lists](https://developer.blackbaud.com/skyux-list-builder-common/docs/list-builder-common).\n */\n public items: ListItemModel[];\n\n constructor(data?: any) {\n if (data !== undefined) {\n this.count = data.count;\n this.items = data.items;\n }\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-data.provider.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder/src/lib/modules/list/list-data.provider.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,OAAgB,gBAAgB;IACpC,YAAY,IAA6B,IAAG,CAAC;CAO9C","sourcesContent":["import { Observable } from 'rxjs';\n\nimport { ListDataRequestModel } from './list-data-request.model';\nimport { ListDataResponseModel } from './list-data-response.model';\n\n/**\n * @internal\n */\nexport abstract class ListDataProvider {\n constructor(data?: Observable<Array<any>>) {}\n\n public abstract get(\n request: ListDataRequestModel\n ): Observable<ListDataResponseModel>;\n\n public abstract count(): Observable<number>;\n}\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
|
+
/**
|
|
3
|
+
* Provides a SKY UX-themed pagination control to display list data across multiple pages.
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export class ListPagingComponent {
|
|
7
|
+
constructor(state, dispatcher) {
|
|
8
|
+
this.initialized = new BehaviorSubject(false);
|
|
9
|
+
this.state = state;
|
|
10
|
+
this.dispatcher = dispatcher;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=list-paging.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-paging.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder/src/lib/modules/list/list-paging.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAKvC;;;GAGG;AACH,MAAM,OAAgB,mBAAmB;IAKvC,YAAY,KAAgB,EAAE,UAA+B;QAJnD,gBAAW,GAA6B,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;QAK3E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF","sourcesContent":["import { BehaviorSubject } from 'rxjs';\n\nimport { ListState } from './state/list-state.state-node';\nimport { ListStateDispatcher } from './state/list-state.rxstate';\n\n/**\n * Provides a SKY UX-themed pagination control to display list data across multiple pages.\n * @internal\n */\nexport abstract class ListPagingComponent {\n protected initialized: BehaviorSubject<boolean> = new BehaviorSubject(false);\n protected state: ListState;\n protected dispatcher: ListStateDispatcher;\n\n constructor(state: ListState, dispatcher: ListStateDispatcher) {\n this.state = state;\n this.dispatcher = dispatcher;\n }\n}\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { distinctUntilChanged, map as observableMap } from 'rxjs/operators';
|
|
2
|
+
let idIndex = 0;
|
|
3
|
+
/**
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export class ListViewComponent {
|
|
7
|
+
constructor(state, defaultName) {
|
|
8
|
+
this.viewId = `sky-list-view-cmp-${++idIndex}`;
|
|
9
|
+
this.state = state;
|
|
10
|
+
this.viewName = defaultName;
|
|
11
|
+
/* istanbul ignore next */
|
|
12
|
+
this.hasToolbar = this.state.pipe(observableMap((s) => s.toolbar.exists));
|
|
13
|
+
this.active = this.state.pipe(observableMap((s) => s.views.active === this.viewId));
|
|
14
|
+
this.active
|
|
15
|
+
.pipe(distinctUntilChanged())
|
|
16
|
+
.subscribe((isActive) => isActive ? this.onViewActive() : this.onViewInactive());
|
|
17
|
+
}
|
|
18
|
+
get id() {
|
|
19
|
+
return this.viewId;
|
|
20
|
+
}
|
|
21
|
+
get label() {
|
|
22
|
+
return this.viewName;
|
|
23
|
+
}
|
|
24
|
+
/* istanbul ignore next */
|
|
25
|
+
onViewActive() { }
|
|
26
|
+
onViewInactive() { }
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=list-view.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-view.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder/src/lib/modules/list/list-view.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK5E,IAAI,OAAO,GAAG,CAAC,CAAC;AAEhB;;GAEG;AACH,MAAM,OAAgB,iBAAiB;IASrC,YAAY,KAAgB,EAAE,WAAmB;QAFzC,WAAM,GAAW,qBAAqB,EAAE,OAAO,EAAE,CAAC;QAGxD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;QAE5B,0BAA0B;QAC1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAE1E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC3B,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,CACrD,CAAC;QAEF,IAAI,CAAC,MAAM;aACR,IAAI,CAAC,oBAAoB,EAAE,CAAC;aAC5B,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CACtB,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CACvD,CAAC;IACN,CAAC;IAED,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,0BAA0B;IACnB,YAAY,KAAI,CAAC;IAEjB,cAAc,KAAI,CAAC;CAC3B","sourcesContent":["import { Observable } from 'rxjs';\n\nimport { distinctUntilChanged, map as observableMap } from 'rxjs/operators';\n\nimport { ListState } from './state/list-state.state-node';\nimport { SkyListComponent } from '../list/list.component';\n\nlet idIndex = 0;\n\n/**\n * @internal\n */\nexport abstract class ListViewComponent {\n public active: Observable<boolean>;\n\n protected viewName: string;\n protected state: ListState;\n protected list: SkyListComponent;\n protected hasToolbar: Observable<boolean>;\n private viewId: string = `sky-list-view-cmp-${++idIndex}`;\n\n constructor(state: ListState, defaultName: string) {\n this.state = state;\n this.viewName = defaultName;\n\n /* istanbul ignore next */\n this.hasToolbar = this.state.pipe(observableMap((s) => s.toolbar.exists));\n\n this.active = this.state.pipe(\n observableMap((s) => s.views.active === this.viewId)\n );\n\n this.active\n .pipe(distinctUntilChanged())\n .subscribe((isActive) =>\n isActive ? this.onViewActive() : this.onViewInactive()\n );\n }\n\n get id() {\n return this.viewId;\n }\n\n get label() {\n return this.viewName;\n }\n\n /* istanbul ignore next */\n public onViewActive() {}\n\n public onViewInactive() {}\n}\n"]}
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
import { combineLatest as observableCombineLatest, of as observableOf, Subject, } from 'rxjs';
|
|
2
|
+
import { distinctUntilChanged, flatMap, map as observableMap, skip, take, takeUntil, } from 'rxjs/operators';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Input, Output, QueryList, } from '@angular/core';
|
|
4
|
+
import { getValue } from '@skyux/list-builder-common';
|
|
5
|
+
import { ListItemsLoadAction } from './state/items/load.action';
|
|
6
|
+
import { ListItemsSetLoadingAction } from './state/items/set-loading.action';
|
|
7
|
+
import { ListSelectedLoadAction } from './state/selected/load.action';
|
|
8
|
+
import { ListSelectedSetLoadingAction } from './state/selected/set-loading.action';
|
|
9
|
+
import { ListSortModel } from './state/sort/sort.model';
|
|
10
|
+
import { ListSortSetFieldSelectorsAction } from './state/sort/set-field-selectors.action';
|
|
11
|
+
import { ListDataRequestModel } from './list-data-request.model';
|
|
12
|
+
import { ListDataResponseModel } from './list-data-response.model';
|
|
13
|
+
import { ListDataProvider } from './list-data.provider';
|
|
14
|
+
import { SkyListInMemoryDataProvider } from '../list-data-provider-in-memory/list-data-in-memory.provider';
|
|
15
|
+
import { ListState } from './state/list-state.state-node';
|
|
16
|
+
import { ListStateDispatcher } from './state/list-state.rxstate';
|
|
17
|
+
import { isObservable, ListItemModel, } from '@skyux/list-builder-common';
|
|
18
|
+
import { ListViewComponent } from './list-view.component';
|
|
19
|
+
import { ListPagingSetPageNumberAction } from './state/paging/set-page-number.action';
|
|
20
|
+
import { ListViewsLoadAction } from './state/views/load.action';
|
|
21
|
+
import { ListViewsSetActiveAction } from './state/views/set-active.action';
|
|
22
|
+
import { ListViewModel } from './state/views/view.model';
|
|
23
|
+
import * as i0 from "@angular/core";
|
|
24
|
+
import * as i1 from "./state/list-state.state-node";
|
|
25
|
+
import * as i2 from "./state/list-state.rxstate";
|
|
26
|
+
let idIndex = 0;
|
|
27
|
+
export class SkyListComponent {
|
|
28
|
+
constructor(state, dispatcher) {
|
|
29
|
+
this.state = state;
|
|
30
|
+
this.dispatcher = dispatcher;
|
|
31
|
+
this.id = `sky-list-cmp-${++idIndex}`;
|
|
32
|
+
/**
|
|
33
|
+
* Specifies the data to display. The list component requires this property or the
|
|
34
|
+
* `dataProvider` property. For checklist or multiselect grids, each row requires an
|
|
35
|
+
* `id` property to manage selected items with the `selectedIds` input and the
|
|
36
|
+
* `selectedIdsChange` event. If you do not provide an `id`, the list automatically
|
|
37
|
+
* generates one. To update data in your view outside of a `dataProvider`, you must use
|
|
38
|
+
* an observable instead of a static array.
|
|
39
|
+
*/
|
|
40
|
+
this.data = [];
|
|
41
|
+
/**
|
|
42
|
+
* Specifies a set of filters to apply to list data.
|
|
43
|
+
* These filters create a filter summary when the list includes the
|
|
44
|
+
* [`sky-list-filter-summary`](https://developer.blackbaud.com/skyux/components/list/filters)
|
|
45
|
+
* component.
|
|
46
|
+
*/
|
|
47
|
+
this.appliedFilters = [];
|
|
48
|
+
/**
|
|
49
|
+
* For list views that support item selection, emits the selected entries.
|
|
50
|
+
*/
|
|
51
|
+
this.selectedIdsChange = new EventEmitter();
|
|
52
|
+
/**
|
|
53
|
+
* Emits the filters applied to the list.
|
|
54
|
+
*/
|
|
55
|
+
this.appliedFiltersChange = new EventEmitter();
|
|
56
|
+
this.dataFirstLoad = false;
|
|
57
|
+
this.lastSelectedIds = [];
|
|
58
|
+
this.lastFilters = [];
|
|
59
|
+
this.ngUnsubscribe = new Subject();
|
|
60
|
+
}
|
|
61
|
+
ngAfterContentInit() {
|
|
62
|
+
if (this.data && this.dataProvider && this.initialTotal) {
|
|
63
|
+
this.dataFirstLoad = true;
|
|
64
|
+
}
|
|
65
|
+
if (this.listViews.length > 0) {
|
|
66
|
+
let defaultView = this.defaultView === undefined
|
|
67
|
+
? this.listViews.first
|
|
68
|
+
: this.defaultView;
|
|
69
|
+
this.dispatcher.next(new ListViewsLoadAction(this.listViews.map((v) => new ListViewModel(v.id, v.label))));
|
|
70
|
+
// activate the default view
|
|
71
|
+
this.dispatcher.next(new ListViewsSetActiveAction(defaultView.id));
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
// set sort fields
|
|
77
|
+
getValue(this.sortFields, (sortFields) => {
|
|
78
|
+
let sortArray;
|
|
79
|
+
if (!Array.isArray(sortFields) && sortFields) {
|
|
80
|
+
sortArray = [sortFields];
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
sortArray = sortFields;
|
|
84
|
+
}
|
|
85
|
+
this.dispatcher.next(new ListSortSetFieldSelectorsAction(sortArray || []));
|
|
86
|
+
});
|
|
87
|
+
this.displayedItems.subscribe((result) => {
|
|
88
|
+
this.dispatcher.next(new ListItemsSetLoadingAction());
|
|
89
|
+
this.dispatcher.next(new ListItemsLoadAction(result.items, true, true, result.count));
|
|
90
|
+
});
|
|
91
|
+
// Watch for selection changes.
|
|
92
|
+
this.state
|
|
93
|
+
.pipe(observableMap((current) => current.selected), takeUntil(this.ngUnsubscribe), distinctUntilChanged())
|
|
94
|
+
.subscribe((selected) => {
|
|
95
|
+
// Update lastSelectedIds to help us retain user selections.
|
|
96
|
+
let selectedIdsList = [];
|
|
97
|
+
selected.item.selectedIdMap.forEach((value, key) => {
|
|
98
|
+
if (value === true) {
|
|
99
|
+
selectedIdsList.push(key);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
// If changes are distinct, emit selectedIdsChange.
|
|
103
|
+
const distinctChanges = !this.arraysEqual(this.lastSelectedIds, selectedIdsList);
|
|
104
|
+
if (this.selectedIdsChange.observers.length > 0 && distinctChanges) {
|
|
105
|
+
this.selectedIdsChange.emit(selected.item.selectedIdMap);
|
|
106
|
+
}
|
|
107
|
+
this.lastSelectedIds = selectedIdsList;
|
|
108
|
+
});
|
|
109
|
+
if (this.appliedFiltersChange.observers.length > 0) {
|
|
110
|
+
this.state
|
|
111
|
+
.pipe(observableMap((current) => current.filters), takeUntil(this.ngUnsubscribe), skip(1))
|
|
112
|
+
.subscribe((filters) => {
|
|
113
|
+
/**
|
|
114
|
+
* We are doing this instead of a distinctUntilChange due to memory allocation issues
|
|
115
|
+
* with the javascript array. To fix fully the array should be changed to an object in
|
|
116
|
+
* a breaking change.
|
|
117
|
+
*/
|
|
118
|
+
if (!this.arraysEqual(filters, this.lastFilters)) {
|
|
119
|
+
this.lastFilters = filters.slice(0);
|
|
120
|
+
this.appliedFiltersChange.emit(filters);
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
ngOnChanges(changes) {
|
|
126
|
+
if (changes['appliedFilters'] &&
|
|
127
|
+
changes['appliedFilters'].currentValue !==
|
|
128
|
+
changes['appliedFilters'].previousValue) {
|
|
129
|
+
this.state.pipe(take(1)).subscribe((currentState) => {
|
|
130
|
+
if (currentState.paging.pageNumber &&
|
|
131
|
+
currentState.paging.pageNumber !== 1) {
|
|
132
|
+
this.dispatcher.next(new ListPagingSetPageNumberAction(Number(1)));
|
|
133
|
+
}
|
|
134
|
+
this.dispatcher.filtersUpdate(this.appliedFilters);
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
if (changes['selectedIds']) {
|
|
138
|
+
// Only send selection changes to dispatcher if changes are distinct.
|
|
139
|
+
const newSelectedIds = changes['selectedIds'].currentValue;
|
|
140
|
+
if (!this.arraysEqual(newSelectedIds, this.lastSelectedIds)) {
|
|
141
|
+
this.dispatcher.setSelected(newSelectedIds, true, true);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
ngOnDestroy() {
|
|
146
|
+
this.ngUnsubscribe.next();
|
|
147
|
+
this.ngUnsubscribe.complete();
|
|
148
|
+
}
|
|
149
|
+
refreshDisplayedItems() {
|
|
150
|
+
this.displayedItems.pipe(take(1)).subscribe((result) => {
|
|
151
|
+
this.dispatcher.next(new ListItemsSetLoadingAction());
|
|
152
|
+
this.dispatcher.next(new ListItemsLoadAction(result.items, true, true, result.count));
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
get displayedItems() {
|
|
156
|
+
if (!this.data && !this.dataProvider) {
|
|
157
|
+
throw new Error('List requires data or dataProvider to be set.');
|
|
158
|
+
}
|
|
159
|
+
let data = this.data;
|
|
160
|
+
if (!isObservable(data)) {
|
|
161
|
+
data = observableOf(this.data);
|
|
162
|
+
}
|
|
163
|
+
if (!this.dataProvider) {
|
|
164
|
+
this.dataProvider = new SkyListInMemoryDataProvider(data, this.searchFunction);
|
|
165
|
+
}
|
|
166
|
+
let selectedIds = this.selectedIds || observableOf([]);
|
|
167
|
+
if (!isObservable(selectedIds)) {
|
|
168
|
+
selectedIds = observableOf(selectedIds);
|
|
169
|
+
}
|
|
170
|
+
let selectedChanged = false;
|
|
171
|
+
// This subject is used to cancel previous request to the list's data provider when a new change
|
|
172
|
+
// to the list's state occurs. In a future breaking change this should be replaced or coupled
|
|
173
|
+
// with adding a debounce time to the Observable which watches for state changes.
|
|
174
|
+
let cancelLastRequest = new Subject();
|
|
175
|
+
return observableCombineLatest([
|
|
176
|
+
this.state.pipe(observableMap((s) => s.filters), distinctUntilChanged()),
|
|
177
|
+
this.state.pipe(observableMap((s) => s.search), distinctUntilChanged()),
|
|
178
|
+
this.state.pipe(observableMap((s) => s.sort.fieldSelectors), distinctUntilChanged()),
|
|
179
|
+
this.state.pipe(observableMap((s) => s.paging.itemsPerPage), distinctUntilChanged()),
|
|
180
|
+
this.state.pipe(observableMap((s) => s.paging.pageNumber), distinctUntilChanged()),
|
|
181
|
+
this.state.pipe(observableMap((s) => s.toolbar.disabled), distinctUntilChanged()),
|
|
182
|
+
selectedIds.pipe(distinctUntilChanged(), observableMap((selected) => {
|
|
183
|
+
selectedChanged = true;
|
|
184
|
+
return selected;
|
|
185
|
+
})),
|
|
186
|
+
data.pipe(distinctUntilChanged()),
|
|
187
|
+
], (filters, search, sortFieldSelectors, itemsPerPage, pageNumber, isToolbarDisabled, selected, itemsData) => {
|
|
188
|
+
cancelLastRequest.next();
|
|
189
|
+
cancelLastRequest.complete();
|
|
190
|
+
if (selectedChanged) {
|
|
191
|
+
this.dispatcher.next(new ListSelectedSetLoadingAction());
|
|
192
|
+
this.dispatcher.next(new ListSelectedLoadAction(selected));
|
|
193
|
+
this.dispatcher.next(new ListSelectedSetLoadingAction(false));
|
|
194
|
+
selectedChanged = false;
|
|
195
|
+
}
|
|
196
|
+
let response;
|
|
197
|
+
if (this.dataFirstLoad) {
|
|
198
|
+
this.dataFirstLoad = false;
|
|
199
|
+
let initialItems = itemsData.map((d) => new ListItemModel(d.id || `sky-list-item-model-${++idIndex}`, d));
|
|
200
|
+
response = observableOf(new ListDataResponseModel({
|
|
201
|
+
count: this.initialTotal,
|
|
202
|
+
items: initialItems,
|
|
203
|
+
})).pipe(takeUntil(cancelLastRequest));
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
response = this.dataProvider
|
|
207
|
+
.get(new ListDataRequestModel({
|
|
208
|
+
filters: filters,
|
|
209
|
+
pageSize: itemsPerPage,
|
|
210
|
+
pageNumber: pageNumber,
|
|
211
|
+
search: search,
|
|
212
|
+
sort: new ListSortModel({ fieldSelectors: sortFieldSelectors }),
|
|
213
|
+
isToolbarDisabled: isToolbarDisabled,
|
|
214
|
+
}))
|
|
215
|
+
.pipe(takeUntil(cancelLastRequest));
|
|
216
|
+
}
|
|
217
|
+
return response;
|
|
218
|
+
}).pipe(takeUntil(this.ngUnsubscribe),
|
|
219
|
+
// Retain user selections from previous state.
|
|
220
|
+
// This is only necessary for grids component (based on item.isSelected).
|
|
221
|
+
observableMap((response) => {
|
|
222
|
+
return response.pipe(observableMap((listDataResponseModel) => {
|
|
223
|
+
return new ListDataResponseModel({
|
|
224
|
+
count: listDataResponseModel.count,
|
|
225
|
+
items: this.getItemsAndRetainSelections(listDataResponseModel.items, this.lastSelectedIds),
|
|
226
|
+
});
|
|
227
|
+
}));
|
|
228
|
+
}), flatMap((value) => value));
|
|
229
|
+
}
|
|
230
|
+
get selectedItems() {
|
|
231
|
+
return observableCombineLatest(this.state.pipe(observableMap((current) => current.items.items), distinctUntilChanged()), this.state.pipe(observableMap((current) => current.selected), distinctUntilChanged()), (items, selected) => {
|
|
232
|
+
return items.filter((i) => selected.item.selectedIdMap.get(i.id));
|
|
233
|
+
}).pipe(takeUntil(this.ngUnsubscribe));
|
|
234
|
+
}
|
|
235
|
+
get lastUpdate() {
|
|
236
|
+
return this.state.pipe(takeUntil(this.ngUnsubscribe), observableMap((s) => s.items.lastUpdate ? new Date(s.items.lastUpdate) : undefined));
|
|
237
|
+
}
|
|
238
|
+
get views() {
|
|
239
|
+
return this.listViews.toArray();
|
|
240
|
+
}
|
|
241
|
+
get itemCount() {
|
|
242
|
+
return this.dataProvider.count();
|
|
243
|
+
}
|
|
244
|
+
getItemsAndRetainSelections(newList, selectedIds) {
|
|
245
|
+
let updatedListModel = newList.slice();
|
|
246
|
+
updatedListModel.forEach((item) => {
|
|
247
|
+
item.isSelected = selectedIds.indexOf(item.id) > -1 ? true : false;
|
|
248
|
+
});
|
|
249
|
+
return updatedListModel;
|
|
250
|
+
}
|
|
251
|
+
arraysEqual(arrayA, arrayB) {
|
|
252
|
+
/* istanbul ignore next */
|
|
253
|
+
if (arrayA === arrayB) {
|
|
254
|
+
return true;
|
|
255
|
+
}
|
|
256
|
+
if (arrayA === undefined || arrayB === undefined) {
|
|
257
|
+
return false;
|
|
258
|
+
}
|
|
259
|
+
if (arrayA.length !== arrayB.length) {
|
|
260
|
+
return false;
|
|
261
|
+
}
|
|
262
|
+
for (let i = 0; i < arrayA.length; ++i) {
|
|
263
|
+
if (arrayA[i] !== arrayB[i]) {
|
|
264
|
+
return false;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
return true;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
SkyListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListComponent, deps: [{ token: i1.ListState }, { token: i2.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
271
|
+
SkyListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyListComponent, selector: "sky-list", inputs: { data: "data", dataProvider: "dataProvider", defaultView: "defaultView", initialTotal: "initialTotal", selectedIds: "selectedIds", sortFields: "sortFields", appliedFilters: "appliedFilters", searchFunction: ["search", "searchFunction"] }, outputs: { selectedIdsChange: "selectedIdsChange", appliedFiltersChange: "appliedFiltersChange" }, providers: [ListState, ListStateDispatcher], queries: [{ propertyName: "listViews", predicate: ListViewComponent }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
272
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListComponent, decorators: [{
|
|
273
|
+
type: Component,
|
|
274
|
+
args: [{
|
|
275
|
+
selector: 'sky-list',
|
|
276
|
+
template: '<ng-content></ng-content>',
|
|
277
|
+
providers: [ListState, ListStateDispatcher],
|
|
278
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
279
|
+
}]
|
|
280
|
+
}], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.ListStateDispatcher }]; }, propDecorators: { data: [{
|
|
281
|
+
type: Input
|
|
282
|
+
}], dataProvider: [{
|
|
283
|
+
type: Input
|
|
284
|
+
}], defaultView: [{
|
|
285
|
+
type: Input
|
|
286
|
+
}], initialTotal: [{
|
|
287
|
+
type: Input
|
|
288
|
+
}], selectedIds: [{
|
|
289
|
+
type: Input
|
|
290
|
+
}], sortFields: [{
|
|
291
|
+
type: Input
|
|
292
|
+
}], appliedFilters: [{
|
|
293
|
+
type: Input
|
|
294
|
+
}], selectedIdsChange: [{
|
|
295
|
+
type: Output
|
|
296
|
+
}], appliedFiltersChange: [{
|
|
297
|
+
type: Output
|
|
298
|
+
}], searchFunction: [{
|
|
299
|
+
type: Input,
|
|
300
|
+
args: ['search']
|
|
301
|
+
}], listViews: [{
|
|
302
|
+
type: ContentChildren,
|
|
303
|
+
args: [ListViewComponent]
|
|
304
|
+
}] } });
|
|
305
|
+
//# sourceMappingURL=list.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder/src/lib/modules/list/list.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,IAAI,uBAAuB,EAExC,EAAE,IAAI,YAAY,EAClB,OAAO,GACR,MAAM,MAAM,CAAC;AAEd,OAAO,EACL,oBAAoB,EACpB,OAAO,EACP,GAAG,IAAI,aAAa,EACpB,IAAI,EACJ,IAAI,EACJ,SAAS,GACV,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAEL,uBAAuB,EACvB,SAAS,EACT,eAAe,EACf,YAAY,EACZ,KAAK,EACL,MAAM,EAGN,SAAS,GAEV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAa,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAE7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AAInF,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,+BAA+B,EAAE,MAAM,yCAAyC,CAAC;AAI1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAE3G,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EACL,YAAY,EACZ,aAAa,GAEd,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AAItF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;;;;AAEzD,IAAI,OAAO,GAAG,CAAC,CAAC;AAQhB,MAAM,OAAO,gBAAgB;IAiG3B,YACU,KAAgB,EAChB,UAA+B;QAD/B,UAAK,GAAL,KAAK,CAAW;QAChB,eAAU,GAAV,UAAU,CAAqB;QAhGlC,OAAE,GAAW,gBAAgB,EAAE,OAAO,EAAE,CAAC;QAChD;;;;;;;WAOG;QAEI,SAAI,GAAyC,EAAE,CAAC;QA6CvD;;;;;WAKG;QAEI,mBAAc,GAA2B,EAAE,CAAC;QAEnD;;WAEG;QAEI,sBAAiB,GAAG,IAAI,YAAY,EAAwB,CAAC;QAEpE;;WAEG;QAEI,yBAAoB,GAAG,IAAI,YAAY,EAA0B,CAAC;QASjE,kBAAa,GAAY,KAAK,CAAC;QAK/B,oBAAe,GAAa,EAAE,CAAC;QAE/B,gBAAW,GAAsB,EAAE,CAAC;QAEpC,kBAAa,GAAG,IAAI,OAAO,EAAE,CAAC;IAKnC,CAAC;IAEG,kBAAkB;QACvB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE;YACvD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC3B;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,IAAI,WAAW,GACb,IAAI,CAAC,WAAW,KAAK,SAAS;gBAC5B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK;gBACtB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;YAEvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,IAAI,mBAAmB,CACrB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAC5D,CACF,CAAC;YAEF,4BAA4B;YAC5B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,wBAAwB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;SACpE;aAAM;YACL,OAAO;SACR;QAED,kBAAkB;QAClB,QAAQ,CACN,IAAI,CAAC,UAAU,EACf,CACE,UAAqE,EACrE,EAAE;YACF,IAAI,SAAuC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,EAAE;gBAC5C,SAAS,GAAG,CAAC,UAAU,CAAC,CAAC;aAC1B;iBAAM;gBACL,SAAS,GAAG,UAA0C,CAAC;aACxD;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,IAAI,+BAA+B,CAAC,SAAS,IAAI,EAAE,CAAC,CACrD,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YACvC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,yBAAyB,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,IAAI,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAChE,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,IAAI,CAAC,KAAK;aACP,IAAI,CACH,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAC5C,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,oBAAoB,EAAE,CACvB;aACA,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACtB,4DAA4D;YAC5D,IAAI,eAAe,GAAa,EAAE,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACjD,IAAI,KAAK,KAAK,IAAI,EAAE;oBAClB,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAC3B;YACH,CAAC,CAAC,CAAC;YAEH,mDAAmD;YACnD,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,WAAW,CACvC,IAAI,CAAC,eAAe,EACpB,eAAe,CAChB,CAAC;YACF,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,EAAE;gBAClE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aAC1D;YAED,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACzC,CAAC,CAAC,CAAC;QAEL,IAAI,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAClD,IAAI,CAAC,KAAK;iBACP,IAAI,CACH,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAC3C,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,IAAI,CAAC,CAAC,CAAC,CACR;iBACA,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrB;;;;mBAIG;gBACH,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;oBAChD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACpC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACzC;YACH,CAAC,CAAC,CAAC;SACN;IACH,CAAC;IAEM,WAAW,CAAC,OAAsB;QACvC,IACE,OAAO,CAAC,gBAAgB,CAAC;YACzB,OAAO,CAAC,gBAAgB,CAAC,CAAC,YAAY;gBACpC,OAAO,CAAC,gBAAgB,CAAC,CAAC,aAAa,EACzC;YACA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,EAAE;gBAClD,IACE,YAAY,CAAC,MAAM,CAAC,UAAU;oBAC9B,YAAY,CAAC,MAAM,CAAC,UAAU,KAAK,CAAC,EACpC;oBACA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpE;gBAED,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACrD,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,OAAO,CAAC,aAAa,CAAC,EAAE;YAC1B,qEAAqE;YACrE,MAAM,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE;gBAC3D,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;aACzD;SACF;IACH,CAAC;IAEM,WAAW;QAChB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAEM,qBAAqB;QAC1B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YACrD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,yBAAyB,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,IAAI,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAChE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,cAAc;QAChB,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;SAClE;QAED,IAAI,IAAI,GAAQ,IAAI,CAAC,IAAI,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;YACvB,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAChC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,IAAI,CAAC,YAAY,GAAG,IAAI,2BAA2B,CACjD,IAAI,EACJ,IAAI,CAAC,cAAc,CACpB,CAAC;SACH;QAED,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE;YAC9B,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;SACzC;QAED,IAAI,eAAe,GAAY,KAAK,CAAC;QAErC,gGAAgG;QAChG,6FAA6F;QAC7F,iFAAiF;QACjF,IAAI,iBAAiB,GAAG,IAAI,OAAO,EAAE,CAAC;QAEtC,OAAO,uBAAuB,CAC5B;YACE,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAC/B,oBAAoB,EAAE,CACvB;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAC9B,oBAAoB,EAAE,CACvB;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,EAC3C,oBAAoB,EAAE,CACvB;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAC3C,oBAAoB,EAAE,CACvB;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EACzC,oBAAoB,EAAE,CACvB;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EACxC,oBAAoB,EAAE,CACvB;YACD,WAAW,CAAC,IAAI,CACd,oBAAoB,EAAE,EACtB,aAAa,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACzB,eAAe,GAAG,IAAI,CAAC;gBACvB,OAAO,QAAQ,CAAC;YAClB,CAAC,CAAC,CACH;YACD,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAClC,EACD,CACE,OAA0B,EAC1B,MAAuB,EACvB,kBAAqD,EACrD,YAAoB,EACpB,UAAkB,EAClB,iBAA0B,EAC1B,QAAuB,EACvB,SAAqB,EACrB,EAAE;YACF,iBAAiB,CAAC,IAAI,EAAE,CAAC;YACzB,iBAAiB,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,eAAe,EAAE;gBACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,4BAA4B,EAAE,CAAC,CAAC;gBACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC3D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC9D,eAAe,GAAG,KAAK,CAAC;aACzB;YAED,IAAI,QAA2C,CAAC;YAChD,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC3B,IAAI,YAAY,GAAG,SAAS,CAAC,GAAG,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,uBAAuB,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CACnE,CAAC;gBACF,QAAQ,GAAG,YAAY,CACrB,IAAI,qBAAqB,CAAC;oBACxB,KAAK,EAAE,IAAI,CAAC,YAAY;oBACxB,KAAK,EAAE,YAAY;iBACpB,CAAC,CACH,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;aACtC;iBAAM;gBACL,QAAQ,GAAG,IAAI,CAAC,YAAY;qBACzB,GAAG,CACF,IAAI,oBAAoB,CAAC;oBACvB,OAAO,EAAE,OAAO;oBAChB,QAAQ,EAAE,YAAY;oBACtB,UAAU,EAAE,UAAU;oBACtB,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,IAAI,aAAa,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;oBAC/D,iBAAiB,EAAE,iBAAiB;iBACrC,CAAC,CACH;qBACA,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;aACvC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CACF,CAAC,IAAI,CACJ,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;QAE7B,8CAA8C;QAC9C,yEAAyE;QACzE,aAAa,CAAC,CAAC,QAAQ,EAAE,EAAE;YACzB,OAAO,QAAQ,CAAC,IAAI,CAClB,aAAa,CAAC,CAAC,qBAAqB,EAAE,EAAE;gBACtC,OAAO,IAAI,qBAAqB,CAAC;oBAC/B,KAAK,EAAE,qBAAqB,CAAC,KAAK;oBAClC,KAAK,EAAE,IAAI,CAAC,2BAA2B,CACrC,qBAAqB,CAAC,KAAK,EAC3B,IAAI,CAAC,eAAe,CACrB;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,EACF,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAC1B,CAAC;IACJ,CAAC;IAED,IAAW,aAAa;QACtB,OAAO,uBAAuB,CAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAC/C,oBAAoB,EAAE,CACvB,EACD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAC5C,oBAAoB,EAAE,CACvB,EACD,CAAC,KAA2B,EAAE,QAAsC,EAAE,EAAE;YACtE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,CAAC,CACF,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CACpB,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAClB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAC9D,CACF,CAAC;IACJ,CAAC;IAED,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAEO,2BAA2B,CACjC,OAAwB,EACxB,WAAqB;QAErB,IAAI,gBAAgB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QACvC,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChC,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACrE,CAAC,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEO,WAAW,CAAC,MAAa,EAAE,MAAa;QAC9C,0BAA0B;QAC1B,IAAI,MAAM,KAAK,MAAM,EAAE;YACrB,OAAO,IAAI,CAAC;SACb;QACD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE;YAChD,OAAO,KAAK,CAAC;SACd;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE;YACnC,OAAO,KAAK,CAAC;SACd;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YACtC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC3B,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;;8GAnbU,gBAAgB;kGAAhB,gBAAgB,8XAHhB,CAAC,SAAS,EAAE,mBAAmB,CAAC,oDA2F1B,iBAAiB,kDA5FxB,2BAA2B;4FAI1B,gBAAgB;kBAN5B,SAAS;mBAAC;oBACT,QAAQ,EAAE,UAAU;oBACpB,QAAQ,EAAE,2BAA2B;oBACrC,SAAS,EAAE,CAAC,SAAS,EAAE,mBAAmB,CAAC;oBAC3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;kIAcQ,IAAI;sBADV,KAAK;gBAUC,YAAY;sBADlB,KAAK;gBAOC,WAAW;sBADjB,KAAK;gBASC,YAAY;sBADlB,KAAK;gBASC,WAAW;sBADjB,KAAK;gBASC,UAAU;sBADhB,KAAK;gBAcC,cAAc;sBADpB,KAAK;gBAOC,iBAAiB;sBADvB,MAAM;gBAOA,oBAAoB;sBAD1B,MAAM;gBAQA,cAAc;sBADpB,KAAK;uBAAC,QAAQ;gBAMP,SAAS;sBADhB,eAAe;uBAAC,iBAAiB","sourcesContent":["import {\n combineLatest as observableCombineLatest,\n Observable,\n of as observableOf,\n Subject,\n} from 'rxjs';\n\nimport {\n distinctUntilChanged,\n flatMap,\n map as observableMap,\n skip,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n Output,\n OnChanges,\n OnDestroy,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\n\nimport { AsyncItem, getValue } from '@skyux/list-builder-common';\n\nimport { ListItemsLoadAction } from './state/items/load.action';\n\nimport { ListItemsSetLoadingAction } from './state/items/set-loading.action';\n\nimport { ListSelectedLoadAction } from './state/selected/load.action';\n\nimport { ListSelectedSetLoadingAction } from './state/selected/set-loading.action';\n\nimport { ListSelectedModel } from './state/selected/selected.model';\n\nimport { ListSortModel } from './state/sort/sort.model';\n\nimport { ListSortSetFieldSelectorsAction } from './state/sort/set-field-selectors.action';\n\nimport { ListFilterModel } from '../list-filters/filter.model';\n\nimport { ListDataRequestModel } from './list-data-request.model';\n\nimport { ListDataResponseModel } from './list-data-response.model';\n\nimport { ListDataProvider } from './list-data.provider';\n\nimport { SkyListInMemoryDataProvider } from '../list-data-provider-in-memory/list-data-in-memory.provider';\n\nimport { ListState } from './state/list-state.state-node';\n\nimport { ListStateDispatcher } from './state/list-state.rxstate';\n\nimport {\n isObservable,\n ListItemModel,\n ListSortFieldSelectorModel,\n} from '@skyux/list-builder-common';\n\nimport { ListViewComponent } from './list-view.component';\n\nimport { ListPagingSetPageNumberAction } from './state/paging/set-page-number.action';\n\nimport { ListSearchModel } from './state/search/search.model';\n\nimport { ListViewsLoadAction } from './state/views/load.action';\n\nimport { ListViewsSetActiveAction } from './state/views/set-active.action';\n\nimport { ListViewModel } from './state/views/view.model';\n\nlet idIndex = 0;\n\n@Component({\n selector: 'sky-list',\n template: '<ng-content></ng-content>',\n providers: [ListState, ListStateDispatcher],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyListComponent\n implements AfterContentInit, OnChanges, OnDestroy\n{\n public id: string = `sky-list-cmp-${++idIndex}`;\n /**\n * Specifies the data to display. The list component requires this property or the\n * `dataProvider` property. For checklist or multiselect grids, each row requires an\n * `id` property to manage selected items with the `selectedIds` input and the\n * `selectedIdsChange` event. If you do not provide an `id`, the list automatically\n * generates one. To update data in your view outside of a `dataProvider`, you must use\n * an observable instead of a static array.\n */\n @Input()\n public data?: Array<any> | Observable<Array<any>> = [];\n\n /**\n * Specifies a data provider to obtain the data to display. The list component requires\n * this property or the `data` property. For lists that use `dataProvider` instead of `data`,\n * consumers are responsible for managing all `ListDataRequestModel` properties.\n * @default SkyListInMemoryDataProvider\n */\n @Input()\n public dataProvider?: ListDataProvider;\n\n /**\n * @internal\n */\n @Input()\n public defaultView?: ListViewComponent;\n\n /**\n * Specifies the total number of items for the initial data set when initialized. When\n * used in conjunction with `data` and `dataProvider`, it allows an initial data to be\n * set with the need to call the `dataProvider`.\n */\n @Input()\n public initialTotal?: number;\n\n /**\n * Specifies a set of IDs for the items to select in a checklist or multiselect grid.\n * The IDs match the `id` properties of the `data` objects. Items with IDs that are not\n * included are de-selected in the checklist or multiselect grid.\n */\n @Input()\n public selectedIds?: Array<string> | Observable<Array<string>>;\n\n /**\n * Specifies a set of fields to sort by. If array of fields then sorted by order of array.\n * For information about `ListSortFieldSelectorModel`, see the\n * [shared classes for lists](https://developer.blackbaud.com/skyux-list-builder-common/docs/list-builder-common).\n */\n @Input()\n public sortFields?:\n | ListSortFieldSelectorModel\n | Array<ListSortFieldSelectorModel>\n | Observable<Array<ListSortFieldSelectorModel>>\n | Observable<ListSortFieldSelectorModel>;\n\n /**\n * Specifies a set of filters to apply to list data.\n * These filters create a filter summary when the list includes the\n * [`sky-list-filter-summary`](https://developer.blackbaud.com/skyux/components/list/filters)\n * component.\n */\n @Input()\n public appliedFilters: Array<ListFilterModel> = [];\n\n /**\n * For list views that support item selection, emits the selected entries.\n */\n @Output()\n public selectedIdsChange = new EventEmitter<Map<string, boolean>>();\n\n /**\n * Emits the filters applied to the list.\n */\n @Output()\n public appliedFiltersChange = new EventEmitter<Array<ListFilterModel>>();\n\n /**\n * Specifies a function to apply as a global sort on the list.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('search')\n public searchFunction: (data: any, searchText: string) => boolean;\n\n private dataFirstLoad: boolean = false;\n\n @ContentChildren(ListViewComponent)\n private listViews: QueryList<ListViewComponent>;\n\n private lastSelectedIds: string[] = [];\n\n private lastFilters: ListFilterModel[] = [];\n\n private ngUnsubscribe = new Subject();\n\n constructor(\n private state: ListState,\n private dispatcher: ListStateDispatcher\n ) {}\n\n public ngAfterContentInit(): void {\n if (this.data && this.dataProvider && this.initialTotal) {\n this.dataFirstLoad = true;\n }\n\n if (this.listViews.length > 0) {\n let defaultView: ListViewComponent =\n this.defaultView === undefined\n ? this.listViews.first\n : this.defaultView;\n\n this.dispatcher.next(\n new ListViewsLoadAction(\n this.listViews.map((v) => new ListViewModel(v.id, v.label))\n )\n );\n\n // activate the default view\n this.dispatcher.next(new ListViewsSetActiveAction(defaultView.id));\n } else {\n return;\n }\n\n // set sort fields\n getValue(\n this.sortFields,\n (\n sortFields: ListSortFieldSelectorModel[] | ListSortFieldSelectorModel\n ) => {\n let sortArray: ListSortFieldSelectorModel[];\n if (!Array.isArray(sortFields) && sortFields) {\n sortArray = [sortFields];\n } else {\n sortArray = sortFields as ListSortFieldSelectorModel[];\n }\n this.dispatcher.next(\n new ListSortSetFieldSelectorsAction(sortArray || [])\n );\n }\n );\n\n this.displayedItems.subscribe((result) => {\n this.dispatcher.next(new ListItemsSetLoadingAction());\n this.dispatcher.next(\n new ListItemsLoadAction(result.items, true, true, result.count)\n );\n });\n\n // Watch for selection changes.\n this.state\n .pipe(\n observableMap((current) => current.selected),\n takeUntil(this.ngUnsubscribe),\n distinctUntilChanged()\n )\n .subscribe((selected) => {\n // Update lastSelectedIds to help us retain user selections.\n let selectedIdsList: string[] = [];\n selected.item.selectedIdMap.forEach((value, key) => {\n if (value === true) {\n selectedIdsList.push(key);\n }\n });\n\n // If changes are distinct, emit selectedIdsChange.\n const distinctChanges = !this.arraysEqual(\n this.lastSelectedIds,\n selectedIdsList\n );\n if (this.selectedIdsChange.observers.length > 0 && distinctChanges) {\n this.selectedIdsChange.emit(selected.item.selectedIdMap);\n }\n\n this.lastSelectedIds = selectedIdsList;\n });\n\n if (this.appliedFiltersChange.observers.length > 0) {\n this.state\n .pipe(\n observableMap((current) => current.filters),\n takeUntil(this.ngUnsubscribe),\n skip(1)\n )\n .subscribe((filters) => {\n /**\n * We are doing this instead of a distinctUntilChange due to memory allocation issues\n * with the javascript array. To fix fully the array should be changed to an object in\n * a breaking change.\n */\n if (!this.arraysEqual(filters, this.lastFilters)) {\n this.lastFilters = filters.slice(0);\n this.appliedFiltersChange.emit(filters);\n }\n });\n }\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (\n changes['appliedFilters'] &&\n changes['appliedFilters'].currentValue !==\n changes['appliedFilters'].previousValue\n ) {\n this.state.pipe(take(1)).subscribe((currentState) => {\n if (\n currentState.paging.pageNumber &&\n currentState.paging.pageNumber !== 1\n ) {\n this.dispatcher.next(new ListPagingSetPageNumberAction(Number(1)));\n }\n\n this.dispatcher.filtersUpdate(this.appliedFilters);\n });\n }\n if (changes['selectedIds']) {\n // Only send selection changes to dispatcher if changes are distinct.\n const newSelectedIds = changes['selectedIds'].currentValue;\n if (!this.arraysEqual(newSelectedIds, this.lastSelectedIds)) {\n this.dispatcher.setSelected(newSelectedIds, true, true);\n }\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public refreshDisplayedItems(): void {\n this.displayedItems.pipe(take(1)).subscribe((result) => {\n this.dispatcher.next(new ListItemsSetLoadingAction());\n this.dispatcher.next(\n new ListItemsLoadAction(result.items, true, true, result.count)\n );\n });\n }\n\n get displayedItems(): Observable<ListDataResponseModel> {\n if (!this.data && !this.dataProvider) {\n throw new Error('List requires data or dataProvider to be set.');\n }\n\n let data: any = this.data;\n if (!isObservable(data)) {\n data = observableOf(this.data);\n }\n\n if (!this.dataProvider) {\n this.dataProvider = new SkyListInMemoryDataProvider(\n data,\n this.searchFunction\n );\n }\n\n let selectedIds = this.selectedIds || observableOf([]);\n if (!isObservable(selectedIds)) {\n selectedIds = observableOf(selectedIds);\n }\n\n let selectedChanged: boolean = false;\n\n // This subject is used to cancel previous request to the list's data provider when a new change\n // to the list's state occurs. In a future breaking change this should be replaced or coupled\n // with adding a debounce time to the Observable which watches for state changes.\n let cancelLastRequest = new Subject();\n\n return observableCombineLatest(\n [\n this.state.pipe(\n observableMap((s) => s.filters),\n distinctUntilChanged()\n ),\n this.state.pipe(\n observableMap((s) => s.search),\n distinctUntilChanged()\n ),\n this.state.pipe(\n observableMap((s) => s.sort.fieldSelectors),\n distinctUntilChanged()\n ),\n this.state.pipe(\n observableMap((s) => s.paging.itemsPerPage),\n distinctUntilChanged()\n ),\n this.state.pipe(\n observableMap((s) => s.paging.pageNumber),\n distinctUntilChanged()\n ),\n this.state.pipe(\n observableMap((s) => s.toolbar.disabled),\n distinctUntilChanged()\n ),\n selectedIds.pipe(\n distinctUntilChanged(),\n observableMap((selected) => {\n selectedChanged = true;\n return selected;\n })\n ),\n data.pipe(distinctUntilChanged()),\n ],\n (\n filters: ListFilterModel[],\n search: ListSearchModel,\n sortFieldSelectors: Array<ListSortFieldSelectorModel>,\n itemsPerPage: number,\n pageNumber: number,\n isToolbarDisabled: boolean,\n selected: Array<string>,\n itemsData: Array<any>\n ) => {\n cancelLastRequest.next();\n cancelLastRequest.complete();\n if (selectedChanged) {\n this.dispatcher.next(new ListSelectedSetLoadingAction());\n this.dispatcher.next(new ListSelectedLoadAction(selected));\n this.dispatcher.next(new ListSelectedSetLoadingAction(false));\n selectedChanged = false;\n }\n\n let response: Observable<ListDataResponseModel>;\n if (this.dataFirstLoad) {\n this.dataFirstLoad = false;\n let initialItems = itemsData.map(\n (d) =>\n new ListItemModel(d.id || `sky-list-item-model-${++idIndex}`, d)\n );\n response = observableOf(\n new ListDataResponseModel({\n count: this.initialTotal,\n items: initialItems,\n })\n ).pipe(takeUntil(cancelLastRequest));\n } else {\n response = this.dataProvider\n .get(\n new ListDataRequestModel({\n filters: filters,\n pageSize: itemsPerPage,\n pageNumber: pageNumber,\n search: search,\n sort: new ListSortModel({ fieldSelectors: sortFieldSelectors }),\n isToolbarDisabled: isToolbarDisabled,\n })\n )\n .pipe(takeUntil(cancelLastRequest));\n }\n\n return response;\n }\n ).pipe(\n takeUntil(this.ngUnsubscribe),\n\n // Retain user selections from previous state.\n // This is only necessary for grids component (based on item.isSelected).\n observableMap((response) => {\n return response.pipe(\n observableMap((listDataResponseModel) => {\n return new ListDataResponseModel({\n count: listDataResponseModel.count,\n items: this.getItemsAndRetainSelections(\n listDataResponseModel.items,\n this.lastSelectedIds\n ),\n });\n })\n );\n }),\n flatMap((value) => value)\n );\n }\n\n public get selectedItems(): Observable<Array<ListItemModel>> {\n return observableCombineLatest(\n this.state.pipe(\n observableMap((current) => current.items.items),\n distinctUntilChanged()\n ),\n this.state.pipe(\n observableMap((current) => current.selected),\n distinctUntilChanged()\n ),\n (items: Array<ListItemModel>, selected: AsyncItem<ListSelectedModel>) => {\n return items.filter((i) => selected.item.selectedIdMap.get(i.id));\n }\n ).pipe(takeUntil(this.ngUnsubscribe));\n }\n\n public get lastUpdate(): Observable<Date> {\n return this.state.pipe(\n takeUntil(this.ngUnsubscribe),\n observableMap((s) =>\n s.items.lastUpdate ? new Date(s.items.lastUpdate) : undefined\n )\n );\n }\n\n public get views(): Array<ListViewComponent> {\n return this.listViews.toArray();\n }\n\n public get itemCount(): Observable<number> {\n return this.dataProvider.count();\n }\n\n private getItemsAndRetainSelections(\n newList: ListItemModel[],\n selectedIds: string[]\n ): ListItemModel[] {\n let updatedListModel = newList.slice();\n updatedListModel.forEach((item) => {\n item.isSelected = selectedIds.indexOf(item.id) > -1 ? true : false;\n });\n return updatedListModel;\n }\n\n private arraysEqual(arrayA: any[], arrayB: any[]): boolean {\n /* istanbul ignore next */\n if (arrayA === arrayB) {\n return true;\n }\n if (arrayA === undefined || arrayB === undefined) {\n return false;\n }\n if (arrayA.length !== arrayB.length) {\n return false;\n }\n for (let i = 0; i < arrayA.length; ++i) {\n if (arrayA[i] !== arrayB[i]) {\n return false;\n }\n }\n return true;\n }\n}\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { SkyListComponent } from './list.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class SkyListModule {
|
|
6
|
+
}
|
|
7
|
+
SkyListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
+
SkyListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListModule, declarations: [SkyListComponent], imports: [CommonModule], exports: [SkyListComponent] });
|
|
9
|
+
SkyListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListModule, imports: [[CommonModule]] });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
declarations: [SkyListComponent],
|
|
14
|
+
imports: [CommonModule],
|
|
15
|
+
exports: [SkyListComponent],
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=list.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder/src/lib/modules/list/list.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;;AAOpD,MAAM,OAAO,aAAa;;2GAAb,aAAa;4GAAb,aAAa,iBAJT,gBAAgB,aACrB,YAAY,aACZ,gBAAgB;4GAEf,aAAa,YAHf,CAAC,YAAY,CAAC;4FAGZ,aAAa;kBALzB,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,gBAAgB,CAAC;oBAChC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B","sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SkyListComponent } from './list.component';\n\n@NgModule({\n declarations: [SkyListComponent],\n imports: [CommonModule],\n exports: [SkyListComponent],\n})\nexport class SkyListModule {}\n"]}
|