@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
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"updevs-components-layout.mjs","sources":["../../../../projects/updevs/components/layout/src/abstractions/base-page.component.ts","../../../../projects/updevs/components/layout/src/layouts/blank-layout/blank-layout.component.ts","../../../../projects/updevs/components/layout/src/layouts/blank-layout/blank-layout.component.html","../../../../projects/updevs/components/layout/src/layouts/blank-layout/blank-layout.module.ts","../../../../projects/updevs/components/layout/src/partials/footer/footer-copyright.directive.ts","../../../../projects/updevs/components/layout/src/partials/footer/footer.component.ts","../../../../projects/updevs/components/layout/src/partials/footer/footer.component.html","../../../../projects/updevs/components/layout/src/partials/header/header.component.ts","../../../../projects/updevs/components/layout/src/partials/header/header.component.html","../../../../projects/updevs/components/layout/src/partials/sidebar/sidebar.component.ts","../../../../projects/updevs/components/layout/src/partials/sidebar/sidebar.component.html","../../../../projects/updevs/components/layout/src/partials/page-header/page-header.component.ts","../../../../projects/updevs/components/layout/src/partials/page-header/page-header.component.html","../../../../projects/updevs/components/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.ts","../../../../projects/updevs/components/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.html","../../../../projects/updevs/components/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.ts","../../../../projects/updevs/components/layout/src/pages/auth-flow/logged-out/logged-out.component.ts","../../../../projects/updevs/components/layout/src/pages/auth-flow/logged-out/logged-out.component.html","../../../../projects/updevs/components/layout/src/pages/auth-flow/login/login.component.ts","../../../../projects/updevs/components/layout/src/pages/auth-flow/login/login.component.html","../../../../projects/updevs/components/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.ts","../../../../projects/updevs/components/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.html","../../../../projects/updevs/components/layout/src/pages/auth-flow/auth-flow-routing.module.ts","../../../../projects/updevs/components/layout/src/pages/auth-flow/auth-flow.module.ts","../../../../projects/updevs/components/layout/src/models/upd-layout-config.model.ts","../../../../projects/updevs/components/layout/src/tools/layout.constants.ts","../../../../projects/updevs/components/layout/src/services/upd-layout-config.service.ts","../../../../projects/updevs/components/layout/src/upd-layout.module.ts","../../../../projects/updevs/components/layout/src/updevs-components-layout.ts"],"sourcesContent":["import { OnDestroy, Directive, inject } from '@angular/core';\nimport { BaseComponent, LayoutService } from '@updevs/sdk/layout';\n\n/**\n * Basic page structure.\n */\n@Directive({})\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nexport abstract class BasePageComponent extends BaseComponent implements OnDestroy {\n protected readonly _layoutService = inject(LayoutService);\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n // TODO: clear subheader.\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'upd-blank-layout',\n templateUrl: './blank-layout.component.html',\n styleUrls: ['./blank-layout.component.scss']\n})\nexport class BlankLayoutComponent {\n\n}\n","<p>blank-layout works!</p>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { BlankLayoutComponent } from './blank-layout.component';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n BlankLayoutComponent\n ],\n exports: [\n BlankLayoutComponent\n ]\n})\nexport class BlankLayoutModule {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[updFooterCopyright]'\n})\nexport class FooterCopyrightDirective {}\n","import {\n Component,\n ContentChild,\n TemplateRef,\n HostBinding,\n OnInit,\n OnChanges,\n SimpleChanges,\n ViewEncapsulation,\n inject\n} from '@angular/core';\nimport { LinkModel } from '@updevs/sdk/core';\nimport { BaseComponent } from '@updevs/sdk/layout';\nimport { TranslocoService } from '@ngneat/transloco';\n\nimport { FooterCopyrightDirective } from './footer-copyright.directive';\n\n@Component({\n selector: 'upd-footer',\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class FooterComponent extends BaseComponent implements OnInit, OnChanges {\n @HostBinding('class') wrapperClasses = '';\n @ContentChild(FooterCopyrightDirective, { read: TemplateRef, static: true }) footerCopyrightTemplate?: TemplateRef<any>;\n\n /**\n * Whether the footer will always be shown.\n */\n isSticky = false;\n /**\n * Whether the footer is transparent or not.\n */\n isTransparent = true;\n /**\n * Links.\n */\n links: LinkModel[] = [];\n /**\n * Current year.\n */\n currentYear = new Date().getFullYear();\n /**\n * Text displayed in the copyright section before the symbol and year.\n */\n copyrightPrefix = 'Copyright';\n /**\n * Text displayed in the copyright section after the symbol and year.\n */\n copyrightSuffix = '';\n /**\n * Version of the application.\n */\n version?: string;\n\n private baseWrapperClasses = 'footer d-print-none';\n\n private readonly translocoService = inject(TranslocoService);\n\n ngOnInit(): void {\n const footerCpsSub = this.translocoService.selectTranslate('Footer.AllRightsReserved').subscribe(r => this.copyrightSuffix = r);\n\n this.updateWrapperClasses();\n this.addSubscriptions(footerCpsSub);\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!!changes['isSticky'].currentValue || !!changes['isTransparent'].currentValue) {\n this.updateWrapperClasses();\n }\n }\n\n private updateWrapperClasses(): void {\n const stickyBottomCls = this.isSticky ? ' sticky-bottom' : '';\n const transparentCls = this.isTransparent ? ' footer-transparent' : '';\n this.wrapperClasses = `${this.baseWrapperClasses}${stickyBottomCls}${transparentCls}`;\n }\n}\n","<div class=\"container-xl\">\n <div class=\"row text-center align-items-center flex-row-reverse\">\n <div class=\"col-lg-auto ms-lg-auto\">\n @if (links.length > 0) {\n <ul class=\"list-inline list-inline-dots mb-0\">\n @for (link of links; track link) {\n <li class=\"list-inline-item\">\n <a href=\"{{link.url}}\" target=\"{{link.target}}\" class=\"link-secondary\">\n <span [innerHTML]=\"link.text\"></span>\n <ng-container *transloco=\"let t\">\n {{ t('Layout.Aloha') }}\n </ng-container>\n </a>\n </li>\n }\n </ul>\n }\n </div>\n <div class=\"col-12 col-lg-auto mt-3 mt-lg-0\">\n @if (!!footerCopyrightTemplate) {\n <ng-container [ngTemplateOutlet]=\"footerCopyrightTemplate\"></ng-container>\n } @else {\n <ul class=\"list-inline list-inline-dots mb-0\">\n <li class=\"list-inline-item\">\n {{ copyrightPrefix }} © {{ currentYear }} {{ copyrightSuffix }}\n </li>\n @if (!!version) {\n <li class=\"list-inline-item\">\n {{ version }}\n </li>\n }\n </ul>\n }\n </div>\n </div>\n</div>\n","import { Component, ViewEncapsulation, Input, HostBinding, OnChanges, SimpleChanges, OnInit, inject } from '@angular/core';\nimport { UpdCoreLayoutConfigService, BaseComponent, LayoutService } from '@updevs/sdk/layout';\nimport { TablerIconsType } from '@updevs/icons';\nimport { TranslocoService } from '@ngneat/transloco';\n\nimport { HeaderStyleType } from './header-style.type';\n\n@Component({\n selector: 'upd-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class HeaderComponent extends BaseComponent implements OnInit, OnChanges {\n @HostBinding('class') wrapperClasses = '';\n\n @Input() style: HeaderStyleType = 'light';\n @Input() showSearchBar = true;\n\n nextThemeIcon: TablerIconsType = 'moon';\n nextThemeColor = 'black';\n currentNotificationsIcon: TablerIconsType = 'bell';\n hasNewNotifications = false;\n showNotifications = false;\n showLanguageSwitcher = true; // TODO: add on config.\n showUserMenu = false;\n\n private baseWrapperClasses = 'navbar navbar-expand-md d-none d-lg-flex d-print-none';\n\n private readonly coreLayoutConfigService = inject(UpdCoreLayoutConfigService);\n private readonly layoutService = inject(LayoutService);\n private readonly translocoService = inject(TranslocoService);\n\n ngOnInit(): void {\n this.updateWrapperClasses();\n\n if (this.coreLayoutConfigService.config.showNotificationsButton) {\n this.setupNotifications();\n }\n\n if (this.coreLayoutConfigService.config.showUserMenu) {\n this.showUserMenu = true;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!!changes['style'].currentValue) {\n this.updateWrapperClasses();\n }\n }\n\n switchTheme(): void {\n const isDarkMode = this.nextThemeIcon === 'moon';\n this.nextThemeIcon = isDarkMode ? 'sun' : 'moon';\n this.nextThemeColor = isDarkMode ? 'white' : 'black';\n\n this.layoutService.toggleDarkMode(isDarkMode);\n }\n\n // TODO: implement.\n switchLanguage(): void {\n const currentLang = this.translocoService.getActiveLang();\n this.translocoService.setActiveLang(currentLang === 'en' ? 'pt' : 'en');\n }\n\n openNotifications(): void {\n this.updateNotificationsIcon();\n }\n\n private setupNotifications(): void {\n this.showNotifications = true;\n }\n\n private updateNotificationsIcon(): void {\n this.currentNotificationsIcon = this.currentNotificationsIcon === 'bell' ? 'bell-ringing' : 'bell';\n this.hasNewNotifications = !this.hasNewNotifications;\n }\n\n private updateWrapperClasses(): void {\n this.wrapperClasses = `${this.baseWrapperClasses} navbar-${this.style}`;\n }\n}\n","<div class=\"container-xl\">\n <button class=\"navbar-toggler\" type=\"button\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-nav flex-row order-md-last\">\n <div class=\"d-none d-md-flex me-3\">\n <div class=\"nav-item\">\n <upd-link [isNavigation]=\"true\" [customClasses]=\"['px-0']\" (clicked)=\"switchTheme()\">\n <upd-icon [tablerIcon]=\"nextThemeIcon\"></upd-icon>\n </upd-link>\n </div>\n @if (showLanguageSwitcher) {\n <div class=\"nav-item\">\n <upd-link [isNavigation]=\"true\" [customClasses]=\"['px-0']\" (clicked)=\"switchLanguage()\">\n <upd-icon tablerIcon=\"flag\"></upd-icon>\n </upd-link>\n </div>\n }\n @if (showNotifications) {\n <div class=\"nav-item dropdown d-none d-md-flex\">\n <upd-link [isNavigation]=\"true\" [customClasses]=\"['px-0']\" (clicked)=\"openNotifications()\">\n <upd-icon [tablerIcon]=\"currentNotificationsIcon\"></upd-icon>\n @if (hasNewNotifications) {\n <span class=\"badge bg-red\"></span>\n }\n </upd-link>\n <div class=\"dropdown-menu dropdown-menu-arrow dropdown-menu-end dropdown-menu-card\">\n <div class=\"card\">\n <div class=\"card-header\">\n <h3 class=\"card-title\">Last updates</h3>\n </div>\n <div class=\"list-group list-group-flush list-group-hoverable\">\n <div class=\"list-group-item\">\n <div class=\"row align-items-center\">\n <div class=\"col-auto\"><span\n class=\"status-dot status-dot-animated bg-red d-block\"></span></div>\n <div class=\"col text-truncate\">\n <a href=\"#\" class=\"text-body d-block\">Example 1</a>\n <div class=\"d-block text-muted text-truncate mt-n1\">\n Change deprecated html tags to text decoration classes (#29604)\n </div>\n </div>\n <div class=\"col-auto\">\n <a href=\"#\" class=\"list-group-item-actions\">\n <!-- Download SVG icon from http://tabler-icons.io/i/star -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-muted\"\n width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" stroke-width=\"2\"\n stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z\"/>\n </svg>\n </a>\n </div>\n </div>\n </div>\n <div class=\"list-group-item\">\n <div class=\"row align-items-center\">\n <div class=\"col-auto\"><span class=\"status-dot d-block\"></span></div>\n <div class=\"col text-truncate\">\n <a href=\"#\" class=\"text-body d-block\">Example 2</a>\n <div class=\"d-block text-muted text-truncate mt-n1\">\n justify-content:between ⇒ justify-content:space-between (#29734)\n </div>\n </div>\n <div class=\"col-auto\">\n <a href=\"#\" class=\"list-group-item-actions show\">\n <!-- Download SVG icon from http://tabler-icons.io/i/star -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-yellow\"\n width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" stroke-width=\"2\"\n stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z\"/>\n </svg>\n </a>\n </div>\n </div>\n </div>\n <div class=\"list-group-item\">\n <div class=\"row align-items-center\">\n <div class=\"col-auto\"><span class=\"status-dot d-block\"></span></div>\n <div class=\"col text-truncate\">\n <a href=\"#\" class=\"text-body d-block\">Example 3</a>\n <div class=\"d-block text-muted text-truncate mt-n1\">\n Update change-version.js (#29736)\n </div>\n </div>\n <div class=\"col-auto\">\n <a href=\"#\" class=\"list-group-item-actions\">\n <!-- Download SVG icon from http://tabler-icons.io/i/star -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-muted\"\n width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" stroke-width=\"2\"\n stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z\"/>\n </svg>\n </a>\n </div>\n </div>\n </div>\n <div class=\"list-group-item\">\n <div class=\"row align-items-center\">\n <div class=\"col-auto\"><span\n class=\"status-dot status-dot-animated bg-green d-block\"></span></div>\n <div class=\"col text-truncate\">\n <a href=\"#\" class=\"text-body d-block\">Example 4</a>\n <div class=\"d-block text-muted text-truncate mt-n1\">\n Regenerate package-lock.json (#29730)\n </div>\n </div>\n <div class=\"col-auto\">\n <a href=\"#\" class=\"list-group-item-actions\">\n <!-- Download SVG icon from http://tabler-icons.io/i/star -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-muted\"\n width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" stroke-width=\"2\"\n stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z\"/>\n </svg>\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n }\n </div>\n @if (showUserMenu) {\n <div class=\"nav-item dropdown\">\n <a href=\"#\" class=\"nav-link d-flex lh-1 text-reset p-0\" data-bs-toggle=\"dropdown\"\n aria-label=\"Open user menu\">\n <!--<span class=\"avatar avatar-sm\" style=\"background-image: url(./static/avatars/000m.jpg)\"></span>-->\n <span class=\"avatar avatar-sm\"></span>\n <div class=\"d-none d-xl-block ps-2\">\n <div>Eros Stein</div>\n <div class=\"mt-1 small text-muted\">Administrator</div>\n </div>\n </a>\n <div class=\"dropdown-menu dropdown-menu-end dropdown-menu-arrow\">\n <a href=\"#\" class=\"dropdown-item\">Status</a>\n <a href=\"./profile.html\" class=\"dropdown-item\">Profile</a>\n <a href=\"#\" class=\"dropdown-item\">Feedback</a>\n <div class=\"dropdown-divider\"></div>\n <a href=\"./settings.html\" class=\"dropdown-item\">Settings</a>\n <a href=\"./sign-in.html\" class=\"dropdown-item\">Logout</a>\n </div>\n </div>\n }\n </div>\n @if (showSearchBar) {\n <div class=\"collapse navbar-collapse\">\n <div>\n <form autocomplete=\"off\" novalidate>\n <div class=\"input-icon\">\n <span class=\"input-icon-addon\">\n <upd-icon tablerIcon=\"search\"></upd-icon>\n </span>\n <input type=\"text\" value=\"\" class=\"form-control\" placeholder=\"Search…\">\n </div>\n </form>\n </div>\n </div>\n }\n</div>\n","import { Component, HostBinding, ViewEncapsulation, OnInit, inject } from '@angular/core';\nimport { Router, NavigationStart } from '@angular/router';\nimport { OptionalType } from '@updevs/sdk/types';\nimport { RouteDataModel } from '@updevs/sdk/routes';\nimport { BaseComponent } from '@updevs/sdk/layout';\nimport { filter } from 'rxjs';\n\n@Component({\n selector: 'upd-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class SidebarComponent extends BaseComponent implements OnInit {\n @HostBinding('class') wrapperClasses = 'navbar navbar-vertical navbar-expand-lg';\n @HostBinding('attr.data-bs-theme') theme = 'dark';\n\n menuItems: RouteDataModel[] = [];\n\n private readonly router = inject(Router);\n\n ngOnInit(): void {\n // TODO: remove demo code.\n const sampleCardsItem = new RouteDataModel({\n title: 'Sample cards',\n icon: { tablerIcon: 'home' }\n });\n const cardActionsItem = new RouteDataModel({\n title: 'Card actions',\n icon: { tablerIcon: 'folder' }\n });\n const emptyPageItem = new RouteDataModel({\n title: 'Empty page',\n icon: { tablerIcon: 'home' }\n });\n const cardsItem = new RouteDataModel({\n title: 'Cards',\n icon: { tablerIcon: 'user' },\n children: [\n sampleCardsItem,\n cardActionsItem\n ]\n });\n const interfaceItem = new RouteDataModel({\n title: 'Interface',\n icon: { tablerIcon: 'device-desktop' },\n children: [\n emptyPageItem,\n cardsItem\n ]\n });\n sampleCardsItem.parent = cardsItem;\n cardActionsItem.parent = cardsItem;\n emptyPageItem.parent = interfaceItem;\n cardsItem.parent = interfaceItem;\n this.menuItems = [\n new RouteDataModel({\n title: 'Home',\n icon: { tablerIcon: 'home' }\n }),\n new RouteDataModel({\n title: 'Archives',\n icon: { tablerIcon: 'folder' }\n }),\n interfaceItem,\n new RouteDataModel({\n title: 'Library',\n icon: { tablerIcon: 'building' }\n })\n ];\n // END demo code\n\n const routerSub = this.router.events.pipe(\n filter(event => event instanceof NavigationStart)\n ).subscribe(event => this.updateActiveRoute((<NavigationStart> event).url));\n\n this.updateActiveRoute(this.router.url);\n this.addSubscriptions(routerSub);\n }\n\n onMenuItemClick(item: RouteDataModel): void {\n this.resetMenuState(this.menuItems);\n\n item.isActive = true;\n\n this.updateParents(item);\n\n if (!!item.clickFunction) {\n item.clickFunction();\n return;\n }\n\n if ((item.children?.length || 0) > 0) {\n return;\n }\n\n this.router.navigate(item.getFullPath()).then();\n }\n\n hasChildren(item: RouteDataModel): boolean {\n return (item.children?.length || 0) > 0;\n }\n\n private findActiveNode(item: RouteDataModel, fullPath: string): OptionalType<RouteDataModel> {\n if (item.fullPath === fullPath) {\n return item;\n } else if (item.children.length > 0) {\n let result;\n\n for (let i = 0; !result && i < item.children.length; i++) {\n result = this.findActiveNode(item.children[i], fullPath);\n }\n\n return result;\n }\n\n return undefined;\n }\n\n private updateActiveRoute(newPath: string): void {\n this.resetMenuState(this.menuItems);\n\n let item: OptionalType<RouteDataModel>;\n\n for (const mi of this.menuItems) {\n item = this.findActiveNode(mi, newPath);\n\n if (!!item) {\n break;\n }\n }\n\n while (!!item) {\n item.isActive = true;\n item = item.parent;\n }\n }\n\n private resetMenuState(items: RouteDataModel[]): void {\n items.forEach(i => {\n i.isActive = false;\n\n if (i.children.length > 0) {\n this.resetMenuState(i.children);\n }\n });\n }\n\n private updateParents(menuItem: RouteDataModel): void {\n let item: OptionalType<RouteDataModel> = menuItem;\n\n while (!!item) {\n item.isActive = true;\n item = item.parent;\n }\n }\n}\n","<div class=\"container-fluid\">\n <button class=\"navbar-toggler\" type=\"button\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <h1 class=\"navbar-brand navbar-brand-autodark\">\n <a href=\".\">\n <img width=\"110\" height=\"32\" class=\"navbar-brand-image upd-brand-logo\"/>\n </a>\n </h1>\n <div class=\"collapse navbar-collapse\">\n <ul class=\"navbar-nav pt-lg-3\">\n @for (item of menuItems; track item) {\n <li class=\"nav-item\" [class.dropdown]=\"hasChildren(item)\" [class.active]=\"item.isActive\">\n <ng-container [ngTemplateOutlet]=\"itemTpl\" [ngTemplateOutletContext]=\"{menuItem: item}\">\n </ng-container>\n </li>\n }\n </ul>\n </div>\n</div>\n\n<ng-template #itemTpl let-item=\"menuItem\">\n <upd-link [isNavigation]=\"true\" (clicked)=\"onMenuItemClick(item)\"\n [customClasses]=\"[hasChildren(item) ? 'dropdown-toggle' : '', item.isActive ? 'show' : '']\">\n <span class=\"nav-link-icon d-md-none d-lg-inline-block\">\n <upd-icon [model]=\"item.icon\"></upd-icon>\n </span>\n <span class=\"nav-link-title\">{{ item.title }}</span>\n </upd-link>\n @if (hasChildren(item)) {\n <ng-container [ngTemplateOutlet]=\"childrenTpl\" [ngTemplateOutletContext]=\"{menuItem: item}\">\n </ng-container>\n }\n</ng-template>\n\n<ng-template #childrenTpl let-item=\"menuItem\">\n <div class=\"dropdown-menu\" [class.show]=\"item.isActive\">\n <div class=\"dropdown-menu-columns\">\n <div class=\"dropdown-menu-column\">\n @for (child of item.children; track child) {\n @if (!hasChildren(child)) {\n <upd-link (clicked)=\"onMenuItemClick(child)\"\n [customClasses]=\"['dropdown-item', child.isActive ? 'active' : '']\">\n {{ child.title }}\n </upd-link>\n } @else {\n <div class=\"dropend\">\n <upd-link (clicked)=\"onMenuItemClick(child)\"\n [customClasses]=\"['dropdown-item', 'dropdown-toggle', child.isActive ? 'active' : '']\">\n {{ child.title }}\n </upd-link>\n <div class=\"dropdown-menu\" [class.show]=\"child.isActive\">\n @for (grandchild of child.children; track grandchild) {\n <upd-link (clicked)=\"onMenuItemClick(grandchild)\"\n [customClasses]=\"['dropdown-item', grandchild.isActive ? 'active' : '']\">\n {{ grandchild.title }}\n </upd-link>\n }\n </div>\n </div>\n }\n }\n </div>\n </div>\n </div>\n</ng-template>\n","import { Component, Input } from '@angular/core';\nimport { PageHeaderModel } from '@updevs/sdk/layout';\n\n@Component({\n selector: 'upd-page-header',\n templateUrl: './page-header.component.html',\n styleUrls: ['./page-header.component.scss']\n})\nexport class PageHeaderComponent {\n @Input() model!: PageHeaderModel;\n}\n","<div class=\"page-header d-print-none\">\n <div class=\"container-xl\">\n <div class=\"row g-2 align-items-center\">\n <div class=\"col\">\n <div class=\"page-pretitle\">\n {{ model.titleHeader }}\n </div>\n <h2 class=\"page-title\">\n {{ model.title }}\n </h2>\n </div>\n @if ((model.actionButtons?.length || 0) > 0) {\n <div class=\"col-auto ms-auto d-print-none\">\n <div class=\"btn-list\">\n @for (btn of model.actionButtons; track btn) {\n <upd-button [model]=\"btn!\"></upd-button>\n }\n </div>\n </div>\n }\n </div>\n </div>\n</div>\n","import { Component, ViewEncapsulation, OnInit, ChangeDetectorRef, inject } from '@angular/core';\nimport { BaseComponent, LayoutService, PageHeaderModel } from '@updevs/sdk/layout';\n\n@Component({\n selector: 'upd-vertical-sidebar-layout',\n templateUrl: './vertical-sidebar-layout.component.html',\n styleUrls: ['./vertical-sidebar-layout.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class VerticalSidebarLayoutComponent extends BaseComponent implements OnInit {\n showPageHeader = false;\n pageHeader?: PageHeaderModel;\n\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly layoutService = inject(LayoutService);\n\n ngOnInit(): void {\n const pHeaderSub = this.layoutService.onPageHeaderChange.subscribe(ph => {\n this.showPageHeader = !!ph;\n this.pageHeader = ph;\n\n this.changeDetectorRef.detectChanges();\n });\n\n this.addSubscriptions(pHeaderSub);\n }\n}\n","<div class=\"page\">\n <upd-sidebar></upd-sidebar>\n <upd-header></upd-header>\n\n <div class=\"page-wrapper\">\n @if (showPageHeader) {\n <upd-page-header [model]=\"pageHeader!\"></upd-page-header>\n }\n <div class=\"page-body\">\n <div class=\"container-xl\">\n <router-outlet></router-outlet>\n </div>\n </div>\n <upd-footer></upd-footer>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { UpdIconsModule } from '@updevs/icons';\nimport { UpdButtonModule } from '@updevs/components/button';\nimport { UpdLinkModule } from '@updevs/components/link';\nimport { UpdCoreLayoutModule } from '@updevs/sdk/layout';\nimport { TranslocoModule, TranslocoService } from '@ngneat/transloco';\n\nimport * as en from '../../assets/i18n/en.json';\nimport * as pt from '../../assets/i18n/pt.json';\nimport { VerticalSidebarLayoutComponent } from './vertical-sidebar-layout.component';\nimport { FooterComponent } from '../../partials/footer/footer.component';\nimport { HeaderComponent } from '../../partials/header/header.component';\nimport { FooterCopyrightDirective } from '../../partials/footer/footer-copyright.directive';\nimport { SidebarComponent } from '../../partials/sidebar/sidebar.component';\nimport { PageHeaderComponent } from '../../partials/page-header/page-header.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n TranslocoModule,\n UpdIconsModule,\n UpdCoreLayoutModule,\n UpdButtonModule,\n UpdLinkModule\n ],\n declarations: [\n VerticalSidebarLayoutComponent,\n FooterComponent,\n HeaderComponent,\n SidebarComponent,\n PageHeaderComponent\n ],\n exports: [\n VerticalSidebarLayoutComponent,\n FooterComponent,\n HeaderComponent,\n SidebarComponent,\n PageHeaderComponent\n ],\n providers: [\n FooterCopyrightDirective\n ]\n})\nexport class VerticalSidebarLayoutModule {\n constructor(translocoService: TranslocoService) {\n translocoService.setTranslation(en, 'en');\n translocoService.setTranslation(pt, 'pt');\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'upd-logged-out',\n templateUrl: './logged-out.component.html',\n styleUrls: ['./logged-out.component.scss']\n})\nexport class LoggedOutComponent {\n\n}\n","<p>logged-out works!</p>\n","import { Component, ViewEncapsulation, inject } from '@angular/core';\nimport { LayoutService } from '@updevs/sdk/layout';\nimport { AuthService } from '@updevs/sdk/security';\n\n@Component({\n selector: 'upd-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class LoginComponent {\n layout: 'centered-box' | 'box-with-picture' = 'centered-box';\n username = '';\n password = '';\n\n private readonly authService = inject(AuthService);\n private readonly layoutService = inject(LayoutService);\n\n constructor() {\n this.layoutService.addBodyClasses('border-top-wide', 'border-primary', 'd-flex', 'flex-column');\n }\n\n login(): void {\n this.authService.login(this.username, this.password).subscribe();\n }\n}\n","<div class=\"page page-center\">\n @switch (layout) {\n @case ('centered-box') {\n <div class=\"container container-tight py-4\">\n <ng-container [ngTemplateOutlet]=\"loginCard\"></ng-container>\n </div>\n }\n @case ('box-with-picture') {\n <div class=\"container container-normal py-4\">\n <div class=\"row align-items-center g-4\">\n <div class=\"col-lg\">\n <div class=\"container-tight\">\n <ng-container [ngTemplateOutlet]=\"loginCard\"></ng-container>\n </div>\n </div>\n <div class=\"col-lg d-none d-lg-block\">\n <img height=\"300\" class=\"d-block mx-auto upd-right-login-image\"/>\n </div>\n </div>\n </div>\n }\n }\n</div>\n\n<ng-template #loginCard>\n <div class=\"text-center mb-4\">\n <a href=\".\" class=\"navbar-brand navbar-brand-autodark\">\n <img height=\"36\" class=\"navbar-brand-image upd-brand-logo\"/>\n </a>\n </div>\n <div class=\"card card-md\">\n <div class=\"card-body\">\n <h2 class=\"h2 text-center mb-4\" i18n>Login to your account</h2>\n <form action=\"./\" method=\"get\" autocomplete=\"off\" novalidate>\n <div class=\"mb-3\">\n <label class=\"form-label\">Email address</label>\n <input type=\"email\" class=\"form-control\" name=\"username\" [(ngModel)]=\"username\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">\n Password\n <span class=\"form-label-description\">\n <a href=\"./forgot-password.html\" i18n>I forgot my password</a>\n </span>\n </label>\n <div class=\"input-group input-group-flat\">\n <input type=\"password\" class=\"form-control\" name=\"password\" [(ngModel)]=\"password\">\n <span class=\"input-group-text\">\n <a href=\"#\" class=\"link-secondary\" title=\"Show password\" data-bs-toggle=\"tooltip\"><!-- Download SVG icon from http://tabler-icons.io/i/eye -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" stroke-width=\"2\"\n stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\"\n d=\"M0 0h24v24H0z\" fill=\"none\"/><circle cx=\"12\" cy=\"12\" r=\"2\"/><path\n d=\"M22 12c-2.667 4.667 -6 7 -10 7s-7.333 -2.333 -10 -7c2.667 -4.667 6 -7 10 -7s7.333 2.333 10 7\"/></svg>\n </a>\n </span>\n </div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-check\">\n <input type=\"checkbox\" class=\"form-check-input\"/>\n <span class=\"form-check-label\" i18n>Remember me on this device</span>\n </label>\n </div>\n <div class=\"form-footer\">\n <upd-button (clicked)=\"login()\" customClasses=\"w-100\">\n <span i18n>Sign in</span>\n </upd-button>\n </div>\n </form>\n </div>\n <div class=\"hr-text\" i18n>or</div>\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col\"><a href=\"#\" class=\"btn w-100\">\n <!-- Download SVG icon from http://tabler-icons.io/i/brand-github -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-github\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\n stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5\"/>\n </svg>\n Login with Github\n </a></div>\n <div class=\"col\"><a href=\"#\" class=\"btn w-100\">\n <!-- Download SVG icon from http://tabler-icons.io/i/brand-twitter -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-twitter\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\n stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M22 4.01c-1 .49 -1.98 .689 -3 .99c-1.121 -1.265 -2.783 -1.335 -4.38 -.737s-2.643 2.06 -2.62 3.737v1c-3.245 .083 -6.135 -1.395 -8 -4c0 0 -4.182 7.433 4 11c-1.872 1.247 -3.739 2.088 -6 2c3.308 1.803 6.913 2.423 10.034 1.517c3.58 -1.04 6.522 -3.723 7.651 -7.742a13.84 13.84 0 0 0 .497 -3.753c-.002 -.249 1.51 -2.772 1.818 -4.013z\"/>\n </svg>\n Login with Twitter\n </a></div>\n </div>\n </div>\n </div>\n <div class=\"text-center text-muted mt-3\">\n Don't have account yet? <a href=\"./sign-up.html\" tabindex=\"-1\" i18n>Sign up</a>\n </div>\n</ng-template>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'upd-oauth-callback',\n templateUrl: './oauth-callback.component.html',\n styleUrls: ['./oauth-callback.component.scss']\n})\nexport class OauthCallbackComponent {\n\n}\n","<p>oauth-callback works!</p>\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\n\nimport { OauthCallbackComponent } from './oauth-callback/oauth-callback.component';\nimport { LoggedOutComponent } from './logged-out/logged-out.component';\nimport { LoginComponent } from './login/login.component';\n\n/**\n * Auth flow routes.\n */\nexport const routes: Routes = [\n { path: 'oauth/callback', component: OauthCallbackComponent },\n { path: 'logged-out', component: LoggedOutComponent },\n { path: 'login', component: LoginComponent }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes, { useHash: true })],\n exports: [RouterModule]\n})\nexport class AuthFlowRoutingModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { UpdButtonModule } from '@updevs/components/button';\n\nimport { LoginComponent } from './login/login.component';\nimport { OauthCallbackComponent } from './oauth-callback/oauth-callback.component';\nimport { LoggedOutComponent } from './logged-out/logged-out.component';\nimport { AuthFlowRoutingModule } from './auth-flow-routing.module';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n imports: [\n CommonModule,\n AuthFlowRoutingModule,\n UpdButtonModule,\n FormsModule\n ],\n declarations: [\n LoginComponent,\n OauthCallbackComponent,\n LoggedOutComponent\n ],\n exports: [\n LoginComponent,\n OauthCallbackComponent,\n LoggedOutComponent\n ]\n})\nexport class AuthFlowModule {}\n","import { UpdLayoutConfig } from './upd-layout.config';\n\n/**\n * Layout configuration.\n */\nexport class UpdLayoutConfigModel implements UpdLayoutConfig {\n /**\n * Main menu title.\n */\n menuTitle?: string;\n /**\n * Whether the menu should start expanded.\n */\n shouldMenuStartExpanded?: boolean;\n /**\n * Main application logo.\n */\n mainLogo?: string;\n /**\n * Small application logo.\n */\n smallLogo?: string;\n /**\n * Background image for the logged out page.\n */\n loggedOutBackground?: string;\n /**\n * Whether the default notifications button should be displayed.\n */\n showNotificationsButton?: boolean;\n /**\n * Whether the report error button should be displayed when an exception is thrown by the server.\n */\n displayReportErrorButton?: boolean;\n /**\n * Whether the logged user's menu should be displayed.\n */\n showUserMenu?: boolean;\n\n constructor(init?: UpdLayoutConfig) {\n Object.assign(this, init);\n\n if (this.mainLogo === undefined) {\n // this.mainLogo = LogoConstants.defaultLogo; // TODO: add images\n }\n\n if (this.smallLogo === undefined) {\n // this.smallLogo = LogoConstants.smallLogo;\n }\n\n if (this.loggedOutBackground === undefined) {\n // this.loggedOutBackground = ImageConstants.loggedOutBackground;\n }\n\n if (this.menuTitle === undefined) {\n this.menuTitle = 'UpDevs';\n }\n\n if (this.showNotificationsButton === undefined) {\n this.showNotificationsButton = true;\n }\n\n if (this.showUserMenu === undefined) {\n this.showUserMenu = true;\n }\n\n if (this.displayReportErrorButton === undefined) {\n this.displayReportErrorButton = false;\n }\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { UpdLayoutConfig } from '../models/upd-layout.config';\n\n/**\n * Layout constants.\n */\nexport class LayoutConstants {\n /**\n * Key to inject the default configuration.\n */\n static defaultOptionsKey = 'upd-layout-default-options';\n\n /**\n * Injection token for the default configuration.\n */\n static defaultOptionsInjectionToken = new InjectionToken<UpdLayoutConfig>(LayoutConstants.defaultOptionsKey);\n}\n","import { Injectable, Inject } from '@angular/core';\n\nimport { UpdLayoutConfigModel } from '../models/upd-layout-config.model';\nimport { LayoutConstants } from '../tools/layout.constants';\nimport { UpdLayoutConfig } from '../models/upd-layout.config';\n\n/**\n * Layout configuration data.\n */\n@Injectable()\nexport class UpdLayoutConfigService {\n /**\n * Configuration (See: #upsee[p:models, i:UpdCoreLayoutConfigModel]).\n */\n readonly config: UpdLayoutConfigModel;\n\n constructor(@Inject(LayoutConstants.defaultOptionsInjectionToken) layoutConfig: UpdLayoutConfig) {\n this.config = new UpdLayoutConfigModel(layoutConfig);\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { UpdCoreLayoutModule } from '@updevs/sdk/layout';\n\nimport { UpdLayoutConfig } from './models/upd-layout.config';\nimport { LayoutConstants } from './tools/layout.constants';\nimport { UpdLayoutConfigService } from './services/upd-layout-config.service';\n\n/**\n * Layout module.\n */\n@NgModule({\n imports: [\n CommonModule,\n UpdCoreLayoutModule\n ],\n providers: [\n UpdLayoutConfigService\n ]\n})\nexport class UpdLayoutModule {\n /**\n * Sets up the layout module with the provided configuration.\n * @param config Configuration (See: #updsee[p:abstractions, i:UpdCoreLayoutConfig]).\n */\n static forRoot(config: UpdLayoutConfig): ModuleWithProviders<UpdLayoutModule> {\n return {\n ngModule: UpdLayoutModule,\n providers: [\n { provide: LayoutConstants.defaultOptionsInjectionToken, useValue: config }\n ]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1","i3","i2.FooterComponent","i3.HeaderComponent","i4.SidebarComponent","i5.PageHeaderComponent","en","pt"],"mappings":"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"}
|
@@ -0,0 +1,79 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { EventEmitter, Component, ViewEncapsulation, Input, Output, NgModule } from '@angular/core';
|
3
|
+
import * as i1 from '@angular/common';
|
4
|
+
import { CommonModule } from '@angular/common';
|
5
|
+
|
6
|
+
class LinkComponent {
|
7
|
+
constructor() {
|
8
|
+
this.target = '_self';
|
9
|
+
this.customClasses = [];
|
10
|
+
this.isNavigation = false;
|
11
|
+
/**
|
12
|
+
* Emitted when the link is clicked.
|
13
|
+
* **NOTE:** The name of the event can not be 'click'. It would generate a conflict with the HTML event of same name.
|
14
|
+
* That would cause strange behaviors like preventing `isDisabled` from working correctly.
|
15
|
+
*/
|
16
|
+
this.clicked = new EventEmitter();
|
17
|
+
this.classes = [];
|
18
|
+
}
|
19
|
+
ngOnInit() {
|
20
|
+
this.updateWrapperClasses();
|
21
|
+
}
|
22
|
+
ngOnChanges(changes) {
|
23
|
+
this.updateWrapperClasses();
|
24
|
+
}
|
25
|
+
onClick(event) {
|
26
|
+
this.clicked.emit(undefined);
|
27
|
+
event.stopPropagation();
|
28
|
+
}
|
29
|
+
updateWrapperClasses() {
|
30
|
+
const lClasses = [];
|
31
|
+
if (this.isNavigation) {
|
32
|
+
lClasses.push('nav-link');
|
33
|
+
}
|
34
|
+
this.classes = [...lClasses, ...this.customClasses];
|
35
|
+
}
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: LinkComponent, selector: "upd-link", inputs: { href: "href", target: "target", customClasses: "customClasses", isNavigation: "isNavigation" }, outputs: { clicked: "clicked" }, usesOnChanges: true, ngImport: i0, template: "<a [attr.href]=\"href\" [attr.target]=\"target\" [ngClass]=\"classes\" (click)=\"onClick($event)\">\n <ng-content></ng-content>\n</a>\n", styles: ["a:hover{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
38
|
+
}
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LinkComponent, decorators: [{
|
40
|
+
type: Component,
|
41
|
+
args: [{ selector: 'upd-link', encapsulation: ViewEncapsulation.None, template: "<a [attr.href]=\"href\" [attr.target]=\"target\" [ngClass]=\"classes\" (click)=\"onClick($event)\">\n <ng-content></ng-content>\n</a>\n", styles: ["a:hover{cursor:pointer}\n"] }]
|
42
|
+
}], propDecorators: { href: [{
|
43
|
+
type: Input
|
44
|
+
}], target: [{
|
45
|
+
type: Input
|
46
|
+
}], customClasses: [{
|
47
|
+
type: Input
|
48
|
+
}], isNavigation: [{
|
49
|
+
type: Input
|
50
|
+
}], clicked: [{
|
51
|
+
type: Output
|
52
|
+
}] } });
|
53
|
+
|
54
|
+
class UpdLinkModule {
|
55
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
56
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: UpdLinkModule, declarations: [LinkComponent], imports: [CommonModule], exports: [LinkComponent] }); }
|
57
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdLinkModule, imports: [CommonModule] }); }
|
58
|
+
}
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdLinkModule, decorators: [{
|
60
|
+
type: NgModule,
|
61
|
+
args: [{
|
62
|
+
imports: [
|
63
|
+
CommonModule
|
64
|
+
],
|
65
|
+
declarations: [
|
66
|
+
LinkComponent
|
67
|
+
],
|
68
|
+
exports: [
|
69
|
+
LinkComponent
|
70
|
+
]
|
71
|
+
}]
|
72
|
+
}] });
|
73
|
+
|
74
|
+
/**
|
75
|
+
* Generated bundle index. Do not edit.
|
76
|
+
*/
|
77
|
+
|
78
|
+
export { LinkComponent, UpdLinkModule };
|
79
|
+
//# sourceMappingURL=updevs-components-link.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"updevs-components-link.mjs","sources":["../../../../projects/updevs/components/link/src/link.component.ts","../../../../projects/updevs/components/link/src/link.component.html","../../../../projects/updevs/components/link/src/upd-link.module.ts","../../../../projects/updevs/components/link/src/updevs-components-link.ts"],"sourcesContent":["import { Component, Output, EventEmitter, SimpleChanges, OnInit, OnChanges, Input, ViewEncapsulation } from '@angular/core';\n\nimport { LinkTargetType } from './target.type';\n\n@Component({\n selector: 'upd-link',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class LinkComponent implements OnInit, OnChanges {\n @Input() href?: string;\n @Input() target: LinkTargetType = '_self';\n @Input() customClasses: string[] = [];\n @Input() isNavigation = false;\n\n /**\n * Emitted when the link is clicked.\n * **NOTE:** The name of the event can not be 'click'. It would generate a conflict with the HTML event of same name.\n * That would cause strange behaviors like preventing `isDisabled` from working correctly.\n */\n @Output() readonly clicked = new EventEmitter<any>();\n\n classes: string[] = [];\n\n ngOnInit(): void {\n this.updateWrapperClasses();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateWrapperClasses();\n }\n\n onClick(event: MouseEvent): void {\n this.clicked.emit(undefined);\n event.stopPropagation();\n }\n\n private updateWrapperClasses(): void {\n const lClasses: string[] = [];\n\n if (this.isNavigation) {\n lClasses.push('nav-link');\n }\n\n this.classes = [...lClasses, ...this.customClasses];\n }\n}\n","<a [attr.href]=\"href\" [attr.target]=\"target\" [ngClass]=\"classes\" (click)=\"onClick($event)\">\n <ng-content></ng-content>\n</a>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { LinkComponent } from './link.component';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n LinkComponent\n ],\n exports: [\n LinkComponent\n ]\n})\nexport class UpdLinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,226 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { EventEmitter, inject, Renderer2, ElementRef, RendererStyleFlags2, Component, ViewEncapsulation, HostBinding, Input, Output, NgModule } from '@angular/core';
|
3
|
+
import * as i1 from '@angular/common';
|
4
|
+
import { CommonModule } from '@angular/common';
|
5
|
+
import * as i2 from '@updevs/components/form-controls/checkbox';
|
6
|
+
import { UpdCheckboxModule } from '@updevs/components/form-controls/checkbox';
|
7
|
+
import * as i3 from '@updevs/icons';
|
8
|
+
import { UpdIconsModule } from '@updevs/icons';
|
9
|
+
import * as i1$1 from '@ngneat/transloco';
|
10
|
+
import { TranslocoModule } from '@ngneat/transloco';
|
11
|
+
|
12
|
+
class ListItemModel {
|
13
|
+
get hasLeftBox() {
|
14
|
+
return !!this.leftBoxImage || !!this.leftBoxText || !!this.badgeColor || this.hasCheckbox === true;
|
15
|
+
}
|
16
|
+
get hasLeftBadge() {
|
17
|
+
return !!this.badgeColor && this.badgePosition === 'left';
|
18
|
+
}
|
19
|
+
get hasBottomRightBadge() {
|
20
|
+
return !!this.badgeColor && this.badgePosition === 'left-box-bottom-right';
|
21
|
+
}
|
22
|
+
constructor(init) {
|
23
|
+
Object.assign(this, init);
|
24
|
+
}
|
25
|
+
}
|
26
|
+
|
27
|
+
class ListComponent {
|
28
|
+
constructor() {
|
29
|
+
this.localWrapperClasses = '';
|
30
|
+
/**
|
31
|
+
* Whether the content should overflow or not.
|
32
|
+
*/
|
33
|
+
this.shouldOverflow = false;
|
34
|
+
/**
|
35
|
+
* Whether the list will fit the layout of the container.
|
36
|
+
* If set to false, the list's round borders will be visible. It'll have a detached behavior.
|
37
|
+
*/
|
38
|
+
this.isFlush = true;
|
39
|
+
this.isVisible = true;
|
40
|
+
this.isHoverable = false;
|
41
|
+
this.shouldDisplayItemsCounter = false;
|
42
|
+
this.wrapperClasses = '';
|
43
|
+
/**
|
44
|
+
* Translation key used to inform no records have been found.
|
45
|
+
* If translation is not being used, you can insert the custom text here as well.
|
46
|
+
*/
|
47
|
+
this.noRecordsFoundKey = 'NoRecordsFound';
|
48
|
+
/**
|
49
|
+
* Translation key used to describe 1 item found.
|
50
|
+
* If translation is not being used, you can insert the custom text here as well.
|
51
|
+
*/
|
52
|
+
this.itemFoundKey = 'Item';
|
53
|
+
/**
|
54
|
+
* Translation key used to describe items (plural) found.
|
55
|
+
* If translation is not being used, you can insert the custom text here as well.
|
56
|
+
*/
|
57
|
+
this.itemsFoundKey = 'Items';
|
58
|
+
this.checkboxChanged = new EventEmitter();
|
59
|
+
this.selectedItem = new EventEmitter();
|
60
|
+
this.listItems = [];
|
61
|
+
this.currentSelection = [];
|
62
|
+
this.localBackupItems = [];
|
63
|
+
this.renderer = inject(Renderer2);
|
64
|
+
this.elementRef = inject(ElementRef);
|
65
|
+
}
|
66
|
+
ngOnInit() {
|
67
|
+
this.setupStyle();
|
68
|
+
this.updateWrapperClasses();
|
69
|
+
this.setupItems();
|
70
|
+
}
|
71
|
+
ngOnChanges(changes) {
|
72
|
+
this.updateWrapperClasses();
|
73
|
+
if (!!changes['items']) {
|
74
|
+
this.setupItems();
|
75
|
+
}
|
76
|
+
}
|
77
|
+
onCheckboxChange(item, isChecked) {
|
78
|
+
item.isChecked = isChecked;
|
79
|
+
this.checkboxChanged.emit(item);
|
80
|
+
}
|
81
|
+
onSelectItem(evt, item) {
|
82
|
+
evt.stopPropagation();
|
83
|
+
this.selectedItem.emit(item);
|
84
|
+
}
|
85
|
+
setupItems() {
|
86
|
+
const tempItems = [];
|
87
|
+
this.items?.forEach(it => {
|
88
|
+
const parent = new ListItemModel(it);
|
89
|
+
if ((it.children?.length || 0) > 0) {
|
90
|
+
parent.children = [];
|
91
|
+
it.children?.forEach(child => parent.children.push(new ListItemModel(child)));
|
92
|
+
}
|
93
|
+
tempItems.push(parent);
|
94
|
+
});
|
95
|
+
this.listItems = [...tempItems];
|
96
|
+
}
|
97
|
+
setupStyle() {
|
98
|
+
if (!!this.maxHeight) {
|
99
|
+
this.renderer.setStyle(this.elementRef.nativeElement, 'max-height', this.maxHeight, RendererStyleFlags2.Important);
|
100
|
+
}
|
101
|
+
}
|
102
|
+
updateWrapperClasses() {
|
103
|
+
this.localWrapperClasses = 'list-group' + ` ${this.wrapperClasses}`;
|
104
|
+
if (this.isFlush) {
|
105
|
+
this.localWrapperClasses += ' list-group-flush';
|
106
|
+
}
|
107
|
+
if (this.isHoverable) {
|
108
|
+
this.localWrapperClasses += ' list-group-hoverable';
|
109
|
+
}
|
110
|
+
if (this.shouldOverflow) {
|
111
|
+
this.localWrapperClasses += ' overflow-auto';
|
112
|
+
}
|
113
|
+
if (!this.isVisible) {
|
114
|
+
this.localWrapperClasses += ' list-hidden';
|
115
|
+
}
|
116
|
+
}
|
117
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
118
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.1", type: ListComponent, selector: "upd-list", inputs: { items: "items", shouldOverflow: "shouldOverflow", isFlush: "isFlush", isVisible: "isVisible", isHoverable: "isHoverable", shouldDisplayItemsCounter: "shouldDisplayItemsCounter", wrapperClasses: "wrapperClasses", maxHeight: "maxHeight", noRecordsFoundKey: "noRecordsFoundKey", itemFoundKey: "itemFoundKey", itemsFoundKey: "itemsFoundKey" }, outputs: { checkboxChanged: "checkboxChanged", selectedItem: "selectedItem" }, host: { properties: { "class": "this.localWrapperClasses" } }, usesOnChanges: true, ngImport: i0, template: "@if (listItems.length > 0) {\n @for (item of listItems; track item) {\n @if ((item.children?.length || 0) > 0) {\n <div class=\"list-group-header sticky-top\">{{ item.text }}</div>\n @for (child of item.children; track child) {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:child}\"></ng-container>\n }\n } @else {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n }\n }\n} @else {\n <div class=\"list-group-item\">\n <upd-icon tablerIcon=\"alert-triangle\" wrapperClasses=\"text-yellow\"></upd-icon>\n {{ noRecordsFoundKey | transloco }}\n </div>\n}\n\n@if (shouldDisplayItemsCounter) {\n <div class=\"list-items-counter bg-muted text-muted-fg\">\n {{ listItems.length }} {{ (listItems.length === 1 ? itemFoundKey : itemsFoundKey) | transloco }}\n </div>\n}\n\n<ng-template #listItemTpl let-item=\"item\">\n <div class=\"list-group-item\" [class.list-group-item-action]=\"!item.hasLeftBox\" [class.active]=\"item.isActive\"\n [class.disabled]=\"item.isDisabled\" (click)=\"onSelectItem($event, item)\">\n @if (!item.hasLeftBox) {\n <span>{{ item.text }}</span>\n } @else {\n <div class=\"row\">\n <ng-container [ngTemplateOutlet]=\"leftBoxTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n <div class=\"col text-truncate\">\n @if (!!item.text) {\n <div class=\"text-body d-block\">{{ item.text }}</div>\n }\n @if (!!item.description) {\n <div class=\"text-muted text-truncate mt-n1\">{{ item.description }}</div>\n }\n </div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #leftBoxTpl let-item=\"item\">\n @if (item.hasCheckbox) {\n <div class=\"col-auto\">\n <upd-checkbox (changed)=\"onCheckboxChange(item, $event)\" [isChecked]=\"item.isChecked || false\"\n [isSwitch]=\"item.isSwitch || false\"></upd-checkbox>\n <!-- [wrapperClasses]=\"'dropdown-item' + (item.isDisabled ? ' disabled' : '') +(item.isActive ? ' active' : '')\"-->\n </div>\n }\n @if (item.hasLeftBadge) {\n <div class=\"col-auto\">\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n </div>\n }\n @if (!!item.leftBoxImage || !!item.leftBoxText) {\n <div class=\"col-auto\">\n <a href=\"#\"> <!-- TODO: change. -->\n <span class=\"avatar\" style=\"background-image: url({{item.leftBoxImage}})\">{{ item.leftBoxText }}\n @if (item.hasBottomRightBadge) {\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n }\n </span>\n </a>\n </div>\n }\n</ng-template>\n", styles: ["upd-list{width:100%}.list-group-item{cursor:pointer}.list-hidden{display:none!important}.list-items-counter{position:sticky;bottom:0;right:0;float:right;border-top-left-radius:2px;opacity:.6;padding:2px 12px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.CheckboxComponent, selector: "upd-checkbox", inputs: ["wrapperClasses", "label", "value", "customClasses", "name", "description", "isDisabled", "isReadOnly", "isChecked", "isInline", "isSwitch", "validationStatus", "invalidStatusText"], outputs: ["changed"] }, { kind: "component", type: i3.IconComponent, selector: "upd-icon", inputs: ["model", "wrapperClasses", "color", "removeDefaultClasses", "customClasses", "tablerIcon", "heroIcon", "heroIconSize", "heroIconType"] }, { kind: "pipe", type: i1$1.TranslocoPipe, name: "transloco" }], encapsulation: i0.ViewEncapsulation.None }); }
|
119
|
+
}
|
120
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ListComponent, decorators: [{
|
121
|
+
type: Component,
|
122
|
+
args: [{ selector: 'upd-list', encapsulation: ViewEncapsulation.None, template: "@if (listItems.length > 0) {\n @for (item of listItems; track item) {\n @if ((item.children?.length || 0) > 0) {\n <div class=\"list-group-header sticky-top\">{{ item.text }}</div>\n @for (child of item.children; track child) {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:child}\"></ng-container>\n }\n } @else {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n }\n }\n} @else {\n <div class=\"list-group-item\">\n <upd-icon tablerIcon=\"alert-triangle\" wrapperClasses=\"text-yellow\"></upd-icon>\n {{ noRecordsFoundKey | transloco }}\n </div>\n}\n\n@if (shouldDisplayItemsCounter) {\n <div class=\"list-items-counter bg-muted text-muted-fg\">\n {{ listItems.length }} {{ (listItems.length === 1 ? itemFoundKey : itemsFoundKey) | transloco }}\n </div>\n}\n\n<ng-template #listItemTpl let-item=\"item\">\n <div class=\"list-group-item\" [class.list-group-item-action]=\"!item.hasLeftBox\" [class.active]=\"item.isActive\"\n [class.disabled]=\"item.isDisabled\" (click)=\"onSelectItem($event, item)\">\n @if (!item.hasLeftBox) {\n <span>{{ item.text }}</span>\n } @else {\n <div class=\"row\">\n <ng-container [ngTemplateOutlet]=\"leftBoxTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n <div class=\"col text-truncate\">\n @if (!!item.text) {\n <div class=\"text-body d-block\">{{ item.text }}</div>\n }\n @if (!!item.description) {\n <div class=\"text-muted text-truncate mt-n1\">{{ item.description }}</div>\n }\n </div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #leftBoxTpl let-item=\"item\">\n @if (item.hasCheckbox) {\n <div class=\"col-auto\">\n <upd-checkbox (changed)=\"onCheckboxChange(item, $event)\" [isChecked]=\"item.isChecked || false\"\n [isSwitch]=\"item.isSwitch || false\"></upd-checkbox>\n <!-- [wrapperClasses]=\"'dropdown-item' + (item.isDisabled ? ' disabled' : '') +(item.isActive ? ' active' : '')\"-->\n </div>\n }\n @if (item.hasLeftBadge) {\n <div class=\"col-auto\">\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n </div>\n }\n @if (!!item.leftBoxImage || !!item.leftBoxText) {\n <div class=\"col-auto\">\n <a href=\"#\"> <!-- TODO: change. -->\n <span class=\"avatar\" style=\"background-image: url({{item.leftBoxImage}})\">{{ item.leftBoxText }}\n @if (item.hasBottomRightBadge) {\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n }\n </span>\n </a>\n </div>\n }\n</ng-template>\n", styles: ["upd-list{width:100%}.list-group-item{cursor:pointer}.list-hidden{display:none!important}.list-items-counter{position:sticky;bottom:0;right:0;float:right;border-top-left-radius:2px;opacity:.6;padding:2px 12px}\n"] }]
|
123
|
+
}], propDecorators: { localWrapperClasses: [{
|
124
|
+
type: HostBinding,
|
125
|
+
args: ['class']
|
126
|
+
}], items: [{
|
127
|
+
type: Input
|
128
|
+
}], shouldOverflow: [{
|
129
|
+
type: Input
|
130
|
+
}], isFlush: [{
|
131
|
+
type: Input
|
132
|
+
}], isVisible: [{
|
133
|
+
type: Input
|
134
|
+
}], isHoverable: [{
|
135
|
+
type: Input
|
136
|
+
}], shouldDisplayItemsCounter: [{
|
137
|
+
type: Input
|
138
|
+
}], wrapperClasses: [{
|
139
|
+
type: Input
|
140
|
+
}], maxHeight: [{
|
141
|
+
type: Input
|
142
|
+
}], noRecordsFoundKey: [{
|
143
|
+
type: Input
|
144
|
+
}], itemFoundKey: [{
|
145
|
+
type: Input
|
146
|
+
}], itemsFoundKey: [{
|
147
|
+
type: Input
|
148
|
+
}], checkboxChanged: [{
|
149
|
+
type: Output
|
150
|
+
}], selectedItem: [{
|
151
|
+
type: Output
|
152
|
+
}] } });
|
153
|
+
|
154
|
+
var NoRecordsFound$1 = "No records found.";
|
155
|
+
var Item$1 = "item";
|
156
|
+
var Items$1 = "items";
|
157
|
+
var en = {
|
158
|
+
NoRecordsFound: NoRecordsFound$1,
|
159
|
+
Item: Item$1,
|
160
|
+
Items: Items$1
|
161
|
+
};
|
162
|
+
|
163
|
+
var en$1 = /*#__PURE__*/Object.freeze({
|
164
|
+
__proto__: null,
|
165
|
+
Item: Item$1,
|
166
|
+
Items: Items$1,
|
167
|
+
NoRecordsFound: NoRecordsFound$1,
|
168
|
+
default: en
|
169
|
+
});
|
170
|
+
|
171
|
+
var NoRecordsFound = "Nenhum registro encontrado.";
|
172
|
+
var Item = "item";
|
173
|
+
var Items = "itens";
|
174
|
+
var pt = {
|
175
|
+
NoRecordsFound: NoRecordsFound,
|
176
|
+
Item: Item,
|
177
|
+
Items: Items
|
178
|
+
};
|
179
|
+
|
180
|
+
var pt$1 = /*#__PURE__*/Object.freeze({
|
181
|
+
__proto__: null,
|
182
|
+
Item: Item,
|
183
|
+
Items: Items,
|
184
|
+
NoRecordsFound: NoRecordsFound,
|
185
|
+
default: pt
|
186
|
+
});
|
187
|
+
|
188
|
+
class UpdListModule {
|
189
|
+
constructor(translocoService) {
|
190
|
+
translocoService.setTranslation(en$1, 'en');
|
191
|
+
translocoService.setTranslation(pt$1, 'pt');
|
192
|
+
}
|
193
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdListModule, deps: [{ token: i1$1.TranslocoService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
194
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: UpdListModule, declarations: [ListComponent], imports: [CommonModule,
|
195
|
+
TranslocoModule,
|
196
|
+
UpdCheckboxModule,
|
197
|
+
UpdIconsModule], exports: [ListComponent] }); }
|
198
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdListModule, imports: [CommonModule,
|
199
|
+
TranslocoModule,
|
200
|
+
UpdCheckboxModule,
|
201
|
+
UpdIconsModule] }); }
|
202
|
+
}
|
203
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdListModule, decorators: [{
|
204
|
+
type: NgModule,
|
205
|
+
args: [{
|
206
|
+
imports: [
|
207
|
+
CommonModule,
|
208
|
+
TranslocoModule,
|
209
|
+
UpdCheckboxModule,
|
210
|
+
UpdIconsModule
|
211
|
+
],
|
212
|
+
declarations: [
|
213
|
+
ListComponent
|
214
|
+
],
|
215
|
+
exports: [
|
216
|
+
ListComponent
|
217
|
+
]
|
218
|
+
}]
|
219
|
+
}], ctorParameters: () => [{ type: i1$1.TranslocoService }] });
|
220
|
+
|
221
|
+
/**
|
222
|
+
* Generated bundle index. Do not edit.
|
223
|
+
*/
|
224
|
+
|
225
|
+
export { ListComponent, UpdListModule };
|
226
|
+
//# sourceMappingURL=updevs-components-list.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"updevs-components-list.mjs","sources":["../../../../projects/updevs/components/list/src/models/list-item.model.ts","../../../../projects/updevs/components/list/src/list.component.ts","../../../../projects/updevs/components/list/src/list.component.html","../../../../projects/updevs/components/list/src/upd-list.module.ts","../../../../projects/updevs/components/list/src/updevs-components-list.ts"],"sourcesContent":["import { BgColorStyleType } from '@updevs/sdk/layout';\n\nimport { ListItem } from './list-item';\nimport { BadgePositionType } from './badge-position.type';\n\nexport class ListItemModel implements ListItem {\n id?: any;\n text?: string;\n description?: string;\n icon?: string;\n isChecked?: boolean;\n isSwitch?: boolean;\n hasCheckbox?: boolean;\n isDisabled?: boolean;\n isActive?: boolean;\n leftBoxText?: string;\n leftBoxImage?: string;\n badgeColor?: BgColorStyleType;\n badgeText?: string;\n badgePosition?: BadgePositionType;\n children?: ListItemModel[];\n get hasLeftBox(): boolean {\n return !!this.leftBoxImage || !!this.leftBoxText || !!this.badgeColor || this.hasCheckbox === true;\n }\n get hasLeftBadge(): boolean {\n return !!this.badgeColor && this.badgePosition === 'left';\n }\n get hasBottomRightBadge(): boolean {\n return !!this.badgeColor && this.badgePosition === 'left-box-bottom-right';\n }\n\n constructor(init?: ListItem) {\n Object.assign(this, init);\n }\n}\n","import {\n Component,\n HostBinding,\n Input,\n Renderer2,\n ElementRef,\n OnInit,\n RendererStyleFlags2,\n ViewEncapsulation,\n Output,\n EventEmitter,\n OnChanges,\n SimpleChanges, inject\n} from '@angular/core';\n\nimport { ListItem } from './models/list-item';\nimport { ListItemModel } from './models/list-item.model';\n\n@Component({\n selector: 'upd-list',\n templateUrl: './list.component.html',\n styleUrls: ['./list.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class ListComponent implements OnInit, OnChanges {\n @HostBinding('class') localWrapperClasses = '';\n\n /**\n * List items.\n * If provided, the single will be considered static.\n */\n @Input() items?: ListItem[];\n /**\n * Whether the content should overflow or not.\n */\n @Input() shouldOverflow = false;\n /**\n * Whether the list will fit the layout of the container.\n * If set to false, the list's round borders will be visible. It'll have a detached behavior.\n */\n @Input() isFlush = true;\n @Input() isVisible = true;\n @Input() isHoverable = false;\n @Input() shouldDisplayItemsCounter = false;\n @Input() wrapperClasses = '';\n /**\n * Maximum height of the component.\n * Note: The unit should also be provided, i.e.: 350px, 35rem, etc.\n */\n @Input() maxHeight?: string;\n /**\n * Translation key used to inform no records have been found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() noRecordsFoundKey?: string = 'NoRecordsFound';\n /**\n * Translation key used to describe 1 item found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() itemFoundKey?: string = 'Item';\n /**\n * Translation key used to describe items (plural) found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() itemsFoundKey?: string = 'Items';\n\n @Output() readonly checkboxChanged = new EventEmitter<ListItem>();\n @Output() readonly selectedItem = new EventEmitter<ListItem>();\n\n listItems: ListItemModel[] = [];\n currentSelection: ListItem[] = [];\n\n private localBackupItems: ListItem[] = [];\n\n private readonly renderer = inject(Renderer2);\n private readonly elementRef = inject(ElementRef);\n\n ngOnInit(): void {\n this.setupStyle();\n this.updateWrapperClasses();\n this.setupItems();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateWrapperClasses();\n\n if (!!changes['items']) {\n this.setupItems();\n }\n }\n\n onCheckboxChange(item: ListItem, isChecked: boolean): void {\n item.isChecked = isChecked;\n this.checkboxChanged.emit(item);\n }\n\n onSelectItem(evt: any, item: ListItem): void {\n evt.stopPropagation();\n this.selectedItem.emit(item);\n }\n\n private setupItems(): void {\n const tempItems: ListItemModel[] = [];\n\n this.items?.forEach(it => {\n const parent = new ListItemModel(it);\n\n if ((it.children?.length || 0) > 0) {\n parent.children = [];\n it.children?.forEach(child => parent.children!.push(new ListItemModel(child)));\n }\n\n tempItems.push(parent);\n });\n\n this.listItems = [...tempItems];\n }\n\n private setupStyle(): void {\n if (!!this.maxHeight) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'max-height', this.maxHeight, RendererStyleFlags2.Important);\n }\n }\n\n private updateWrapperClasses(): void {\n this.localWrapperClasses = 'list-group' + ` ${this.wrapperClasses}`;\n\n if (this.isFlush) {\n this.localWrapperClasses += ' list-group-flush';\n }\n\n if (this.isHoverable) {\n this.localWrapperClasses += ' list-group-hoverable';\n }\n\n if (this.shouldOverflow) {\n this.localWrapperClasses += ' overflow-auto';\n }\n\n if (!this.isVisible) {\n this.localWrapperClasses += ' list-hidden';\n }\n }\n}\n","@if (listItems.length > 0) {\n @for (item of listItems; track item) {\n @if ((item.children?.length || 0) > 0) {\n <div class=\"list-group-header sticky-top\">{{ item.text }}</div>\n @for (child of item.children; track child) {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:child}\"></ng-container>\n }\n } @else {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n }\n }\n} @else {\n <div class=\"list-group-item\">\n <upd-icon tablerIcon=\"alert-triangle\" wrapperClasses=\"text-yellow\"></upd-icon>\n {{ noRecordsFoundKey | transloco }}\n </div>\n}\n\n@if (shouldDisplayItemsCounter) {\n <div class=\"list-items-counter bg-muted text-muted-fg\">\n {{ listItems.length }} {{ (listItems.length === 1 ? itemFoundKey : itemsFoundKey) | transloco }}\n </div>\n}\n\n<ng-template #listItemTpl let-item=\"item\">\n <div class=\"list-group-item\" [class.list-group-item-action]=\"!item.hasLeftBox\" [class.active]=\"item.isActive\"\n [class.disabled]=\"item.isDisabled\" (click)=\"onSelectItem($event, item)\">\n @if (!item.hasLeftBox) {\n <span>{{ item.text }}</span>\n } @else {\n <div class=\"row\">\n <ng-container [ngTemplateOutlet]=\"leftBoxTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n <div class=\"col text-truncate\">\n @if (!!item.text) {\n <div class=\"text-body d-block\">{{ item.text }}</div>\n }\n @if (!!item.description) {\n <div class=\"text-muted text-truncate mt-n1\">{{ item.description }}</div>\n }\n </div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #leftBoxTpl let-item=\"item\">\n @if (item.hasCheckbox) {\n <div class=\"col-auto\">\n <upd-checkbox (changed)=\"onCheckboxChange(item, $event)\" [isChecked]=\"item.isChecked || false\"\n [isSwitch]=\"item.isSwitch || false\"></upd-checkbox>\n <!-- [wrapperClasses]=\"'dropdown-item' + (item.isDisabled ? ' disabled' : '') +(item.isActive ? ' active' : '')\"-->\n </div>\n }\n @if (item.hasLeftBadge) {\n <div class=\"col-auto\">\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n </div>\n }\n @if (!!item.leftBoxImage || !!item.leftBoxText) {\n <div class=\"col-auto\">\n <a href=\"#\"> <!-- TODO: change. -->\n <span class=\"avatar\" style=\"background-image: url({{item.leftBoxImage}})\">{{ item.leftBoxText }}\n @if (item.hasBottomRightBadge) {\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n }\n </span>\n </a>\n </div>\n }\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslocoService, TranslocoModule } from '@ngneat/transloco';\nimport { UpdCheckboxModule } from '@updevs/components/form-controls/checkbox';\nimport { UpdIconsModule } from '@updevs/icons';\n\nimport * as en from './assets/i18n/en.json';\nimport * as pt from './assets/i18n/pt.json';\nimport { ListComponent } from './list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TranslocoModule,\n UpdCheckboxModule,\n UpdIconsModule\n ],\n declarations: [\n ListComponent\n ],\n exports: [\n ListComponent\n ]\n})\nexport class UpdListModule {\n constructor(translocoService: TranslocoService) {\n translocoService.setTranslation(en, 'en');\n translocoService.setTranslation(pt, 'pt');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","en","pt","i1"],"mappings":";;;;;;;;;;;MAKa,aAAa,CAAA;AAgBtB,IAAA,IAAI,UAAU,GAAA;QACV,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;KACtG;AACD,IAAA,IAAI,YAAY,GAAA;QACZ,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,aAAa,KAAK,MAAM,CAAC;KAC7D;AACD,IAAA,IAAI,mBAAmB,GAAA;QACnB,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,aAAa,KAAK,uBAAuB,CAAC;KAC9E;AAED,IAAA,WAAA,CAAY,IAAe,EAAA;AACvB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC7B;AACJ;;MCVY,aAAa,CAAA;AAN1B,IAAA,WAAA,GAAA;QAO0B,IAAmB,CAAA,mBAAA,GAAG,EAAE,CAAC;AAO/C;;AAEG;QACM,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;AAChC;;;AAGG;QACM,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;QACf,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;QACjB,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;QACpB,IAAyB,CAAA,yBAAA,GAAG,KAAK,CAAC;QAClC,IAAc,CAAA,cAAA,GAAG,EAAE,CAAC;AAM7B;;;AAGG;QACM,IAAiB,CAAA,iBAAA,GAAY,gBAAgB,CAAC;AACvD;;;AAGG;QACM,IAAY,CAAA,YAAA,GAAY,MAAM,CAAC;AACxC;;;AAGG;QACM,IAAa,CAAA,aAAA,GAAY,OAAO,CAAC;AAEvB,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAAY,CAAC;AAC/C,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAY,CAAC;QAE/D,IAAS,CAAA,SAAA,GAAoB,EAAE,CAAC;QAChC,IAAgB,CAAA,gBAAA,GAAe,EAAE,CAAC;QAE1B,IAAgB,CAAA,gBAAA,GAAe,EAAE,CAAC;AAEzB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAoEpD,KAAA;IAlEG,QAAQ,GAAA;QACJ,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;KACrB;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;QAC9B,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAE5B,QAAA,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACpB,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;KACJ;IAED,gBAAgB,CAAC,IAAc,EAAE,SAAkB,EAAA;AAC/C,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;AAC3B,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACnC;IAED,YAAY,CAAC,GAAQ,EAAE,IAAc,EAAA;QACjC,GAAG,CAAC,eAAe,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAChC;IAEO,UAAU,GAAA;QACd,MAAM,SAAS,GAAoB,EAAE,CAAC;AAEtC,QAAA,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,IAAG;AACrB,YAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;AAErC,YAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE;AAChC,gBAAA,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACrB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,QAAS,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAClF;AAED,YAAA,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC3B,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;KACnC;IAEO,UAAU,GAAA;AACd,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;SACtH;KACJ;IAEO,oBAAoB,GAAA;QACxB,IAAI,CAAC,mBAAmB,GAAG,YAAY,GAAG,IAAI,IAAI,CAAC,cAAc,CAAA,CAAE,CAAC;AAEpE,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,IAAI,CAAC,mBAAmB,IAAI,mBAAmB,CAAC;SACnD;AAED,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AAClB,YAAA,IAAI,CAAC,mBAAmB,IAAI,wBAAwB,CAAC;SACxD;AAED,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACrB,YAAA,IAAI,CAAC,mBAAmB,IAAI,iBAAiB,CAAC;SACjD;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACjB,YAAA,IAAI,CAAC,mBAAmB,IAAI,cAAc,CAAC;SAC9C;KACJ;8GAtHQ,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,ijBCxB1B,whGAsEA,EAAA,MAAA,EAAA,CAAA,oNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,OAAA,EAAA,OAAA,EAAA,eAAA,EAAA,MAAA,EAAA,aAAA,EAAA,YAAA,EAAA,YAAA,EAAA,WAAA,EAAA,UAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,mBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,sBAAA,EAAA,eAAA,EAAA,YAAA,EAAA,UAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FD9Ca,aAAa,EAAA,UAAA,EAAA,CAAA;kBANzB,SAAS;+BACI,UAAU,EAAA,aAAA,EAGL,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,whGAAA,EAAA,MAAA,EAAA,CAAA,oNAAA,CAAA,EAAA,CAAA;8BAGf,mBAAmB,EAAA,CAAA;sBAAxC,WAAW;uBAAC,OAAO,CAAA;gBAMX,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAIG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBAKG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,yBAAyB,EAAA,CAAA;sBAAjC,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBAKG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAKG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBAKG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAKG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAEa,eAAe,EAAA,CAAA;sBAAjC,MAAM;gBACY,YAAY,EAAA,CAAA;sBAA9B,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ME3CE,aAAa,CAAA;AACtB,IAAA,WAAA,CAAY,gBAAkC,EAAA;AAC1C,QAAA,gBAAgB,CAAC,cAAc,CAACC,IAAE,EAAE,IAAI,CAAC,CAAC;AAC1C,QAAA,gBAAgB,CAAC,cAAc,CAACC,IAAE,EAAE,IAAI,CAAC,CAAC;KAC7C;8GAJQ,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAb,aAAa,EAAA,YAAA,EAAA,CANlB,aAAa,CAAA,EAAA,OAAA,EAAA,CANb,YAAY;YACZ,eAAe;YACf,iBAAiB;AACjB,YAAA,cAAc,aAMd,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;AAGR,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAZlB,YAAY;YACZ,eAAe;YACf,iBAAiB;YACjB,cAAc,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAST,aAAa,EAAA,UAAA,EAAA,CAAA;kBAdzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,eAAe;wBACf,iBAAiB;wBACjB,cAAc;AACjB,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACV,aAAa;AAChB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,aAAa;AAChB,qBAAA;AACJ,iBAAA,CAAA;;;ACvBD;;AAEG;;;;"}
|