@ecodev/natural 41.3.0 → 42.2.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/ecodev-natural.d.ts +1 -9
- package/esm2020/ecodev-natural.mjs +5 -0
- package/esm2020/lib/classes/abstract-controller.mjs +30 -0
- package/esm2020/lib/classes/abstract-detail.mjs +152 -0
- package/esm2020/lib/classes/abstract-editable-list.mjs +96 -0
- package/esm2020/lib/classes/abstract-list.mjs +406 -0
- package/esm2020/lib/classes/abstract-navigable-list.mjs +126 -0
- package/{esm2015/lib/classes/apollo-utils.js → esm2020/lib/classes/apollo-utils.mjs} +0 -0
- package/esm2020/lib/classes/data-source.mjs +76 -0
- package/{esm2015/lib/classes/query-variable-manager-utils.js → esm2020/lib/classes/query-variable-manager-utils.mjs} +0 -0
- package/esm2020/lib/classes/query-variable-manager.mjs +172 -0
- package/{esm2015/lib/classes/rxjs.js → esm2020/lib/classes/rxjs.mjs} +0 -0
- package/{esm2015/lib/classes/tld.js → esm2020/lib/classes/tld.mjs} +0 -0
- package/{esm2015/lib/classes/utility.js → esm2020/lib/classes/utility.mjs} +0 -0
- package/esm2020/lib/classes/validators.mjs +179 -0
- package/esm2020/lib/directives/http-prefix.directive.mjs +50 -0
- package/esm2020/lib/modules/alert/alert.module.mjs +20 -0
- package/esm2020/lib/modules/alert/alert.service.mjs +55 -0
- package/esm2020/lib/modules/alert/confirm.component.mjs +20 -0
- package/{esm2015/lib/modules/alert/public-api.js → esm2020/lib/modules/alert/public-api.mjs} +0 -0
- package/esm2020/lib/modules/avatar/avatar.module.mjs +19 -0
- package/esm2020/lib/modules/avatar/component/avatar.component.mjs +190 -0
- package/{esm2015/lib/modules/avatar/public-api.js → esm2020/lib/modules/avatar/public-api.mjs} +0 -0
- package/esm2020/lib/modules/avatar/service/avatar.service.mjs +66 -0
- package/esm2020/lib/modules/avatar/sources/gravatar.mjs +29 -0
- package/{esm2015/lib/modules/avatar/sources/image.js → esm2020/lib/modules/avatar/sources/image.mjs} +0 -0
- package/{esm2015/lib/modules/avatar/sources/initials.js → esm2020/lib/modules/avatar/sources/initials.mjs} +0 -0
- package/{esm2015/lib/modules/avatar/sources/source.js → esm2020/lib/modules/avatar/sources/source.mjs} +1 -1
- package/esm2020/lib/modules/columns-picker/columns-picker-column.directive.mjs +43 -0
- package/esm2020/lib/modules/columns-picker/columns-picker.component.mjs +84 -0
- package/esm2020/lib/modules/columns-picker/columns-picker.module.mjs +47 -0
- package/{esm2015/lib/modules/columns-picker/public-api.js → esm2020/lib/modules/columns-picker/public-api.mjs} +0 -0
- package/esm2020/lib/modules/common/common-module.mjs +50 -0
- package/esm2020/lib/modules/common/directives/linkable-tab.directive.mjs +79 -0
- package/esm2020/lib/modules/common/directives/src-density.directive.mjs +62 -0
- package/esm2020/lib/modules/common/pipes/capitalize.pipe.mjs +18 -0
- package/esm2020/lib/modules/common/pipes/ellipsis.pipe.mjs +14 -0
- package/esm2020/lib/modules/common/pipes/enum.pipe.mjs +25 -0
- package/esm2020/lib/modules/common/pipes/swiss-date.pipe.mjs +20 -0
- package/esm2020/lib/modules/common/public-api.mjs +13 -0
- package/esm2020/lib/modules/common/services/memory-storage.mjs +112 -0
- package/esm2020/lib/modules/common/services/seo.service.mjs +114 -0
- package/esm2020/lib/modules/detail-header/detail-header.component.mjs +76 -0
- package/esm2020/lib/modules/detail-header/detail-header.module.mjs +21 -0
- package/{esm2015/lib/modules/detail-header/public-api.js → esm2020/lib/modules/detail-header/public-api.mjs} +0 -0
- package/esm2020/lib/modules/dialog-trigger/dialog-trigger.component.mjs +69 -0
- package/esm2020/lib/modules/dialog-trigger/dialog-trigger.module.mjs +19 -0
- package/{esm2015/lib/modules/dialog-trigger/public-api.js → esm2020/lib/modules/dialog-trigger/public-api.mjs} +0 -0
- package/esm2020/lib/modules/dropdown-components/abstract-association-select-component.directive.mjs +98 -0
- package/esm2020/lib/modules/dropdown-components/natural-dropdown-components.module.mjs +92 -0
- package/{esm2015/lib/modules/dropdown-components/public-api.js → esm2020/lib/modules/dropdown-components/public-api.mjs} +0 -0
- package/esm2020/lib/modules/dropdown-components/type-date/type-date.component.mjs +133 -0
- package/esm2020/lib/modules/dropdown-components/type-date-range/type-date-range.component.mjs +137 -0
- package/esm2020/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.mjs +69 -0
- package/esm2020/lib/modules/dropdown-components/type-natural-select/type-natural-select.component.mjs +38 -0
- package/esm2020/lib/modules/dropdown-components/type-number/type-number.component.mjs +104 -0
- package/esm2020/lib/modules/dropdown-components/type-select/type-select.component.mjs +169 -0
- package/esm2020/lib/modules/dropdown-components/type-text/type-text.component.mjs +57 -0
- package/{esm2015/lib/modules/dropdown-components/types.js → esm2020/lib/modules/dropdown-components/types.mjs} +0 -0
- package/{esm2015/lib/modules/dropdown-components/utils.js → esm2020/lib/modules/dropdown-components/utils.mjs} +0 -0
- package/esm2020/lib/modules/file/abstract-file.mjs +231 -0
- package/esm2020/lib/modules/file/component/file.component.mjs +143 -0
- package/esm2020/lib/modules/file/file-drop.directive.mjs +110 -0
- package/esm2020/lib/modules/file/file-select.directive.mjs +28 -0
- package/esm2020/lib/modules/file/file.module.mjs +24 -0
- package/esm2020/lib/modules/file/file.service.mjs +48 -0
- package/{esm2015/lib/modules/file/public-api.js → esm2020/lib/modules/file/public-api.mjs} +0 -0
- package/{esm2015/lib/modules/file/types.js → esm2020/lib/modules/file/types.mjs} +0 -0
- package/{esm2015/lib/modules/file/utils.js → esm2020/lib/modules/file/utils.mjs} +3 -4
- package/esm2020/lib/modules/fixed-button/fixed-button.component.mjs +27 -0
- package/esm2020/lib/modules/fixed-button/fixed-button.module.mjs +21 -0
- package/{esm2015/lib/modules/fixed-button/public-api.js → esm2020/lib/modules/fixed-button/public-api.mjs} +0 -0
- package/esm2020/lib/modules/fixed-button-detail/fixed-button-detail.component.mjs +36 -0
- package/esm2020/lib/modules/fixed-button-detail/fixed-button-detail.module.mjs +20 -0
- package/{esm2015/lib/modules/fixed-button-detail/public-api.js → esm2020/lib/modules/fixed-button-detail/public-api.mjs} +0 -0
- package/{esm2015/lib/modules/hierarchic-selector/classes/flat-node.js → esm2020/lib/modules/hierarchic-selector/classes/flat-node.mjs} +1 -1
- package/{esm2015/lib/modules/hierarchic-selector/classes/hierarchic-configuration.js → esm2020/lib/modules/hierarchic-selector/classes/hierarchic-configuration.mjs} +0 -0
- package/{esm2015/lib/modules/hierarchic-selector/classes/hierarchic-filters-configuration.js → esm2020/lib/modules/hierarchic-selector/classes/hierarchic-filters-configuration.mjs} +0 -0
- package/{esm2015/lib/modules/hierarchic-selector/classes/model-node.js → esm2020/lib/modules/hierarchic-selector/classes/model-node.mjs} +1 -1
- package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.mjs +364 -0
- package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.service.mjs +258 -0
- package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.mjs +31 -0
- package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.service.mjs +23 -0
- package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector.module.mjs +81 -0
- package/{esm2015/lib/modules/hierarchic-selector/public-api.js → esm2020/lib/modules/hierarchic-selector/public-api.mjs} +0 -0
- package/esm2020/lib/modules/icon/icon.component.mjs +92 -0
- package/esm2020/lib/modules/icon/icon.module.mjs +30 -0
- package/{esm2015/lib/modules/icon/public-api.js → esm2020/lib/modules/icon/public-api.mjs} +0 -0
- package/esm2020/lib/modules/matomo/matomo-module.module.mjs +12 -0
- package/esm2020/lib/modules/matomo/matomo.service.mjs +105 -0
- package/{esm2015/lib/modules/matomo/public-api.js → esm2020/lib/modules/matomo/public-api.mjs} +0 -0
- package/esm2020/lib/modules/panels/abstract-panel.mjs +56 -0
- package/{esm2015/lib/modules/panels/fallback-if-no-opened-panels.urlmatcher.js → esm2020/lib/modules/panels/fallback-if-no-opened-panels.urlmatcher.mjs} +0 -0
- package/esm2020/lib/modules/panels/panels.component.mjs +26 -0
- package/esm2020/lib/modules/panels/panels.module.mjs +33 -0
- package/esm2020/lib/modules/panels/panels.service.mjs +325 -0
- package/{esm2015/lib/modules/panels/panels.urlmatcher.js → esm2020/lib/modules/panels/panels.urlmatcher.mjs} +0 -0
- package/{esm2015/lib/modules/panels/public-api.js → esm2020/lib/modules/panels/public-api.mjs} +0 -0
- package/{esm2015/lib/modules/panels/types.js → esm2020/lib/modules/panels/types.mjs} +0 -0
- package/{esm2015/lib/modules/relations/public-api.js → esm2020/lib/modules/relations/public-api.mjs} +0 -0
- package/esm2020/lib/modules/relations/relations.component.mjs +198 -0
- package/esm2020/lib/modules/relations/relations.module.mjs +58 -0
- package/{esm2015/lib/modules/search/classes/graphql-doctrine.js → esm2020/lib/modules/search/classes/graphql-doctrine.mjs} +0 -0
- package/{esm2015/lib/modules/search/classes/graphql-doctrine.types.js → esm2020/lib/modules/search/classes/graphql-doctrine.types.mjs} +0 -0
- package/{esm2015/lib/modules/search/classes/transformers.js → esm2020/lib/modules/search/classes/transformers.mjs} +0 -0
- package/{esm2015/lib/modules/search/classes/url.js → esm2020/lib/modules/search/classes/url.mjs} +0 -0
- package/{esm2015/lib/modules/search/classes/utils.js → esm2020/lib/modules/search/classes/utils.mjs} +0 -0
- package/{esm2015/lib/modules/search/dropdown-container/dropdown-container-animations.js → esm2020/lib/modules/search/dropdown-container/dropdown-container-animations.mjs} +0 -0
- package/esm2020/lib/modules/search/dropdown-container/dropdown-container.component.mjs +88 -0
- package/{esm2015/lib/modules/search/dropdown-container/dropdown-ref.js → esm2020/lib/modules/search/dropdown-container/dropdown-ref.mjs} +1 -1
- package/esm2020/lib/modules/search/dropdown-container/dropdown.service.mjs +93 -0
- package/esm2020/lib/modules/search/facet-selector/facet-selector.component.mjs +50 -0
- package/esm2020/lib/modules/search/group/group.component.mjs +45 -0
- package/esm2020/lib/modules/search/input/input.component.mjs +328 -0
- package/{esm2015/lib/modules/search/public-api.js → esm2020/lib/modules/search/public-api.mjs} +0 -0
- package/esm2020/lib/modules/search/search/search.component.mjs +78 -0
- package/esm2020/lib/modules/search/search.module.mjs +84 -0
- package/{esm2015/lib/modules/search/types/dropdown-component.js → esm2020/lib/modules/search/types/dropdown-component.mjs} +0 -0
- package/{esm2015/lib/modules/search/types/facet.js → esm2020/lib/modules/search/types/facet.mjs} +0 -0
- package/{esm2015/lib/modules/search/types/values.js → esm2020/lib/modules/search/types/values.mjs} +0 -0
- package/esm2020/lib/modules/select/abstract-select.component.mjs +186 -0
- package/{esm2015/lib/modules/select/public-api.js → esm2020/lib/modules/select/public-api.mjs} +0 -0
- package/esm2020/lib/modules/select/select/select.component.mjs +207 -0
- package/esm2020/lib/modules/select/select-enum/select-enum.component.mjs +47 -0
- package/esm2020/lib/modules/select/select-hierarchic/select-hierarchic.component.mjs +127 -0
- package/esm2020/lib/modules/select/select.module.mjs +68 -0
- package/{esm2015/lib/modules/sidenav/public-api.js → esm2020/lib/modules/sidenav/public-api.mjs} +0 -0
- package/esm2020/lib/modules/sidenav/sidenav/sidenav.component.mjs +15 -0
- package/esm2020/lib/modules/sidenav/sidenav-container/sidenav-container.component.mjs +87 -0
- package/esm2020/lib/modules/sidenav/sidenav-content/sidenav-content.component.mjs +12 -0
- package/esm2020/lib/modules/sidenav/sidenav-stack.service.mjs +52 -0
- package/esm2020/lib/modules/sidenav/sidenav.module.mjs +25 -0
- package/esm2020/lib/modules/sidenav/sidenav.service.mjs +195 -0
- package/{esm2015/lib/modules/stamp/public-api.js → esm2020/lib/modules/stamp/public-api.mjs} +0 -0
- package/esm2020/lib/modules/stamp/stamp-module.module.mjs +18 -0
- package/esm2020/lib/modules/stamp/stamp.component.mjs +14 -0
- package/{esm2015/lib/modules/table-button/public-api.js → esm2020/lib/modules/table-button/public-api.mjs} +0 -0
- package/esm2020/lib/modules/table-button/table-button.component.mjs +48 -0
- package/esm2020/lib/modules/table-button/table-button.module.mjs +21 -0
- package/esm2020/lib/services/abstract-model.service.mjs +509 -0
- package/esm2020/lib/services/enum.service.mjs +67 -0
- package/esm2020/lib/services/link-mutation.service.mjs +153 -0
- package/esm2020/lib/services/persistence.service.mjs +113 -0
- package/esm2020/lib/services/swiss-parsing-date-adapter.service.mjs +55 -0
- package/{esm2015/lib/types/types.js → esm2020/lib/types/types.mjs} +0 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/fesm2015/{ecodev-natural.js → ecodev-natural.mjs} +2808 -2392
- package/fesm2015/ecodev-natural.mjs.map +1 -0
- package/fesm2020/ecodev-natural.mjs +10495 -0
- package/fesm2020/ecodev-natural.mjs.map +1 -0
- package/lib/classes/abstract-controller.d.ts +3 -0
- package/lib/classes/abstract-detail.d.ts +3 -0
- package/lib/classes/abstract-editable-list.d.ts +3 -0
- package/lib/classes/abstract-list.d.ts +3 -0
- package/lib/classes/abstract-navigable-list.d.ts +3 -0
- package/lib/classes/query-variable-manager.d.ts +19 -8
- package/lib/directives/http-prefix.directive.d.ts +3 -0
- package/lib/modules/alert/alert.module.d.ts +9 -0
- package/lib/modules/alert/alert.service.d.ts +3 -0
- package/lib/modules/alert/confirm.component.d.ts +3 -0
- package/lib/modules/avatar/avatar.module.d.ts +6 -0
- package/lib/modules/avatar/component/avatar.component.d.ts +4 -0
- package/lib/modules/avatar/service/avatar.service.d.ts +3 -0
- package/lib/modules/columns-picker/columns-picker-column.directive.d.ts +3 -0
- package/lib/modules/columns-picker/columns-picker.component.d.ts +3 -0
- package/lib/modules/columns-picker/columns-picker.module.d.ts +13 -0
- package/lib/modules/common/common-module.d.ts +15 -0
- package/lib/modules/common/directives/linkable-tab.directive.d.ts +3 -0
- package/lib/modules/common/directives/src-density.directive.d.ts +3 -0
- package/lib/modules/common/pipes/capitalize.pipe.d.ts +3 -0
- package/lib/modules/common/pipes/ellipsis.pipe.d.ts +3 -0
- package/lib/modules/common/pipes/enum.pipe.d.ts +3 -0
- package/lib/modules/common/pipes/swiss-date.pipe.d.ts +3 -0
- package/lib/modules/common/public-api.d.ts +0 -1
- package/lib/modules/common/services/memory-storage.d.ts +3 -0
- package/lib/modules/common/services/seo.service.d.ts +3 -0
- package/lib/modules/detail-header/detail-header.component.d.ts +3 -0
- package/lib/modules/detail-header/detail-header.module.d.ts +9 -0
- package/lib/modules/dialog-trigger/dialog-trigger.component.d.ts +3 -0
- package/lib/modules/dialog-trigger/dialog-trigger.module.d.ts +7 -0
- package/lib/modules/dropdown-components/abstract-association-select-component.directive.d.ts +3 -0
- package/lib/modules/dropdown-components/natural-dropdown-components.module.d.ts +22 -0
- package/lib/modules/dropdown-components/type-date/type-date.component.d.ts +3 -0
- package/lib/modules/dropdown-components/type-date-range/type-date-range.component.d.ts +3 -0
- package/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.d.ts +3 -0
- package/lib/modules/dropdown-components/type-natural-select/type-natural-select.component.d.ts +3 -0
- package/lib/modules/dropdown-components/type-number/type-number.component.d.ts +3 -0
- package/lib/modules/dropdown-components/type-select/type-select.component.d.ts +3 -0
- package/lib/modules/dropdown-components/type-text/type-text.component.d.ts +3 -0
- package/lib/modules/file/abstract-file.d.ts +3 -0
- package/lib/modules/file/component/file.component.d.ts +3 -0
- package/lib/modules/file/file-drop.directive.d.ts +3 -0
- package/lib/modules/file/file-select.directive.d.ts +3 -0
- package/lib/modules/file/file.module.d.ts +11 -0
- package/lib/modules/file/file.service.d.ts +3 -0
- package/lib/modules/fixed-button/fixed-button.component.d.ts +3 -0
- package/lib/modules/fixed-button/fixed-button.module.d.ts +9 -0
- package/lib/modules/fixed-button-detail/fixed-button-detail.component.d.ts +3 -0
- package/lib/modules/fixed-button-detail/fixed-button-detail.module.d.ts +8 -0
- package/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.d.ts +3 -0
- package/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.service.d.ts +3 -0
- package/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.d.ts +3 -0
- package/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.service.d.ts +3 -0
- package/lib/modules/hierarchic-selector/hierarchic-selector.module.d.ts +21 -0
- package/lib/modules/icon/icon.component.d.ts +3 -0
- package/lib/modules/icon/icon.module.d.ts +7 -0
- package/lib/modules/matomo/matomo-module.module.d.ts +4 -0
- package/lib/modules/matomo/matomo.service.d.ts +3 -0
- package/lib/modules/panels/abstract-panel.d.ts +3 -0
- package/lib/modules/panels/panels.component.d.ts +3 -0
- package/lib/modules/panels/panels.module.d.ts +8 -0
- package/lib/modules/panels/panels.service.d.ts +3 -0
- package/lib/modules/relations/relations.component.d.ts +3 -0
- package/lib/modules/relations/relations.module.d.ts +15 -0
- package/lib/modules/search/dropdown-container/dropdown-container.component.d.ts +3 -0
- package/lib/modules/search/dropdown-container/dropdown-ref.d.ts +1 -1
- package/lib/modules/search/dropdown-container/dropdown.service.d.ts +3 -0
- package/lib/modules/search/facet-selector/facet-selector.component.d.ts +3 -0
- package/lib/modules/search/group/group.component.d.ts +3 -0
- package/lib/modules/search/input/input.component.d.ts +3 -0
- package/lib/modules/search/search/search.component.d.ts +3 -0
- package/lib/modules/search/search.module.d.ts +19 -0
- package/lib/modules/select/abstract-select.component.d.ts +4 -1
- package/lib/modules/select/select/select.component.d.ts +3 -0
- package/lib/modules/select/select-enum/select-enum.component.d.ts +9 -2
- package/lib/modules/select/select-hierarchic/select-hierarchic.component.d.ts +3 -0
- package/lib/modules/select/select.module.d.ts +19 -0
- package/lib/modules/sidenav/sidenav/sidenav.component.d.ts +3 -0
- package/lib/modules/sidenav/sidenav-container/sidenav-container.component.d.ts +3 -0
- package/lib/modules/sidenav/sidenav-content/sidenav-content.component.d.ts +3 -0
- package/lib/modules/sidenav/sidenav-stack.service.d.ts +4 -1
- package/lib/modules/sidenav/sidenav.module.d.ts +11 -0
- package/lib/modules/sidenav/sidenav.service.d.ts +3 -0
- package/lib/modules/stamp/stamp-module.module.d.ts +6 -0
- package/lib/modules/stamp/stamp.component.d.ts +3 -0
- package/lib/modules/table-button/table-button.component.d.ts +3 -0
- package/lib/modules/table-button/table-button.module.d.ts +9 -0
- package/lib/services/enum.service.d.ts +3 -0
- package/lib/services/link-mutation.service.d.ts +3 -0
- package/lib/services/persistence.service.d.ts +3 -0
- package/lib/services/swiss-parsing-date-adapter.service.d.ts +4 -1
- package/package.json +25 -12
- package/src/lib/modules/alert/_alert.theme.scss +1 -1
- package/src/lib/modules/file/component/_file.theme.scss +1 -1
- package/src/lib/modules/icon/_icon.theme.scss +1 -1
- package/src/lib/modules/search/dropdown-container/_dropdown-container.theme.scss +1 -1
- package/src/lib/modules/table-button/_table-button.theme.scss +1 -1
- package/src/lib/styles/_table.scss +1 -1
- package/theming/_natural.theme.scss +1 -1
- package/bundles/ecodev-natural.umd.js +0 -11318
- package/bundles/ecodev-natural.umd.js.map +0 -1
- package/ecodev-natural.metadata.json +0 -1
- package/esm2015/ecodev-natural.js +0 -14
- package/esm2015/lib/classes/abstract-controller.js +0 -29
- package/esm2015/lib/classes/abstract-detail.js +0 -157
- package/esm2015/lib/classes/abstract-editable-list.js +0 -97
- package/esm2015/lib/classes/abstract-list.js +0 -409
- package/esm2015/lib/classes/abstract-navigable-list.js +0 -126
- package/esm2015/lib/classes/data-source.js +0 -76
- package/esm2015/lib/classes/query-variable-manager.js +0 -161
- package/esm2015/lib/classes/validators.js +0 -176
- package/esm2015/lib/directives/http-prefix.directive.js +0 -46
- package/esm2015/lib/modules/alert/alert.module.js +0 -15
- package/esm2015/lib/modules/alert/alert.service.js +0 -59
- package/esm2015/lib/modules/alert/confirm.component.js +0 -17
- package/esm2015/lib/modules/avatar/avatar.module.js +0 -14
- package/esm2015/lib/modules/avatar/component/avatar.component.js +0 -158
- package/esm2015/lib/modules/avatar/service/avatar.service.js +0 -65
- package/esm2015/lib/modules/avatar/sources/gravatar.js +0 -29
- package/esm2015/lib/modules/columns-picker/columns-picker-column.directive.js +0 -41
- package/esm2015/lib/modules/columns-picker/columns-picker.component.js +0 -82
- package/esm2015/lib/modules/columns-picker/columns-picker.module.js +0 -28
- package/esm2015/lib/modules/common/common-module.js +0 -35
- package/esm2015/lib/modules/common/directives/linkable-tab.directive.js +0 -82
- package/esm2015/lib/modules/common/directives/reactive-asterisk.directive.js +0 -31
- package/esm2015/lib/modules/common/directives/src-density.directive.js +0 -63
- package/esm2015/lib/modules/common/pipes/capitalize.pipe.js +0 -14
- package/esm2015/lib/modules/common/pipes/ellipsis.pipe.js +0 -10
- package/esm2015/lib/modules/common/pipes/enum.pipe.js +0 -24
- package/esm2015/lib/modules/common/pipes/swiss-date.pipe.js +0 -16
- package/esm2015/lib/modules/common/public-api.js +0 -14
- package/esm2015/lib/modules/common/services/memory-storage.js +0 -110
- package/esm2015/lib/modules/common/services/seo.service.js +0 -120
- package/esm2015/lib/modules/detail-header/detail-header.component.js +0 -63
- package/esm2015/lib/modules/detail-header/detail-header.module.js +0 -16
- package/esm2015/lib/modules/dialog-trigger/dialog-trigger.component.js +0 -68
- package/esm2015/lib/modules/dialog-trigger/dialog-trigger.module.js +0 -14
- package/esm2015/lib/modules/dropdown-components/abstract-association-select-component.directive.js +0 -96
- package/esm2015/lib/modules/dropdown-components/natural-dropdown-components.module.js +0 -51
- package/esm2015/lib/modules/dropdown-components/type-date/type-date.component.js +0 -123
- package/esm2015/lib/modules/dropdown-components/type-date-range/type-date-range.component.js +0 -128
- package/esm2015/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.js +0 -63
- package/esm2015/lib/modules/dropdown-components/type-natural-select/type-natural-select.component.js +0 -31
- package/esm2015/lib/modules/dropdown-components/type-number/type-number.component.js +0 -99
- package/esm2015/lib/modules/dropdown-components/type-select/type-select.component.js +0 -161
- package/esm2015/lib/modules/dropdown-components/type-text/type-text.component.js +0 -53
- package/esm2015/lib/modules/file/abstract-file.js +0 -223
- package/esm2015/lib/modules/file/component/file.component.js +0 -133
- package/esm2015/lib/modules/file/file-drop.directive.js +0 -99
- package/esm2015/lib/modules/file/file-select.directive.js +0 -25
- package/esm2015/lib/modules/file/file.module.js +0 -19
- package/esm2015/lib/modules/file/file.service.js +0 -47
- package/esm2015/lib/modules/fixed-button/fixed-button.component.js +0 -23
- package/esm2015/lib/modules/fixed-button/fixed-button.module.js +0 -16
- package/esm2015/lib/modules/fixed-button-detail/fixed-button-detail.component.js +0 -31
- package/esm2015/lib/modules/fixed-button-detail/fixed-button-detail.module.js +0 -15
- package/esm2015/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.js +0 -351
- package/esm2015/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.service.js +0 -258
- package/esm2015/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.js +0 -28
- package/esm2015/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.service.js +0 -23
- package/esm2015/lib/modules/hierarchic-selector/hierarchic-selector.module.js +0 -46
- package/esm2015/lib/modules/icon/icon.component.js +0 -78
- package/esm2015/lib/modules/icon/icon.module.js +0 -25
- package/esm2015/lib/modules/matomo/matomo-module.module.js +0 -7
- package/esm2015/lib/modules/matomo/matomo.service.js +0 -106
- package/esm2015/lib/modules/panels/abstract-panel.js +0 -50
- package/esm2015/lib/modules/panels/panels.component.js +0 -26
- package/esm2015/lib/modules/panels/panels.module.js +0 -28
- package/esm2015/lib/modules/panels/panels.service.js +0 -331
- package/esm2015/lib/modules/relations/relations.component.js +0 -181
- package/esm2015/lib/modules/relations/relations.module.js +0 -33
- package/esm2015/lib/modules/search/dropdown-container/dropdown-container.component.js +0 -87
- package/esm2015/lib/modules/search/dropdown-container/dropdown.service.js +0 -95
- package/esm2015/lib/modules/search/facet-selector/facet-selector.component.js +0 -47
- package/esm2015/lib/modules/search/group/group.component.js +0 -39
- package/esm2015/lib/modules/search/input/input.component.js +0 -316
- package/esm2015/lib/modules/search/search/search.component.js +0 -71
- package/esm2015/lib/modules/search/search.module.js +0 -52
- package/esm2015/lib/modules/select/abstract-select.component.js +0 -176
- package/esm2015/lib/modules/select/select/select.component.js +0 -190
- package/esm2015/lib/modules/select/select-enum/select-enum.component.js +0 -34
- package/esm2015/lib/modules/select/select-hierarchic/select-hierarchic.component.js +0 -120
- package/esm2015/lib/modules/select/select.module.js +0 -39
- package/esm2015/lib/modules/sidenav/sidenav/sidenav.component.js +0 -12
- package/esm2015/lib/modules/sidenav/sidenav-container/sidenav-container.component.js +0 -79
- package/esm2015/lib/modules/sidenav/sidenav-content/sidenav-content.component.js +0 -13
- package/esm2015/lib/modules/sidenav/sidenav-stack.service.js +0 -50
- package/esm2015/lib/modules/sidenav/sidenav.module.js +0 -20
- package/esm2015/lib/modules/sidenav/sidenav.service.js +0 -199
- package/esm2015/lib/modules/stamp/stamp-module.module.js +0 -13
- package/esm2015/lib/modules/stamp/stamp.component.js +0 -13
- package/esm2015/lib/modules/table-button/table-button.component.js +0 -38
- package/esm2015/lib/modules/table-button/table-button.module.js +0 -16
- package/esm2015/lib/services/abstract-model.service.js +0 -509
- package/esm2015/lib/services/enum.service.js +0 -68
- package/esm2015/lib/services/link-mutation.service.js +0 -155
- package/esm2015/lib/services/persistence.service.js +0 -114
- package/esm2015/lib/services/swiss-parsing-date-adapter.service.js +0 -55
- package/fesm2015/ecodev-natural.js.map +0 -1
- package/lib/modules/common/directives/reactive-asterisk.directive.d.ts +0 -10
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Component, Input, Optional, Self } from '@angular/core';
|
|
2
|
+
import { AbstractSelect } from '../abstract-select.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../../services/enum.service";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "@angular/material/form-field";
|
|
7
|
+
import * as i4 from "@angular/material/select";
|
|
8
|
+
import * as i5 from "@angular/material/core";
|
|
9
|
+
import * as i6 from "@angular/common";
|
|
10
|
+
import * as i7 from "../../common/pipes/capitalize.pipe";
|
|
11
|
+
export class NaturalSelectEnumComponent extends AbstractSelect {
|
|
12
|
+
constructor(enumService, ngControl) {
|
|
13
|
+
super(ngControl);
|
|
14
|
+
this.enumService = enumService;
|
|
15
|
+
this.ngControl = ngControl;
|
|
16
|
+
/**
|
|
17
|
+
* Whether the user should be allowed to select multiple options
|
|
18
|
+
*/
|
|
19
|
+
this.multiple = false;
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
super.ngOnInit();
|
|
23
|
+
this.items = this.enumService.get(this.enumName);
|
|
24
|
+
}
|
|
25
|
+
getDisplayFn() {
|
|
26
|
+
throw new Error('This should never be called');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
NaturalSelectEnumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectEnumComponent, deps: [{ token: i1.NaturalEnumService }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
+
NaturalSelectEnumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: NaturalSelectEnumComponent, selector: "natural-select-enum", inputs: { enumName: "enumName", nullLabel: "nullLabel", optionDisabled: "optionDisabled", multiple: "multiple" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{ placeholder }}</mat-label>\n <mat-select\n (selectionChange)=\"propagateValue($event.value)\"\n [formControl]=\"internalCtrl\"\n (blur)=\"touch(); blur.emit()\"\n [errorStateMatcher]=\"matcher\"\n [multiple]=\"multiple\"\n >\n <mat-option *ngIf=\"nullLabel\" [value]=\"null\">{{ nullLabel }}</mat-option>\n <mat-option\n *ngFor=\"let item of items | async\"\n [value]=\"item.value\"\n [disabled]=\"optionDisabled ? optionDisabled(item) : false\"\n >\n {{ item.name | capitalize }}\n </mat-option>\n </mat-select>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error></mat-form-field\n>\n", styles: [":host{display:flex;flex-direction:column}\n"], components: [{ type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i3.MatLabel, selector: "mat-label" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "async": i6.AsyncPipe, "capitalize": i7.NaturalCapitalizePipe } });
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectEnumComponent, decorators: [{
|
|
32
|
+
type: Component,
|
|
33
|
+
args: [{ selector: 'natural-select-enum', template: "<mat-form-field>\n <mat-label>{{ placeholder }}</mat-label>\n <mat-select\n (selectionChange)=\"propagateValue($event.value)\"\n [formControl]=\"internalCtrl\"\n (blur)=\"touch(); blur.emit()\"\n [errorStateMatcher]=\"matcher\"\n [multiple]=\"multiple\"\n >\n <mat-option *ngIf=\"nullLabel\" [value]=\"null\">{{ nullLabel }}</mat-option>\n <mat-option\n *ngFor=\"let item of items | async\"\n [value]=\"item.value\"\n [disabled]=\"optionDisabled ? optionDisabled(item) : false\"\n >\n {{ item.name | capitalize }}\n </mat-option>\n </mat-select>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error></mat-form-field\n>\n", styles: [":host{display:flex;flex-direction:column}\n"] }]
|
|
34
|
+
}], ctorParameters: function () { return [{ type: i1.NaturalEnumService }, { type: i2.NgControl, decorators: [{
|
|
35
|
+
type: Optional
|
|
36
|
+
}, {
|
|
37
|
+
type: Self
|
|
38
|
+
}] }]; }, propDecorators: { enumName: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], nullLabel: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], optionDisabled: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], multiple: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2VsZWN0L3NlbGVjdC1lbnVtL3NlbGVjdC1lbnVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlbGVjdC9zZWxlY3QtZW51bS9zZWxlY3QtZW51bS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsSUFBSSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBSXZFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7Ozs7O0FBTzVELE1BQU0sT0FBTywwQkFDVCxTQUFRLGNBQWlEO0lBeUJ6RCxZQUNxQixXQUErQixFQUNaLFNBQTJCO1FBRS9ELEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUhBLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUNaLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBVG5FOztXQUVHO1FBQ2EsYUFBUSxHQUFZLEtBQUssQ0FBQztJQVMxQyxDQUFDO0lBRU0sUUFBUTtRQUNYLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sWUFBWTtRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUNuRCxDQUFDOzt1SEF4Q1EsMEJBQTBCOzJHQUExQiwwQkFBMEIsb01DWHZDLG13QkFxQkE7MkZEVmEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLHFCQUFxQjs7MEJBZ0MxQixRQUFROzswQkFBSSxJQUFJOzRDQXJCTCxRQUFRO3NCQUF2QixLQUFLO2dCQUtVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBS1UsY0FBYztzQkFBN0IsS0FBSztnQkFLVSxRQUFRO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7SUVudW0sIE5hdHVyYWxFbnVtU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZW51bS5zZXJ2aWNlJztcbmltcG9ydCB7QWJzdHJhY3RTZWxlY3R9IGZyb20gJy4uL2Fic3RyYWN0LXNlbGVjdC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25hdHVyYWwtc2VsZWN0LWVudW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtZW51bS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VsZWN0LWVudW0uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFNlbGVjdEVudW1Db21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0U2VsZWN0PElFbnVtWyd2YWx1ZSddIHwgSUVudW1bJ3ZhbHVlJ11bXT5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3JcbntcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgZW51bSB0eXBlLCBlZzogYFwiQWN0aW9uU3RhdHVzXCJgXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGVudW1OYW1lITogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogSWYgZ2l2ZW4gYW4gZXh0cmEgb3B0aW9uIGlzIGFkZGVkIHRvIHNlbGVjdCBgbnVsbGAgd2l0aCBnaXZlbiBsYWJlbFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBudWxsTGFiZWw/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbnMgdGhhdCByZWNlaXZlcyBhbiBlbnVtIHZhbHVlIGFuZCByZXR1cm5zIHdoZXRoZXIgdGhhdCB2YWx1ZSBpcyBkaXNhYmxlZFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25EaXNhYmxlZD86IChpdGVtOiBJRW51bSkgPT4gYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIHVzZXIgc2hvdWxkIGJlIGFsbG93ZWQgdG8gc2VsZWN0IG11bHRpcGxlIG9wdGlvbnNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHB1YmxpYyBpdGVtcz86IE9ic2VydmFibGU8SUVudW1bXT47XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZW51bVNlcnZpY2U6IE5hdHVyYWxFbnVtU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwdWJsaWMgcmVhZG9ubHkgbmdDb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICkge1xuICAgICAgICBzdXBlcihuZ0NvbnRyb2wpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5pdGVtcyA9IHRoaXMuZW51bVNlcnZpY2UuZ2V0KHRoaXMuZW51bU5hbWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXREaXNwbGF5Rm4oKTogKGl0ZW06IElFbnVtWyd2YWx1ZSddIHwgSUVudW1bJ3ZhbHVlJ11bXSB8IG51bGwpID0+IHN0cmluZyB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBzaG91bGQgbmV2ZXIgYmUgY2FsbGVkJyk7XG4gICAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3sgcGxhY2Vob2xkZXIgfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LXNlbGVjdFxuICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cInByb3BhZ2F0ZVZhbHVlKCRldmVudC52YWx1ZSlcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiaW50ZXJuYWxDdHJsXCJcbiAgICAgICAgKGJsdXIpPVwidG91Y2goKTsgYmx1ci5lbWl0KClcIlxuICAgICAgICBbZXJyb3JTdGF0ZU1hdGNoZXJdPVwibWF0Y2hlclwiXG4gICAgICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gICAgPlxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdJZj1cIm51bGxMYWJlbFwiIFt2YWx1ZV09XCJudWxsXCI+e3sgbnVsbExhYmVsIH19PC9tYXQtb3B0aW9uPlxuICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXMgfCBhc3luY1wiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwib3B0aW9uRGlzYWJsZWQgPyBvcHRpb25EaXNhYmxlZChpdGVtKSA6IGZhbHNlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgaXRlbS5uYW1lIHwgY2FwaXRhbGl6ZSB9fVxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgPC9tYXQtc2VsZWN0PlxuXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImhhc1JlcXVpcmVkRXJyb3IoKVwiIGkxOG4+Q2UgY2hhbXAgZXN0IHJlcXVpczwvbWF0LWVycm9yPjwvbWF0LWZvcm0tZmllbGRcbj5cbiJdfQ==
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { Component, Input, Optional, Self } from '@angular/core';
|
|
2
|
+
import { AbstractSelect } from '../abstract-select.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../hierarchic-selector/public-api";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "@angular/material/form-field";
|
|
7
|
+
import * as i4 from "../../icon/icon.component";
|
|
8
|
+
import * as i5 from "@angular/material/button";
|
|
9
|
+
import * as i6 from "@angular/material/input";
|
|
10
|
+
import * as i7 from "@angular/common";
|
|
11
|
+
import * as i8 from "@angular/material/tooltip";
|
|
12
|
+
import * as i9 from "@angular/router";
|
|
13
|
+
function defaultDisplayFn(item) {
|
|
14
|
+
if (!item) {
|
|
15
|
+
return '';
|
|
16
|
+
}
|
|
17
|
+
return item.fullName || item.name || item.iban || item.id || item;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Default usage:
|
|
21
|
+
* <natural-select [config]="myConfig" [(ngModel)]="amazingModel"
|
|
22
|
+
* (ngModelChange)=amazingChangeFn($event)></natural-select>
|
|
23
|
+
*
|
|
24
|
+
* [(ngModel)] and (ngModelChange) are optional
|
|
25
|
+
*
|
|
26
|
+
* Placeholder :
|
|
27
|
+
* <natural-select placeholder="amazing placeholder">
|
|
28
|
+
*
|
|
29
|
+
* Never float placeholder :
|
|
30
|
+
* <natural-select placeholder="amazing placeholder" floatPlaceholder="never">
|
|
31
|
+
*/
|
|
32
|
+
export class NaturalSelectHierarchicComponent extends AbstractSelect {
|
|
33
|
+
constructor(hierarchicSelectorDialogService, ngControl) {
|
|
34
|
+
super(ngControl);
|
|
35
|
+
this.hierarchicSelectorDialogService = hierarchicSelectorDialogService;
|
|
36
|
+
/**
|
|
37
|
+
* The selected value as an object. The internal value is `internalCtrl.value`, and that is a string.
|
|
38
|
+
*/
|
|
39
|
+
this.value = null;
|
|
40
|
+
/**
|
|
41
|
+
* On Firefox, the combination of <input (focus)> event and dialog opening cause some strange bug where focus event is called multiple
|
|
42
|
+
* times This prevents it.
|
|
43
|
+
*/
|
|
44
|
+
this.lockOpenDialog = false;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Very important to return something, above all if [select]='displayedValue' attribute value is used
|
|
48
|
+
*/
|
|
49
|
+
getDisplayFn() {
|
|
50
|
+
if (this.displayWith) {
|
|
51
|
+
return this.displayWith;
|
|
52
|
+
}
|
|
53
|
+
return defaultDisplayFn;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Override parent because our internalCtrl store the textual representation as string instead of raw Literal
|
|
57
|
+
*/
|
|
58
|
+
writeValue(value) {
|
|
59
|
+
this.value = value;
|
|
60
|
+
this.internalCtrl.setValue(this.getDisplayFn()(value));
|
|
61
|
+
}
|
|
62
|
+
openDialog() {
|
|
63
|
+
if (this.internalCtrl.disabled) {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
if (this.lockOpenDialog) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
this.lockOpenDialog = true;
|
|
70
|
+
if (this.onTouched) {
|
|
71
|
+
this.onTouched();
|
|
72
|
+
}
|
|
73
|
+
const selectAtKey = this.getSelectKey();
|
|
74
|
+
const selected = {};
|
|
75
|
+
if (this.internalCtrl.value) {
|
|
76
|
+
selected[selectAtKey] = [this.value];
|
|
77
|
+
}
|
|
78
|
+
const hierarchicConfig = {
|
|
79
|
+
hierarchicConfig: this.config,
|
|
80
|
+
hierarchicSelection: selected,
|
|
81
|
+
hierarchicFilters: this.filters,
|
|
82
|
+
multiple: false,
|
|
83
|
+
};
|
|
84
|
+
const dialogFocus = { restoreFocus: false };
|
|
85
|
+
this.hierarchicSelectorDialogService
|
|
86
|
+
.open(hierarchicConfig, dialogFocus)
|
|
87
|
+
.afterClosed()
|
|
88
|
+
.subscribe(result => {
|
|
89
|
+
this.lockOpenDialog = false;
|
|
90
|
+
if (result && result.hierarchicSelection) {
|
|
91
|
+
const selection = result.hierarchicSelection;
|
|
92
|
+
// Find the only selection amongst all possible keys
|
|
93
|
+
const keyWithSelection = Object.keys(selection).find(key => selection[key][0]);
|
|
94
|
+
const singleSelection = keyWithSelection ? selection[keyWithSelection][0] : null;
|
|
95
|
+
this.writeValue(singleSelection);
|
|
96
|
+
this.propagateValue(singleSelection);
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
showSelectButton() {
|
|
101
|
+
return !!(this.internalCtrl?.enabled && this.selectLabel && this.config);
|
|
102
|
+
}
|
|
103
|
+
getSelectKey() {
|
|
104
|
+
const selectKey = this.config.filter(c => !!c.selectableAtKey)[0].selectableAtKey;
|
|
105
|
+
if (!selectKey) {
|
|
106
|
+
throw new Error('Hierarchic selector must be configured with at least one selectableAtKey');
|
|
107
|
+
}
|
|
108
|
+
return selectKey;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
NaturalSelectHierarchicComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectHierarchicComponent, deps: [{ token: i1.NaturalHierarchicSelectorDialogService }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
112
|
+
NaturalSelectHierarchicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: NaturalSelectHierarchicComponent, selector: "natural-select-hierarchic", inputs: { selectLabel: "selectLabel", config: "config", filters: "filters" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatPlaceholder\">\n <mat-label>{{ placeholder }}</mat-label>\n\n <!-- Input for hierarchical selector -->\n <input\n (blur)=\"blur.emit()\"\n (focus)=\"openDialog()\"\n (keydown.esc)=\"clear()\"\n [formControl]=\"internalCtrl\"\n [errorStateMatcher]=\"matcher\"\n aria-label=\"Recherche et s\u00E9lection\"\n i18n-aria-label\n matInput\n />\n\n <!-- Meta data -->\n <natural-icon *ngIf=\"showIcon\" [name]=\"icon\" matPrefix></natural-icon>\n\n <!-- Clear button -->\n <div class=\"suffix-buttons\" matSuffix>\n <button\n (click)=\"clear(); $event.stopPropagation()\"\n *ngIf=\"internalCtrl.value && internalCtrl.enabled && !clearLabel\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"D\u00E9s\u00E9lectionner\"\n >\n <natural-icon name=\"close\"></natural-icon>\n </button>\n <button\n *ngIf=\"internalCtrl.value && navigateTo\"\n [routerLink]=\"navigateTo\"\n mat-button\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"Naviguer vers\"\n >\n <natural-icon name=\"open_in_browser\"></natural-icon>\n </button>\n </div>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error>\n</mat-form-field>\n\n<!-- Additional (un)select/(un)link buttons for more visual cohesion with natural-relations --><!-- [clearLabel] and/or [selectLabel] has to be given as attribute input -->\n<div *ngIf=\"showSelectButton() || showClearButton()\" class=\"external-buttons\">\n <button (click)=\"openDialog()\" *ngIf=\"showSelectButton()\" color=\"primary\" mat-flat-button>{{ selectLabel }}</button>\n <button (click)=\"clear()\" *ngIf=\"showClearButton()\" color=\"warn\" mat-button>{{ clearLabel }}</button>\n</div>\n", styles: [":host{display:flex;flex-direction:column}:host>*:not(:last-child){margin-bottom:20px}:host .suffix-buttons,:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons>*:not(:last-child){margin-right:10px}\n"], components: [{ type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i4.NaturalIconComponent, selector: "natural-icon", inputs: ["label", "labelColor", "labelPosition", "name", "size"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i3.MatLabel, selector: "mat-label" }, { type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.MatPrefix, selector: "[matPrefix]" }, { type: i3.MatSuffix, selector: "[matSuffix]" }, { type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i9.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i3.MatError, selector: "mat-error", inputs: ["id"] }] });
|
|
113
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectHierarchicComponent, decorators: [{
|
|
114
|
+
type: Component,
|
|
115
|
+
args: [{ selector: 'natural-select-hierarchic', template: "<mat-form-field [floatLabel]=\"floatPlaceholder\">\n <mat-label>{{ placeholder }}</mat-label>\n\n <!-- Input for hierarchical selector -->\n <input\n (blur)=\"blur.emit()\"\n (focus)=\"openDialog()\"\n (keydown.esc)=\"clear()\"\n [formControl]=\"internalCtrl\"\n [errorStateMatcher]=\"matcher\"\n aria-label=\"Recherche et s\u00E9lection\"\n i18n-aria-label\n matInput\n />\n\n <!-- Meta data -->\n <natural-icon *ngIf=\"showIcon\" [name]=\"icon\" matPrefix></natural-icon>\n\n <!-- Clear button -->\n <div class=\"suffix-buttons\" matSuffix>\n <button\n (click)=\"clear(); $event.stopPropagation()\"\n *ngIf=\"internalCtrl.value && internalCtrl.enabled && !clearLabel\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"D\u00E9s\u00E9lectionner\"\n >\n <natural-icon name=\"close\"></natural-icon>\n </button>\n <button\n *ngIf=\"internalCtrl.value && navigateTo\"\n [routerLink]=\"navigateTo\"\n mat-button\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"Naviguer vers\"\n >\n <natural-icon name=\"open_in_browser\"></natural-icon>\n </button>\n </div>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error>\n</mat-form-field>\n\n<!-- Additional (un)select/(un)link buttons for more visual cohesion with natural-relations --><!-- [clearLabel] and/or [selectLabel] has to be given as attribute input -->\n<div *ngIf=\"showSelectButton() || showClearButton()\" class=\"external-buttons\">\n <button (click)=\"openDialog()\" *ngIf=\"showSelectButton()\" color=\"primary\" mat-flat-button>{{ selectLabel }}</button>\n <button (click)=\"clear()\" *ngIf=\"showClearButton()\" color=\"warn\" mat-button>{{ clearLabel }}</button>\n</div>\n", styles: [":host{display:flex;flex-direction:column}:host>*:not(:last-child){margin-bottom:20px}:host .suffix-buttons,:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons>*:not(:last-child){margin-right:10px}\n"] }]
|
|
116
|
+
}], ctorParameters: function () { return [{ type: i1.NaturalHierarchicSelectorDialogService }, { type: i2.NgControl, decorators: [{
|
|
117
|
+
type: Optional
|
|
118
|
+
}, {
|
|
119
|
+
type: Self
|
|
120
|
+
}] }]; }, propDecorators: { selectLabel: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}], config: [{
|
|
123
|
+
type: Input
|
|
124
|
+
}], filters: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}] } });
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWhpZXJhcmNoaWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2VsZWN0L3NlbGVjdC1oaWVyYXJjaGljL3NlbGVjdC1oaWVyYXJjaGljLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlbGVjdC9zZWxlY3QtaGllcmFyY2hpYy9zZWxlY3QtaGllcmFyY2hpYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLElBQUksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQVdsRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7Ozs7O0FBRTVELFNBQVMsZ0JBQWdCLENBQUMsSUFBb0I7SUFDMUMsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNQLE9BQU8sRUFBRSxDQUFDO0tBQ2I7SUFFRCxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDO0FBQ3RFLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7O0dBWUc7QUFNSCxNQUFNLE9BQU8sZ0NBQ1QsU0FBUSxjQUF1QjtJQTZCL0IsWUFDcUIsK0JBQXVFLEVBQ3BFLFNBQTJCO1FBRS9DLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUhBLG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBd0M7UUFaNUY7O1dBRUc7UUFDSyxVQUFLLEdBQW1CLElBQUksQ0FBQztRQUVyQzs7O1dBR0c7UUFDSyxtQkFBYyxHQUFHLEtBQUssQ0FBQztJQU8vQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxZQUFZO1FBQ2YsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2xCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUMzQjtRQUVELE9BQU8sZ0JBQWdCLENBQUM7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksVUFBVSxDQUFDLEtBQXFCO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTSxVQUFVO1FBQ2IsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRTtZQUM1QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDckIsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFFM0IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztTQUNwQjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QyxNQUFNLFFBQVEsR0FBNEIsRUFBRSxDQUFDO1FBRTdDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUU7WUFDekIsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsTUFBTSxnQkFBZ0IsR0FBMkI7WUFDN0MsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDN0IsbUJBQW1CLEVBQUUsUUFBUTtZQUM3QixpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTztZQUMvQixRQUFRLEVBQUUsS0FBSztTQUNsQixDQUFDO1FBRUYsTUFBTSxXQUFXLEdBQW9CLEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBQyxDQUFDO1FBRTNELElBQUksQ0FBQywrQkFBK0I7YUFDL0IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFdBQVcsQ0FBQzthQUNuQyxXQUFXLEVBQUU7YUFDYixTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7WUFDNUIsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLG1CQUFtQixFQUFFO2dCQUN0QyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUM7Z0JBQzdDLG9EQUFvRDtnQkFDcEQsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMvRSxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFFakYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUN4QztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVNLGdCQUFnQjtRQUNuQixPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFTyxZQUFZO1FBQ2hCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUM7UUFFbEYsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztTQUMvRjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7OzZIQXBIUSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyxzS0N2QzdDLHk1REFpREE7MkZEVmEsZ0NBQWdDO2tCQUw1QyxTQUFTOytCQUNJLDJCQUEyQjs7MEJBb0NoQyxRQUFROzswQkFBSSxJQUFJOzRDQXpCTCxXQUFXO3NCQUExQixLQUFLO2dCQUtVLE1BQU07c0JBQXJCLEtBQUs7Z0JBS1UsT0FBTztzQkFBdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXREaWFsb2dDb25maWd9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge0xpdGVyYWx9IGZyb20gJy4uLy4uLy4uL3R5cGVzL3R5cGVzJztcbmltcG9ydCB7SGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9ufSBmcm9tICcuLi8uLi9oaWVyYXJjaGljLXNlbGVjdG9yL2NsYXNzZXMvaGllcmFyY2hpYy1maWx0ZXJzLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHtcbiAgICBIaWVyYXJjaGljRGlhbG9nQ29uZmlnLFxuICAgIE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbixcbiAgICBOYXR1cmFsSGllcmFyY2hpY1NlbGVjdG9yRGlhbG9nU2VydmljZSxcbiAgICBPcmdhbml6ZWRNb2RlbFNlbGVjdGlvbixcbn0gZnJvbSAnLi4vLi4vaGllcmFyY2hpYy1zZWxlY3Rvci9wdWJsaWMtYXBpJztcbmltcG9ydCB7QWJzdHJhY3RTZWxlY3R9IGZyb20gJy4uL2Fic3RyYWN0LXNlbGVjdC5jb21wb25lbnQnO1xuXG5mdW5jdGlvbiBkZWZhdWx0RGlzcGxheUZuKGl0ZW06IExpdGVyYWwgfCBudWxsKTogc3RyaW5nIHtcbiAgICBpZiAoIWl0ZW0pIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIHJldHVybiBpdGVtLmZ1bGxOYW1lIHx8IGl0ZW0ubmFtZSB8fCBpdGVtLmliYW4gfHwgaXRlbS5pZCB8fCBpdGVtO1xufVxuXG4vKipcbiAqIERlZmF1bHQgdXNhZ2U6XG4gKiA8bmF0dXJhbC1zZWxlY3QgW2NvbmZpZ109XCJteUNvbmZpZ1wiIFsobmdNb2RlbCldPVwiYW1hemluZ01vZGVsXCJcbiAqIChuZ01vZGVsQ2hhbmdlKT1hbWF6aW5nQ2hhbmdlRm4oJGV2ZW50KT48L25hdHVyYWwtc2VsZWN0PlxuICpcbiAqIFsobmdNb2RlbCldIGFuZCAobmdNb2RlbENoYW5nZSkgYXJlIG9wdGlvbmFsXG4gKlxuICogUGxhY2Vob2xkZXIgOlxuICogPG5hdHVyYWwtc2VsZWN0IHBsYWNlaG9sZGVyPVwiYW1hemluZyBwbGFjZWhvbGRlclwiPlxuICpcbiAqIE5ldmVyIGZsb2F0IHBsYWNlaG9sZGVyIDpcbiAqIDxuYXR1cmFsLXNlbGVjdCBwbGFjZWhvbGRlcj1cImFtYXppbmcgcGxhY2Vob2xkZXJcIiBmbG9hdFBsYWNlaG9sZGVyPVwibmV2ZXJcIj5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLXNlbGVjdC1oaWVyYXJjaGljJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LWhpZXJhcmNoaWMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NlbGVjdC1oaWVyYXJjaGljLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxTZWxlY3RIaWVyYXJjaGljQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFNlbGVjdDxMaXRlcmFsPlxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG57XG4gICAgLyoqXG4gICAgICogSWYgcHJvdmlkZWQgY2F1c2UgYSBuZXcgc2VsZWN0IGJ1dHRvbiB0byBhcHBlYXJcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0TGFiZWw/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBDb25maWd1cmF0aW9uIGZvciBoaWVyYXJjaGljIHJlbGF0aW9uc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBjb25maWchOiBOYXR1cmFsSGllcmFyY2hpY0NvbmZpZ3VyYXRpb25bXTtcblxuICAgIC8qKlxuICAgICAqIEZpbHRlcnMgZm9ybWF0dGVkIGZvciBoaWVyYXJjaGljIHNlbGVjdG9yXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGZpbHRlcnM/OiBIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb247XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2VsZWN0ZWQgdmFsdWUgYXMgYW4gb2JqZWN0LiBUaGUgaW50ZXJuYWwgdmFsdWUgaXMgYGludGVybmFsQ3RybC52YWx1ZWAsIGFuZCB0aGF0IGlzIGEgc3RyaW5nLlxuICAgICAqL1xuICAgIHByaXZhdGUgdmFsdWU6IExpdGVyYWwgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIE9uIEZpcmVmb3gsIHRoZSBjb21iaW5hdGlvbiBvZiA8aW5wdXQgKGZvY3VzKT4gZXZlbnQgYW5kIGRpYWxvZyBvcGVuaW5nIGNhdXNlIHNvbWUgc3RyYW5nZSBidWcgd2hlcmUgZm9jdXMgZXZlbnQgaXMgY2FsbGVkIG11bHRpcGxlXG4gICAgICogdGltZXMgVGhpcyBwcmV2ZW50cyBpdC5cbiAgICAgKi9cbiAgICBwcml2YXRlIGxvY2tPcGVuRGlhbG9nID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGllcmFyY2hpY1NlbGVjdG9yRGlhbG9nU2VydmljZTogTmF0dXJhbEhpZXJhcmNoaWNTZWxlY3RvckRpYWxvZ1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgbmdDb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICkge1xuICAgICAgICBzdXBlcihuZ0NvbnRyb2wpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFZlcnkgaW1wb3J0YW50IHRvIHJldHVybiBzb21ldGhpbmcsIGFib3ZlIGFsbCBpZiBbc2VsZWN0XT0nZGlzcGxheWVkVmFsdWUnIGF0dHJpYnV0ZSB2YWx1ZSBpcyB1c2VkXG4gICAgICovXG4gICAgcHVibGljIGdldERpc3BsYXlGbigpOiAoaXRlbTogTGl0ZXJhbCB8IG51bGwpID0+IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmRpc3BsYXlXaXRoKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kaXNwbGF5V2l0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBkZWZhdWx0RGlzcGxheUZuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE92ZXJyaWRlIHBhcmVudCBiZWNhdXNlIG91ciBpbnRlcm5hbEN0cmwgc3RvcmUgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb24gYXMgc3RyaW5nIGluc3RlYWQgb2YgcmF3IExpdGVyYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogTGl0ZXJhbCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmludGVybmFsQ3RybC5zZXRWYWx1ZSh0aGlzLmdldERpc3BsYXlGbigpKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5EaWFsb2coKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmludGVybmFsQ3RybC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubG9ja09wZW5EaWFsb2cpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubG9ja09wZW5EaWFsb2cgPSB0cnVlO1xuXG4gICAgICAgIGlmICh0aGlzLm9uVG91Y2hlZCkge1xuICAgICAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNlbGVjdEF0S2V5ID0gdGhpcy5nZXRTZWxlY3RLZXkoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQ6IE9yZ2FuaXplZE1vZGVsU2VsZWN0aW9uID0ge307XG5cbiAgICAgICAgaWYgKHRoaXMuaW50ZXJuYWxDdHJsLnZhbHVlKSB7XG4gICAgICAgICAgICBzZWxlY3RlZFtzZWxlY3RBdEtleV0gPSBbdGhpcy52YWx1ZV07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBoaWVyYXJjaGljQ29uZmlnOiBIaWVyYXJjaGljRGlhbG9nQ29uZmlnID0ge1xuICAgICAgICAgICAgaGllcmFyY2hpY0NvbmZpZzogdGhpcy5jb25maWcsXG4gICAgICAgICAgICBoaWVyYXJjaGljU2VsZWN0aW9uOiBzZWxlY3RlZCxcbiAgICAgICAgICAgIGhpZXJhcmNoaWNGaWx0ZXJzOiB0aGlzLmZpbHRlcnMsXG4gICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgZGlhbG9nRm9jdXM6IE1hdERpYWxvZ0NvbmZpZyA9IHtyZXN0b3JlRm9jdXM6IGZhbHNlfTtcblxuICAgICAgICB0aGlzLmhpZXJhcmNoaWNTZWxlY3RvckRpYWxvZ1NlcnZpY2VcbiAgICAgICAgICAgIC5vcGVuKGhpZXJhcmNoaWNDb25maWcsIGRpYWxvZ0ZvY3VzKVxuICAgICAgICAgICAgLmFmdGVyQ2xvc2VkKClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvY2tPcGVuRGlhbG9nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCAmJiByZXN1bHQuaGllcmFyY2hpY1NlbGVjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSByZXN1bHQuaGllcmFyY2hpY1NlbGVjdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgLy8gRmluZCB0aGUgb25seSBzZWxlY3Rpb24gYW1vbmdzdCBhbGwgcG9zc2libGUga2V5c1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXlXaXRoU2VsZWN0aW9uID0gT2JqZWN0LmtleXMoc2VsZWN0aW9uKS5maW5kKGtleSA9PiBzZWxlY3Rpb25ba2V5XVswXSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNpbmdsZVNlbGVjdGlvbiA9IGtleVdpdGhTZWxlY3Rpb24gPyBzZWxlY3Rpb25ba2V5V2l0aFNlbGVjdGlvbl1bMF0gOiBudWxsO1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMud3JpdGVWYWx1ZShzaW5nbGVTZWxlY3Rpb24pO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb3BhZ2F0ZVZhbHVlKHNpbmdsZVNlbGVjdGlvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3dTZWxlY3RCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhISh0aGlzLmludGVybmFsQ3RybD8uZW5hYmxlZCAmJiB0aGlzLnNlbGVjdExhYmVsICYmIHRoaXMuY29uZmlnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNlbGVjdEtleSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBzZWxlY3RLZXkgPSB0aGlzLmNvbmZpZy5maWx0ZXIoYyA9PiAhIWMuc2VsZWN0YWJsZUF0S2V5KVswXS5zZWxlY3RhYmxlQXRLZXk7XG5cbiAgICAgICAgaWYgKCFzZWxlY3RLZXkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSGllcmFyY2hpYyBzZWxlY3RvciBtdXN0IGJlIGNvbmZpZ3VyZWQgd2l0aCBhdCBsZWFzdCBvbmUgc2VsZWN0YWJsZUF0S2V5Jyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc2VsZWN0S2V5O1xuICAgIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBbZmxvYXRMYWJlbF09XCJmbG9hdFBsYWNlaG9sZGVyXCI+XG4gICAgPG1hdC1sYWJlbD57eyBwbGFjZWhvbGRlciB9fTwvbWF0LWxhYmVsPlxuXG4gICAgPCEtLSBJbnB1dCBmb3IgaGllcmFyY2hpY2FsIHNlbGVjdG9yIC0tPlxuICAgIDxpbnB1dFxuICAgICAgICAoYmx1cik9XCJibHVyLmVtaXQoKVwiXG4gICAgICAgIChmb2N1cyk9XCJvcGVuRGlhbG9nKClcIlxuICAgICAgICAoa2V5ZG93bi5lc2MpPVwiY2xlYXIoKVwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJpbnRlcm5hbEN0cmxcIlxuICAgICAgICBbZXJyb3JTdGF0ZU1hdGNoZXJdPVwibWF0Y2hlclwiXG4gICAgICAgIGFyaWEtbGFiZWw9XCJSZWNoZXJjaGUgZXQgc8OpbGVjdGlvblwiXG4gICAgICAgIGkxOG4tYXJpYS1sYWJlbFxuICAgICAgICBtYXRJbnB1dFxuICAgIC8+XG5cbiAgICA8IS0tIE1ldGEgZGF0YSAtLT5cbiAgICA8bmF0dXJhbC1pY29uICpuZ0lmPVwic2hvd0ljb25cIiBbbmFtZV09XCJpY29uXCIgbWF0UHJlZml4PjwvbmF0dXJhbC1pY29uPlxuXG4gICAgPCEtLSBDbGVhciBidXR0b24gLS0+XG4gICAgPGRpdiBjbGFzcz1cInN1ZmZpeC1idXR0b25zXCIgbWF0U3VmZml4PlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xlYXIoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICpuZ0lmPVwiaW50ZXJuYWxDdHJsLnZhbHVlICYmIGludGVybmFsQ3RybC5lbmFibGVkICYmICFjbGVhckxhYmVsXCJcbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgaTE4bi1tYXRUb29sdGlwXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiRMOpc8OpbGVjdGlvbm5lclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuYXR1cmFsLWljb24gbmFtZT1cImNsb3NlXCI+PC9uYXR1cmFsLWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cImludGVybmFsQ3RybC52YWx1ZSAmJiBuYXZpZ2F0ZVRvXCJcbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5hdmlnYXRlVG9cIlxuICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBpMThuLW1hdFRvb2x0aXBcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJOYXZpZ3VlciB2ZXJzXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5hdHVyYWwtaWNvbiBuYW1lPVwib3Blbl9pbl9icm93c2VyXCI+PC9uYXR1cmFsLWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImhhc1JlcXVpcmVkRXJyb3IoKVwiIGkxOG4+Q2UgY2hhbXAgZXN0IHJlcXVpczwvbWF0LWVycm9yPlxuPC9tYXQtZm9ybS1maWVsZD5cblxuPCEtLSAgICBBZGRpdGlvbmFsICh1bilzZWxlY3QvKHVuKWxpbmsgYnV0dG9ucyBmb3IgbW9yZSB2aXN1YWwgY29oZXNpb24gd2l0aCBuYXR1cmFsLXJlbGF0aW9ucyAtLT48IS0tIFtjbGVhckxhYmVsXSBhbmQvb3IgW3NlbGVjdExhYmVsXSBoYXMgdG8gYmUgZ2l2ZW4gYXMgYXR0cmlidXRlIGlucHV0IC0tPlxuPGRpdiAqbmdJZj1cInNob3dTZWxlY3RCdXR0b24oKSB8fCBzaG93Q2xlYXJCdXR0b24oKVwiIGNsYXNzPVwiZXh0ZXJuYWwtYnV0dG9uc1wiPlxuICAgIDxidXR0b24gKGNsaWNrKT1cIm9wZW5EaWFsb2coKVwiICpuZ0lmPVwic2hvd1NlbGVjdEJ1dHRvbigpXCIgY29sb3I9XCJwcmltYXJ5XCIgbWF0LWZsYXQtYnV0dG9uPnt7IHNlbGVjdExhYmVsIH19PC9idXR0b24+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiY2xlYXIoKVwiICpuZ0lmPVwic2hvd0NsZWFyQnV0dG9uKClcIiBjb2xvcj1cIndhcm5cIiBtYXQtYnV0dG9uPnt7IGNsZWFyTGFiZWwgfX08L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
5
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
6
|
+
import { MatInputModule } from '@angular/material/input';
|
|
7
|
+
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
8
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
9
|
+
import { RouterModule } from '@angular/router';
|
|
10
|
+
import { NaturalIconModule } from '../icon/icon.module';
|
|
11
|
+
import { NaturalSelectHierarchicComponent } from './select-hierarchic/select-hierarchic.component';
|
|
12
|
+
import { NaturalSelectComponent } from './select/select.component';
|
|
13
|
+
import { NaturalCommonModule } from '../common/common-module';
|
|
14
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
15
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
16
|
+
import { NaturalSelectEnumComponent } from './select-enum/select-enum.component';
|
|
17
|
+
import * as i0 from "@angular/core";
|
|
18
|
+
export class NaturalSelectModule {
|
|
19
|
+
}
|
|
20
|
+
NaturalSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
21
|
+
NaturalSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectModule, declarations: [NaturalSelectComponent, NaturalSelectEnumComponent, NaturalSelectHierarchicComponent], imports: [CommonModule,
|
|
22
|
+
MatAutocompleteModule,
|
|
23
|
+
MatButtonModule,
|
|
24
|
+
MatFormFieldModule,
|
|
25
|
+
MatInputModule,
|
|
26
|
+
MatProgressSpinnerModule,
|
|
27
|
+
MatSelectModule,
|
|
28
|
+
MatTooltipModule,
|
|
29
|
+
NaturalCommonModule,
|
|
30
|
+
NaturalIconModule,
|
|
31
|
+
ReactiveFormsModule,
|
|
32
|
+
RouterModule], exports: [NaturalSelectComponent, NaturalSelectEnumComponent, NaturalSelectHierarchicComponent] });
|
|
33
|
+
NaturalSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectModule, imports: [[
|
|
34
|
+
CommonModule,
|
|
35
|
+
MatAutocompleteModule,
|
|
36
|
+
MatButtonModule,
|
|
37
|
+
MatFormFieldModule,
|
|
38
|
+
MatInputModule,
|
|
39
|
+
MatProgressSpinnerModule,
|
|
40
|
+
MatSelectModule,
|
|
41
|
+
MatTooltipModule,
|
|
42
|
+
NaturalCommonModule,
|
|
43
|
+
NaturalIconModule,
|
|
44
|
+
ReactiveFormsModule,
|
|
45
|
+
RouterModule,
|
|
46
|
+
]] });
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSelectModule, decorators: [{
|
|
48
|
+
type: NgModule,
|
|
49
|
+
args: [{
|
|
50
|
+
declarations: [NaturalSelectComponent, NaturalSelectEnumComponent, NaturalSelectHierarchicComponent],
|
|
51
|
+
imports: [
|
|
52
|
+
CommonModule,
|
|
53
|
+
MatAutocompleteModule,
|
|
54
|
+
MatButtonModule,
|
|
55
|
+
MatFormFieldModule,
|
|
56
|
+
MatInputModule,
|
|
57
|
+
MatProgressSpinnerModule,
|
|
58
|
+
MatSelectModule,
|
|
59
|
+
MatTooltipModule,
|
|
60
|
+
NaturalCommonModule,
|
|
61
|
+
NaturalIconModule,
|
|
62
|
+
ReactiveFormsModule,
|
|
63
|
+
RouterModule,
|
|
64
|
+
],
|
|
65
|
+
exports: [NaturalSelectComponent, NaturalSelectEnumComponent, NaturalSelectHierarchicComponent],
|
|
66
|
+
}]
|
|
67
|
+
}] });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlbGVjdC9zZWxlY3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxnQ0FBZ0MsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFvQi9FLE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFqQmIsc0JBQXNCLEVBQUUsMEJBQTBCLEVBQUUsZ0NBQWdDLGFBRS9GLFlBQVk7UUFDWixxQkFBcUI7UUFDckIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2Qsd0JBQXdCO1FBQ3hCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLGlCQUFpQjtRQUNqQixtQkFBbUI7UUFDbkIsWUFBWSxhQUVOLHNCQUFzQixFQUFFLDBCQUEwQixFQUFFLGdDQUFnQztpSEFFckYsbUJBQW1CLFlBaEJuQjtZQUNMLFlBQVk7WUFDWixxQkFBcUI7WUFDckIsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2Qsd0JBQXdCO1lBQ3hCLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsWUFBWTtTQUNmOzJGQUdRLG1CQUFtQjtrQkFsQi9CLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsc0JBQXNCLEVBQUUsMEJBQTBCLEVBQUUsZ0NBQWdDLENBQUM7b0JBQ3BHLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLHFCQUFxQjt3QkFDckIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2Qsd0JBQXdCO3dCQUN4QixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsWUFBWTtxQkFDZjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSwwQkFBMEIsRUFBRSxnQ0FBZ0MsQ0FBQztpQkFDbEciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7TWF0QnV0dG9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtNYXRJbnB1dE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHtNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xuaW1wb3J0IHtNYXRUb29sdGlwTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7Um91dGVyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtOYXR1cmFsSWNvbk1vZHVsZX0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XG5pbXBvcnQge05hdHVyYWxTZWxlY3RIaWVyYXJjaGljQ29tcG9uZW50fSBmcm9tICcuL3NlbGVjdC1oaWVyYXJjaGljL3NlbGVjdC1oaWVyYXJjaGljLmNvbXBvbmVudCc7XG5pbXBvcnQge05hdHVyYWxTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHtOYXR1cmFsQ29tbW9uTW9kdWxlfSBmcm9tICcuLi9jb21tb24vY29tbW9uLW1vZHVsZSc7XG5pbXBvcnQge01hdFNlbGVjdE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7TmF0dXJhbFNlbGVjdEVudW1Db21wb25lbnR9IGZyb20gJy4vc2VsZWN0LWVudW0vc2VsZWN0LWVudW0uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtOYXR1cmFsU2VsZWN0Q29tcG9uZW50LCBOYXR1cmFsU2VsZWN0RW51bUNvbXBvbmVudCwgTmF0dXJhbFNlbGVjdEhpZXJhcmNoaWNDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICAgICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICAgICAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgICAgIE5hdHVyYWxDb21tb25Nb2R1bGUsXG4gICAgICAgIE5hdHVyYWxJY29uTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBSb3V0ZXJNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbTmF0dXJhbFNlbGVjdENvbXBvbmVudCwgTmF0dXJhbFNlbGVjdEVudW1Db21wb25lbnQsIE5hdHVyYWxTZWxlY3RIaWVyYXJjaGljQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFNlbGVjdE1vZHVsZSB7fVxuIl19
|
package/{esm2015/lib/modules/sidenav/public-api.js → esm2020/lib/modules/sidenav/public-api.mjs}
RENAMED
|
File without changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class NaturalSidenavComponent {
|
|
4
|
+
constructor() { }
|
|
5
|
+
}
|
|
6
|
+
NaturalSidenavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
|
+
NaturalSidenavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: NaturalSidenavComponent, selector: "natural-sidenav", ngImport: i0, template: '<ng-content></ng-content>', isInline: true });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{
|
|
11
|
+
selector: 'natural-sidenav',
|
|
12
|
+
template: '<ng-content></ng-content>',
|
|
13
|
+
}]
|
|
14
|
+
}], ctorParameters: function () { return []; } });
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9zaWRlbmF2L3NpZGVuYXYvc2lkZW5hdi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFNeEMsTUFBTSxPQUFPLHVCQUF1QjtJQUNoQyxnQkFBc0IsQ0FBQzs7b0hBRGQsdUJBQXVCO3dHQUF2Qix1QkFBdUIsdURBRnRCLDJCQUEyQjsyRkFFNUIsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRSwyQkFBMkI7aUJBQ3hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25hdHVyYWwtc2lkZW5hdicsXG4gICAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFNpZGVuYXZDb21wb25lbnQge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHt9XG59XG4iXX0=
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { Component, HostBinding, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { MatSidenav, MatSidenavContainer } from '@angular/material/sidenav';
|
|
3
|
+
import { NaturalSidenavService } from '../sidenav.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../sidenav.service";
|
|
6
|
+
import * as i2 from "@angular/material/sidenav";
|
|
7
|
+
import * as i3 from "@angular/common";
|
|
8
|
+
export class NaturalSidenavContainerComponent {
|
|
9
|
+
constructor(sidenavService, element) {
|
|
10
|
+
this.sidenavService = sidenavService;
|
|
11
|
+
this.element = element;
|
|
12
|
+
/**
|
|
13
|
+
* The side that the drawer is attached to
|
|
14
|
+
*/
|
|
15
|
+
this.position = 'start';
|
|
16
|
+
/**
|
|
17
|
+
* If true listens to route changes to close side nav after a route change if mobile view is active
|
|
18
|
+
* Actually a navigation to current route does not emit a route change, and the sidenav don't close.
|
|
19
|
+
*/
|
|
20
|
+
this.mobileAutoClose = true;
|
|
21
|
+
/**
|
|
22
|
+
* Width of the minimized menu
|
|
23
|
+
*/
|
|
24
|
+
this.minimizedWidth = 150;
|
|
25
|
+
/**
|
|
26
|
+
* If true, prevents "native" material sidenav to scroll at container level and delegates the scroll responsability to the transcluded
|
|
27
|
+
* content
|
|
28
|
+
*/
|
|
29
|
+
this.noScroll = false;
|
|
30
|
+
}
|
|
31
|
+
get isMinimized() {
|
|
32
|
+
return this.sidenavService.isMinimized;
|
|
33
|
+
}
|
|
34
|
+
get isMobileView() {
|
|
35
|
+
return this.sidenavService.isMobileView();
|
|
36
|
+
}
|
|
37
|
+
ngOnInit() {
|
|
38
|
+
this.sidenavService.init(this.name, this.menuContainer, this.menuSidenav, this, this.mobileAutoClose);
|
|
39
|
+
}
|
|
40
|
+
ngOnDestroy() {
|
|
41
|
+
this.sidenavService.destroy(this);
|
|
42
|
+
}
|
|
43
|
+
toggle() {
|
|
44
|
+
this.sidenavService.toggle();
|
|
45
|
+
}
|
|
46
|
+
close() {
|
|
47
|
+
this.sidenavService.close();
|
|
48
|
+
}
|
|
49
|
+
open() {
|
|
50
|
+
this.sidenavService.open();
|
|
51
|
+
}
|
|
52
|
+
minimize() {
|
|
53
|
+
this.sidenavService.minimize();
|
|
54
|
+
}
|
|
55
|
+
expand() {
|
|
56
|
+
this.sidenavService.expand();
|
|
57
|
+
}
|
|
58
|
+
toggleMinimized() {
|
|
59
|
+
this.sidenavService.toggleMinimized();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
NaturalSidenavContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavContainerComponent, deps: [{ token: i1.NaturalSidenavService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
+
NaturalSidenavContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: NaturalSidenavContainerComponent, selector: "natural-sidenav-container", inputs: { name: "name", position: "position", mobileAutoClose: "mobileAutoClose", minimizedWidth: "minimizedWidth", noScroll: "noScroll" }, host: { properties: { "attr.no-scroll": "this.noScroll" } }, providers: [NaturalSidenavService], viewQueries: [{ propertyName: "menuContainer", first: true, predicate: MatSidenavContainer, descendants: true, static: true }, { propertyName: "menuSidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container>\n <mat-sidenav\n (openedChange)=\"sidenavService.setOpened($event)\"\n [mode]=\"sidenavService.activeMode\"\n [ngClass]=\"sidenavService.isMinimized ? 'menuMinimized' : ''\"\n [opened]=\"sidenavService.isOpened\"\n [style.min-width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [style.width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [position]=\"position\"\n >\n <ng-content select=\"natural-sidenav\"></ng-content>\n </mat-sidenav>\n\n <mat-sidenav-content>\n <div>\n <ng-content select=\"natural-sidenav-content\"></ng-content>\n </div>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [":host{display:flex;flex-direction:column}:host mat-sidenav-container{display:flex;flex-direction:column;flex:1}:host mat-sidenav-content>div{overflow:auto}:host .menuMinimized{overflow-x:hidden}:host .buttons{display:flex;flex-direction:row;justify-content:flex-end}\n"], components: [{ type: i2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i2.MatSidenavContent, selector: "mat-sidenav-content" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavContainerComponent, decorators: [{
|
|
65
|
+
type: Component,
|
|
66
|
+
args: [{ selector: 'natural-sidenav-container', providers: [NaturalSidenavService], template: "<mat-sidenav-container>\n <mat-sidenav\n (openedChange)=\"sidenavService.setOpened($event)\"\n [mode]=\"sidenavService.activeMode\"\n [ngClass]=\"sidenavService.isMinimized ? 'menuMinimized' : ''\"\n [opened]=\"sidenavService.isOpened\"\n [style.min-width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [style.width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [position]=\"position\"\n >\n <ng-content select=\"natural-sidenav\"></ng-content>\n </mat-sidenav>\n\n <mat-sidenav-content>\n <div>\n <ng-content select=\"natural-sidenav-content\"></ng-content>\n </div>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [":host{display:flex;flex-direction:column}:host mat-sidenav-container{display:flex;flex-direction:column;flex:1}:host mat-sidenav-content>div{overflow:auto}:host .menuMinimized{overflow-x:hidden}:host .buttons{display:flex;flex-direction:row;justify-content:flex-end}\n"] }]
|
|
67
|
+
}], ctorParameters: function () { return [{ type: i1.NaturalSidenavService }, { type: i0.ElementRef }]; }, propDecorators: { name: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], position: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], mobileAutoClose: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], minimizedWidth: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], noScroll: [{
|
|
76
|
+
type: HostBinding,
|
|
77
|
+
args: ['attr.no-scroll']
|
|
78
|
+
}, {
|
|
79
|
+
type: Input
|
|
80
|
+
}], menuContainer: [{
|
|
81
|
+
type: ViewChild,
|
|
82
|
+
args: [MatSidenavContainer, { static: true }]
|
|
83
|
+
}], menuSidenav: [{
|
|
84
|
+
type: ViewChild,
|
|
85
|
+
args: [MatSidenav, { static: true }]
|
|
86
|
+
}] } });
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2lkZW5hdi9zaWRlbmF2LWNvbnRhaW5lci9zaWRlbmF2LWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9zaWRlbmF2L3NpZGVuYXYtY29udGFpbmVyL3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBWSxVQUFVLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFRekQsTUFBTSxPQUFPLGdDQUFnQztJQXNDekMsWUFBbUMsY0FBcUMsRUFBa0IsT0FBbUI7UUFBMUUsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBQWtCLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFoQzdHOztXQUVHO1FBQ2EsYUFBUSxHQUEwQixPQUFPLENBQUM7UUFFMUQ7OztXQUdHO1FBQ2Esb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFFdkM7O1dBRUc7UUFDYSxtQkFBYyxHQUFHLEdBQUcsQ0FBQztRQUVyQzs7O1dBR0c7UUFDNEMsYUFBUSxHQUFHLEtBQUssQ0FBQztJQVlnRCxDQUFDO0lBRWpILElBQVcsV0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDbkIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxNQUFNO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sS0FBSztRQUNSLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLElBQUk7UUFDUCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRU0sTUFBTTtRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVNLGVBQWU7UUFDbEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQyxDQUFDOzs2SEE5RVEsZ0NBQWdDO2lIQUFoQyxnQ0FBZ0MsNlBBRjlCLENBQUMscUJBQXFCLENBQUMseUVBaUN2QixtQkFBbUIsNEZBS25CLFVBQVUsOERDOUN6Qiwrd0JBbUJBOzJGRFRhLGdDQUFnQztrQkFONUMsU0FBUzsrQkFDSSwyQkFBMkIsYUFHMUIsQ0FBQyxxQkFBcUIsQ0FBQztxSUFNbEIsSUFBSTtzQkFBbkIsS0FBSztnQkFLVSxRQUFRO3NCQUF2QixLQUFLO2dCQU1VLGVBQWU7c0JBQTlCLEtBQUs7Z0JBS1UsY0FBYztzQkFBN0IsS0FBSztnQkFNeUMsUUFBUTtzQkFBdEQsV0FBVzt1QkFBQyxnQkFBZ0I7O3NCQUFHLEtBQUs7Z0JBS21CLGFBQWE7c0JBQXBFLFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUtDLFdBQVc7c0JBQXpELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXREcmF3ZXIsIE1hdFNpZGVuYXYsIE1hdFNpZGVuYXZDb250YWluZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHtOYXR1cmFsU2lkZW5hdlNlcnZpY2V9IGZyb20gJy4uL3NpZGVuYXYuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmF0dXJhbC1zaWRlbmF2LWNvbnRhaW5lcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zaWRlbmF2LWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW05hdHVyYWxTaWRlbmF2U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIC8qKlxuICAgICAqIFVuaXF1ZSBpZGVudGlmaWVyIHVzZWQgZm9yIHRoZSBsb2NhbCBzdG9yYWdlXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIG5hbWUhOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2lkZSB0aGF0IHRoZSBkcmF3ZXIgaXMgYXR0YWNoZWQgdG9cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgcG9zaXRpb246IE1hdERyYXdlclsncG9zaXRpb24nXSA9ICdzdGFydCc7XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlIGxpc3RlbnMgdG8gcm91dGUgY2hhbmdlcyB0byBjbG9zZSBzaWRlIG5hdiBhZnRlciBhIHJvdXRlIGNoYW5nZSBpZiBtb2JpbGUgdmlldyBpcyBhY3RpdmVcbiAgICAgKiBBY3R1YWxseSBhIG5hdmlnYXRpb24gdG8gY3VycmVudCByb3V0ZSBkb2VzIG5vdCBlbWl0IGEgcm91dGUgY2hhbmdlLCBhbmQgdGhlIHNpZGVuYXYgZG9uJ3QgY2xvc2UuXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIG1vYmlsZUF1dG9DbG9zZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBXaWR0aCBvZiB0aGUgbWluaW1pemVkIG1lbnVcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgbWluaW1pemVkV2lkdGggPSAxNTA7XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCBwcmV2ZW50cyBcIm5hdGl2ZVwiIG1hdGVyaWFsIHNpZGVuYXYgdG8gc2Nyb2xsIGF0IGNvbnRhaW5lciBsZXZlbCBhbmQgZGVsZWdhdGVzIHRoZSBzY3JvbGwgcmVzcG9uc2FiaWxpdHkgdG8gdGhlIHRyYW5zY2x1ZGVkXG4gICAgICogY29udGVudFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5uby1zY3JvbGwnKSBASW5wdXQoKSBwdWJsaWMgbm9TY3JvbGwgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIElubmVyIFwibmF0aXZlXCIgbWF0ZXJpYWwgc2lkZW5hdiBjb250YWluZXJcbiAgICAgKi9cbiAgICBAVmlld0NoaWxkKE1hdFNpZGVuYXZDb250YWluZXIsIHtzdGF0aWM6IHRydWV9KSBwcml2YXRlIG1lbnVDb250YWluZXIhOiBNYXRTaWRlbmF2Q29udGFpbmVyO1xuXG4gICAgLyoqXG4gICAgICogSW5uZXIgXCJuYXRpdmVcIiBtYXRlcmlhbCBzaWRlbmF2XG4gICAgICovXG4gICAgQFZpZXdDaGlsZChNYXRTaWRlbmF2LCB7c3RhdGljOiB0cnVlfSkgcHJpdmF0ZSBtZW51U2lkZW5hdiE6IE1hdFNpZGVuYXY7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IHNpZGVuYXZTZXJ2aWNlOiBOYXR1cmFsU2lkZW5hdlNlcnZpY2UsIHB1YmxpYyByZWFkb25seSBlbGVtZW50OiBFbGVtZW50UmVmKSB7fVxuXG4gICAgcHVibGljIGdldCBpc01pbmltaXplZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2lkZW5hdlNlcnZpY2UuaXNNaW5pbWl6ZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc01vYmlsZVZpZXcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpZGVuYXZTZXJ2aWNlLmlzTW9iaWxlVmlldygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5pbml0KHRoaXMubmFtZSwgdGhpcy5tZW51Q29udGFpbmVyLCB0aGlzLm1lbnVTaWRlbmF2LCB0aGlzLCB0aGlzLm1vYmlsZUF1dG9DbG9zZSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLmRlc3Ryb3kodGhpcyk7XG4gICAgfVxuXG4gICAgcHVibGljIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS50b2dnbGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5vcGVuKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG1pbmltaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLm1pbmltaXplKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGV4cGFuZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5leHBhbmQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9nZ2xlTWluaW1pemVkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnRvZ2dsZU1pbmltaXplZCgpO1xuICAgIH1cbn1cbiIsIjxtYXQtc2lkZW5hdi1jb250YWluZXI+XG4gICAgPG1hdC1zaWRlbmF2XG4gICAgICAgIChvcGVuZWRDaGFuZ2UpPVwic2lkZW5hdlNlcnZpY2Uuc2V0T3BlbmVkKCRldmVudClcIlxuICAgICAgICBbbW9kZV09XCJzaWRlbmF2U2VydmljZS5hY3RpdmVNb2RlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwic2lkZW5hdlNlcnZpY2UuaXNNaW5pbWl6ZWQgPyAnbWVudU1pbmltaXplZCcgOiAnJ1wiXG4gICAgICAgIFtvcGVuZWRdPVwic2lkZW5hdlNlcnZpY2UuaXNPcGVuZWRcIlxuICAgICAgICBbc3R5bGUubWluLXdpZHRoLnB4XT1cInNpZGVuYXZTZXJ2aWNlLmlzTWluaW1pemVkICYmIG1pbmltaXplZFdpZHRoID8gbWluaW1pemVkV2lkdGggOiBudWxsXCJcbiAgICAgICAgW3N0eWxlLndpZHRoLnB4XT1cInNpZGVuYXZTZXJ2aWNlLmlzTWluaW1pemVkICYmIG1pbmltaXplZFdpZHRoID8gbWluaW1pemVkV2lkdGggOiBudWxsXCJcbiAgICAgICAgW3Bvc2l0aW9uXT1cInBvc2l0aW9uXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIm5hdHVyYWwtc2lkZW5hdlwiPjwvbmctY29udGVudD5cbiAgICA8L21hdC1zaWRlbmF2PlxuXG4gICAgPG1hdC1zaWRlbmF2LWNvbnRlbnQ+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJuYXR1cmFsLXNpZGVuYXYtY29udGVudFwiPjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxuPC9tYXQtc2lkZW5hdi1jb250YWluZXI+XG4iXX0=
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class NaturalSidenavContentComponent {
|
|
4
|
+
constructor() { }
|
|
5
|
+
}
|
|
6
|
+
NaturalSidenavContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
|
+
NaturalSidenavContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: NaturalSidenavContentComponent, selector: "natural-sidenav-content", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{flex:1;display:flex;flex-direction:column;overflow:auto}\n"] });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavContentComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ selector: 'natural-sidenav-content', template: '<ng-content></ng-content>', styles: [":host{flex:1;display:flex;flex-direction:column;overflow:auto}\n"] }]
|
|
11
|
+
}], ctorParameters: function () { return []; } });
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NpZGVuYXYvc2lkZW5hdi1jb250ZW50L3NpZGVuYXYtY29udGVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFPeEMsTUFBTSxPQUFPLDhCQUE4QjtJQUN2QyxnQkFBc0IsQ0FBQzs7MkhBRGQsOEJBQThCOytHQUE5Qiw4QkFBOEIsK0RBSDdCLDJCQUEyQjsyRkFHNUIsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNJLHlCQUF5QixZQUN6QiwyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmF0dXJhbC1zaWRlbmF2LWNvbnRlbnQnLFxuICAgIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2lkZW5hdi1jb250ZW50LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxTaWRlbmF2Q29udGVudENvbXBvbmVudCB7XG4gICAgcHVibGljIGNvbnN0cnVjdG9yKCkge31cbn1cbiJdfQ==
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class NaturalSidenavStackService {
|
|
5
|
+
constructor() {
|
|
6
|
+
/**
|
|
7
|
+
* The stack of all currently living sidenavs
|
|
8
|
+
*/
|
|
9
|
+
this.sidenavs = [];
|
|
10
|
+
/**
|
|
11
|
+
* Emits the most recent living SidenavContainer whenever it changes. So it's
|
|
12
|
+
* either the SidenavContainer that was just added, or the one "before" the
|
|
13
|
+
* SidenavContainer that was just removed
|
|
14
|
+
*/
|
|
15
|
+
this.currentSidenav = new Subject();
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* For internal use only
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
register(sidenav) {
|
|
22
|
+
const exists = this.sidenavs.some(s => s.name === sidenav.name);
|
|
23
|
+
// Prevent duplicated name, and so on local storage or further access conflicts
|
|
24
|
+
if (exists) {
|
|
25
|
+
throw new Error('Duplicated side nav name: ' + sidenav.name);
|
|
26
|
+
}
|
|
27
|
+
this.sidenavs.push(sidenav);
|
|
28
|
+
this.next();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* For internal use only
|
|
32
|
+
* @internal
|
|
33
|
+
*/
|
|
34
|
+
unregister(sidenav) {
|
|
35
|
+
const index = this.sidenavs.indexOf(sidenav);
|
|
36
|
+
if (index === -1) {
|
|
37
|
+
throw Error('Trying to remove a SidenavContainer that was never registered');
|
|
38
|
+
}
|
|
39
|
+
this.sidenavs.splice(index, 1);
|
|
40
|
+
this.next();
|
|
41
|
+
}
|
|
42
|
+
next() {
|
|
43
|
+
this.currentSidenav.next(this.sidenavs[this.sidenavs.length - 1]);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
NaturalSidenavStackService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavStackService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
47
|
+
NaturalSidenavStackService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavStackService, providedIn: 'root' });
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavStackService, decorators: [{
|
|
49
|
+
type: Injectable,
|
|
50
|
+
args: [{ providedIn: 'root' }]
|
|
51
|
+
}] });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi1zdGFjay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2lkZW5hdi9zaWRlbmF2LXN0YWNrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDOztBQUk3QixNQUFNLE9BQU8sMEJBQTBCO0lBRHZDO1FBRUk7O1dBRUc7UUFDYyxhQUFRLEdBQXVDLEVBQUUsQ0FBQztRQUVuRTs7OztXQUlHO1FBQ2EsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBZ0QsQ0FBQztLQW1DaEc7SUFqQ0c7OztPQUdHO0lBQ0ksUUFBUSxDQUFDLE9BQXlDO1FBQ3JELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFaEUsK0VBQStFO1FBQy9FLElBQUksTUFBTSxFQUFFO1lBQ1IsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDaEU7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFVBQVUsQ0FBQyxPQUF5QztRQUN2RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QyxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNkLE1BQU0sS0FBSyxDQUFDLCtEQUErRCxDQUFDLENBQUM7U0FDaEY7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxJQUFJO1FBQ1IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7O3VIQTdDUSwwQkFBMEI7MkhBQTFCLDBCQUEwQixjQURkLE1BQU07MkZBQ2xCLDBCQUEwQjtrQkFEdEMsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7TmF0dXJhbFNpZGVuYXZDb250YWluZXJDb21wb25lbnR9IGZyb20gJy4vc2lkZW5hdi1jb250YWluZXIvc2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50JztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFNpZGVuYXZTdGFja1NlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIFRoZSBzdGFjayBvZiBhbGwgY3VycmVudGx5IGxpdmluZyBzaWRlbmF2c1xuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc2lkZW5hdnM6IE5hdHVyYWxTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50W10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIEVtaXRzIHRoZSBtb3N0IHJlY2VudCBsaXZpbmcgU2lkZW5hdkNvbnRhaW5lciB3aGVuZXZlciBpdCBjaGFuZ2VzLiBTbyBpdCdzXG4gICAgICogZWl0aGVyIHRoZSBTaWRlbmF2Q29udGFpbmVyIHRoYXQgd2FzIGp1c3QgYWRkZWQsIG9yIHRoZSBvbmUgXCJiZWZvcmVcIiB0aGVcbiAgICAgKiBTaWRlbmF2Q29udGFpbmVyIHRoYXQgd2FzIGp1c3QgcmVtb3ZlZFxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBjdXJyZW50U2lkZW5hdiA9IG5ldyBTdWJqZWN0PE5hdHVyYWxTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50IHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqXG4gICAgICogRm9yIGludGVybmFsIHVzZSBvbmx5XG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIHJlZ2lzdGVyKHNpZGVuYXY6IE5hdHVyYWxTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGV4aXN0cyA9IHRoaXMuc2lkZW5hdnMuc29tZShzID0+IHMubmFtZSA9PT0gc2lkZW5hdi5uYW1lKTtcblxuICAgICAgICAvLyBQcmV2ZW50IGR1cGxpY2F0ZWQgbmFtZSwgYW5kIHNvIG9uIGxvY2FsIHN0b3JhZ2Ugb3IgZnVydGhlciBhY2Nlc3MgY29uZmxpY3RzXG4gICAgICAgIGlmIChleGlzdHMpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRHVwbGljYXRlZCBzaWRlIG5hdiBuYW1lOiAnICsgc2lkZW5hdi5uYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2lkZW5hdnMucHVzaChzaWRlbmF2KTtcbiAgICAgICAgdGhpcy5uZXh0KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRm9yIGludGVybmFsIHVzZSBvbmx5XG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIHVucmVnaXN0ZXIoc2lkZW5hdjogTmF0dXJhbFNpZGVuYXZDb250YWluZXJDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNpZGVuYXZzLmluZGV4T2Yoc2lkZW5hdik7XG4gICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdUcnlpbmcgdG8gcmVtb3ZlIGEgU2lkZW5hdkNvbnRhaW5lciB0aGF0IHdhcyBuZXZlciByZWdpc3RlcmVkJyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNpZGVuYXZzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIHRoaXMubmV4dCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbmV4dCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXJyZW50U2lkZW5hdi5uZXh0KHRoaXMuc2lkZW5hdnNbdGhpcy5zaWRlbmF2cy5sZW5ndGggLSAxXSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
4
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
5
|
+
import { MatSidenavModule } from '@angular/material/sidenav';
|
|
6
|
+
import { NaturalSidenavContainerComponent } from './sidenav-container/sidenav-container.component';
|
|
7
|
+
import { NaturalSidenavContentComponent } from './sidenav-content/sidenav-content.component';
|
|
8
|
+
import { NaturalSidenavComponent } from './sidenav/sidenav.component';
|
|
9
|
+
import { sessionStorageProvider } from '../common/services/memory-storage';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class NaturalSidenavModule {
|
|
12
|
+
}
|
|
13
|
+
NaturalSidenavModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
NaturalSidenavModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavModule, declarations: [NaturalSidenavComponent, NaturalSidenavContainerComponent, NaturalSidenavContentComponent], imports: [CommonModule, MatSidenavModule, MatIconModule, MatButtonModule], exports: [NaturalSidenavComponent, NaturalSidenavContainerComponent, NaturalSidenavContentComponent] });
|
|
15
|
+
NaturalSidenavModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavModule, providers: [sessionStorageProvider], imports: [[CommonModule, MatSidenavModule, MatIconModule, MatButtonModule]] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalSidenavModule, decorators: [{
|
|
17
|
+
type: NgModule,
|
|
18
|
+
args: [{
|
|
19
|
+
declarations: [NaturalSidenavComponent, NaturalSidenavContainerComponent, NaturalSidenavContentComponent],
|
|
20
|
+
imports: [CommonModule, MatSidenavModule, MatIconModule, MatButtonModule],
|
|
21
|
+
exports: [NaturalSidenavComponent, NaturalSidenavContainerComponent, NaturalSidenavContentComponent],
|
|
22
|
+
providers: [sessionStorageProvider],
|
|
23
|
+
}]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9zaWRlbmF2L3NpZGVuYXYubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGdDQUFnQyxFQUFDLE1BQU0saURBQWlELENBQUM7QUFDakcsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDM0YsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDcEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7O0FBUXpFLE1BQU0sT0FBTyxvQkFBb0I7O2lIQUFwQixvQkFBb0I7a0hBQXBCLG9CQUFvQixpQkFMZCx1QkFBdUIsRUFBRSxnQ0FBZ0MsRUFBRSw4QkFBOEIsYUFDOUYsWUFBWSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxlQUFlLGFBQzlELHVCQUF1QixFQUFFLGdDQUFnQyxFQUFFLDhCQUE4QjtrSEFHMUYsb0JBQW9CLGFBRmxCLENBQUMsc0JBQXNCLENBQUMsWUFGMUIsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQzsyRkFJaEUsb0JBQW9CO2tCQU5oQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLHVCQUF1QixFQUFFLGdDQUFnQyxFQUFFLDhCQUE4QixDQUFDO29CQUN6RyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQztvQkFDekUsT0FBTyxFQUFFLENBQUMsdUJBQXVCLEVBQUUsZ0NBQWdDLEVBQUUsOEJBQThCLENBQUM7b0JBQ3BHLFNBQVMsRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdEJ1dHRvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge01hdFNpZGVuYXZNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHtOYXR1cmFsU2lkZW5hdkNvbnRhaW5lckNvbXBvbmVudH0gZnJvbSAnLi9zaWRlbmF2LWNvbnRhaW5lci9zaWRlbmF2LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHtOYXR1cmFsU2lkZW5hdkNvbnRlbnRDb21wb25lbnR9IGZyb20gJy4vc2lkZW5hdi1jb250ZW50L3NpZGVuYXYtY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHtOYXR1cmFsU2lkZW5hdkNvbXBvbmVudH0gZnJvbSAnLi9zaWRlbmF2L3NpZGVuYXYuY29tcG9uZW50JztcbmltcG9ydCB7c2Vzc2lvblN0b3JhZ2VQcm92aWRlcn0gZnJvbSAnLi4vY29tbW9uL3NlcnZpY2VzL21lbW9yeS1zdG9yYWdlJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtOYXR1cmFsU2lkZW5hdkNvbXBvbmVudCwgTmF0dXJhbFNpZGVuYXZDb250YWluZXJDb21wb25lbnQsIE5hdHVyYWxTaWRlbmF2Q29udGVudENvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0U2lkZW5hdk1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbTmF0dXJhbFNpZGVuYXZDb21wb25lbnQsIE5hdHVyYWxTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50LCBOYXR1cmFsU2lkZW5hdkNvbnRlbnRDb21wb25lbnRdLFxuICAgIHByb3ZpZGVyczogW3Nlc3Npb25TdG9yYWdlUHJvdmlkZXJdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsU2lkZW5hdk1vZHVsZSB7fVxuIl19
|