@updevs/components 1.0.0-alpha.5 → 1.0.0-alpha.8
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/button/button.component.d.ts +43 -0
- package/button/upd-button.module.d.ts +8 -0
- package/card/card.component.d.ts +54 -0
- package/card/directives/card-actions.directive.d.ts +7 -0
- package/card/directives/card-footer.directive.d.ts +7 -0
- package/card/directives/card-header.directive.d.ts +7 -0
- package/card/directives/card-image.directive.d.ts +7 -0
- package/card/upd-card.module.d.ts +14 -0
- package/dropdown/dropdown.component.d.ts +63 -0
- package/dropdown/{src/models/dropdown-item.ts → models/dropdown-item.d.ts} +0 -2
- package/dropdown/upd-dropdown.module.d.ts +12 -0
- package/esm2022/button/button.component.mjs +163 -0
- package/esm2022/button/index.mjs +2 -0
- package/esm2022/button/public-api.mjs +3 -0
- package/esm2022/button/upd-button.module.mjs +24 -0
- package/esm2022/button/updevs-components-button.mjs +5 -0
- package/esm2022/card/card.component.mjs +136 -0
- package/esm2022/card/directives/card-actions.directive.mjs +16 -0
- package/esm2022/card/directives/card-footer.directive.mjs +16 -0
- package/esm2022/card/directives/card-header.directive.mjs +16 -0
- package/esm2022/card/directives/card-image.directive.mjs +16 -0
- package/esm2022/card/directives/public-api.mjs +5 -0
- package/esm2022/card/index.mjs +2 -0
- package/esm2022/card/public-api.mjs +4 -0
- package/esm2022/card/types/card-state.type.mjs +2 -0
- package/esm2022/card/types/card-style.type.mjs +2 -0
- package/esm2022/card/types/hover-effect.type.mjs +2 -0
- package/esm2022/card/types/ribbon-style.type.mjs +2 -0
- package/esm2022/card/types/status-position.type.mjs +2 -0
- package/esm2022/card/upd-card.module.mjs +50 -0
- package/esm2022/card/updevs-components-card.mjs +5 -0
- package/esm2022/dropdown/dropdown.component.mjs +145 -0
- package/esm2022/dropdown/index.mjs +2 -0
- package/esm2022/dropdown/models/dropdown-item.mjs +2 -0
- package/esm2022/dropdown/models/dropdown-item.type.mjs +2 -0
- package/esm2022/dropdown/models/public-api.mjs +3 -0
- package/esm2022/dropdown/public-api.mjs +4 -0
- package/esm2022/dropdown/upd-dropdown.module.mjs +40 -0
- package/esm2022/dropdown/updevs-components-dropdown.mjs +5 -0
- package/esm2022/form/form.module.mjs +18 -0
- package/esm2022/form/index.mjs +2 -0
- package/esm2022/form/public-api.mjs +2 -0
- package/esm2022/form/updevs-components-form.mjs +5 -0
- package/esm2022/form-controls/checkbox/checkbox.component.mjs +68 -0
- package/esm2022/form-controls/checkbox/index.mjs +2 -0
- package/esm2022/form-controls/checkbox/public-api.mjs +3 -0
- package/esm2022/form-controls/checkbox/upd-checkbox.module.mjs +28 -0
- package/esm2022/form-controls/checkbox/updevs-components-form-controls-checkbox.mjs +5 -0
- package/esm2022/form-controls/input/directives/input-append.directive.mjs +16 -0
- package/esm2022/form-controls/input/directives/input-prepend.directive.mjs +16 -0
- package/esm2022/form-controls/input/directives/public-api.mjs +3 -0
- package/esm2022/form-controls/input/index.mjs +2 -0
- package/esm2022/form-controls/input/input.component.mjs +155 -0
- package/esm2022/form-controls/input/public-api.mjs +5 -0
- package/esm2022/form-controls/input/types/input.type.mjs +2 -0
- package/esm2022/form-controls/input/types/loader-position.type.mjs +2 -0
- package/esm2022/form-controls/input/types/public-api.mjs +3 -0
- package/esm2022/form-controls/input/upd-input.module.mjs +46 -0
- package/esm2022/form-controls/input/updevs-components-form-controls-input.mjs +5 -0
- package/esm2022/form-controls/radio/index.mjs +2 -0
- package/esm2022/form-controls/radio/public-api.mjs +3 -0
- package/esm2022/form-controls/radio/radio.component.mjs +64 -0
- package/esm2022/form-controls/radio/upd-radio.module.mjs +24 -0
- package/esm2022/form-controls/radio/updevs-components-form-controls-radio.mjs +5 -0
- package/esm2022/form-controls/select/components/multiple/select-multiple.component.mjs +65 -0
- package/esm2022/form-controls/select/components/single/select.component.mjs +53 -0
- package/esm2022/form-controls/select/index.mjs +2 -0
- package/esm2022/form-controls/select/models/abstractions/base-select.component.mjs +208 -0
- package/esm2022/form-controls/select/models/public-api.mjs +2 -0
- package/esm2022/form-controls/select/models/select-item.mjs +2 -0
- package/esm2022/form-controls/select/public-api.mjs +5 -0
- package/esm2022/form-controls/select/upd-select.module.mjs +53 -0
- package/esm2022/form-controls/select/updevs-components-form-controls-select.mjs +5 -0
- package/esm2022/form-controls/textarea/index.mjs +2 -0
- package/esm2022/form-controls/textarea/public-api.mjs +3 -0
- package/esm2022/form-controls/textarea/textarea.component.mjs +62 -0
- package/esm2022/form-controls/textarea/upd-textarea.module.mjs +24 -0
- package/esm2022/form-controls/textarea/updevs-components-form-controls-textarea.mjs +5 -0
- package/esm2022/form-controls/time-picker/index.mjs +2 -0
- package/esm2022/form-controls/time-picker/public-api.mjs +4 -0
- package/esm2022/form-controls/time-picker/time-picker.component.mjs +130 -0
- package/esm2022/form-controls/time-picker/time-selector/time-selector.component.mjs +124 -0
- package/esm2022/form-controls/time-picker/upd-time-picker.module.mjs +60 -0
- package/esm2022/form-controls/time-picker/updevs-components-form-controls-time-picker.mjs +5 -0
- package/esm2022/layout/abstractions/base-page.component.mjs +24 -0
- package/esm2022/layout/abstractions/public-api.mjs +2 -0
- package/esm2022/layout/index.mjs +2 -0
- package/esm2022/layout/layouts/blank-layout/blank-layout.component.mjs +11 -0
- package/esm2022/layout/layouts/blank-layout/blank-layout.module.mjs +24 -0
- package/esm2022/layout/layouts/public-api.mjs +5 -0
- package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.mjs +31 -0
- package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.mjs +81 -0
- package/esm2022/layout/models/public-api.mjs +2 -0
- package/esm2022/layout/models/upd-layout-config.model.mjs +30 -0
- package/esm2022/layout/models/upd-layout.config.mjs +2 -0
- package/esm2022/layout/pages/auth-flow/auth-flow-routing.module.mjs +28 -0
- package/esm2022/layout/pages/auth-flow/auth-flow.module.mjs +46 -0
- package/esm2022/layout/pages/auth-flow/logged-out/logged-out.component.mjs +11 -0
- package/esm2022/layout/pages/auth-flow/login/login.component.mjs +27 -0
- package/esm2022/layout/pages/auth-flow/oauth-callback/oauth-callback.component.mjs +11 -0
- package/esm2022/layout/pages/auth-flow/public-api.mjs +6 -0
- package/esm2022/layout/pages/public-api.mjs +2 -0
- package/esm2022/layout/partials/footer/footer-copyright.directive.mjs +13 -0
- package/esm2022/layout/partials/footer/footer.component.mjs +67 -0
- package/esm2022/layout/partials/footer/public-api.mjs +3 -0
- package/esm2022/layout/partials/header/header-style.type.mjs +2 -0
- package/esm2022/layout/partials/header/header.component.mjs +77 -0
- package/esm2022/layout/partials/header/public-api.mjs +3 -0
- package/esm2022/layout/partials/page-header/page-header.component.mjs +14 -0
- package/esm2022/layout/partials/page-header/public-api.mjs +2 -0
- package/esm2022/layout/partials/public-api.mjs +5 -0
- package/esm2022/layout/partials/sidebar/public-api.mjs +2 -0
- package/esm2022/layout/partials/sidebar/sidebar.component.mjs +143 -0
- package/esm2022/layout/public-api.mjs +8 -0
- package/esm2022/layout/services/public-api.mjs +2 -0
- package/esm2022/layout/services/upd-layout-config.service.mjs +21 -0
- package/esm2022/layout/tools/layout.constants.mjs +15 -0
- package/esm2022/layout/upd-layout.module.mjs +43 -0
- package/esm2022/layout/updevs-components-layout.mjs +5 -0
- package/esm2022/lib/index.mjs +2 -0
- package/esm2022/lib/public-api.mjs +3 -0
- package/esm2022/lib/types/component-size.type.mjs +2 -0
- package/esm2022/lib/types/public-api.mjs +3 -0
- package/esm2022/lib/types/validation-status.type.mjs +2 -0
- package/esm2022/lib/upd-components.module.mjs +14 -0
- package/esm2022/link/index.mjs +2 -0
- package/esm2022/link/link.component.mjs +51 -0
- package/esm2022/link/public-api.mjs +4 -0
- package/esm2022/link/target.type.mjs +2 -0
- package/esm2022/link/upd-link.module.mjs +24 -0
- package/esm2022/link/updevs-components-link.mjs +5 -0
- package/esm2022/list/index.mjs +2 -0
- package/esm2022/list/list.component.mjs +134 -0
- package/esm2022/list/models/badge-position.type.mjs +2 -0
- package/esm2022/list/models/list-item.mjs +2 -0
- package/esm2022/list/models/list-item.model.mjs +15 -0
- package/esm2022/list/models/public-api.mjs +3 -0
- package/esm2022/list/public-api.mjs +4 -0
- package/esm2022/list/upd-list.module.mjs +43 -0
- package/esm2022/list/updevs-components-list.mjs +5 -0
- package/esm2022/popover/index.mjs +2 -0
- package/esm2022/popover/popover.component.mjs +65 -0
- package/esm2022/popover/popover.directive.mjs +129 -0
- package/esm2022/popover/public-api.mjs +4 -0
- package/esm2022/popover/upd-popover.module.mjs +29 -0
- package/esm2022/popover/updevs-components-popover.mjs +5 -0
- package/esm2022/public-api.mjs +2 -0
- package/esm2022/updevs-components.mjs +5 -0
- package/fesm2022/updevs-components-button.mjs +191 -0
- package/fesm2022/updevs-components-button.mjs.map +1 -0
- package/fesm2022/updevs-components-card.mjs +238 -0
- package/fesm2022/updevs-components-card.mjs.map +1 -0
- package/fesm2022/updevs-components-dropdown.mjs +189 -0
- package/fesm2022/updevs-components-dropdown.mjs.map +1 -0
- package/fesm2022/updevs-components-form-controls-checkbox.mjs +100 -0
- package/fesm2022/updevs-components-form-controls-checkbox.mjs.map +1 -0
- package/fesm2022/updevs-components-form-controls-input.mjs +229 -0
- package/fesm2022/updevs-components-form-controls-input.mjs.map +1 -0
- package/fesm2022/updevs-components-form-controls-radio.mjs +92 -0
- package/fesm2022/updevs-components-form-controls-radio.mjs.map +1 -0
- package/fesm2022/updevs-components-form-controls-select.mjs +371 -0
- package/fesm2022/updevs-components-form-controls-select.mjs.map +1 -0
- package/fesm2022/updevs-components-form-controls-textarea.mjs +90 -0
- package/fesm2022/updevs-components-form-controls-textarea.mjs.map +1 -0
- package/fesm2022/updevs-components-form-controls-time-picker.mjs +344 -0
- package/fesm2022/updevs-components-form-controls-time-picker.mjs.map +1 -0
- package/fesm2022/updevs-components-form.mjs +25 -0
- package/fesm2022/updevs-components-form.mjs.map +1 -0
- package/fesm2022/updevs-components-layout.mjs +670 -0
- package/fesm2022/updevs-components-layout.mjs.map +1 -0
- package/fesm2022/updevs-components-link.mjs +79 -0
- package/fesm2022/updevs-components-link.mjs.map +1 -0
- package/fesm2022/updevs-components-list.mjs +226 -0
- package/fesm2022/updevs-components-list.mjs.map +1 -0
- package/fesm2022/updevs-components-popover.mjs +223 -0
- package/fesm2022/updevs-components-popover.mjs.map +1 -0
- package/fesm2022/updevs-components.mjs +21 -0
- package/fesm2022/updevs-components.mjs.map +1 -0
- package/form/form.module.d.ts +7 -0
- package/form-controls/checkbox/checkbox.component.d.ts +25 -0
- package/form-controls/checkbox/{src/public-api.ts → public-api.d.ts} +0 -1
- package/form-controls/checkbox/upd-checkbox.module.d.ts +9 -0
- package/form-controls/input/directives/input-append.directive.d.ts +7 -0
- package/form-controls/input/directives/input-prepend.directive.d.ts +7 -0
- package/form-controls/input/input.component.d.ts +54 -0
- package/form-controls/input/upd-input.module.d.ts +13 -0
- package/form-controls/radio/radio.component.d.ts +24 -0
- package/form-controls/radio/upd-radio.module.d.ts +8 -0
- package/form-controls/select/components/multiple/select-multiple.component.d.ts +18 -0
- package/form-controls/select/components/single/select.component.d.ts +20 -0
- package/form-controls/select/models/abstractions/base-select.component.d.ts +80 -0
- package/form-controls/select/{src/models/select-item.ts → models/select-item.d.ts} +0 -1
- package/form-controls/select/upd-select.module.d.ts +15 -0
- package/form-controls/textarea/textarea.component.d.ts +23 -0
- package/form-controls/textarea/upd-textarea.module.d.ts +8 -0
- package/form-controls/time-picker/time-picker.component.d.ts +78 -0
- package/form-controls/time-picker/time-selector/time-selector.component.d.ts +69 -0
- package/form-controls/time-picker/upd-time-picker.module.d.ts +17 -0
- package/index.d.ts +5 -0
- package/layout/abstractions/base-page.component.d.ts +12 -0
- package/layout/layouts/blank-layout/blank-layout.component.d.ts +5 -0
- package/layout/layouts/blank-layout/blank-layout.module.d.ts +8 -0
- package/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.d.ts +12 -0
- package/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.d.ts +20 -0
- package/layout/models/upd-layout-config.model.d.ts +39 -0
- package/layout/pages/auth-flow/auth-flow-routing.module.d.ts +12 -0
- package/layout/pages/auth-flow/auth-flow.module.d.ts +13 -0
- package/layout/pages/auth-flow/logged-out/logged-out.component.d.ts +5 -0
- package/layout/pages/auth-flow/login/login.component.d.ts +12 -0
- package/layout/pages/auth-flow/oauth-callback/oauth-callback.component.d.ts +5 -0
- package/layout/partials/footer/footer-copyright.directive.d.ts +5 -0
- package/layout/partials/footer/footer.component.d.ts +43 -0
- package/layout/partials/header/header.component.d.ts +31 -0
- package/layout/partials/page-header/page-header.component.d.ts +7 -0
- package/layout/partials/sidebar/sidebar.component.d.ts +19 -0
- package/layout/services/upd-layout-config.service.d.ts +15 -0
- package/layout/{src/tools/layout.constants.ts → tools/layout.constants.d.ts} +3 -6
- package/layout/upd-layout.module.d.ts +18 -0
- package/lib/upd-components.module.d.ts +6 -0
- package/link/link.component.d.ts +22 -0
- package/link/upd-link.module.d.ts +8 -0
- package/list/list.component.d.ts +61 -0
- package/list/{src/models/list-item.ts → models/list-item.d.ts} +0 -2
- package/list/{src/models/list-item.model.ts → models/list-item.model.d.ts} +5 -16
- package/list/upd-list.module.d.ts +13 -0
- package/package.json +114 -21
- package/popover/popover.component.d.ts +22 -0
- package/popover/popover.directive.d.ts +33 -0
- package/popover/upd-popover.module.d.ts +9 -0
- package/CHANGELOG.md +0 -8
- package/button/index.ts +0 -1
- package/button/ng-package.json +0 -7
- package/button/src/button.component.html +0 -8
- package/button/src/button.component.scss +0 -5
- package/button/src/button.component.spec.ts +0 -23
- package/button/src/button.component.ts +0 -154
- package/button/src/upd-button.module.ts +0 -17
- package/card/index.ts +0 -1
- package/card/ng-package.json +0 -7
- package/card/src/card.component.html +0 -105
- package/card/src/card.component.scss +0 -47
- package/card/src/card.component.spec.ts +0 -23
- package/card/src/card.component.ts +0 -112
- package/card/src/directives/card-actions.directive.spec.ts +0 -8
- package/card/src/directives/card-actions.directive.ts +0 -11
- package/card/src/directives/card-footer.directive.spec.ts +0 -8
- package/card/src/directives/card-footer.directive.ts +0 -11
- package/card/src/directives/card-header.directive.spec.ts +0 -8
- package/card/src/directives/card-header.directive.ts +0 -11
- package/card/src/directives/card-image.directive.spec.ts +0 -8
- package/card/src/directives/card-image.directive.ts +0 -11
- package/card/src/types/public-api.ts +0 -5
- package/card/src/upd-card.module.ts +0 -32
- package/dropdown/index.ts +0 -1
- package/dropdown/ng-package.json +0 -7
- package/dropdown/src/dropdown.component.html +0 -32
- package/dropdown/src/dropdown.component.scss +0 -19
- package/dropdown/src/dropdown.component.spec.ts +0 -23
- package/dropdown/src/dropdown.component.ts +0 -182
- package/dropdown/src/upd-dropdown.module.ts +0 -25
- package/form/index.ts +0 -1
- package/form/ng-package.json +0 -7
- package/form/src/form.module.ts +0 -10
- package/form-controls/checkbox/index.ts +0 -1
- package/form-controls/checkbox/ng-package.json +0 -7
- package/form-controls/checkbox/src/checkbox.component.html +0 -7
- package/form-controls/checkbox/src/checkbox.component.scss +0 -0
- package/form-controls/checkbox/src/checkbox.component.spec.ts +0 -23
- package/form-controls/checkbox/src/checkbox.component.ts +0 -48
- package/form-controls/checkbox/src/upd-checkbox.module.ts +0 -19
- package/form-controls/input/index.ts +0 -1
- package/form-controls/input/ng-package.json +0 -7
- package/form-controls/input/src/directives/input-append.directive.spec.ts +0 -8
- package/form-controls/input/src/directives/input-append.directive.ts +0 -11
- package/form-controls/input/src/directives/input-prepend.directive.spec.ts +0 -8
- package/form-controls/input/src/directives/input-prepend.directive.ts +0 -11
- package/form-controls/input/src/input.component.html +0 -82
- package/form-controls/input/src/input.component.scss +0 -13
- package/form-controls/input/src/input.component.spec.ts +0 -23
- package/form-controls/input/src/input.component.ts +0 -124
- package/form-controls/input/src/upd-input.module.ts +0 -29
- package/form-controls/radio/index.ts +0 -1
- package/form-controls/radio/ng-package.json +0 -7
- package/form-controls/radio/src/radio.component.html +0 -7
- package/form-controls/radio/src/radio.component.scss +0 -0
- package/form-controls/radio/src/radio.component.spec.ts +0 -23
- package/form-controls/radio/src/radio.component.ts +0 -47
- package/form-controls/radio/src/upd-radio.module.ts +0 -17
- package/form-controls/select/index.ts +0 -1
- package/form-controls/select/ng-package.json +0 -7
- package/form-controls/select/src/components/multiple/select-multiple.component.html +0 -41
- package/form-controls/select/src/components/multiple/select-multiple.component.scss +0 -6
- package/form-controls/select/src/components/multiple/select-multiple.component.spec.ts +0 -21
- package/form-controls/select/src/components/multiple/select-multiple.component.ts +0 -69
- package/form-controls/select/src/components/shared.scss +0 -40
- package/form-controls/select/src/components/single/select.component.html +0 -53
- package/form-controls/select/src/components/single/select.component.scss +0 -3
- package/form-controls/select/src/components/single/select.component.spec.ts +0 -23
- package/form-controls/select/src/components/single/select.component.ts +0 -58
- package/form-controls/select/src/models/abstractions/base-select.component.ts +0 -259
- package/form-controls/select/src/upd-select.module.ts +0 -32
- package/form-controls/textarea/index.ts +0 -1
- package/form-controls/textarea/ng-package.json +0 -7
- package/form-controls/textarea/src/textarea.component.html +0 -8
- package/form-controls/textarea/src/textarea.component.scss +0 -0
- package/form-controls/textarea/src/textarea.component.spec.ts +0 -23
- package/form-controls/textarea/src/textarea.component.ts +0 -47
- package/form-controls/textarea/src/upd-textarea.module.ts +0 -17
- package/form-controls/time-picker/index.ts +0 -1
- package/form-controls/time-picker/ng-package.json +0 -7
- package/form-controls/time-picker/src/time-picker.component.html +0 -17
- package/form-controls/time-picker/src/time-picker.component.scss +0 -10
- package/form-controls/time-picker/src/time-picker.component.spec.ts +0 -21
- package/form-controls/time-picker/src/time-picker.component.ts +0 -110
- package/form-controls/time-picker/src/time-selector/time-selector.component.html +0 -44
- package/form-controls/time-picker/src/time-selector/time-selector.component.scss +0 -47
- package/form-controls/time-picker/src/time-selector/time-selector.component.spec.ts +0 -21
- package/form-controls/time-picker/src/time-selector/time-selector.component.ts +0 -107
- package/form-controls/time-picker/src/upd-time-picker.module.ts +0 -39
- package/index.ts +0 -1
- package/layout/index.ts +0 -1
- package/layout/ng-package.json +0 -7
- package/layout/src/abstractions/base-page.component.ts +0 -21
- package/layout/src/layouts/blank-layout/blank-layout.component.html +0 -1
- package/layout/src/layouts/blank-layout/blank-layout.component.scss +0 -0
- package/layout/src/layouts/blank-layout/blank-layout.component.spec.ts +0 -23
- package/layout/src/layouts/blank-layout/blank-layout.component.ts +0 -10
- package/layout/src/layouts/blank-layout/blank-layout.module.ts +0 -17
- package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.html +0 -14
- package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.scss +0 -0
- package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.spec.ts +0 -23
- package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.ts +0 -31
- package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.ts +0 -52
- package/layout/src/models/upd-layout-config.model.ts +0 -71
- package/layout/src/pages/auth-flow/auth-flow-routing.module.ts +0 -21
- package/layout/src/pages/auth-flow/auth-flow.module.ts +0 -29
- package/layout/src/pages/auth-flow/logged-out/logged-out.component.html +0 -1
- package/layout/src/pages/auth-flow/logged-out/logged-out.component.scss +0 -0
- package/layout/src/pages/auth-flow/logged-out/logged-out.component.spec.ts +0 -23
- package/layout/src/pages/auth-flow/logged-out/logged-out.component.ts +0 -10
- package/layout/src/pages/auth-flow/login/login.component.html +0 -96
- package/layout/src/pages/auth-flow/login/login.component.scss +0 -0
- package/layout/src/pages/auth-flow/login/login.component.spec.ts +0 -23
- package/layout/src/pages/auth-flow/login/login.component.ts +0 -26
- package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.html +0 -1
- package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.scss +0 -0
- package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.spec.ts +0 -23
- package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.ts +0 -10
- package/layout/src/partials/footer/footer-copyright.directive.spec.ts +0 -8
- package/layout/src/partials/footer/footer-copyright.directive.ts +0 -9
- package/layout/src/partials/footer/footer.component.html +0 -30
- package/layout/src/partials/footer/footer.component.scss +0 -0
- package/layout/src/partials/footer/footer.component.spec.ts +0 -23
- package/layout/src/partials/footer/footer.component.ts +0 -73
- package/layout/src/partials/header/header.component.html +0 -163
- package/layout/src/partials/header/header.component.scss +0 -0
- package/layout/src/partials/header/header.component.spec.ts +0 -23
- package/layout/src/partials/header/header.component.ts +0 -86
- package/layout/src/partials/page-header/page-header.component.html +0 -19
- package/layout/src/partials/page-header/page-header.component.scss +0 -0
- package/layout/src/partials/page-header/page-header.component.spec.ts +0 -23
- package/layout/src/partials/page-header/page-header.component.ts +0 -11
- package/layout/src/partials/sidebar/sidebar.component.html +0 -62
- package/layout/src/partials/sidebar/sidebar.component.scss +0 -0
- package/layout/src/partials/sidebar/sidebar.component.spec.ts +0 -23
- package/layout/src/partials/sidebar/sidebar.component.ts +0 -161
- package/layout/src/services/upd-layout-config.service.spec.ts +0 -16
- package/layout/src/services/upd-layout-config.service.ts +0 -20
- package/layout/src/upd-layout.module.ts +0 -34
- package/link/index.ts +0 -1
- package/link/ng-package.json +0 -7
- package/link/src/link.component.html +0 -3
- package/link/src/link.component.scss +0 -3
- package/link/src/link.component.spec.ts +0 -23
- package/link/src/link.component.ts +0 -48
- package/link/src/upd-link.module.ts +0 -17
- package/list/index.ts +0 -1
- package/list/ng-package.json +0 -7
- package/list/src/list.component.html +0 -58
- package/list/src/list.component.scss +0 -21
- package/list/src/list.component.spec.ts +0 -23
- package/list/src/list.component.ts +0 -147
- package/list/src/upd-list.module.ts +0 -30
- package/ng-package.json +0 -10
- package/popover/index.ts +0 -1
- package/popover/ng-package.json +0 -7
- package/popover/src/popover.component.html +0 -20
- package/popover/src/popover.component.scss +0 -8
- package/popover/src/popover.component.spec.ts +0 -23
- package/popover/src/popover.component.ts +0 -53
- package/popover/src/popover.directive.spec.ts +0 -8
- package/popover/src/popover.directive.ts +0 -128
- package/popover/src/upd-popover.module.ts +0 -20
- package/src/lib/upd-components.module.ts +0 -6
- package/tsconfig.lib.json +0 -14
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -14
- /package/button/{src/index.ts → index.d.ts} +0 -0
- /package/button/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/card/{src/directives/public-api.ts → directives/public-api.d.ts} +0 -0
- /package/card/{src/index.ts → index.d.ts} +0 -0
- /package/card/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/card/{src/types/card-state.type.ts → types/card-state.type.d.ts} +0 -0
- /package/card/{src/types/card-style.type.ts → types/card-style.type.d.ts} +0 -0
- /package/card/{src/types/hover-effect.type.ts → types/hover-effect.type.d.ts} +0 -0
- /package/card/{src/types/ribbon-style.type.ts → types/ribbon-style.type.d.ts} +0 -0
- /package/card/{src/types/status-position.type.ts → types/status-position.type.d.ts} +0 -0
- /package/dropdown/{src/index.ts → index.d.ts} +0 -0
- /package/dropdown/{src/models/dropdown-item.type.ts → models/dropdown-item.type.d.ts} +0 -0
- /package/dropdown/{src/models/public-api.ts → models/public-api.d.ts} +0 -0
- /package/dropdown/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/{form-controls/time-picker/src → esm2022/form-controls/time-picker}/assets/i18n/en.json +0 -0
- /package/{form-controls/time-picker/src → esm2022/form-controls/time-picker}/assets/i18n/pt.json +0 -0
- /package/{layout/src → esm2022/layout}/assets/i18n/en.json +0 -0
- /package/{layout/src → esm2022/layout}/assets/i18n/pt.json +0 -0
- /package/{list/src → esm2022/list}/assets/i18n/en.json +0 -0
- /package/{list/src → esm2022/list}/assets/i18n/pt.json +0 -0
- /package/form/{src/index.ts → index.d.ts} +0 -0
- /package/form/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/form-controls/checkbox/{src/index.ts → index.d.ts} +0 -0
- /package/form-controls/input/{src/directives/public-api.ts → directives/public-api.d.ts} +0 -0
- /package/form-controls/input/{src/index.ts → index.d.ts} +0 -0
- /package/form-controls/input/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/form-controls/input/{src/types/input.type.ts → types/input.type.d.ts} +0 -0
- /package/form-controls/input/{src/types/loader-position.type.ts → types/loader-position.type.d.ts} +0 -0
- /package/form-controls/input/{src/types/public-api.ts → types/public-api.d.ts} +0 -0
- /package/form-controls/radio/{src/index.ts → index.d.ts} +0 -0
- /package/form-controls/radio/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/form-controls/select/{src/index.ts → index.d.ts} +0 -0
- /package/form-controls/select/{src/models/public-api.ts → models/public-api.d.ts} +0 -0
- /package/form-controls/select/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/form-controls/textarea/{src/index.ts → index.d.ts} +0 -0
- /package/form-controls/textarea/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/form-controls/time-picker/{src/index.ts → index.d.ts} +0 -0
- /package/form-controls/time-picker/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/layout/{src/abstractions/public-api.ts → abstractions/public-api.d.ts} +0 -0
- /package/layout/{src/index.ts → index.d.ts} +0 -0
- /package/layout/{src/layouts/public-api.ts → layouts/public-api.d.ts} +0 -0
- /package/layout/{src/models/public-api.ts → models/public-api.d.ts} +0 -0
- /package/layout/{src/models/upd-layout.config.ts → models/upd-layout.config.d.ts} +0 -0
- /package/layout/{src/pages/auth-flow/public-api.ts → pages/auth-flow/public-api.d.ts} +0 -0
- /package/layout/{src/pages/public-api.ts → pages/public-api.d.ts} +0 -0
- /package/layout/{src/partials/footer/public-api.ts → partials/footer/public-api.d.ts} +0 -0
- /package/layout/{src/partials/header/header-style.type.ts → partials/header/header-style.type.d.ts} +0 -0
- /package/layout/{src/partials/header/public-api.ts → partials/header/public-api.d.ts} +0 -0
- /package/layout/{src/partials/page-header/public-api.ts → partials/page-header/public-api.d.ts} +0 -0
- /package/layout/{src/partials/public-api.ts → partials/public-api.d.ts} +0 -0
- /package/layout/{src/partials/sidebar/public-api.ts → partials/sidebar/public-api.d.ts} +0 -0
- /package/layout/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/layout/{src/services/public-api.ts → services/public-api.d.ts} +0 -0
- /package/{link/src/index.ts → lib/index.d.ts} +0 -0
- /package/{src/lib/public-api.ts → lib/public-api.d.ts} +0 -0
- /package/{src/lib/types/component-size.type.ts → lib/types/component-size.type.d.ts} +0 -0
- /package/{src/lib/types/public-api.ts → lib/types/public-api.d.ts} +0 -0
- /package/{src/lib/types/validation-status.type.ts → lib/types/validation-status.type.d.ts} +0 -0
- /package/{list/src/index.ts → link/index.d.ts} +0 -0
- /package/link/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/link/{src/target.type.ts → target.type.d.ts} +0 -0
- /package/{popover/src/index.ts → list/index.d.ts} +0 -0
- /package/list/{src/models/badge-position.type.ts → models/badge-position.type.d.ts} +0 -0
- /package/list/{src/models/public-api.ts → models/public-api.d.ts} +0 -0
- /package/list/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/{src/lib/index.ts → popover/index.d.ts} +0 -0
- /package/popover/{src/public-api.ts → public-api.d.ts} +0 -0
- /package/{src/public-api.ts → public-api.d.ts} +0 -0
@@ -1,23 +0,0 @@
|
|
1
|
-
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
2
|
-
|
3
|
-
import { SidebarComponent } from './sidebar.component';
|
4
|
-
|
5
|
-
describe('SidebarComponent', () => {
|
6
|
-
let component: SidebarComponent;
|
7
|
-
let fixture: ComponentFixture<SidebarComponent>;
|
8
|
-
|
9
|
-
beforeEach(async () => {
|
10
|
-
await TestBed.configureTestingModule({
|
11
|
-
declarations: [ SidebarComponent ]
|
12
|
-
})
|
13
|
-
.compileComponents();
|
14
|
-
|
15
|
-
fixture = TestBed.createComponent(SidebarComponent);
|
16
|
-
component = fixture.componentInstance;
|
17
|
-
fixture.detectChanges();
|
18
|
-
});
|
19
|
-
|
20
|
-
it('should create', () => {
|
21
|
-
expect(component).toBeTruthy();
|
22
|
-
});
|
23
|
-
});
|
@@ -1,161 +0,0 @@
|
|
1
|
-
import { Component, HostBinding, ViewEncapsulation, OnInit } from '@angular/core';
|
2
|
-
import { Router, NavigationStart } from '@angular/router';
|
3
|
-
import { OptionalType } from '@updevs/sdk/types';
|
4
|
-
import { RouteDataModel } from '@updevs/sdk/routes';
|
5
|
-
import { BaseComponent } from '@updevs/sdk/layout';
|
6
|
-
import { filter } from 'rxjs';
|
7
|
-
|
8
|
-
@Component({
|
9
|
-
selector: 'upd-sidebar',
|
10
|
-
templateUrl: './sidebar.component.html',
|
11
|
-
styleUrls: ['./sidebar.component.scss'],
|
12
|
-
encapsulation: ViewEncapsulation.None
|
13
|
-
})
|
14
|
-
export class SidebarComponent extends BaseComponent implements OnInit {
|
15
|
-
@HostBinding('class') wrapperClasses = 'navbar navbar-vertical navbar-expand-lg';
|
16
|
-
@HostBinding('attr.data-bs-theme') theme = 'dark';
|
17
|
-
|
18
|
-
menuItems: RouteDataModel[] = [];
|
19
|
-
|
20
|
-
constructor(
|
21
|
-
private router: Router
|
22
|
-
) {
|
23
|
-
super();
|
24
|
-
}
|
25
|
-
|
26
|
-
ngOnInit(): void {
|
27
|
-
// TODO: remove demo code.
|
28
|
-
const sampleCardsItem = new RouteDataModel({
|
29
|
-
title: 'Sample cards',
|
30
|
-
icon: { tablerIcon: 'home' }
|
31
|
-
});
|
32
|
-
const cardActionsItem = new RouteDataModel({
|
33
|
-
title: 'Card actions',
|
34
|
-
icon: { tablerIcon: 'folder' }
|
35
|
-
});
|
36
|
-
const emptyPageItem = new RouteDataModel({
|
37
|
-
title: 'Empty page',
|
38
|
-
icon: { tablerIcon: 'home' }
|
39
|
-
});
|
40
|
-
const cardsItem = new RouteDataModel({
|
41
|
-
title: 'Cards',
|
42
|
-
icon: { tablerIcon: 'user' },
|
43
|
-
children: [
|
44
|
-
sampleCardsItem,
|
45
|
-
cardActionsItem
|
46
|
-
]
|
47
|
-
});
|
48
|
-
const interfaceItem = new RouteDataModel({
|
49
|
-
title: 'Interface',
|
50
|
-
icon: { tablerIcon: 'device-desktop' },
|
51
|
-
children: [
|
52
|
-
emptyPageItem,
|
53
|
-
cardsItem
|
54
|
-
]
|
55
|
-
});
|
56
|
-
sampleCardsItem.parent = cardsItem;
|
57
|
-
cardActionsItem.parent = cardsItem;
|
58
|
-
emptyPageItem.parent = interfaceItem;
|
59
|
-
cardsItem.parent = interfaceItem;
|
60
|
-
this.menuItems = [
|
61
|
-
new RouteDataModel({
|
62
|
-
title: 'Home',
|
63
|
-
icon: { tablerIcon: 'home' }
|
64
|
-
}),
|
65
|
-
new RouteDataModel({
|
66
|
-
title: 'Archives',
|
67
|
-
icon: { tablerIcon: 'folder' }
|
68
|
-
}),
|
69
|
-
interfaceItem,
|
70
|
-
new RouteDataModel({
|
71
|
-
title: 'Library',
|
72
|
-
icon: { tablerIcon: 'building' }
|
73
|
-
})
|
74
|
-
];
|
75
|
-
// END demo code
|
76
|
-
|
77
|
-
const routerSub = this.router.events.pipe(
|
78
|
-
filter(event => event instanceof NavigationStart)
|
79
|
-
).subscribe(event => this.updateActiveRoute((<NavigationStart> event).url));
|
80
|
-
|
81
|
-
this.updateActiveRoute(this.router.url);
|
82
|
-
this.addSubscriptions(routerSub);
|
83
|
-
}
|
84
|
-
|
85
|
-
onMenuItemClick(item: RouteDataModel): void {
|
86
|
-
this.resetMenuState(this.menuItems);
|
87
|
-
|
88
|
-
item.isActive = true;
|
89
|
-
|
90
|
-
this.updateParents(item);
|
91
|
-
|
92
|
-
if (!!item.clickFunction) {
|
93
|
-
item.clickFunction();
|
94
|
-
return;
|
95
|
-
}
|
96
|
-
|
97
|
-
if ((item.children?.length || 0) > 0) {
|
98
|
-
return;
|
99
|
-
}
|
100
|
-
|
101
|
-
this.router.navigate(item.getFullPath()).then();
|
102
|
-
}
|
103
|
-
|
104
|
-
hasChildren(item: RouteDataModel): boolean {
|
105
|
-
return (item.children?.length || 0) > 0;
|
106
|
-
}
|
107
|
-
|
108
|
-
private findActiveNode(item: RouteDataModel, fullPath: string): OptionalType<RouteDataModel> {
|
109
|
-
if (item.fullPath === fullPath) {
|
110
|
-
return item;
|
111
|
-
} else if (item.children.length > 0) {
|
112
|
-
let result;
|
113
|
-
|
114
|
-
for (let i = 0; !result && i < item.children.length; i++) {
|
115
|
-
result = this.findActiveNode(item.children[i], fullPath);
|
116
|
-
}
|
117
|
-
|
118
|
-
return result;
|
119
|
-
}
|
120
|
-
|
121
|
-
return undefined;
|
122
|
-
}
|
123
|
-
|
124
|
-
private updateActiveRoute(newPath: string): void {
|
125
|
-
this.resetMenuState(this.menuItems);
|
126
|
-
|
127
|
-
let item: OptionalType<RouteDataModel>;
|
128
|
-
|
129
|
-
for (const mi of this.menuItems) {
|
130
|
-
item = this.findActiveNode(mi, newPath);
|
131
|
-
|
132
|
-
if (!!item) {
|
133
|
-
break;
|
134
|
-
}
|
135
|
-
}
|
136
|
-
|
137
|
-
while (!!item) {
|
138
|
-
item.isActive = true;
|
139
|
-
item = item.parent;
|
140
|
-
}
|
141
|
-
}
|
142
|
-
|
143
|
-
private resetMenuState(items: RouteDataModel[]): void {
|
144
|
-
items.forEach(i => {
|
145
|
-
i.isActive = false;
|
146
|
-
|
147
|
-
if (i.children.length > 0) {
|
148
|
-
this.resetMenuState(i.children);
|
149
|
-
}
|
150
|
-
});
|
151
|
-
}
|
152
|
-
|
153
|
-
private updateParents(menuItem: RouteDataModel): void {
|
154
|
-
let item: OptionalType<RouteDataModel> = menuItem;
|
155
|
-
|
156
|
-
while (!!item) {
|
157
|
-
item.isActive = true;
|
158
|
-
item = item.parent;
|
159
|
-
}
|
160
|
-
}
|
161
|
-
}
|
@@ -1,16 +0,0 @@
|
|
1
|
-
import { TestBed } from '@angular/core/testing';
|
2
|
-
|
3
|
-
import { UpdLayoutConfigService } from './upd-layout-config.service';
|
4
|
-
|
5
|
-
describe('UpdLayoutConfigService', () => {
|
6
|
-
let service: UpdLayoutConfigService;
|
7
|
-
|
8
|
-
beforeEach(() => {
|
9
|
-
TestBed.configureTestingModule({});
|
10
|
-
service = TestBed.inject(UpdLayoutConfigService);
|
11
|
-
});
|
12
|
-
|
13
|
-
it('should be created', () => {
|
14
|
-
expect(service).toBeTruthy();
|
15
|
-
});
|
16
|
-
});
|
@@ -1,20 +0,0 @@
|
|
1
|
-
import { Injectable, Inject } from '@angular/core';
|
2
|
-
|
3
|
-
import { UpdLayoutConfigModel } from '../models/upd-layout-config.model';
|
4
|
-
import { LayoutConstants } from '../tools/layout.constants';
|
5
|
-
import { UpdLayoutConfig } from '../models/upd-layout.config';
|
6
|
-
|
7
|
-
/**
|
8
|
-
* Layout configuration data.
|
9
|
-
*/
|
10
|
-
@Injectable()
|
11
|
-
export class UpdLayoutConfigService {
|
12
|
-
/**
|
13
|
-
* Configuration (See: #upsee[p:models, i:UpdCoreLayoutConfigModel]).
|
14
|
-
*/
|
15
|
-
readonly config: UpdLayoutConfigModel;
|
16
|
-
|
17
|
-
constructor(@Inject(LayoutConstants.defaultOptionsInjectionToken) layoutConfig: UpdLayoutConfig) {
|
18
|
-
this.config = new UpdLayoutConfigModel(layoutConfig);
|
19
|
-
}
|
20
|
-
}
|
@@ -1,34 +0,0 @@
|
|
1
|
-
import { ModuleWithProviders, NgModule } from '@angular/core';
|
2
|
-
import { CommonModule } from '@angular/common';
|
3
|
-
import { UpdCoreLayoutModule } from '@updevs/sdk/layout';
|
4
|
-
|
5
|
-
import { UpdLayoutConfig } from './models/upd-layout.config';
|
6
|
-
import { LayoutConstants } from './tools/layout.constants';
|
7
|
-
import { UpdLayoutConfigService } from './services/upd-layout-config.service';
|
8
|
-
|
9
|
-
/**
|
10
|
-
* Layout module.
|
11
|
-
*/
|
12
|
-
@NgModule({
|
13
|
-
imports: [
|
14
|
-
CommonModule,
|
15
|
-
UpdCoreLayoutModule
|
16
|
-
],
|
17
|
-
providers: [
|
18
|
-
UpdLayoutConfigService
|
19
|
-
]
|
20
|
-
})
|
21
|
-
export class UpdLayoutModule {
|
22
|
-
/**
|
23
|
-
* Sets up the layout module with the provided configuration.
|
24
|
-
* @param config Configuration (See: #updsee[p:abstractions, i:UpdCoreLayoutConfig]).
|
25
|
-
*/
|
26
|
-
static forRoot(config: UpdLayoutConfig): ModuleWithProviders<UpdLayoutModule> {
|
27
|
-
return {
|
28
|
-
ngModule: UpdLayoutModule,
|
29
|
-
providers: [
|
30
|
-
{ provide: LayoutConstants.defaultOptionsInjectionToken, useValue: config }
|
31
|
-
]
|
32
|
-
};
|
33
|
-
}
|
34
|
-
}
|
package/link/index.ts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export * from './src/index';
|
package/link/ng-package.json
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
2
|
-
|
3
|
-
import { LinkComponent } from './link.component';
|
4
|
-
|
5
|
-
describe('LinkComponent', () => {
|
6
|
-
let component: LinkComponent;
|
7
|
-
let fixture: ComponentFixture<LinkComponent>;
|
8
|
-
|
9
|
-
beforeEach(async () => {
|
10
|
-
await TestBed.configureTestingModule({
|
11
|
-
declarations: [LinkComponent]
|
12
|
-
})
|
13
|
-
.compileComponents();
|
14
|
-
|
15
|
-
fixture = TestBed.createComponent(LinkComponent);
|
16
|
-
component = fixture.componentInstance;
|
17
|
-
fixture.detectChanges();
|
18
|
-
});
|
19
|
-
|
20
|
-
it('should create', () => {
|
21
|
-
expect(component).toBeTruthy();
|
22
|
-
});
|
23
|
-
});
|
@@ -1,48 +0,0 @@
|
|
1
|
-
import { Component, Output, EventEmitter, SimpleChanges, OnInit, OnChanges, Input, ViewEncapsulation } from '@angular/core';
|
2
|
-
|
3
|
-
import { LinkTargetType } from './target.type';
|
4
|
-
|
5
|
-
@Component({
|
6
|
-
selector: 'upd-link',
|
7
|
-
templateUrl: './link.component.html',
|
8
|
-
styleUrls: ['./link.component.scss'],
|
9
|
-
encapsulation: ViewEncapsulation.None
|
10
|
-
})
|
11
|
-
export class LinkComponent implements OnInit, OnChanges {
|
12
|
-
@Input() href?: string;
|
13
|
-
@Input() target: LinkTargetType = '_self';
|
14
|
-
@Input() customClasses: string[] = [];
|
15
|
-
@Input() isNavigation = false;
|
16
|
-
|
17
|
-
/**
|
18
|
-
* Emitted when the link is clicked.
|
19
|
-
* **NOTE:** The name of the event can not be 'click'. It would generate a conflict with the HTML event of same name.
|
20
|
-
* That would cause strange behaviors like preventing `isDisabled` from working correctly.
|
21
|
-
*/
|
22
|
-
@Output() readonly clicked = new EventEmitter<any>();
|
23
|
-
|
24
|
-
classes: string[] = [];
|
25
|
-
|
26
|
-
ngOnInit(): void {
|
27
|
-
this.updateWrapperClasses();
|
28
|
-
}
|
29
|
-
|
30
|
-
ngOnChanges(changes: SimpleChanges): void {
|
31
|
-
this.updateWrapperClasses();
|
32
|
-
}
|
33
|
-
|
34
|
-
onClick(event: MouseEvent): void {
|
35
|
-
this.clicked.emit(undefined);
|
36
|
-
event.stopPropagation();
|
37
|
-
}
|
38
|
-
|
39
|
-
private updateWrapperClasses(): void {
|
40
|
-
const lClasses: string[] = [];
|
41
|
-
|
42
|
-
if (this.isNavigation) {
|
43
|
-
lClasses.push('nav-link');
|
44
|
-
}
|
45
|
-
|
46
|
-
this.classes = [...lClasses, ...this.customClasses];
|
47
|
-
}
|
48
|
-
}
|
@@ -1,17 +0,0 @@
|
|
1
|
-
import { NgModule } from '@angular/core';
|
2
|
-
import { CommonModule } from '@angular/common';
|
3
|
-
|
4
|
-
import { LinkComponent } from './link.component';
|
5
|
-
|
6
|
-
@NgModule({
|
7
|
-
imports: [
|
8
|
-
CommonModule
|
9
|
-
],
|
10
|
-
declarations: [
|
11
|
-
LinkComponent
|
12
|
-
],
|
13
|
-
exports: [
|
14
|
-
LinkComponent
|
15
|
-
]
|
16
|
-
})
|
17
|
-
export class UpdLinkModule {}
|
package/list/index.ts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export * from './src/index';
|
package/list/ng-package.json
DELETED
@@ -1,58 +0,0 @@
|
|
1
|
-
<ng-container *ngIf="listItems.length > 0; else noDataTpl">
|
2
|
-
<ng-container *ngFor="let item of listItems">
|
3
|
-
<ng-container *ngIf="(item.children?.length || 0) > 0; else rowTpl">
|
4
|
-
<div class="list-group-header sticky-top">{{item.text}}</div>
|
5
|
-
<ng-container *ngFor="let child of item.children">
|
6
|
-
<ng-container [ngTemplateOutlet]="listItemTpl" [ngTemplateOutletContext]="{item:child}"></ng-container>
|
7
|
-
</ng-container>
|
8
|
-
</ng-container>
|
9
|
-
<ng-template #rowTpl>
|
10
|
-
<ng-container [ngTemplateOutlet]="listItemTpl" [ngTemplateOutletContext]="{item:item}"></ng-container>
|
11
|
-
</ng-template>
|
12
|
-
</ng-container>
|
13
|
-
</ng-container>
|
14
|
-
<ng-template #noDataTpl>
|
15
|
-
<div class="list-group-item">
|
16
|
-
<upd-icon tablerIcon="alert-triangle" wrapperClasses="text-yellow"></upd-icon>
|
17
|
-
{{noRecordsFoundKey | transloco}}
|
18
|
-
</div>
|
19
|
-
</ng-template>
|
20
|
-
|
21
|
-
<div *ngIf="shouldDisplayItemsCounter" class="list-items-counter bg-muted text-muted-fg">
|
22
|
-
{{listItems.length}} {{(listItems.length === 1 ? itemFoundKey : itemsFoundKey) | transloco}}
|
23
|
-
</div>
|
24
|
-
|
25
|
-
<ng-template #listItemTpl let-item="item">
|
26
|
-
<div class="list-group-item" [class.list-group-item-action]="!item.hasLeftBox" [class.active]="item.isActive"
|
27
|
-
[class.disabled]="item.isDisabled" (click)="onSelectItem($event, item)">
|
28
|
-
<span *ngIf="!item.hasLeftBox; else customContentTpl">{{item.text}}</span>
|
29
|
-
<ng-template #customContentTpl>
|
30
|
-
<div class="row">
|
31
|
-
<ng-container [ngTemplateOutlet]="leftBoxTpl" [ngTemplateOutletContext]="{item:item}"></ng-container>
|
32
|
-
<div class="col text-truncate">
|
33
|
-
<div *ngIf="!!item.text" class="text-body d-block">{{item.text}}</div>
|
34
|
-
<div *ngIf="!!item.description" class="text-muted text-truncate mt-n1">{{item.description}}</div>
|
35
|
-
</div>
|
36
|
-
</div>
|
37
|
-
</ng-template>
|
38
|
-
</div>
|
39
|
-
</ng-template>
|
40
|
-
|
41
|
-
<ng-template #leftBoxTpl let-item="item">
|
42
|
-
<div *ngIf="item.hasCheckbox" class="col-auto">
|
43
|
-
<upd-checkbox (changed)="onCheckboxChange(item, $event)" [isChecked]="item.isChecked || false"
|
44
|
-
[isSwitch]="item.isSwitch || false"></upd-checkbox>
|
45
|
-
<!-- [wrapperClasses]="'dropdown-item' + (item.isDisabled ? ' disabled' : '') +(item.isActive ? ' active' : '')"-->
|
46
|
-
</div>
|
47
|
-
<div *ngIf="item.hasLeftBadge" class="col-auto">
|
48
|
-
<span class="badge bg-{{item.badgeColor}} ms-auto">{{item.badgeText}}</span>
|
49
|
-
</div>
|
50
|
-
<div *ngIf="!!item.leftBoxImage || !!item.leftBoxText" class="col-auto">
|
51
|
-
<a href="#"> <!-- TODO: change. -->
|
52
|
-
<span class="avatar" style="background-image: url({{item.leftBoxImage}})">{{item.leftBoxText}}
|
53
|
-
<span *ngIf="item.hasBottomRightBadge"
|
54
|
-
class="badge bg-{{item.badgeColor}} ms-auto">{{item.badgeText}}</span>
|
55
|
-
</span>
|
56
|
-
</a>
|
57
|
-
</div>
|
58
|
-
</ng-template>
|
@@ -1,21 +0,0 @@
|
|
1
|
-
upd-list {
|
2
|
-
width: 100%;
|
3
|
-
}
|
4
|
-
|
5
|
-
.list-group-item {
|
6
|
-
cursor: pointer;
|
7
|
-
}
|
8
|
-
|
9
|
-
.list-hidden {
|
10
|
-
display: none !important;
|
11
|
-
}
|
12
|
-
|
13
|
-
.list-items-counter {
|
14
|
-
position: sticky;
|
15
|
-
bottom: 0;
|
16
|
-
right: 0;
|
17
|
-
float: right;
|
18
|
-
border-top-left-radius: 2px;
|
19
|
-
opacity: .6;
|
20
|
-
padding: 2px 12px;
|
21
|
-
}
|
@@ -1,23 +0,0 @@
|
|
1
|
-
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
2
|
-
|
3
|
-
import { ListComponent } from './list.component';
|
4
|
-
|
5
|
-
describe('ListComponent', () => {
|
6
|
-
let component: ListComponent;
|
7
|
-
let fixture: ComponentFixture<ListComponent>;
|
8
|
-
|
9
|
-
beforeEach(async () => {
|
10
|
-
await TestBed.configureTestingModule({
|
11
|
-
declarations: [ ListComponent ]
|
12
|
-
})
|
13
|
-
.compileComponents();
|
14
|
-
|
15
|
-
fixture = TestBed.createComponent(ListComponent);
|
16
|
-
component = fixture.componentInstance;
|
17
|
-
fixture.detectChanges();
|
18
|
-
});
|
19
|
-
|
20
|
-
it('should create', () => {
|
21
|
-
expect(component).toBeTruthy();
|
22
|
-
});
|
23
|
-
});
|
@@ -1,147 +0,0 @@
|
|
1
|
-
import {
|
2
|
-
Component,
|
3
|
-
HostBinding,
|
4
|
-
Input,
|
5
|
-
Renderer2,
|
6
|
-
ElementRef,
|
7
|
-
OnInit,
|
8
|
-
RendererStyleFlags2,
|
9
|
-
ViewEncapsulation,
|
10
|
-
Output,
|
11
|
-
EventEmitter,
|
12
|
-
OnChanges,
|
13
|
-
SimpleChanges
|
14
|
-
} from '@angular/core';
|
15
|
-
|
16
|
-
import { ListItem } from './models/list-item';
|
17
|
-
import { ListItemModel } from './models/list-item.model';
|
18
|
-
|
19
|
-
@Component({
|
20
|
-
selector: 'upd-list',
|
21
|
-
templateUrl: './list.component.html',
|
22
|
-
styleUrls: ['./list.component.scss'],
|
23
|
-
encapsulation: ViewEncapsulation.None
|
24
|
-
})
|
25
|
-
export class ListComponent implements OnInit, OnChanges {
|
26
|
-
@HostBinding('class') localWrapperClasses = '';
|
27
|
-
|
28
|
-
/**
|
29
|
-
* List items.
|
30
|
-
* If provided, the single will be considered static.
|
31
|
-
*/
|
32
|
-
@Input() items?: ListItem[];
|
33
|
-
/**
|
34
|
-
* Whether the content should overflow or not.
|
35
|
-
*/
|
36
|
-
@Input() shouldOverflow = false;
|
37
|
-
/**
|
38
|
-
* Whether the list will fit the layout of the container.
|
39
|
-
* If set to false, the list's round borders will be visible. It'll have a detached behavior.
|
40
|
-
*/
|
41
|
-
@Input() isFlush = true;
|
42
|
-
@Input() isVisible = true;
|
43
|
-
@Input() isHoverable = false;
|
44
|
-
@Input() shouldDisplayItemsCounter = false;
|
45
|
-
@Input() wrapperClasses = '';
|
46
|
-
/**
|
47
|
-
* Maximum height of the component.
|
48
|
-
* Note: The unit should also be provided, i.e.: 350px, 35rem, etc.
|
49
|
-
*/
|
50
|
-
@Input() maxHeight?: string;
|
51
|
-
/**
|
52
|
-
* Translation key used to inform no records have been found.
|
53
|
-
* If translation is not being used, you can insert the custom text here as well.
|
54
|
-
*/
|
55
|
-
@Input() noRecordsFoundKey?: string = 'NoRecordsFound';
|
56
|
-
/**
|
57
|
-
* Translation key used to describe 1 item found.
|
58
|
-
* If translation is not being used, you can insert the custom text here as well.
|
59
|
-
*/
|
60
|
-
@Input() itemFoundKey?: string = 'Item';
|
61
|
-
/**
|
62
|
-
* Translation key used to describe items (plural) found.
|
63
|
-
* If translation is not being used, you can insert the custom text here as well.
|
64
|
-
*/
|
65
|
-
@Input() itemsFoundKey?: string = 'Items';
|
66
|
-
|
67
|
-
@Output() readonly checkboxChanged = new EventEmitter<ListItem>();
|
68
|
-
@Output() readonly selectedItem = new EventEmitter<ListItem>();
|
69
|
-
|
70
|
-
listItems: ListItemModel[] = [];
|
71
|
-
currentSelection: ListItem[] = [];
|
72
|
-
|
73
|
-
private localBackupItems: ListItem[] = [];
|
74
|
-
|
75
|
-
constructor(
|
76
|
-
private renderer: Renderer2,
|
77
|
-
private elementRef: ElementRef
|
78
|
-
) {
|
79
|
-
}
|
80
|
-
|
81
|
-
ngOnInit(): void {
|
82
|
-
this.setupStyle();
|
83
|
-
this.updateWrapperClasses();
|
84
|
-
this.setupItems();
|
85
|
-
}
|
86
|
-
|
87
|
-
ngOnChanges(changes: SimpleChanges): void {
|
88
|
-
this.updateWrapperClasses();
|
89
|
-
|
90
|
-
if (!!changes['items']) {
|
91
|
-
this.setupItems();
|
92
|
-
}
|
93
|
-
}
|
94
|
-
|
95
|
-
onCheckboxChange(item: ListItem, isChecked: boolean): void {
|
96
|
-
item.isChecked = isChecked;
|
97
|
-
this.checkboxChanged.emit(item);
|
98
|
-
}
|
99
|
-
|
100
|
-
onSelectItem(evt: any, item: ListItem): void {
|
101
|
-
evt.stopPropagation();
|
102
|
-
this.selectedItem.emit(item);
|
103
|
-
}
|
104
|
-
|
105
|
-
private setupItems(): void {
|
106
|
-
const tempItems: ListItemModel[] = [];
|
107
|
-
|
108
|
-
this.items?.forEach(it => {
|
109
|
-
const parent = new ListItemModel(it);
|
110
|
-
|
111
|
-
if ((it.children?.length || 0) > 0) {
|
112
|
-
parent.children = [];
|
113
|
-
it.children?.forEach(child => parent.children!.push(new ListItemModel(child)));
|
114
|
-
}
|
115
|
-
|
116
|
-
tempItems.push(parent);
|
117
|
-
});
|
118
|
-
|
119
|
-
this.listItems = [...tempItems];
|
120
|
-
}
|
121
|
-
|
122
|
-
private setupStyle(): void {
|
123
|
-
if (!!this.maxHeight) {
|
124
|
-
this.renderer.setStyle(this.elementRef.nativeElement, 'max-height', this.maxHeight, RendererStyleFlags2.Important);
|
125
|
-
}
|
126
|
-
}
|
127
|
-
|
128
|
-
private updateWrapperClasses(): void {
|
129
|
-
this.localWrapperClasses = 'list-group' + ` ${this.wrapperClasses}`;
|
130
|
-
|
131
|
-
if (this.isFlush) {
|
132
|
-
this.localWrapperClasses += ' list-group-flush';
|
133
|
-
}
|
134
|
-
|
135
|
-
if (this.isHoverable) {
|
136
|
-
this.localWrapperClasses += ' list-group-hoverable';
|
137
|
-
}
|
138
|
-
|
139
|
-
if (this.shouldOverflow) {
|
140
|
-
this.localWrapperClasses += ' overflow-auto';
|
141
|
-
}
|
142
|
-
|
143
|
-
if (!this.isVisible) {
|
144
|
-
this.localWrapperClasses += ' list-hidden';
|
145
|
-
}
|
146
|
-
}
|
147
|
-
}
|
@@ -1,30 +0,0 @@
|
|
1
|
-
import { NgModule } from '@angular/core';
|
2
|
-
import { CommonModule } from '@angular/common';
|
3
|
-
import { TranslocoService, TranslocoModule } from '@ngneat/transloco';
|
4
|
-
import { UpdCheckboxModule } from '@updevs/components/form-controls/checkbox';
|
5
|
-
import { UpdIconsModule } from '@updevs/icons';
|
6
|
-
|
7
|
-
import * as en from './assets/i18n/en.json';
|
8
|
-
import * as pt from './assets/i18n/pt.json';
|
9
|
-
import { ListComponent } from './list.component';
|
10
|
-
|
11
|
-
@NgModule({
|
12
|
-
imports: [
|
13
|
-
CommonModule,
|
14
|
-
TranslocoModule,
|
15
|
-
UpdCheckboxModule,
|
16
|
-
UpdIconsModule
|
17
|
-
],
|
18
|
-
declarations: [
|
19
|
-
ListComponent
|
20
|
-
],
|
21
|
-
exports: [
|
22
|
-
ListComponent
|
23
|
-
]
|
24
|
-
})
|
25
|
-
export class UpdListModule {
|
26
|
-
constructor(translocoService: TranslocoService) {
|
27
|
-
translocoService.setTranslation(en, 'en');
|
28
|
-
translocoService.setTranslation(pt, 'pt');
|
29
|
-
}
|
30
|
-
}
|
package/ng-package.json
DELETED
package/popover/index.ts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export * from './src/index';
|