@ng-atomic/components 18.2.0 → 18.4.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/atoms/smart-menu-button/smart-menu-button.atom.d.ts +3 -3
- package/components.module.d.ts +6 -1
- package/esm2022/atoms/icon/icon.atom.mjs +2 -2
- package/esm2022/atoms/smart-menu-button/smart-menu-button.atom.mjs +77 -114
- package/esm2022/components.module.mjs +7 -3
- package/esm2022/extras/editor/editor.component.mjs +78 -46
- package/esm2022/frames/app/app.frame.mjs +130 -70
- package/esm2022/frames/auto-layout/auto-layout.frame.mjs +29 -7
- package/esm2022/frames/columns/columns.frame.mjs +2 -2
- package/esm2022/frames/divider/divider.frame.mjs +2 -2
- package/esm2022/frames/drawer/drawer.frame.mjs +2 -2
- package/esm2022/frames/entrance/entrance.frame.mjs +2 -2
- package/esm2022/frames/fab/fab.frame.mjs +2 -2
- package/esm2022/frames/frames.module.mjs +3 -3
- package/esm2022/frames/line-up/line-up.animations.mjs +3 -7
- package/esm2022/frames/line-up/line-up.frame.mjs +2 -2
- package/esm2022/frames/loading/loading.frame.mjs +2 -2
- package/esm2022/frames/progress-bar/index.mjs +2 -0
- package/esm2022/frames/progress-bar/ng-atomic-components-frames-progress-bar.mjs +5 -0
- package/esm2022/frames/progress-bar/progress-bar.frame.mjs +53 -0
- package/esm2022/frames/router-outlet/router-outlet.frame.mjs +96 -41
- package/esm2022/frames/scroll/scroll.frame.mjs +32 -14
- package/esm2022/frames/scroll-v2/index.mjs +2 -2
- package/esm2022/frames/side-app/index.mjs +2 -0
- package/esm2022/frames/side-app/ng-atomic-components-frames-side-app.mjs +5 -0
- package/esm2022/frames/side-app/side-app.frame.mjs +74 -0
- package/esm2022/frames/side-nav/side-nav.frame.mjs +27 -21
- package/esm2022/frames/smart-menu/smart-menu.frame.mjs +2 -2
- package/esm2022/frames/tabs/tabs.frame.mjs +13 -7
- package/esm2022/frames/vertical-hide/vertical-hide.frame.mjs +11 -18
- package/esm2022/molecules/action-input-field/action-input-field.molecule.mjs +2 -2
- package/esm2022/molecules/actions-column/actions-column.molecule.mjs +13 -7
- package/esm2022/molecules/checkbox-column/checkbox-column.molecule.mjs +48 -21
- package/esm2022/molecules/date-input-field/date-input-field.molecule.mjs +2 -2
- package/esm2022/molecules/date-range-input-field/date-range-input-field.molecule.mjs +2 -2
- package/esm2022/molecules/file-input-field/file-input-field.molecule.mjs +2 -2
- package/esm2022/molecules/grid-item/grid-item.molecule.mjs +2 -2
- package/esm2022/molecules/list-item/index.mjs +2 -0
- package/esm2022/molecules/list-item/list-item.molecule.mjs +198 -0
- package/esm2022/molecules/list-item/ng-atomic-components-molecules-list-item.mjs +5 -0
- package/esm2022/molecules/loading-box/loading-box.molecule.mjs +2 -2
- package/esm2022/molecules/molecules.module.mjs +4 -1
- package/esm2022/molecules/navigation-list-item/navigation-list-item.molecule.mjs +2 -2
- package/esm2022/molecules/select-input-field/select-input-field.molecule.mjs +9 -5
- package/esm2022/molecules/smart-column/smart-column.molecule.mjs +129 -43
- package/esm2022/molecules/tree-column/tree-column.molecule.mjs +37 -25
- package/esm2022/organisms/action-buttons-section/action-buttons-section.organism.mjs +2 -2
- package/esm2022/organisms/action-input-section/action-input-section.organism.mjs +2 -2
- package/esm2022/organisms/agreement-input-section/agreement-input-section.organism.mjs +3 -3
- package/esm2022/organisms/card-input-section/card-input-section.organism.mjs +2 -2
- package/esm2022/organisms/cvc-and-exp-input-section/cvc-and-exp-input-section.organism.mjs +2 -2
- package/esm2022/organisms/date-input-section/date-input-section.organism.mjs +4 -4
- package/esm2022/organisms/date-range-input-section/date-range-input-section.organism.mjs +4 -4
- package/esm2022/organisms/definition-list/definition-list.organism.mjs +2 -2
- package/esm2022/organisms/file-input-section/file-input-section.organism.mjs +2 -2
- package/esm2022/organisms/filters-section/filters-section.organism.mjs +5 -5
- package/esm2022/organisms/graphql-editor/graphql-editor.organism.mjs +1 -1
- package/esm2022/organisms/grid-cards-section/grid-cards-section.organism.mjs +2 -2
- package/esm2022/organisms/heading/heading.organism.mjs +2 -2
- package/esm2022/{sheets/actions → organisms/list}/index.mjs +2 -2
- package/esm2022/organisms/list/list.organism.mjs +161 -0
- package/esm2022/{sheets/actions/ng-atomic-components-sheets-actions.mjs → organisms/list/ng-atomic-components-organisms-list.mjs} +1 -1
- package/esm2022/organisms/menu-footer/menu-footer.organism.mjs +2 -2
- package/esm2022/organisms/menu-header/menu-header.organism.mjs +2 -2
- package/esm2022/organisms/mermaid-section/mermaid-section.organism.mjs +39 -33
- package/esm2022/organisms/messages-section/messages-section.organism.mjs +2 -2
- package/esm2022/organisms/navigation-list/navigation-list.organism.mjs +2 -2
- package/esm2022/organisms/navigator/navigator.organism.mjs +49 -19
- package/esm2022/organisms/number-input-section/number-input-section.organism.mjs +2 -2
- package/esm2022/organisms/organisms.module.mjs +5 -5
- package/esm2022/organisms/paginator/paginator.organism.mjs +2 -2
- package/esm2022/organisms/password-input-section/password-input-section.organism.mjs +2 -2
- package/esm2022/organisms/select-input-section/select-input-section.organism.mjs +4 -4
- package/esm2022/organisms/selection-list/selection-list.organism.mjs +1 -1
- package/esm2022/organisms/slider-input-section/slider-input-section.organism.mjs +4 -4
- package/esm2022/organisms/social-login-section/social-login-section.organism.mjs +2 -2
- package/esm2022/organisms/table/index.mjs +2 -1
- package/esm2022/organisms/table/table.helpers.mjs +4 -4
- package/esm2022/organisms/table/table.organism.mjs +152 -141
- package/esm2022/organisms/text-input-section/text-input-section.organism.mjs +4 -4
- package/esm2022/organisms/textarea-section/textarea-section.organism.mjs +2 -2
- package/esm2022/organisms/thread-messages-section/thread-messages-section.organism.mjs +2 -2
- package/esm2022/organisms/tree-list/index.mjs +2 -0
- package/esm2022/organisms/tree-list/ng-atomic-components-organisms-tree-list.mjs +5 -0
- package/esm2022/organisms/tree-list/tree-list.organism.mjs +125 -0
- package/esm2022/pages/_index/index.page.mjs +169 -62
- package/esm2022/pages/columns/columns.page.mjs +10 -9
- package/esm2022/pages/form/form.page.mjs +27 -12
- package/esm2022/pages/terms/terms.page.mjs +2 -2
- package/esm2022/templates/_index/index.template.mjs +276 -155
- package/esm2022/templates/background/background.template.mjs +2 -2
- package/esm2022/templates/code-editor/code-editor.template.mjs +52 -15
- package/esm2022/templates/columns/columns.template.mjs +6 -4
- package/esm2022/templates/entrance/entrance.template.mjs +12 -11
- package/esm2022/templates/form/form.builder.mjs +93 -71
- package/esm2022/templates/form/form.template.mjs +47 -28
- package/esm2022/templates/icon-button-menu/icon-button-menu.template.mjs +69 -16
- package/esm2022/templates/menu/menu.template.mjs +2 -2
- package/esm2022/templates/messages/messages.template.mjs +71 -65
- package/esm2022/templates/selection/selection.template.mjs +2 -2
- package/esm2022/templates/settings/settings.template.mjs +2 -2
- package/extras/editor/editor.component.d.ts +19 -10
- package/fesm2022/ng-atomic-components-atoms-icon.mjs +2 -2
- package/fesm2022/ng-atomic-components-atoms-smart-menu-button.mjs +76 -113
- package/fesm2022/ng-atomic-components-atoms-smart-menu-button.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-extras-editor.mjs +79 -47
- package/fesm2022/ng-atomic-components-extras-editor.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-app.mjs +129 -69
- package/fesm2022/ng-atomic-components-frames-app.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-auto-layout.mjs +29 -7
- package/fesm2022/ng-atomic-components-frames-auto-layout.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-columns.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames-divider.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames-drawer.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames-entrance.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames-fab.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames-line-up.mjs +4 -8
- package/fesm2022/ng-atomic-components-frames-line-up.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-loading.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames-progress-bar.mjs +60 -0
- package/fesm2022/ng-atomic-components-frames-progress-bar.mjs.map +1 -0
- package/fesm2022/ng-atomic-components-frames-router-outlet.mjs +96 -41
- package/fesm2022/ng-atomic-components-frames-router-outlet.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-scroll-v2.mjs +1 -48
- package/fesm2022/ng-atomic-components-frames-scroll-v2.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-scroll.mjs +31 -13
- package/fesm2022/ng-atomic-components-frames-scroll.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-side-app.mjs +81 -0
- package/fesm2022/ng-atomic-components-frames-side-app.mjs.map +1 -0
- package/fesm2022/ng-atomic-components-frames-side-nav.mjs +26 -20
- package/fesm2022/ng-atomic-components-frames-side-nav.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-smart-menu.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames-tabs.mjs +12 -6
- package/fesm2022/ng-atomic-components-frames-tabs.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs +10 -17
- package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-frames.mjs +2 -2
- package/fesm2022/ng-atomic-components-frames.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules-action-input-field.mjs +1 -1
- package/fesm2022/ng-atomic-components-molecules-action-input-field.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules-actions-column.mjs +12 -6
- package/fesm2022/ng-atomic-components-molecules-actions-column.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules-checkbox-column.mjs +47 -21
- package/fesm2022/ng-atomic-components-molecules-checkbox-column.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules-date-input-field.mjs +2 -2
- package/fesm2022/ng-atomic-components-molecules-date-range-input-field.mjs +2 -2
- package/fesm2022/ng-atomic-components-molecules-file-input-field.mjs +1 -1
- package/fesm2022/ng-atomic-components-molecules-file-input-field.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules-grid-item.mjs +2 -2
- package/fesm2022/ng-atomic-components-molecules-list-item.mjs +203 -0
- package/fesm2022/ng-atomic-components-molecules-list-item.mjs.map +1 -0
- package/fesm2022/ng-atomic-components-molecules-loading-box.mjs +2 -2
- package/fesm2022/ng-atomic-components-molecules-navigation-list-item.mjs +2 -2
- package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs +8 -4
- package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules-smart-column.mjs +128 -43
- package/fesm2022/ng-atomic-components-molecules-smart-column.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules-tree-column.mjs +36 -24
- package/fesm2022/ng-atomic-components-molecules-tree-column.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-molecules.mjs +3 -0
- package/fesm2022/ng-atomic-components-molecules.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-action-buttons-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-action-input-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-agreement-input-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-agreement-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-card-input-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs +3 -3
- package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs +3 -3
- package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-definition-list.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-file-input-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-filters-section.mjs +4 -4
- package/fesm2022/ng-atomic-components-organisms-filters-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-graphql-editor.mjs +1 -1
- package/fesm2022/ng-atomic-components-organisms-graphql-editor.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-grid-cards-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-heading.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-list.mjs +166 -0
- package/fesm2022/ng-atomic-components-organisms-list.mjs.map +1 -0
- package/fesm2022/ng-atomic-components-organisms-menu-footer.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-menu-header.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-mermaid-section.mjs +38 -32
- package/fesm2022/ng-atomic-components-organisms-mermaid-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-messages-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-navigation-list.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-navigator.mjs +48 -18
- package/fesm2022/ng-atomic-components-organisms-navigator.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-paginator.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs +3 -3
- package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-selection-list.mjs +1 -1
- package/fesm2022/ng-atomic-components-organisms-selection-list.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-slider-input-section.mjs +3 -3
- package/fesm2022/ng-atomic-components-organisms-slider-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-social-login-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-table.mjs +156 -145
- package/fesm2022/ng-atomic-components-organisms-table.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs +3 -3
- package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-organisms-thread-messages-section.mjs +2 -2
- package/fesm2022/ng-atomic-components-organisms-tree-list.mjs +132 -0
- package/fesm2022/ng-atomic-components-organisms-tree-list.mjs.map +1 -0
- package/fesm2022/ng-atomic-components-organisms.mjs +4 -4
- package/fesm2022/ng-atomic-components-organisms.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-pages-_index.mjs +168 -62
- package/fesm2022/ng-atomic-components-pages-_index.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-pages-columns.mjs +9 -8
- package/fesm2022/ng-atomic-components-pages-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-pages-form.mjs +26 -11
- package/fesm2022/ng-atomic-components-pages-form.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-pages-terms.mjs +1 -1
- package/fesm2022/ng-atomic-components-pages-terms.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-_index.mjs +276 -155
- package/fesm2022/ng-atomic-components-templates-_index.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-background.mjs +2 -2
- package/fesm2022/ng-atomic-components-templates-code-editor.mjs +51 -14
- package/fesm2022/ng-atomic-components-templates-code-editor.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-columns.mjs +5 -3
- package/fesm2022/ng-atomic-components-templates-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-entrance.mjs +11 -10
- package/fesm2022/ng-atomic-components-templates-entrance.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-form.mjs +139 -99
- package/fesm2022/ng-atomic-components-templates-form.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs +68 -15
- package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-menu.mjs +2 -2
- package/fesm2022/ng-atomic-components-templates-messages.mjs +71 -65
- package/fesm2022/ng-atomic-components-templates-messages.mjs.map +1 -1
- package/fesm2022/ng-atomic-components-templates-selection.mjs +2 -2
- package/fesm2022/ng-atomic-components-templates-settings.mjs +2 -2
- package/fesm2022/ng-atomic-components.mjs +7 -3
- package/fesm2022/ng-atomic-components.mjs.map +1 -1
- package/frames/app/app.frame.d.ts +13 -1
- package/frames/auto-layout/auto-layout.frame.d.ts +7 -1
- package/frames/progress-bar/index.d.ts +1 -0
- package/frames/progress-bar/progress-bar.frame.d.ts +14 -0
- package/frames/router-outlet/router-outlet.frame.d.ts +20 -9
- package/frames/scroll/scroll.frame.d.ts +5 -1
- package/frames/scroll-v2/index.d.ts +1 -1
- package/frames/side-app/index.d.ts +1 -0
- package/frames/side-app/side-app.frame.d.ts +20 -0
- package/frames/side-nav/side-nav.frame.d.ts +6 -2
- package/frames/tabs/tabs.frame.d.ts +2 -1
- package/frames/vertical-hide/vertical-hide.frame.d.ts +2 -2
- package/molecules/actions-column/actions-column.molecule.d.ts +3 -2
- package/molecules/checkbox-column/checkbox-column.molecule.d.ts +12 -4
- package/molecules/list-item/index.d.ts +1 -0
- package/molecules/list-item/list-item.molecule.d.ts +50 -0
- package/molecules/molecules.module.d.ts +3 -0
- package/molecules/smart-column/smart-column.molecule.d.ts +34 -9
- package/molecules/tree-column/tree-column.molecule.d.ts +6 -2
- package/organisms/list/index.d.ts +1 -0
- package/organisms/{smart-list/smart-list.organism.d.ts → list/list.organism.d.ts} +11 -11
- package/organisms/mermaid-section/mermaid-section.organism.d.ts +10 -10
- package/organisms/navigator/navigator.organism.d.ts +8 -6
- package/organisms/organisms.module.d.ts +1 -1
- package/organisms/table/index.d.ts +1 -0
- package/organisms/table/table.helpers.d.ts +1 -1
- package/organisms/table/table.organism.d.ts +32 -1
- package/organisms/tree-list/index.d.ts +1 -0
- package/organisms/tree-list/tree-list.organism.d.ts +33 -0
- package/package.json +37 -25
- package/pages/_index/index.page.d.ts +72 -43
- package/pages/columns/columns.page.d.ts +5 -2
- package/pages/form/form.page.d.ts +11 -2
- package/templates/_index/index.template.d.ts +40 -11
- package/templates/code-editor/code-editor.template.d.ts +6 -3
- package/templates/entrance/entrance.template.d.ts +1 -1
- package/templates/form/form.builder.d.ts +10 -3
- package/templates/form/form.template.d.ts +2 -1
- package/templates/icon-button-menu/icon-button-menu.template.d.ts +3 -2
- package/templates/messages/messages.template.d.ts +21 -17
- package/esm2022/frames/scroll-v2/scroll.frame.mjs +0 -46
- package/esm2022/organisms/smart-list/index.mjs +0 -2
- package/esm2022/organisms/smart-list/ng-atomic-components-organisms-smart-list.mjs +0 -5
- package/esm2022/organisms/smart-list/smart-list.organism.mjs +0 -218
- package/esm2022/sheets/actions/actions.sheet.mjs +0 -45
- package/esm2022/sheets/index.mjs +0 -3
- package/esm2022/sheets/ng-atomic-components-sheets.mjs +0 -5
- package/esm2022/sheets/sheets.module.mjs +0 -25
- package/esm2022/sheets/sheets.service.mjs +0 -20
- package/fesm2022/ng-atomic-components-organisms-smart-list.mjs +0 -223
- package/fesm2022/ng-atomic-components-organisms-smart-list.mjs.map +0 -1
- package/fesm2022/ng-atomic-components-sheets-actions.mjs +0 -52
- package/fesm2022/ng-atomic-components-sheets-actions.mjs.map +0 -1
- package/fesm2022/ng-atomic-components-sheets.mjs +0 -48
- package/fesm2022/ng-atomic-components-sheets.mjs.map +0 -1
- package/frames/scroll-v2/scroll.frame.d.ts +0 -9
- package/organisms/smart-list/index.d.ts +0 -1
- package/sheets/actions/actions.sheet.d.ts +0 -9
- package/sheets/actions/index.d.ts +0 -1
- package/sheets/index.d.ts +0 -2
- package/sheets/sheets.module.d.ts +0 -11
- package/sheets/sheets.service.d.ts +0 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-components-molecules-actions-column.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/actions-column/actions-column.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/actions-column/ng-atomic-components-molecules-actions-column.ts"],"sourcesContent":["import { CdkCellDef, CdkColumnDef, CdkHeaderCellDef, CdkTable } from '@angular/cdk/table';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Directive, ViewEncapsulation, computed, effect, inject, input, viewChild, OnInit, OnDestroy } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTableModule } from '@angular/material/table';\nimport { _computed, Actions, InjectableComponent, NgAtomicComponent, TokenizedType } from '@ng-atomic/core';\nimport { ActionsPipe } from '@ng-atomic/common/pipes/actions';\nimport { SmartMenuButtonAtom } from '@ng-atomic/components/atoms/smart-menu-button';\nimport { makeConfig } from '@ng-atomic/common/services/ui';\n\n@TokenizedType()\n@Directive({ standalone: true })\nexport class ActionsColumnMoleculeStore extends InjectableComponent {\n static readonly Config = makeConfig(() => {\n return () => ({\n headerText: '',\n itemActions: [] as Actions,\n style: {\n width: '48px',\n },\n });\n }, ['components', 'molecules', 'actions-column']);\n readonly config = ActionsColumnMoleculeStore.Config.inject();\n readonly headerText = input<string>(_computed(() => this.config().headerText));\n readonly name = input.required<string>();\n readonly itemActions = input<Actions>(_computed(() => this.config().itemActions));\n readonly style = computed(() => this.config().style);\n}\n\n@Component({\n selector: 'molecules-actions-column',\n standalone: true,\n imports: [\n CommonModule,\n MatTableModule,\n MatMenuModule,\n MatButtonModule,\n MatIconModule,\n SmartMenuButtonAtom,\n ActionsPipe,\n ],\n template: `\n <ng-container matColumnDef>\n <th mat-header-cell *matHeaderCellDef [style.width]=\"store.style()?.width\">{{ store.headerText() }}</th>\n <td mat-cell *matCellDef=\"let item\">\n <atoms-smart-menu-button\n [actions]=\"store.itemActions() | resolveActions:item\"\n (action)=\"dispatch($event)\"\n />\n </td>\n </ng-container>\n `,\n styleUrls: ['./actions-column.molecule.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: ActionsColumnMoleculeStore,\n inputs: ['headerText'
|
|
1
|
+
{"version":3,"file":"ng-atomic-components-molecules-actions-column.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/actions-column/actions-column.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/actions-column/ng-atomic-components-molecules-actions-column.ts"],"sourcesContent":["import { CdkCellDef, CdkColumnDef, CdkHeaderCellDef, CdkTable } from '@angular/cdk/table';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Directive, ViewEncapsulation, computed, effect, inject, input, viewChild, OnInit, OnDestroy } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTableModule } from '@angular/material/table';\nimport { _computed, Actions, InjectableComponent, NgAtomicComponent, TokenizedType } from '@ng-atomic/core';\nimport { ActionsPipe } from '@ng-atomic/common/pipes/actions';\nimport { SmartMenuButtonAtom } from '@ng-atomic/components/atoms/smart-menu-button';\nimport { makeConfig } from '@ng-atomic/common/services/ui';\n\n@TokenizedType()\n@Directive({ standalone: true })\nexport class ActionsColumnMoleculeStore extends InjectableComponent {\n static readonly Config = makeConfig(() => {\n return () => ({\n headerText: '',\n itemActions: [] as Actions,\n style: {\n width: '48px',\n },\n });\n }, ['components', 'molecules', 'actions-column']);\n readonly config = ActionsColumnMoleculeStore.Config.inject();\n readonly headerText = input<string>(_computed(() => this.config().headerText));\n readonly name = input.required<string>();\n readonly itemActions = input<Actions>(_computed(() => this.config().itemActions));\n readonly sticky = input<boolean>(false);\n readonly style = computed(() => this.config().style);\n}\n\n@Component({\n selector: 'molecules-actions-column',\n standalone: true,\n imports: [\n CommonModule,\n MatTableModule,\n MatMenuModule,\n MatButtonModule,\n MatIconModule,\n SmartMenuButtonAtom,\n ActionsPipe,\n ],\n template: `\n <ng-container matColumnDef [sticky]=\"store.sticky()\">\n <th mat-header-cell *matHeaderCellDef [style.width]=\"store.style()?.width\">{{ store.headerText() }}</th>\n <td mat-cell *matCellDef=\"let item\">\n <atoms-smart-menu-button\n [actions]=\"store.itemActions() | resolveActions:item\"\n (action)=\"dispatch($event)\"\n />\n </td>\n </ng-container>\n `,\n styleUrls: ['./actions-column.molecule.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: ActionsColumnMoleculeStore,\n inputs: [\n 'headerText',\n 'name',\n 'itemActions',\n 'sticky',\n ],\n },\n ],\n})\nexport class ActionsColumnMolecule extends NgAtomicComponent implements OnInit, OnDestroy {\n private _table = inject(CdkTable, {optional: true});\n protected store = inject(ActionsColumnMoleculeStore);\n readonly columnDef = viewChild.required(CdkColumnDef);\n readonly cell = viewChild.required(CdkCellDef);\n readonly headerCell = viewChild.required(CdkHeaderCellDef);\n\n constructor() {\n super();\n effect(() => {\n if (this.columnDef()) this.columnDef().name = this.store.name();\n })\n }\n\n ngOnInit() {\n if (this._table) {\n this.columnDef().name = this.store.name();\n this.columnDef().cell = this.cell();\n this.columnDef().headerCell = this.headerCell();\n this._table.addColumnDef(this.columnDef());\n }\n }\n\n ngOnDestroy() {\n if (this._table) {\n this._table.removeColumnDef(this.columnDef());\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
+
import { __decorate } from 'tslib';
|
|
1
2
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
2
3
|
import { CdkTable, CdkColumnDef, CdkCellDef, CdkHeaderCellDef } from '@angular/cdk/table';
|
|
3
4
|
import * as i0 from '@angular/core';
|
|
4
|
-
import {
|
|
5
|
+
import { input, Directive, inject, viewChild, viewChildren, effect, Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';
|
|
5
6
|
import * as i2 from '@angular/material/checkbox';
|
|
6
7
|
import { MatCheckbox, MAT_CHECKBOX_DEFAULT_OPTIONS, MatCheckboxModule } from '@angular/material/checkbox';
|
|
7
8
|
import * as i1 from '@angular/material/table';
|
|
8
9
|
import { MatTableModule } from '@angular/material/table';
|
|
9
10
|
import { SelectIdPipe } from '@ng-atomic/common/pipes/select-id';
|
|
10
|
-
import { NgAtomicComponent } from '@ng-atomic/core';
|
|
11
|
+
import { InjectableComponent, TokenizedType, NgAtomicComponent } from '@ng-atomic/core';
|
|
11
12
|
import { computedAsync } from 'ngxtension/computed-async';
|
|
12
13
|
import { startWith, delay, map } from 'rxjs';
|
|
13
14
|
|
|
@@ -16,27 +17,45 @@ var ActionId;
|
|
|
16
17
|
ActionId["CHECKBOX_CLICK"] = "[@ng-atomic/components/molecules/checkbox-column] Checkbox Click";
|
|
17
18
|
ActionId["HEADER_CHECKBOX_CLICK"] = "[@ng-atomic/components/molecules/checkbox-column] Header Checkbox Click";
|
|
18
19
|
})(ActionId || (ActionId = {}));
|
|
20
|
+
let CheckboxColumnMoleculeStore = class CheckboxColumnMoleculeStore extends InjectableComponent {
|
|
21
|
+
constructor() {
|
|
22
|
+
super(...arguments);
|
|
23
|
+
this.name = input.required();
|
|
24
|
+
this.selection = input(new SelectionModel(true, []));
|
|
25
|
+
this.isHidden = input((item) => false);
|
|
26
|
+
this.width = input(200);
|
|
27
|
+
this.sticky = input(false);
|
|
28
|
+
}
|
|
29
|
+
static { this.ActionId = ActionId; }
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: CheckboxColumnMoleculeStore, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
31
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.2", type: CheckboxColumnMoleculeStore, isStandalone: true, inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null }, isHidden: { classPropertyName: "isHidden", publicName: "isHidden", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, sticky: { classPropertyName: "sticky", publicName: "sticky", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
|
|
32
|
+
};
|
|
33
|
+
CheckboxColumnMoleculeStore = __decorate([
|
|
34
|
+
TokenizedType()
|
|
35
|
+
], CheckboxColumnMoleculeStore);
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: CheckboxColumnMoleculeStore, decorators: [{
|
|
37
|
+
type: Directive,
|
|
38
|
+
args: [{ standalone: true }]
|
|
39
|
+
}] });
|
|
19
40
|
class CheckboxColumnMolecule extends NgAtomicComponent {
|
|
20
41
|
static { this.ActionId = ActionId; }
|
|
21
42
|
constructor() {
|
|
22
43
|
super();
|
|
44
|
+
this.store = inject(CheckboxColumnMoleculeStore);
|
|
23
45
|
this._table = inject((CdkTable), { optional: true });
|
|
24
|
-
this.name = input.required();
|
|
25
|
-
this.selection = input(new SelectionModel(true, []));
|
|
26
|
-
this.isHidden = input((item) => false);
|
|
27
46
|
this.columnDef = viewChild.required(CdkColumnDef);
|
|
28
47
|
this.cell = viewChild.required(CdkCellDef);
|
|
29
48
|
this.headerCell = viewChild.required(CdkHeaderCellDef);
|
|
30
49
|
this.checkboxes = viewChildren('rowCheckbox', { read: MatCheckbox });
|
|
31
50
|
this.headerCheckboxChecked = computedAsync(() => {
|
|
32
|
-
return this.selection().changed.pipe(startWith(null), delay(0), map(() => {
|
|
51
|
+
return this.store.selection().changed.pipe(startWith(null), delay(0), map(() => {
|
|
33
52
|
if (this.checkboxes().length === 0)
|
|
34
53
|
return false;
|
|
35
54
|
return this.checkboxes().some(checkbox => checkbox.checked);
|
|
36
55
|
}));
|
|
37
56
|
});
|
|
38
57
|
this.headerCheckboxIndeterminate = computedAsync(() => {
|
|
39
|
-
return this.selection().changed.pipe(startWith(null), delay(0), map(() => {
|
|
58
|
+
return this.store.selection().changed.pipe(startWith(null), delay(0), map(() => {
|
|
40
59
|
if (this.checkboxes().filter(checkbox => checkbox.checked).length === 0)
|
|
41
60
|
return false;
|
|
42
61
|
if (this.checkboxes().every(checkbox => checkbox.checked))
|
|
@@ -46,12 +65,12 @@ class CheckboxColumnMolecule extends NgAtomicComponent {
|
|
|
46
65
|
});
|
|
47
66
|
effect(() => {
|
|
48
67
|
if (this.columnDef())
|
|
49
|
-
this.columnDef().name = this.name();
|
|
68
|
+
this.columnDef().name = this.store.name();
|
|
50
69
|
});
|
|
51
70
|
}
|
|
52
71
|
ngOnInit() {
|
|
53
72
|
if (this._table) {
|
|
54
|
-
this.columnDef().name = this.name();
|
|
73
|
+
this.columnDef().name = this.store.name();
|
|
55
74
|
this.columnDef().cell = this.cell();
|
|
56
75
|
this.columnDef().headerCell = this.headerCell();
|
|
57
76
|
this._table.addColumnDef(this.columnDef());
|
|
@@ -69,21 +88,22 @@ class CheckboxColumnMolecule extends NgAtomicComponent {
|
|
|
69
88
|
this.dispatch({ id: ActionId.CHECKBOX_CLICK, payload: item });
|
|
70
89
|
}
|
|
71
90
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: CheckboxColumnMolecule, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
72
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.2", type: CheckboxColumnMolecule, isStandalone: true, selector: "molecules-checkbox-column",
|
|
91
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.2", type: CheckboxColumnMolecule, isStandalone: true, selector: "molecules-checkbox-column", providers: [
|
|
73
92
|
{ provide: MAT_CHECKBOX_DEFAULT_OPTIONS, useValue: { clickAction: 'noop' } }
|
|
74
|
-
], viewQueries: [{ propertyName: "columnDef", first: true, predicate: CdkColumnDef, descendants: true, isSignal: true }, { propertyName: "cell", first: true, predicate: CdkCellDef, descendants: true, isSignal: true }, { propertyName: "headerCell", first: true, predicate: CdkHeaderCellDef, descendants: true, isSignal: true }, { propertyName: "checkboxes", predicate: ["rowCheckbox"], descendants: true, read: MatCheckbox, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
|
|
75
|
-
<ng-container matColumnDef>
|
|
76
|
-
<th mat-header-cell *matHeaderCellDef>
|
|
93
|
+
], viewQueries: [{ propertyName: "columnDef", first: true, predicate: CdkColumnDef, descendants: true, isSignal: true }, { propertyName: "cell", first: true, predicate: CdkCellDef, descendants: true, isSignal: true }, { propertyName: "headerCell", first: true, predicate: CdkHeaderCellDef, descendants: true, isSignal: true }, { propertyName: "checkboxes", predicate: ["rowCheckbox"], descendants: true, read: MatCheckbox, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: CheckboxColumnMoleculeStore, inputs: ["name", "name", "selection", "selection", "isHidden", "isHidden", "width", "width", "sticky", "sticky"] }], ngImport: i0, template: `
|
|
94
|
+
<ng-container matColumnDef [sticky]="store.sticky()">
|
|
95
|
+
<th mat-header-cell *matHeaderCellDef [style.width.px]="store.width()">
|
|
77
96
|
<mat-checkbox
|
|
78
97
|
[checked]="headerCheckboxChecked()"
|
|
79
98
|
[indeterminate]="headerCheckboxIndeterminate()"
|
|
99
|
+
[style.width]="store.width()"
|
|
80
100
|
(click)="onHeaderCheckboxClick(item, $event)"
|
|
81
101
|
/>
|
|
82
102
|
</th>
|
|
83
103
|
<td mat-cell *matCellDef="let item">
|
|
84
|
-
@if (!isHidden()(item)) {
|
|
104
|
+
@if (!store.isHidden()(item)) {
|
|
85
105
|
<mat-checkbox
|
|
86
|
-
[checked]="selection().isSelected(item | selectId)"
|
|
106
|
+
[checked]="store.selection().isSelected(item | selectId)"
|
|
87
107
|
(click)="onCheckboxClick(item, $event)"
|
|
88
108
|
#rowCheckbox
|
|
89
109
|
/>
|
|
@@ -98,24 +118,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
98
118
|
MatCheckboxModule,
|
|
99
119
|
SelectIdPipe,
|
|
100
120
|
], template: `
|
|
101
|
-
<ng-container matColumnDef>
|
|
102
|
-
<th mat-header-cell *matHeaderCellDef>
|
|
121
|
+
<ng-container matColumnDef [sticky]="store.sticky()">
|
|
122
|
+
<th mat-header-cell *matHeaderCellDef [style.width.px]="store.width()">
|
|
103
123
|
<mat-checkbox
|
|
104
124
|
[checked]="headerCheckboxChecked()"
|
|
105
125
|
[indeterminate]="headerCheckboxIndeterminate()"
|
|
126
|
+
[style.width]="store.width()"
|
|
106
127
|
(click)="onHeaderCheckboxClick(item, $event)"
|
|
107
128
|
/>
|
|
108
129
|
</th>
|
|
109
130
|
<td mat-cell *matCellDef="let item">
|
|
110
|
-
@if (!isHidden()(item)) {
|
|
131
|
+
@if (!store.isHidden()(item)) {
|
|
111
132
|
<mat-checkbox
|
|
112
|
-
[checked]="selection().isSelected(item | selectId)"
|
|
133
|
+
[checked]="store.selection().isSelected(item | selectId)"
|
|
113
134
|
(click)="onCheckboxClick(item, $event)"
|
|
114
135
|
#rowCheckbox
|
|
115
136
|
/>
|
|
116
137
|
}
|
|
117
138
|
</td>
|
|
118
|
-
</ng-container>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush,
|
|
139
|
+
</ng-container>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
|
|
140
|
+
{
|
|
141
|
+
directive: CheckboxColumnMoleculeStore,
|
|
142
|
+
inputs: ['name', 'selection', 'isHidden', 'width', 'sticky'],
|
|
143
|
+
},
|
|
144
|
+
], providers: [
|
|
119
145
|
{ provide: MAT_CHECKBOX_DEFAULT_OPTIONS, useValue: { clickAction: 'noop' } }
|
|
120
146
|
] }]
|
|
121
147
|
}], ctorParameters: () => [] });
|
|
@@ -124,5 +150,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
124
150
|
* Generated bundle index. Do not edit.
|
|
125
151
|
*/
|
|
126
152
|
|
|
127
|
-
export { CheckboxColumnMolecule };
|
|
153
|
+
export { CheckboxColumnMolecule, CheckboxColumnMoleculeStore };
|
|
128
154
|
//# sourceMappingURL=ng-atomic-components-molecules-checkbox-column.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-components-molecules-checkbox-column.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/checkbox-column/checkbox-column.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/checkbox-column/ng-atomic-components-molecules-checkbox-column.ts"],"sourcesContent":["import { SelectionModel } from '@angular/cdk/collections';\nimport { CdkCellDef, CdkColumnDef, CdkHeaderCellDef, CdkTable } from '@angular/cdk/table';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation, effect, inject, input, viewChild, viewChildren, OnInit, OnDestroy } from '@angular/core';\nimport { MAT_CHECKBOX_DEFAULT_OPTIONS, MatCheckbox, MatCheckboxDefaultOptions, MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTableModule } from '@angular/material/table';\nimport { SelectIdPipe } from '@ng-atomic/common/pipes/select-id';\nimport { NgAtomicComponent } from '@ng-atomic/core';\nimport { computedAsync } from 'ngxtension/computed-async';\nimport { map, startWith, delay } from 'rxjs';\n\nenum ActionId {\n CHECKBOX_CLICK = '[@ng-atomic/components/molecules/checkbox-column] Checkbox Click',\n HEADER_CHECKBOX_CLICK = '[@ng-atomic/components/molecules/checkbox-column] Header Checkbox Click',\n}\n\n@Component({\n selector: 'molecules-checkbox-column',\n standalone: true,\n imports: [\n MatTableModule,\n MatCheckboxModule,\n SelectIdPipe,\n ],\n template: `\n <ng-container matColumnDef>\n <th mat-header-cell *matHeaderCellDef>\n <mat-checkbox\n [checked]=\"headerCheckboxChecked()\"\n [indeterminate]=\"headerCheckboxIndeterminate()\"\n (click)=\"onHeaderCheckboxClick(item, $event)\"\n />\n </th>\n <td mat-cell *matCellDef=\"let item\">\n @if (!isHidden()(item)) {\n <mat-checkbox\n [checked]=\"selection().isSelected(item | selectId)\"\n (click)=\"onCheckboxClick(item, $event)\"\n #rowCheckbox\n />\n }\n </td>\n </ng-container>`,\n styleUrls: ['./checkbox-column.molecule.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {provide: MAT_CHECKBOX_DEFAULT_OPTIONS, useValue: { clickAction: 'noop' } as MatCheckboxDefaultOptions}\n ],\n})\nexport class CheckboxColumnMolecule<T> extends NgAtomicComponent implements OnInit, OnDestroy {\n static readonly ActionId = ActionId;\n private _table = inject(CdkTable<T>, {optional: true});\n readonly name = input.required<string>();\n readonly selection = input(new SelectionModel<string>(true, []));\n readonly isHidden = input((item: T) => false);\n readonly columnDef = viewChild.required(CdkColumnDef);\n readonly cell = viewChild.required(CdkCellDef);\n readonly headerCell = viewChild.required(CdkHeaderCellDef);\n\n readonly checkboxes = viewChildren('rowCheckbox', {read: MatCheckbox});\n readonly headerCheckboxChecked = computedAsync(() => {\n return this.selection().changed.pipe(\n startWith(null),\n delay(0),\n map(() => {\n if (this.checkboxes().length === 0) return false;\n return this.checkboxes().some(checkbox => checkbox.checked);\n })\n );\n });\n readonly headerCheckboxIndeterminate = computedAsync(() => {\n return this.selection().changed.pipe(\n startWith(null),\n delay(0),\n map(() => {\n if (this.checkboxes().filter(checkbox => checkbox.checked).length === 0) return false;\n if (this.checkboxes().every(checkbox => checkbox.checked)) return false;\n return true;\n })\n );\n });\n\n constructor() {\n super();\n effect(() => {\n if (this.columnDef()) this.columnDef().name = this.name();\n });\n }\n\n ngOnInit() {\n if (this._table) {\n this.columnDef().name = this.name();\n this.columnDef().cell = this.cell();\n this.columnDef().headerCell = this.headerCell();\n this._table.addColumnDef(this.columnDef());\n }\n }\n\n ngOnDestroy() {\n if (this._table) {\n this._table.removeColumnDef(this.columnDef());\n }\n }\n\n protected onHeaderCheckboxClick(item: T, event: Event) {\n this.dispatch({id: ActionId.HEADER_CHECKBOX_CLICK, payload: item});\n }\n\n protected onCheckboxClick(item: T, event: Event) {\n this.dispatch({id: ActionId.CHECKBOX_CLICK, payload: item});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-atomic-components-molecules-checkbox-column.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/checkbox-column/checkbox-column.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/checkbox-column/ng-atomic-components-molecules-checkbox-column.ts"],"sourcesContent":["import { SelectionModel } from '@angular/cdk/collections';\nimport { CdkCellDef, CdkColumnDef, CdkHeaderCellDef, CdkTable } from '@angular/cdk/table';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation, effect, inject, input, viewChild, viewChildren, OnInit, OnDestroy, Directive } from '@angular/core';\nimport { MAT_CHECKBOX_DEFAULT_OPTIONS, MatCheckbox, MatCheckboxDefaultOptions, MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTableModule } from '@angular/material/table';\nimport { SelectIdPipe } from '@ng-atomic/common/pipes/select-id';\nimport { InjectableComponent, NgAtomicComponent, TokenizedType } from '@ng-atomic/core';\nimport { computedAsync } from 'ngxtension/computed-async';\nimport { map, startWith, delay } from 'rxjs';\n\nenum ActionId {\n CHECKBOX_CLICK = '[@ng-atomic/components/molecules/checkbox-column] Checkbox Click',\n HEADER_CHECKBOX_CLICK = '[@ng-atomic/components/molecules/checkbox-column] Header Checkbox Click',\n}\n\n@TokenizedType()\n@Directive({standalone: true})\nexport class CheckboxColumnMoleculeStore<T> extends InjectableComponent {\n static readonly ActionId = ActionId;\n readonly name = input.required<string>();\n readonly selection = input(new SelectionModel<string>(true, []));\n readonly isHidden = input((item: T) => false);\n readonly width = input<number>(200);\n readonly sticky = input<boolean>(false);\n}\n\n@Component({\n selector: 'molecules-checkbox-column',\n standalone: true,\n imports: [\n MatTableModule,\n MatCheckboxModule,\n SelectIdPipe,\n ],\n template: `\n <ng-container matColumnDef [sticky]=\"store.sticky()\">\n <th mat-header-cell *matHeaderCellDef [style.width.px]=\"store.width()\">\n <mat-checkbox\n [checked]=\"headerCheckboxChecked()\"\n [indeterminate]=\"headerCheckboxIndeterminate()\"\n [style.width]=\"store.width()\"\n (click)=\"onHeaderCheckboxClick(item, $event)\"\n />\n </th>\n <td mat-cell *matCellDef=\"let item\">\n @if (!store.isHidden()(item)) {\n <mat-checkbox\n [checked]=\"store.selection().isSelected(item | selectId)\"\n (click)=\"onCheckboxClick(item, $event)\"\n #rowCheckbox\n />\n }\n </td>\n </ng-container>`,\n styleUrls: ['./checkbox-column.molecule.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: CheckboxColumnMoleculeStore,\n inputs: ['name', 'selection', 'isHidden', 'width', 'sticky'],\n },\n ],\n providers: [\n {provide: MAT_CHECKBOX_DEFAULT_OPTIONS, useValue: { clickAction: 'noop' } as MatCheckboxDefaultOptions}\n ],\n})\nexport class CheckboxColumnMolecule<T> extends NgAtomicComponent implements OnInit, OnDestroy {\n static readonly ActionId = ActionId;\n protected store = inject(CheckboxColumnMoleculeStore);\n private _table = inject(CdkTable<T>, {optional: true});\n readonly columnDef = viewChild.required(CdkColumnDef);\n readonly cell = viewChild.required(CdkCellDef);\n readonly headerCell = viewChild.required(CdkHeaderCellDef);\n\n readonly checkboxes = viewChildren('rowCheckbox', {read: MatCheckbox});\n readonly headerCheckboxChecked = computedAsync(() => {\n return this.store.selection().changed.pipe(\n startWith(null),\n delay(0),\n map(() => {\n if (this.checkboxes().length === 0) return false;\n return this.checkboxes().some(checkbox => checkbox.checked);\n })\n );\n });\n readonly headerCheckboxIndeterminate = computedAsync(() => {\n return this.store.selection().changed.pipe(\n startWith(null),\n delay(0),\n map(() => {\n if (this.checkboxes().filter(checkbox => checkbox.checked).length === 0) return false;\n if (this.checkboxes().every(checkbox => checkbox.checked)) return false;\n return true;\n })\n );\n });\n\n constructor() {\n super();\n effect(() => {\n if (this.columnDef()) this.columnDef().name = this.store.name();\n });\n }\n\n ngOnInit() {\n if (this._table) {\n this.columnDef().name = this.store.name();\n this.columnDef().cell = this.cell();\n this.columnDef().headerCell = this.headerCell();\n this._table.addColumnDef(this.columnDef());\n }\n }\n\n ngOnDestroy() {\n if (this._table) {\n this._table.removeColumnDef(this.columnDef());\n }\n }\n\n protected onHeaderCheckboxClick(item: T, event: Event) {\n this.dispatch({id: ActionId.HEADER_CHECKBOX_CLICK, payload: item});\n }\n\n protected onCheckboxClick(item: T, event: Event) {\n this.dispatch({id: ActionId.CHECKBOX_CLICK, payload: item});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ class DateInputFieldMolecule {
|
|
|
47
47
|
@if (store.hint()) { <mat-hint>{{ store.hint() }}</mat-hint> }
|
|
48
48
|
<mat-error>{{ store.control().errors | error }}</mat-error>
|
|
49
49
|
</mat-form-field>
|
|
50
|
-
`, isInline: true, styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-
|
|
50
|
+
`, isInline: true, styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-tLZX: var(--horizontal-padding)}:host{display:block;width:100%}:host mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.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"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "pipe", type: ErrorPipe, name: "error" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
51
51
|
}
|
|
52
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: DateInputFieldMolecule, decorators: [{
|
|
53
53
|
type: Component,
|
|
@@ -74,7 +74,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
74
74
|
}
|
|
75
75
|
], host: { class: 'molecule field' }, providers: [
|
|
76
76
|
// provideDayjsDateAdapter(),
|
|
77
|
-
], styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-
|
|
77
|
+
], styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-tLZX: var(--horizontal-padding)}:host{display:block;width:100%}:host mat-form-field{width:100%}\n"] }]
|
|
78
78
|
}] });
|
|
79
79
|
|
|
80
80
|
/**
|
|
@@ -52,7 +52,7 @@ class DateRangeInputFieldMolecule {
|
|
|
52
52
|
<mat-datepicker-toggle matIconSuffix [for]="picker"></mat-datepicker-toggle>
|
|
53
53
|
<mat-date-range-picker #picker></mat-date-range-picker>
|
|
54
54
|
</mat-form-field>
|
|
55
|
-
`, isInline: true, styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-range-input-field-
|
|
55
|
+
`, isInline: true, styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-range-input-field-c6xy: var(--horizontal-padding)}:host{display:block;width:100%}:host mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i3.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i3.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i3.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i3.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "pipe", type: ErrorPipe, name: "error" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
56
56
|
}
|
|
57
57
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: DateRangeInputFieldMolecule, decorators: [{
|
|
58
58
|
type: Component,
|
|
@@ -85,7 +85,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
85
85
|
directive: DateRangeInputFieldMoleculeStore,
|
|
86
86
|
inputs: ['control', 'label', 'hint']
|
|
87
87
|
}
|
|
88
|
-
], styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-range-input-field-
|
|
88
|
+
], styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-range-input-field-c6xy: var(--horizontal-padding)}:host{display:block;width:100%}:host mat-form-field{width:100%}\n"] }]
|
|
89
89
|
}] });
|
|
90
90
|
|
|
91
91
|
/**
|
|
@@ -104,7 +104,7 @@ class FileInputFieldMolecule extends NgAtomicComponent {
|
|
|
104
104
|
(action)="dispatch($event)"
|
|
105
105
|
></atoms-smart-menu-button>
|
|
106
106
|
<input style="display: none" type="file" (change)="onFileSelected($event)" #fileUpload>
|
|
107
|
-
`, isInline: true, styles: [":host{display:block}:host{display:flex;width:100%;flex-direction:row;align-items:center;justify-content:space-between}:host mat-form-field{width:100%}:host atoms-smart-menu-button{width:fit-content;margin-bottom:20px}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.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"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: SmartMenuButtonAtom, selector: "atoms-smart-menu-button" }, { kind: "pipe", type: ErrorPipe, name: "error" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
107
|
+
`, isInline: true, styles: [":host{display:block}:host{display:flex;width:100%;flex-direction:row;align-items:center;justify-content:space-between}:host mat-form-field{width:100%}:host atoms-smart-menu-button{width:fit-content;margin-bottom:20px}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.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"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: SmartMenuButtonAtom, selector: "atoms-smart-menu-button, atoms-menu-button" }, { kind: "pipe", type: ErrorPipe, name: "error" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
108
108
|
}
|
|
109
109
|
__decorate([
|
|
110
110
|
Effect(ActionId.FILE_SELECT_BUTTON_CLICK),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-components-molecules-file-input-field.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/file-input-field.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/ng-atomic-components-molecules-file-input-field.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, ElementRef, computed, effect, inject, input, viewChild, OnInit } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { SmartMenuButtonAtom } from '@ng-atomic/components/atoms/smart-menu-button';\nimport { Effect, NgAtomicComponent } from '@ng-atomic/core';\nimport { ErrorPipe } from '@ng-atomic/common/pipes/error';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { startWith, switchMap } from 'rxjs';\n\nenum ActionId {\n FILE_SELECT_BUTTON_CLICK = '[@ng-atomic/components/molecules/file-input-field] File select button click',\n FILE_SELECTED = '[@ng-atomic/components/molecules/file-input-field] File selected',\n CANCEL = '[@ng-atomic/components/molecules/file-input-field] Cancel',\n}\n\n@Directive({ standalone: true })\nexport class FileInputFieldStore implements OnInit {\n readonly control = input(new FormControl(null));\n readonly control$ = toObservable(this.control).pipe(takeUntilDestroyed());\n readonly controlValue$ = this.control$.pipe(\n switchMap(control => control.valueChanges.pipe(startWith(control.value))),\n );\n readonly label = input('label');\n readonly placeholder = input('placeholder');\n readonly hint = input<string | null>(null);\n readonly progress = input<number | false>(false);\n readonly name = input<string | null>(null);\n readonly appearance = input<'outline' | 'fill'>('outline');\n readonly _control = new FormControl<string | number>({value: '', disabled: true});\n\n constructor() {\n // super();\n effect(() => {\n console.debug('progress:', this.progress());\n });\n }\n\n ngOnInit() {\n // super.ngOnInit();\n this.control$.subscribe(control => {\n this._control.setValidators(control['_rawValidators']);\n this._control.setAsyncValidators(control['_rawAsyncValidators']);\n });\n\n this.controlValue$.subscribe(value => this._control.setValue(value));\n }\n\n readonly actions = computed(() => {\n if (this.progress()) {\n return [\n {\n id: ActionId.CANCEL,\n icon: 'cancel',\n name: 'Cancel',\n disabled: this.control().disabled,\n },\n ];\n } else {\n return [\n {\n id: ActionId.FILE_SELECT_BUTTON_CLICK,\n icon: 'attach_file',\n name: 'Select file',\n disabled: this.control().disabled,\n },\n ];\n }\n });\n}\n\n@Component({\n selector: 'molecules-file-input-field',\n standalone: true,\n imports: [\n ReactiveFormsModule,\n MatInputModule,\n SmartMenuButtonAtom,\n ErrorPipe,\n ],\n template: `\n <mat-form-field [appearance]=\"store.appearance()\">\n <mat-label>{{ store.label() }}</mat-label>\n <input matInput [name]=\"store.name()\" type=\"text\" [formControl]=\"store._control\" [placeholder]=\"store.placeholder()\">\n <!-- <mat-icon matSuffix>sentiment_very_satisfied</mat-icon> -->\n @if (store.progress()) {\n <mat-hint>Uploading...({{ store.progress() ? store.progress()?.toFixed(2) : '' }}%)</mat-hint>\n } @else if (store.hint()) {\n <mat-hint>{{ store.hint() }}</mat-hint>\n }\n <mat-error>{{ store.control().errors | error }}</mat-error>\n </mat-form-field>\n <atoms-smart-menu-button\n [actions]=\"store.actions()\"\n (action)=\"dispatch($event)\"\n ></atoms-smart-menu-button>\n <input style=\"display: none\" type=\"file\" (change)=\"onFileSelected($event)\" #fileUpload>\n `,\n styleUrls: ['./file-input-field.molecule.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: FileInputFieldStore,\n inputs: ['control', 'label', 'placeholder', 'hint', 'progress', 'name', 'appearance'],\n }\n ]\n})\nexport class FileInputFieldMolecule extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n protected readonly store = inject(FileInputFieldStore);\n protected readonly fileUpload = viewChild.required<ElementRef<HTMLInputElement>>('fileUpload');\n \n @Effect(ActionId.FILE_SELECT_BUTTON_CLICK)\n protected onFileSelectButtonClick() {\n this.fileUpload().nativeElement.click();\n }\n\n protected onFileSelected(event: Event & {target: HTMLInputElement}) {\n this.dispatch({id: ActionId.FILE_SELECTED, payload: event.target.files});\n // this.fileUpload().nativeElement.value = '';\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-atomic-components-molecules-file-input-field.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/file-input-field.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/ng-atomic-components-molecules-file-input-field.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, ElementRef, computed, effect, inject, input, viewChild, OnInit } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { SmartMenuButtonAtom } from '@ng-atomic/components/atoms/smart-menu-button';\nimport { Effect, NgAtomicComponent } from '@ng-atomic/core';\nimport { ErrorPipe } from '@ng-atomic/common/pipes/error';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { startWith, switchMap } from 'rxjs';\n\nenum ActionId {\n FILE_SELECT_BUTTON_CLICK = '[@ng-atomic/components/molecules/file-input-field] File select button click',\n FILE_SELECTED = '[@ng-atomic/components/molecules/file-input-field] File selected',\n CANCEL = '[@ng-atomic/components/molecules/file-input-field] Cancel',\n}\n\n@Directive({ standalone: true })\nexport class FileInputFieldStore implements OnInit {\n readonly control = input(new FormControl(null));\n readonly control$ = toObservable(this.control).pipe(takeUntilDestroyed());\n readonly controlValue$ = this.control$.pipe(\n switchMap(control => control.valueChanges.pipe(startWith(control.value))),\n );\n readonly label = input('label');\n readonly placeholder = input('placeholder');\n readonly hint = input<string | null>(null);\n readonly progress = input<number | false>(false);\n readonly name = input<string | null>(null);\n readonly appearance = input<'outline' | 'fill'>('outline');\n readonly _control = new FormControl<string | number>({value: '', disabled: true});\n\n constructor() {\n // super();\n effect(() => {\n console.debug('progress:', this.progress());\n });\n }\n\n ngOnInit() {\n // super.ngOnInit();\n this.control$.subscribe(control => {\n this._control.setValidators(control['_rawValidators']);\n this._control.setAsyncValidators(control['_rawAsyncValidators']);\n });\n\n this.controlValue$.subscribe(value => this._control.setValue(value));\n }\n\n readonly actions = computed(() => {\n if (this.progress()) {\n return [\n {\n id: ActionId.CANCEL,\n icon: 'cancel',\n name: 'Cancel',\n disabled: this.control().disabled,\n },\n ];\n } else {\n return [\n {\n id: ActionId.FILE_SELECT_BUTTON_CLICK,\n icon: 'attach_file',\n name: 'Select file',\n disabled: this.control().disabled,\n },\n ];\n }\n });\n}\n\n@Component({\n selector: 'molecules-file-input-field',\n standalone: true,\n imports: [\n ReactiveFormsModule,\n MatInputModule,\n SmartMenuButtonAtom,\n ErrorPipe,\n ],\n template: `\n <mat-form-field [appearance]=\"store.appearance()\">\n <mat-label>{{ store.label() }}</mat-label>\n <input matInput [name]=\"store.name()\" type=\"text\" [formControl]=\"store._control\" [placeholder]=\"store.placeholder()\">\n <!-- <mat-icon matSuffix>sentiment_very_satisfied</mat-icon> -->\n @if (store.progress()) {\n <mat-hint>Uploading...({{ store.progress() ? store.progress()?.toFixed(2) : '' }}%)</mat-hint>\n } @else if (store.hint()) {\n <mat-hint>{{ store.hint() }}</mat-hint>\n }\n <mat-error>{{ store.control().errors | error }}</mat-error>\n </mat-form-field>\n <atoms-smart-menu-button\n [actions]=\"store.actions()\"\n (action)=\"dispatch($event)\"\n ></atoms-smart-menu-button>\n <input style=\"display: none\" type=\"file\" (change)=\"onFileSelected($event)\" #fileUpload>\n `,\n styleUrls: ['./file-input-field.molecule.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: FileInputFieldStore,\n inputs: ['control', 'label', 'placeholder', 'hint', 'progress', 'name', 'appearance'],\n }\n ]\n})\nexport class FileInputFieldMolecule extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n protected readonly store = inject(FileInputFieldStore);\n protected readonly fileUpload = viewChild.required<ElementRef<HTMLInputElement>>('fileUpload');\n \n @Effect(ActionId.FILE_SELECT_BUTTON_CLICK)\n protected onFileSelectButtonClick() {\n this.fileUpload().nativeElement.click();\n }\n\n protected onFileSelected(event: Event & {target: HTMLInputElement}) {\n this.dispatch({id: ActionId.FILE_SELECTED, payload: event.target.files});\n // this.fileUpload().nativeElement.value = '';\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -39,7 +39,7 @@ class GridItemMolecule extends NgAtomicComponent {
|
|
|
39
39
|
<div class="sub"><span>{{ item() | dataAccessor:'sub' }}</span></div>
|
|
40
40
|
</div>
|
|
41
41
|
</div>
|
|
42
|
-
`, isInline: true, styles: [":host{display:block;--primary-color: #444;--primary-color-SCOPED-IN-grid-item-
|
|
42
|
+
`, isInline: true, styles: [":host{display:block;--primary-color: #444;--primary-color-SCOPED-IN-grid-item-klro: var(--primary-color);--on-surface-color: #444;--on-surface-color-SCOPED-IN-grid-item-klro: var(--on-surface-color)}:host{position:relative;text-align:center;cursor:pointer;aspect-ratio:1/1}:host button{position:absolute;top:0;right:0}:host ::ng-deep>mat-card{display:flex;justify-content:flex-start;align-items:flex-start}:host .eye-catch{position:relative;width:100%;aspect-ratio:16/9;background-color:#444;border-radius:0 0 8px 8px;overflow:hidden}:host .eye-catch img{width:100%;aspect-ratio:16/9;object-fit:cover}:host .eye-catch .label{position:absolute;right:6px;bottom:8px;line-height:1.5em;font-size:1.2em;color:#fff;background:#000;opacity:.6;border-radius:6px;padding:4px 8px}:host .meta{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:8px 8px 24px;box-sizing:border-box}:host .meta .title{display:-webkit-box;text-align:start;font-size:1.4em;font-weight:700;line-height:1.5em;letter-spacing:.04em;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal;overflow:hidden;color:var(--on-surface-color-SCOPED-IN-grid-item-klro)}:host .meta .description,:host .meta .sub{overflow:hidden;text-align:start;font-size:1.2em;letter-spacing:.04em;color:gray}:host .meta .description span,:host .meta .sub span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}\n"], dependencies: [{ kind: "pipe", type: DataAccessorPipe, name: "dataAccessor" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i3.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: FallbackSrcDirective, selector: "[fallbackSrc]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
43
43
|
}
|
|
44
44
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: GridItemMolecule, decorators: [{
|
|
45
45
|
type: Component,
|
|
@@ -64,7 +64,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
64
64
|
<div class="sub"><span>{{ item() | dataAccessor:'sub' }}</span></div>
|
|
65
65
|
</div>
|
|
66
66
|
</div>
|
|
67
|
-
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;--primary-color: #444;--primary-color-SCOPED-IN-grid-item-
|
|
67
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;--primary-color: #444;--primary-color-SCOPED-IN-grid-item-klro: var(--primary-color);--on-surface-color: #444;--on-surface-color-SCOPED-IN-grid-item-klro: var(--on-surface-color)}:host{position:relative;text-align:center;cursor:pointer;aspect-ratio:1/1}:host button{position:absolute;top:0;right:0}:host ::ng-deep>mat-card{display:flex;justify-content:flex-start;align-items:flex-start}:host .eye-catch{position:relative;width:100%;aspect-ratio:16/9;background-color:#444;border-radius:0 0 8px 8px;overflow:hidden}:host .eye-catch img{width:100%;aspect-ratio:16/9;object-fit:cover}:host .eye-catch .label{position:absolute;right:6px;bottom:8px;line-height:1.5em;font-size:1.2em;color:#fff;background:#000;opacity:.6;border-radius:6px;padding:4px 8px}:host .meta{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:8px 8px 24px;box-sizing:border-box}:host .meta .title{display:-webkit-box;text-align:start;font-size:1.4em;font-weight:700;line-height:1.5em;letter-spacing:.04em;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal;overflow:hidden;color:var(--on-surface-color-SCOPED-IN-grid-item-klro)}:host .meta .description,:host .meta .sub{overflow:hidden;text-align:start;font-size:1.2em;letter-spacing:.04em;color:gray}:host .meta .description span,:host .meta .sub span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}\n"] }]
|
|
68
68
|
}] });
|
|
69
69
|
|
|
70
70
|
/**
|