@anguless/angulux 22.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/NOTICE +40 -0
- package/fesm2022/anguless-angulux-api.mjs +843 -0
- package/fesm2022/anguless-angulux-api.mjs.map +1 -0
- package/fesm2022/anguless-angulux-autofocus.mjs +83 -0
- package/fesm2022/anguless-angulux-autofocus.mjs.map +1 -0
- package/fesm2022/anguless-angulux-avatar.mjs +212 -0
- package/fesm2022/anguless-angulux-avatar.mjs.map +1 -0
- package/fesm2022/anguless-angulux-avatargroup.mjs +104 -0
- package/fesm2022/anguless-angulux-avatargroup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-badge.mjs +423 -0
- package/fesm2022/anguless-angulux-badge.mjs.map +1 -0
- package/fesm2022/anguless-angulux-base.mjs +124 -0
- package/fesm2022/anguless-angulux-base.mjs.map +1 -0
- package/fesm2022/anguless-angulux-basecomponent.mjs +443 -0
- package/fesm2022/anguless-angulux-basecomponent.mjs.map +1 -0
- package/fesm2022/anguless-angulux-baseeditableholder.mjs +70 -0
- package/fesm2022/anguless-angulux-baseeditableholder.mjs.map +1 -0
- package/fesm2022/anguless-angulux-baseinput.mjs +95 -0
- package/fesm2022/anguless-angulux-baseinput.mjs.map +1 -0
- package/fesm2022/anguless-angulux-basemodelholder.mjs +27 -0
- package/fesm2022/anguless-angulux-basemodelholder.mjs.map +1 -0
- package/fesm2022/anguless-angulux-bind.mjs +99 -0
- package/fesm2022/anguless-angulux-bind.mjs.map +1 -0
- package/fesm2022/anguless-angulux-button.mjs +1039 -0
- package/fesm2022/anguless-angulux-button.mjs.map +1 -0
- package/fesm2022/anguless-angulux-card.mjs +311 -0
- package/fesm2022/anguless-angulux-card.mjs.map +1 -0
- package/fesm2022/anguless-angulux-chart.mjs +268 -0
- package/fesm2022/anguless-angulux-chart.mjs.map +1 -0
- package/fesm2022/anguless-angulux-checkbox.mjs +469 -0
- package/fesm2022/anguless-angulux-checkbox.mjs.map +1 -0
- package/fesm2022/anguless-angulux-chip.mjs +376 -0
- package/fesm2022/anguless-angulux-chip.mjs.map +1 -0
- package/fesm2022/anguless-angulux-colorpicker.mjs +807 -0
- package/fesm2022/anguless-angulux-colorpicker.mjs.map +1 -0
- package/fesm2022/anguless-angulux-config.mjs +309 -0
- package/fesm2022/anguless-angulux-config.mjs.map +1 -0
- package/fesm2022/anguless-angulux-confirmdialog.mjs +858 -0
- package/fesm2022/anguless-angulux-confirmdialog.mjs.map +1 -0
- package/fesm2022/anguless-angulux-datepicker.mjs +4441 -0
- package/fesm2022/anguless-angulux-datepicker.mjs.map +1 -0
- package/fesm2022/anguless-angulux-dialog.mjs +1420 -0
- package/fesm2022/anguless-angulux-dialog.mjs.map +1 -0
- package/fesm2022/anguless-angulux-divider.mjs +160 -0
- package/fesm2022/anguless-angulux-divider.mjs.map +1 -0
- package/fesm2022/anguless-angulux-dom.mjs +778 -0
- package/fesm2022/anguless-angulux-dom.mjs.map +1 -0
- package/fesm2022/anguless-angulux-drawer.mjs +782 -0
- package/fesm2022/anguless-angulux-drawer.mjs.map +1 -0
- package/fesm2022/anguless-angulux-fileupload.mjs +1580 -0
- package/fesm2022/anguless-angulux-fileupload.mjs.map +1 -0
- package/fesm2022/anguless-angulux-fluid.mjs +87 -0
- package/fesm2022/anguless-angulux-fluid.mjs.map +1 -0
- package/fesm2022/anguless-angulux-focustrap.mjs +108 -0
- package/fesm2022/anguless-angulux-focustrap.mjs.map +1 -0
- package/fesm2022/anguless-angulux-iconfield.mjs +112 -0
- package/fesm2022/anguless-angulux-iconfield.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angledoubledown.mjs +38 -0
- package/fesm2022/anguless-angulux-icons-angledoubledown.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angledoubleleft.mjs +38 -0
- package/fesm2022/anguless-angulux-icons-angledoubleleft.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angledoubleright.mjs +38 -0
- package/fesm2022/anguless-angulux-icons-angledoubleright.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angledoubleup.mjs +38 -0
- package/fesm2022/anguless-angulux-icons-angledoubleup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angledown.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-angledown.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angleleft.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-angleleft.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angleright.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-angleright.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-angleup.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-angleup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-arrowdown.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-arrowdown.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-arrowdownleft.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-arrowdownleft.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-arrowdownright.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-arrowdownright.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-arrowleft.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-arrowleft.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-arrowright.mjs +38 -0
- package/fesm2022/anguless-angulux-icons-arrowright.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-arrowup.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-arrowup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-ban.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-ban.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-bars.mjs +38 -0
- package/fesm2022/anguless-angulux-icons-bars.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-baseicon.mjs +101 -0
- package/fesm2022/anguless-angulux-icons-baseicon.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-blank.mjs +24 -0
- package/fesm2022/anguless-angulux-icons-blank.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-calendar.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-calendar.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-caretleft.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-caretleft.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-caretright.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-caretright.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-check.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-check.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-chevrondown.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-chevrondown.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-chevronleft.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-chevronleft.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-chevronright.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-chevronright.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-chevronup.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-chevronup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-exclamationtriangle.mjs +69 -0
- package/fesm2022/anguless-angulux-icons-exclamationtriangle.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-eye.mjs +38 -0
- package/fesm2022/anguless-angulux-icons-eye.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-eyeslash.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-eyeslash.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-filter.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-filter.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-filterfill.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-filterfill.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-filterslash.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-filterslash.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-home.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-home.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-infocircle.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-infocircle.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-minus.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-minus.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-pencil.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-pencil.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-plus.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-plus.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-refresh.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-refresh.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-search.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-search.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-searchminus.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-searchminus.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-searchplus.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-searchplus.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-sortalt.mjs +65 -0
- package/fesm2022/anguless-angulux-icons-sortalt.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-sortamountdown.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-sortamountdown.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-sortamountupalt.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-sortamountupalt.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-spinner.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-spinner.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-star.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-star.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-starfill.mjs +53 -0
- package/fesm2022/anguless-angulux-icons-starfill.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-thlarge.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-thlarge.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-times.mjs +34 -0
- package/fesm2022/anguless-angulux-icons-times.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-timescircle.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-timescircle.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-trash.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-trash.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-undo.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-undo.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-upload.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-upload.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-windowmaximize.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-windowmaximize.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons-windowminimize.mjs +57 -0
- package/fesm2022/anguless-angulux-icons-windowminimize.mjs.map +1 -0
- package/fesm2022/anguless-angulux-icons.mjs +63 -0
- package/fesm2022/anguless-angulux-icons.mjs.map +1 -0
- package/fesm2022/anguless-angulux-inputicon.mjs +84 -0
- package/fesm2022/anguless-angulux-inputicon.mjs.map +1 -0
- package/fesm2022/anguless-angulux-inputnumber.mjs +1673 -0
- package/fesm2022/anguless-angulux-inputnumber.mjs.map +1 -0
- package/fesm2022/anguless-angulux-inputtext.mjs +199 -0
- package/fesm2022/anguless-angulux-inputtext.mjs.map +1 -0
- package/fesm2022/anguless-angulux-menu.mjs +1160 -0
- package/fesm2022/anguless-angulux-menu.mjs.map +1 -0
- package/fesm2022/anguless-angulux-message.mjs +409 -0
- package/fesm2022/anguless-angulux-message.mjs.map +1 -0
- package/fesm2022/anguless-angulux-motion.mjs +721 -0
- package/fesm2022/anguless-angulux-motion.mjs.map +1 -0
- package/fesm2022/anguless-angulux-multiselect.mjs +2712 -0
- package/fesm2022/anguless-angulux-multiselect.mjs.map +1 -0
- package/fesm2022/anguless-angulux-overlay.mjs +886 -0
- package/fesm2022/anguless-angulux-overlay.mjs.map +1 -0
- package/fesm2022/anguless-angulux-paginator.mjs +823 -0
- package/fesm2022/anguless-angulux-paginator.mjs.map +1 -0
- package/fesm2022/anguless-angulux-password.mjs +1181 -0
- package/fesm2022/anguless-angulux-password.mjs.map +1 -0
- package/fesm2022/anguless-angulux-popover.mjs +532 -0
- package/fesm2022/anguless-angulux-popover.mjs.map +1 -0
- package/fesm2022/anguless-angulux-progressbar.mjs +214 -0
- package/fesm2022/anguless-angulux-progressbar.mjs.map +1 -0
- package/fesm2022/anguless-angulux-progressspinner.mjs +146 -0
- package/fesm2022/anguless-angulux-progressspinner.mjs.map +1 -0
- package/fesm2022/anguless-angulux-radiobutton.mjs +381 -0
- package/fesm2022/anguless-angulux-radiobutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-ripple.mjs +194 -0
- package/fesm2022/anguless-angulux-ripple.mjs.map +1 -0
- package/fesm2022/anguless-angulux-scroller.mjs +1325 -0
- package/fesm2022/anguless-angulux-scroller.mjs.map +1 -0
- package/fesm2022/anguless-angulux-select.mjs +2408 -0
- package/fesm2022/anguless-angulux-select.mjs.map +1 -0
- package/fesm2022/anguless-angulux-selectbutton.mjs +434 -0
- package/fesm2022/anguless-angulux-selectbutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-skeleton.mjs +168 -0
- package/fesm2022/anguless-angulux-skeleton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-splitbutton.mjs +643 -0
- package/fesm2022/anguless-angulux-splitbutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-table.mjs +7815 -0
- package/fesm2022/anguless-angulux-table.mjs.map +1 -0
- package/fesm2022/anguless-angulux-tabs.mjs +921 -0
- package/fesm2022/anguless-angulux-tabs.mjs.map +1 -0
- package/fesm2022/anguless-angulux-tag.mjs +196 -0
- package/fesm2022/anguless-angulux-tag.mjs.map +1 -0
- package/fesm2022/anguless-angulux-textarea.mjs +227 -0
- package/fesm2022/anguless-angulux-textarea.mjs.map +1 -0
- package/fesm2022/anguless-angulux-tieredmenu.mjs +1635 -0
- package/fesm2022/anguless-angulux-tieredmenu.mjs.map +1 -0
- package/fesm2022/anguless-angulux-timeline.mjs +248 -0
- package/fesm2022/anguless-angulux-timeline.mjs.map +1 -0
- package/fesm2022/anguless-angulux-toast.mjs +788 -0
- package/fesm2022/anguless-angulux-toast.mjs.map +1 -0
- package/fesm2022/anguless-angulux-togglebutton.mjs +391 -0
- package/fesm2022/anguless-angulux-togglebutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-toggleswitch.mjs +345 -0
- package/fesm2022/anguless-angulux-toggleswitch.mjs.map +1 -0
- package/fesm2022/anguless-angulux-tooltip.mjs +845 -0
- package/fesm2022/anguless-angulux-tooltip.mjs.map +1 -0
- package/fesm2022/anguless-angulux-treetable.mjs +5167 -0
- package/fesm2022/anguless-angulux-treetable.mjs.map +1 -0
- package/fesm2022/anguless-angulux-ts-helpers.mjs +4 -0
- package/fesm2022/anguless-angulux-ts-helpers.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-accordion.mjs +4 -0
- package/fesm2022/anguless-angulux-types-accordion.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-autocomplete.mjs +4 -0
- package/fesm2022/anguless-angulux-types-autocomplete.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-avatar.mjs +4 -0
- package/fesm2022/anguless-angulux-types-avatar.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-avatargroup.mjs +4 -0
- package/fesm2022/anguless-angulux-types-avatargroup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-badge.mjs +4 -0
- package/fesm2022/anguless-angulux-types-badge.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-blockui.mjs +4 -0
- package/fesm2022/anguless-angulux-types-blockui.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-breadcrumb.mjs +4 -0
- package/fesm2022/anguless-angulux-types-breadcrumb.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-button.mjs +4 -0
- package/fesm2022/anguless-angulux-types-button.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-card.mjs +4 -0
- package/fesm2022/anguless-angulux-types-card.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-carousel.mjs +4 -0
- package/fesm2022/anguless-angulux-types-carousel.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-cascadeselect.mjs +4 -0
- package/fesm2022/anguless-angulux-types-cascadeselect.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-chart.mjs +4 -0
- package/fesm2022/anguless-angulux-types-chart.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-checkbox.mjs +4 -0
- package/fesm2022/anguless-angulux-types-checkbox.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-chip.mjs +4 -0
- package/fesm2022/anguless-angulux-types-chip.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-colorpicker.mjs +4 -0
- package/fesm2022/anguless-angulux-types-colorpicker.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-confirmdialog.mjs +4 -0
- package/fesm2022/anguless-angulux-types-confirmdialog.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-confirmpopup.mjs +4 -0
- package/fesm2022/anguless-angulux-types-confirmpopup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-contextmenu.mjs +4 -0
- package/fesm2022/anguless-angulux-types-contextmenu.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-dataview.mjs +4 -0
- package/fesm2022/anguless-angulux-types-dataview.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-datepicker.mjs +4 -0
- package/fesm2022/anguless-angulux-types-datepicker.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-dialog.mjs +4 -0
- package/fesm2022/anguless-angulux-types-dialog.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-divider.mjs +4 -0
- package/fesm2022/anguless-angulux-types-divider.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-dock.mjs +4 -0
- package/fesm2022/anguless-angulux-types-dock.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-drawer.mjs +4 -0
- package/fesm2022/anguless-angulux-types-drawer.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-editor.mjs +4 -0
- package/fesm2022/anguless-angulux-types-editor.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-fieldset.mjs +4 -0
- package/fesm2022/anguless-angulux-types-fieldset.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-fileupload.mjs +4 -0
- package/fesm2022/anguless-angulux-types-fileupload.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-floatlabel.mjs +4 -0
- package/fesm2022/anguless-angulux-types-floatlabel.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-fluid.mjs +4 -0
- package/fesm2022/anguless-angulux-types-fluid.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-galleria.mjs +4 -0
- package/fesm2022/anguless-angulux-types-galleria.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-iconfield.mjs +4 -0
- package/fesm2022/anguless-angulux-types-iconfield.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-iftalabel.mjs +4 -0
- package/fesm2022/anguless-angulux-types-iftalabel.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-image.mjs +4 -0
- package/fesm2022/anguless-angulux-types-image.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-imagecompare.mjs +4 -0
- package/fesm2022/anguless-angulux-types-imagecompare.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inplace.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inplace.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inputgroup.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inputgroup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inputgroupaddon.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inputgroupaddon.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inputicon.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inputicon.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inputmask.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inputmask.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inputnumber.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inputnumber.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inputotp.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inputotp.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-inputtext.mjs +4 -0
- package/fesm2022/anguless-angulux-types-inputtext.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-knob.mjs +4 -0
- package/fesm2022/anguless-angulux-types-knob.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-listbox.mjs +4 -0
- package/fesm2022/anguless-angulux-types-listbox.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-megamenu.mjs +4 -0
- package/fesm2022/anguless-angulux-types-megamenu.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-menu.mjs +4 -0
- package/fesm2022/anguless-angulux-types-menu.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-menubar.mjs +4 -0
- package/fesm2022/anguless-angulux-types-menubar.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-message.mjs +4 -0
- package/fesm2022/anguless-angulux-types-message.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-metergroup.mjs +4 -0
- package/fesm2022/anguless-angulux-types-metergroup.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-motion.mjs +4 -0
- package/fesm2022/anguless-angulux-types-motion.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-multiselect.mjs +4 -0
- package/fesm2022/anguless-angulux-types-multiselect.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-orderlist.mjs +4 -0
- package/fesm2022/anguless-angulux-types-orderlist.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-organizationchart.mjs +4 -0
- package/fesm2022/anguless-angulux-types-organizationchart.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-overlay.mjs +4 -0
- package/fesm2022/anguless-angulux-types-overlay.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-overlaybadge.mjs +4 -0
- package/fesm2022/anguless-angulux-types-overlaybadge.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-paginator.mjs +4 -0
- package/fesm2022/anguless-angulux-types-paginator.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-panel.mjs +4 -0
- package/fesm2022/anguless-angulux-types-panel.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-panelmenu.mjs +4 -0
- package/fesm2022/anguless-angulux-types-panelmenu.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-password.mjs +4 -0
- package/fesm2022/anguless-angulux-types-password.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-picklist.mjs +4 -0
- package/fesm2022/anguless-angulux-types-picklist.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-popover.mjs +4 -0
- package/fesm2022/anguless-angulux-types-popover.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-progressbar.mjs +4 -0
- package/fesm2022/anguless-angulux-types-progressbar.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-progressspinner.mjs +4 -0
- package/fesm2022/anguless-angulux-types-progressspinner.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-radiobutton.mjs +4 -0
- package/fesm2022/anguless-angulux-types-radiobutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-rating.mjs +4 -0
- package/fesm2022/anguless-angulux-types-rating.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-scroller.mjs +4 -0
- package/fesm2022/anguless-angulux-types-scroller.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-scrollpanel.mjs +4 -0
- package/fesm2022/anguless-angulux-types-scrollpanel.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-scrolltop.mjs +4 -0
- package/fesm2022/anguless-angulux-types-scrolltop.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-select.mjs +4 -0
- package/fesm2022/anguless-angulux-types-select.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-selectbutton.mjs +4 -0
- package/fesm2022/anguless-angulux-types-selectbutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-skeleton.mjs +4 -0
- package/fesm2022/anguless-angulux-types-skeleton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-slider.mjs +4 -0
- package/fesm2022/anguless-angulux-types-slider.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-speeddial.mjs +4 -0
- package/fesm2022/anguless-angulux-types-speeddial.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-splitbutton.mjs +4 -0
- package/fesm2022/anguless-angulux-types-splitbutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-splitter.mjs +4 -0
- package/fesm2022/anguless-angulux-types-splitter.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-stepper.mjs +4 -0
- package/fesm2022/anguless-angulux-types-stepper.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-table.mjs +4 -0
- package/fesm2022/anguless-angulux-types-table.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-tabs.mjs +4 -0
- package/fesm2022/anguless-angulux-types-tabs.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-tag.mjs +4 -0
- package/fesm2022/anguless-angulux-types-tag.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-terminal.mjs +4 -0
- package/fesm2022/anguless-angulux-types-terminal.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-textarea.mjs +4 -0
- package/fesm2022/anguless-angulux-types-textarea.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-tieredmenu.mjs +4 -0
- package/fesm2022/anguless-angulux-types-tieredmenu.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-timeline.mjs +4 -0
- package/fesm2022/anguless-angulux-types-timeline.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-toast.mjs +4 -0
- package/fesm2022/anguless-angulux-types-toast.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-togglebutton.mjs +4 -0
- package/fesm2022/anguless-angulux-types-togglebutton.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-toggleswitch.mjs +4 -0
- package/fesm2022/anguless-angulux-types-toggleswitch.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-toolbar.mjs +4 -0
- package/fesm2022/anguless-angulux-types-toolbar.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-tooltip.mjs +4 -0
- package/fesm2022/anguless-angulux-types-tooltip.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-tree.mjs +4 -0
- package/fesm2022/anguless-angulux-types-tree.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-treeselect.mjs +4 -0
- package/fesm2022/anguless-angulux-types-treeselect.mjs.map +1 -0
- package/fesm2022/anguless-angulux-types-treetable.mjs +4 -0
- package/fesm2022/anguless-angulux-types-treetable.mjs.map +1 -0
- package/fesm2022/anguless-angulux-usestyle.mjs +54 -0
- package/fesm2022/anguless-angulux-usestyle.mjs.map +1 -0
- package/fesm2022/anguless-angulux-utils.mjs +332 -0
- package/fesm2022/anguless-angulux-utils.mjs.map +1 -0
- package/fesm2022/anguless-angulux.mjs +6 -0
- package/fesm2022/anguless-angulux.mjs.map +1 -0
- package/package.json +904 -0
- package/types/anguless-angulux-api.d.ts +1976 -0
- package/types/anguless-angulux-autofocus.d.ts +31 -0
- package/types/anguless-angulux-avatar.d.ts +138 -0
- package/types/anguless-angulux-avatargroup.d.ts +64 -0
- package/types/anguless-angulux-badge.d.ts +182 -0
- package/types/anguless-angulux-base.d.ts +58 -0
- package/types/anguless-angulux-basecomponent.d.ts +175 -0
- package/types/anguless-angulux-baseeditableholder.d.ts +45 -0
- package/types/anguless-angulux-baseinput.d.ts +73 -0
- package/types/anguless-angulux-basemodelholder.d.ts +12 -0
- package/types/anguless-angulux-bind.d.ts +38 -0
- package/types/anguless-angulux-button.d.ts +489 -0
- package/types/anguless-angulux-card.d.ts +155 -0
- package/types/anguless-angulux-chart.d.ts +133 -0
- package/types/anguless-angulux-checkbox.d.ts +229 -0
- package/types/anguless-angulux-chip.d.ts +165 -0
- package/types/anguless-angulux-colorpicker.d.ts +315 -0
- package/types/anguless-angulux-config.d.ts +268 -0
- package/types/anguless-angulux-confirmdialog.d.ts +358 -0
- package/types/anguless-angulux-datepicker.d.ts +1015 -0
- package/types/anguless-angulux-dialog.d.ts +553 -0
- package/types/anguless-angulux-divider.d.ts +120 -0
- package/types/anguless-angulux-dom.d.ts +109 -0
- package/types/anguless-angulux-drawer.d.ts +301 -0
- package/types/anguless-angulux-fileupload.d.ts +560 -0
- package/types/anguless-angulux-fluid.d.ts +52 -0
- package/types/anguless-angulux-focustrap.d.ts +36 -0
- package/types/anguless-angulux-iconfield.d.ts +71 -0
- package/types/anguless-angulux-icons-angledoubledown.d.ts +9 -0
- package/types/anguless-angulux-icons-angledoubleleft.d.ts +9 -0
- package/types/anguless-angulux-icons-angledoubleright.d.ts +9 -0
- package/types/anguless-angulux-icons-angledoubleup.d.ts +9 -0
- package/types/anguless-angulux-icons-angledown.d.ts +9 -0
- package/types/anguless-angulux-icons-angleleft.d.ts +9 -0
- package/types/anguless-angulux-icons-angleright.d.ts +9 -0
- package/types/anguless-angulux-icons-angleup.d.ts +9 -0
- package/types/anguless-angulux-icons-arrowdown.d.ts +11 -0
- package/types/anguless-angulux-icons-arrowdownleft.d.ts +9 -0
- package/types/anguless-angulux-icons-arrowdownright.d.ts +9 -0
- package/types/anguless-angulux-icons-arrowleft.d.ts +11 -0
- package/types/anguless-angulux-icons-arrowright.d.ts +9 -0
- package/types/anguless-angulux-icons-arrowup.d.ts +11 -0
- package/types/anguless-angulux-icons-ban.d.ts +11 -0
- package/types/anguless-angulux-icons-bars.d.ts +9 -0
- package/types/anguless-angulux-icons-baseicon.d.ts +31 -0
- package/types/anguless-angulux-icons-blank.d.ts +9 -0
- package/types/anguless-angulux-icons-calendar.d.ts +9 -0
- package/types/anguless-angulux-icons-caretleft.d.ts +9 -0
- package/types/anguless-angulux-icons-caretright.d.ts +9 -0
- package/types/anguless-angulux-icons-check.d.ts +9 -0
- package/types/anguless-angulux-icons-chevrondown.d.ts +9 -0
- package/types/anguless-angulux-icons-chevronleft.d.ts +9 -0
- package/types/anguless-angulux-icons-chevronright.d.ts +9 -0
- package/types/anguless-angulux-icons-chevronup.d.ts +9 -0
- package/types/anguless-angulux-icons-exclamationtriangle.d.ts +11 -0
- package/types/anguless-angulux-icons-eye.d.ts +9 -0
- package/types/anguless-angulux-icons-eyeslash.d.ts +11 -0
- package/types/anguless-angulux-icons-filter.d.ts +11 -0
- package/types/anguless-angulux-icons-filterfill.d.ts +9 -0
- package/types/anguless-angulux-icons-filterslash.d.ts +11 -0
- package/types/anguless-angulux-icons-home.d.ts +11 -0
- package/types/anguless-angulux-icons-infocircle.d.ts +11 -0
- package/types/anguless-angulux-icons-minus.d.ts +9 -0
- package/types/anguless-angulux-icons-pencil.d.ts +11 -0
- package/types/anguless-angulux-icons-plus.d.ts +11 -0
- package/types/anguless-angulux-icons-refresh.d.ts +11 -0
- package/types/anguless-angulux-icons-search.d.ts +11 -0
- package/types/anguless-angulux-icons-searchminus.d.ts +11 -0
- package/types/anguless-angulux-icons-searchplus.d.ts +11 -0
- package/types/anguless-angulux-icons-sortalt.d.ts +11 -0
- package/types/anguless-angulux-icons-sortamountdown.d.ts +11 -0
- package/types/anguless-angulux-icons-sortamountupalt.d.ts +11 -0
- package/types/anguless-angulux-icons-spinner.d.ts +11 -0
- package/types/anguless-angulux-icons-star.d.ts +11 -0
- package/types/anguless-angulux-icons-starfill.d.ts +11 -0
- package/types/anguless-angulux-icons-thlarge.d.ts +11 -0
- package/types/anguless-angulux-icons-times.d.ts +9 -0
- package/types/anguless-angulux-icons-timescircle.d.ts +11 -0
- package/types/anguless-angulux-icons-trash.d.ts +11 -0
- package/types/anguless-angulux-icons-undo.d.ts +11 -0
- package/types/anguless-angulux-icons-upload.d.ts +11 -0
- package/types/anguless-angulux-icons-windowmaximize.d.ts +11 -0
- package/types/anguless-angulux-icons-windowminimize.d.ts +11 -0
- package/types/anguless-angulux-icons.d.ts +53 -0
- package/types/anguless-angulux-inputicon.d.ts +44 -0
- package/types/anguless-angulux-inputnumber.d.ts +434 -0
- package/types/anguless-angulux-inputtext.d.ts +115 -0
- package/types/anguless-angulux-menu.d.ts +362 -0
- package/types/anguless-angulux-message.d.ts +211 -0
- package/types/anguless-angulux-motion.d.ts +398 -0
- package/types/anguless-angulux-multiselect.d.ts +902 -0
- package/types/anguless-angulux-overlay.d.ts +355 -0
- package/types/anguless-angulux-paginator.d.ts +361 -0
- package/types/anguless-angulux-password.d.ts +492 -0
- package/types/anguless-angulux-popover.d.ts +202 -0
- package/types/anguless-angulux-progressbar.d.ts +122 -0
- package/types/anguless-angulux-progressspinner.d.ts +90 -0
- package/types/anguless-angulux-radiobutton.d.ts +191 -0
- package/types/anguless-angulux-ripple.d.ts +61 -0
- package/types/anguless-angulux-scroller.d.ts +450 -0
- package/types/anguless-angulux-select.d.ts +790 -0
- package/types/anguless-angulux-selectbutton.d.ts +184 -0
- package/types/anguless-angulux-skeleton.d.ts +102 -0
- package/types/anguless-angulux-splitbutton.d.ts +292 -0
- package/types/anguless-angulux-table.d.ts +2087 -0
- package/types/anguless-angulux-tabs.d.ts +358 -0
- package/types/anguless-angulux-tag.d.ts +113 -0
- package/types/anguless-angulux-textarea.d.ts +125 -0
- package/types/anguless-angulux-tieredmenu.d.ts +430 -0
- package/types/anguless-angulux-timeline.d.ts +139 -0
- package/types/anguless-angulux-toast.d.ts +301 -0
- package/types/anguless-angulux-togglebutton.d.ts +203 -0
- package/types/anguless-angulux-toggleswitch.d.ts +166 -0
- package/types/anguless-angulux-tooltip.d.ts +284 -0
- package/types/anguless-angulux-treetable.d.ts +1276 -0
- package/types/anguless-angulux-ts-helpers.d.ts +6 -0
- package/types/anguless-angulux-types-accordion.d.ts +97 -0
- package/types/anguless-angulux-types-autocomplete.d.ts +312 -0
- package/types/anguless-angulux-types-avatar.d.ts +40 -0
- package/types/anguless-angulux-types-avatargroup.d.ts +28 -0
- package/types/anguless-angulux-types-badge.d.ts +26 -0
- package/types/anguless-angulux-types-blockui.d.ts +39 -0
- package/types/anguless-angulux-types-breadcrumb.d.ts +96 -0
- package/types/anguless-angulux-types-button.d.ts +124 -0
- package/types/anguless-angulux-types-card.d.ts +75 -0
- package/types/anguless-angulux-types-carousel.d.ts +143 -0
- package/types/anguless-angulux-types-cascadeselect.d.ts +215 -0
- package/types/anguless-angulux-types-chart.d.ts +32 -0
- package/types/anguless-angulux-types-checkbox.d.ts +81 -0
- package/types/anguless-angulux-types-chip.d.ts +71 -0
- package/types/anguless-angulux-types-colorpicker.d.ts +78 -0
- package/types/anguless-angulux-types-confirmdialog.d.ts +147 -0
- package/types/anguless-angulux-types-confirmpopup.d.ts +105 -0
- package/types/anguless-angulux-types-contextmenu.d.ts +102 -0
- package/types/anguless-angulux-types-dataview.d.ts +253 -0
- package/types/anguless-angulux-types-datepicker.d.ts +521 -0
- package/types/anguless-angulux-types-dialog.d.ts +107 -0
- package/types/anguless-angulux-types-divider.d.ts +28 -0
- package/types/anguless-angulux-types-dock.d.ts +70 -0
- package/types/anguless-angulux-types-drawer.d.ts +82 -0
- package/types/anguless-angulux-types-editor.d.ts +210 -0
- package/types/anguless-angulux-types-fieldset.d.ts +101 -0
- package/types/anguless-angulux-types-fileupload.d.ts +360 -0
- package/types/anguless-angulux-types-floatlabel.d.ts +26 -0
- package/types/anguless-angulux-types-fluid.d.ts +28 -0
- package/types/anguless-angulux-types-galleria.d.ts +250 -0
- package/types/anguless-angulux-types-iconfield.d.ts +26 -0
- package/types/anguless-angulux-types-iftalabel.d.ts +26 -0
- package/types/anguless-angulux-types-image.d.ts +144 -0
- package/types/anguless-angulux-types-imagecompare.d.ts +43 -0
- package/types/anguless-angulux-types-inplace.d.ts +72 -0
- package/types/anguless-angulux-types-inputgroup.d.ts +28 -0
- package/types/anguless-angulux-types-inputgroupaddon.d.ts +28 -0
- package/types/anguless-angulux-types-inputicon.d.ts +26 -0
- package/types/anguless-angulux-types-inputmask.d.ts +56 -0
- package/types/anguless-angulux-types-inputnumber.d.ts +95 -0
- package/types/anguless-angulux-types-inputotp.d.ts +101 -0
- package/types/anguless-angulux-types-inputtext.d.ts +24 -0
- package/types/anguless-angulux-types-knob.d.ts +40 -0
- package/types/anguless-angulux-types-listbox.d.ts +359 -0
- package/types/anguless-angulux-types-megamenu.d.ts +138 -0
- package/types/anguless-angulux-types-menu.d.ts +114 -0
- package/types/anguless-angulux-types-menubar.d.ts +124 -0
- package/types/anguless-angulux-types-message.d.ts +87 -0
- package/types/anguless-angulux-types-metergroup.d.ts +176 -0
- package/types/anguless-angulux-types-motion.d.ts +26 -0
- package/types/anguless-angulux-types-multiselect.d.ts +414 -0
- package/types/anguless-angulux-types-orderlist.d.ts +173 -0
- package/types/anguless-angulux-types-organizationchart.d.ts +138 -0
- package/types/anguless-angulux-types-overlay.d.ts +60 -0
- package/types/anguless-angulux-types-overlaybadge.d.ts +34 -0
- package/types/anguless-angulux-types-paginator.d.ts +167 -0
- package/types/anguless-angulux-types-panel.d.ts +129 -0
- package/types/anguless-angulux-types-panelmenu.d.ts +131 -0
- package/types/anguless-angulux-types-password.d.ts +120 -0
- package/types/anguless-angulux-types-picklist.d.ts +348 -0
- package/types/anguless-angulux-types-popover.d.ts +59 -0
- package/types/anguless-angulux-types-progressbar.d.ts +58 -0
- package/types/anguless-angulux-types-progressspinner.d.ts +36 -0
- package/types/anguless-angulux-types-radiobutton.d.ts +51 -0
- package/types/anguless-angulux-types-rating.d.ts +94 -0
- package/types/anguless-angulux-types-scroller.d.ts +231 -0
- package/types/anguless-angulux-types-scrollpanel.d.ts +51 -0
- package/types/anguless-angulux-types-scrolltop.d.ts +61 -0
- package/types/anguless-angulux-types-select.d.ts +319 -0
- package/types/anguless-angulux-types-selectbutton.d.ts +92 -0
- package/types/anguless-angulux-types-skeleton.d.ts +28 -0
- package/types/anguless-angulux-types-slider.d.ts +78 -0
- package/types/anguless-angulux-types-speeddial.d.ts +100 -0
- package/types/anguless-angulux-types-splitbutton.d.ts +70 -0
- package/types/anguless-angulux-types-splitter.d.ts +70 -0
- package/types/anguless-angulux-types-stepper.d.ts +162 -0
- package/types/anguless-angulux-types-table.d.ts +893 -0
- package/types/anguless-angulux-types-tabs.d.ts +119 -0
- package/types/anguless-angulux-types-tag.d.ts +47 -0
- package/types/anguless-angulux-types-terminal.d.ts +60 -0
- package/types/anguless-angulux-types-textarea.d.ts +28 -0
- package/types/anguless-angulux-types-tieredmenu.d.ts +95 -0
- package/types/anguless-angulux-types-timeline.d.ts +85 -0
- package/types/anguless-angulux-types-toast.d.ts +131 -0
- package/types/anguless-angulux-types-togglebutton.d.ts +86 -0
- package/types/anguless-angulux-types-toggleswitch.d.ts +73 -0
- package/types/anguless-angulux-types-toolbar.d.ts +55 -0
- package/types/anguless-angulux-types-tooltip.d.ts +32 -0
- package/types/anguless-angulux-types-tree.d.ts +342 -0
- package/types/anguless-angulux-types-treeselect.d.ts +251 -0
- package/types/anguless-angulux-types-treetable.d.ts +629 -0
- package/types/anguless-angulux-usestyle.d.ts +15 -0
- package/types/anguless-angulux-utils.d.ts +43 -0
- package/types/anguless-angulux.d.ts +2 -0
|
@@ -0,0 +1,443 @@
|
|
|
1
|
+
import { DOCUMENT, isPlatformServer } from '@angular/common';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { Injectable, InjectionToken, inject, PLATFORM_ID, ElementRef, Injector, ChangeDetectorRef, Renderer2, input, signal, computed, effect, Directive } from '@angular/core';
|
|
4
|
+
import { Theme, ThemeService } from '@anguless/angulux-styled';
|
|
5
|
+
import { cn, uuid, resolve, isFunction, mergeProps, getKeyValue, isNotEmpty, toFlatCase, isString, isArray } from '@anguless/angulux-utils';
|
|
6
|
+
import { BaseStyle, Base } from '@anguless/angulux/base';
|
|
7
|
+
import { AnguluxConfig } from '@anguless/angulux/config';
|
|
8
|
+
|
|
9
|
+
class BaseComponentStyle extends BaseStyle {
|
|
10
|
+
name = 'common';
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: BaseComponentStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
12
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: BaseComponentStyle, providedIn: 'root' });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: BaseComponentStyle, decorators: [{
|
|
15
|
+
type: Injectable,
|
|
16
|
+
args: [{ providedIn: 'root' }]
|
|
17
|
+
}] });
|
|
18
|
+
|
|
19
|
+
const PARENT_INSTANCE = new InjectionToken('PARENT_INSTANCE');
|
|
20
|
+
class BaseComponent {
|
|
21
|
+
document = inject(DOCUMENT);
|
|
22
|
+
platformId = inject(PLATFORM_ID);
|
|
23
|
+
el = inject(ElementRef);
|
|
24
|
+
injector = inject(Injector);
|
|
25
|
+
cd = inject(ChangeDetectorRef);
|
|
26
|
+
renderer = inject(Renderer2);
|
|
27
|
+
config = inject(AnguluxConfig);
|
|
28
|
+
$parentInstance = inject(PARENT_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
|
|
29
|
+
baseComponentStyle = inject(BaseComponentStyle);
|
|
30
|
+
baseStyle = inject(BaseStyle);
|
|
31
|
+
scopedStyleEl;
|
|
32
|
+
parent = this.$params.parent;
|
|
33
|
+
cn = cn;
|
|
34
|
+
_themeScopedListener;
|
|
35
|
+
themeChangeListenerMap = new Map();
|
|
36
|
+
/******************** Inputs ********************/
|
|
37
|
+
/**
|
|
38
|
+
* Defines scoped design tokens of the component.
|
|
39
|
+
* @defaultValue undefined
|
|
40
|
+
* @group Props
|
|
41
|
+
*/
|
|
42
|
+
dt = input(/* @ts-ignore */
|
|
43
|
+
...(ngDevMode ? [undefined, { debugName: "dt" }] : /* istanbul ignore next */ []));
|
|
44
|
+
/**
|
|
45
|
+
* Indicates whether the component should be rendered without styles.
|
|
46
|
+
* @defaultValue undefined
|
|
47
|
+
* @group Props
|
|
48
|
+
*/
|
|
49
|
+
unstyled = input(/* @ts-ignore */
|
|
50
|
+
...(ngDevMode ? [undefined, { debugName: "unstyled" }] : /* istanbul ignore next */ []));
|
|
51
|
+
/**
|
|
52
|
+
* Used to pass attributes to DOM elements inside the component.
|
|
53
|
+
* @defaultValue undefined
|
|
54
|
+
* @group Props
|
|
55
|
+
*/
|
|
56
|
+
pt = input(/* @ts-ignore */
|
|
57
|
+
...(ngDevMode ? [undefined, { debugName: "pt" }] : /* istanbul ignore next */ []));
|
|
58
|
+
/**
|
|
59
|
+
* Used to configure passthrough(pt) options of the component.
|
|
60
|
+
* @group Props
|
|
61
|
+
* @defaultValue undefined
|
|
62
|
+
*/
|
|
63
|
+
ptOptions = input(/* @ts-ignore */
|
|
64
|
+
...(ngDevMode ? [undefined, { debugName: "ptOptions" }] : /* istanbul ignore next */ []));
|
|
65
|
+
/******************** Computed ********************/
|
|
66
|
+
$attrSelector = uuid('pc');
|
|
67
|
+
get $name() {
|
|
68
|
+
return this['componentName'] || 'UnknownComponent';
|
|
69
|
+
}
|
|
70
|
+
get $hostName() {
|
|
71
|
+
return this['hostName'];
|
|
72
|
+
}
|
|
73
|
+
get $el() {
|
|
74
|
+
return this.el?.nativeElement;
|
|
75
|
+
}
|
|
76
|
+
directivePT = signal(undefined, /* @ts-ignore */
|
|
77
|
+
...(ngDevMode ? [{ debugName: "directivePT" }] : /* istanbul ignore next */ []));
|
|
78
|
+
directiveUnstyled = signal(undefined, /* @ts-ignore */
|
|
79
|
+
...(ngDevMode ? [{ debugName: "directiveUnstyled" }] : /* istanbul ignore next */ []));
|
|
80
|
+
$unstyled = computed(() => {
|
|
81
|
+
return this.unstyled() ?? this.directiveUnstyled() ?? this.config?.unstyled() ?? false;
|
|
82
|
+
}, /* @ts-ignore */
|
|
83
|
+
...(ngDevMode ? [{ debugName: "$unstyled" }] : /* istanbul ignore next */ []));
|
|
84
|
+
$pt = computed(() => {
|
|
85
|
+
return resolve(this.pt() || this.directivePT(), this.$params);
|
|
86
|
+
}, /* @ts-ignore */
|
|
87
|
+
...(ngDevMode ? [{ debugName: "$pt" }] : /* istanbul ignore next */ []));
|
|
88
|
+
get $globalPT() {
|
|
89
|
+
return this._getPT(this.config?.pt(), undefined, (value) => resolve(value, this.$params));
|
|
90
|
+
}
|
|
91
|
+
get $defaultPT() {
|
|
92
|
+
return this._getPT(this.config?.pt(), undefined, (value) => this._getOptionValue(value, this.$hostName || this.$name, this.$params) || resolve(value, this.$params));
|
|
93
|
+
}
|
|
94
|
+
get $style() {
|
|
95
|
+
return { theme: undefined, css: undefined, classes: undefined, inlineStyles: undefined, ...(this._getHostInstance(this) || {}).$style, ...this['_componentStyle'] };
|
|
96
|
+
}
|
|
97
|
+
get $styleOptions() {
|
|
98
|
+
return { nonce: this.config?.csp().nonce };
|
|
99
|
+
}
|
|
100
|
+
get $params() {
|
|
101
|
+
const parentInstance = this._getHostInstance(this) || this.$parentInstance;
|
|
102
|
+
return {
|
|
103
|
+
instance: this,
|
|
104
|
+
parent: {
|
|
105
|
+
instance: parentInstance
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
/******************** Lifecycle Hooks ********************/
|
|
110
|
+
onInit() {
|
|
111
|
+
// NOOP - to be implemented by subclasses
|
|
112
|
+
}
|
|
113
|
+
onChanges(changes) {
|
|
114
|
+
// NOOP - to be implemented by subclasses
|
|
115
|
+
}
|
|
116
|
+
onDoCheck() {
|
|
117
|
+
// NOOP - to be implemented by subclasses
|
|
118
|
+
}
|
|
119
|
+
onAfterContentInit() {
|
|
120
|
+
// NOOP - to be implemented by subclasses
|
|
121
|
+
}
|
|
122
|
+
onAfterContentChecked() {
|
|
123
|
+
// NOOP - to be implemented by subclasses
|
|
124
|
+
}
|
|
125
|
+
onAfterViewInit() {
|
|
126
|
+
// NOOP - to be implemented by subclasses
|
|
127
|
+
}
|
|
128
|
+
onAfterViewChecked() {
|
|
129
|
+
// NOOP - to be implemented by subclasses
|
|
130
|
+
}
|
|
131
|
+
onDestroy() {
|
|
132
|
+
// NOOP - to be implemented by subclasses
|
|
133
|
+
}
|
|
134
|
+
/******************** Angular Lifecycle Hooks ********************/
|
|
135
|
+
constructor() {
|
|
136
|
+
// watch _dt_ changes
|
|
137
|
+
effect((onCleanup) => {
|
|
138
|
+
if (this.document && !isPlatformServer(this.platformId)) {
|
|
139
|
+
if (this.dt()) {
|
|
140
|
+
this._loadScopedThemeStyles(this.dt());
|
|
141
|
+
this._themeScopedListener = () => this._loadScopedThemeStyles(this.dt());
|
|
142
|
+
this._themeChangeListener('_themeScopedListener', this._themeScopedListener);
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
this._unloadScopedThemeStyles();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
onCleanup(() => {
|
|
149
|
+
this._offThemeChangeListener('_themeScopedListener');
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
// watch _unstyled_ changes
|
|
153
|
+
effect((onCleanup) => {
|
|
154
|
+
if (this.document && !isPlatformServer(this.platformId)) {
|
|
155
|
+
if (!this.$unstyled()) {
|
|
156
|
+
this._loadCoreStyles();
|
|
157
|
+
this._themeChangeListener('_loadCoreStyles', this._loadCoreStyles); // Update styles with theme settings
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
onCleanup(() => {
|
|
161
|
+
this._offThemeChangeListener('_loadCoreStyles');
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
this._hook('onBeforeInit');
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* ⚠ Do not override ngOnInit!
|
|
168
|
+
*
|
|
169
|
+
* Use 'onInit()' in subclasses instead.
|
|
170
|
+
*/
|
|
171
|
+
ngOnInit() {
|
|
172
|
+
this._loadCoreStyles();
|
|
173
|
+
this._loadStyles();
|
|
174
|
+
this.onInit();
|
|
175
|
+
this._hook('onInit');
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* ⚠ Do not override ngOnChanges!
|
|
179
|
+
*
|
|
180
|
+
* Use 'onChanges(changes: SimpleChanges)' in subclasses instead.
|
|
181
|
+
*/
|
|
182
|
+
ngOnChanges(changes) {
|
|
183
|
+
this.onChanges(changes);
|
|
184
|
+
this._hook('onChanges', changes);
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* ⚠ Do not override ngDoCheck!
|
|
188
|
+
*
|
|
189
|
+
* Use 'onDoCheck()' in subclasses instead.
|
|
190
|
+
*/
|
|
191
|
+
ngDoCheck() {
|
|
192
|
+
this.onDoCheck();
|
|
193
|
+
this._hook('onDoCheck');
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* ⚠ Do not override ngAfterContentInit!
|
|
197
|
+
*
|
|
198
|
+
* Use 'onAfterContentInit()' in subclasses instead.
|
|
199
|
+
*/
|
|
200
|
+
ngAfterContentInit() {
|
|
201
|
+
this.onAfterContentInit();
|
|
202
|
+
this._hook('onAfterContentInit');
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* ⚠ Do not override ngAfterContentChecked!
|
|
206
|
+
*
|
|
207
|
+
* Use 'onAfterContentChecked()' in subclasses instead.
|
|
208
|
+
*/
|
|
209
|
+
ngAfterContentChecked() {
|
|
210
|
+
this.onAfterContentChecked();
|
|
211
|
+
this._hook('onAfterContentChecked');
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* ⚠ Do not override ngAfterViewInit!
|
|
215
|
+
*
|
|
216
|
+
* Use 'onAfterViewInit()' in subclasses instead.
|
|
217
|
+
*/
|
|
218
|
+
ngAfterViewInit() {
|
|
219
|
+
// @todo - remove this after implementing pt for root
|
|
220
|
+
this.$el?.setAttribute(this.$attrSelector, '');
|
|
221
|
+
this.onAfterViewInit();
|
|
222
|
+
this._hook('onAfterViewInit');
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* ⚠ Do not override ngAfterViewChecked!
|
|
226
|
+
*
|
|
227
|
+
* Use 'onAfterViewChecked()' in subclasses instead.
|
|
228
|
+
*/
|
|
229
|
+
ngAfterViewChecked() {
|
|
230
|
+
this.onAfterViewChecked();
|
|
231
|
+
this._hook('onAfterViewChecked');
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* ⚠ Do not override ngOnDestroy!
|
|
235
|
+
*
|
|
236
|
+
* Use 'onDestroy()' in subclasses instead.
|
|
237
|
+
*/
|
|
238
|
+
ngOnDestroy() {
|
|
239
|
+
this._removeThemeListeners();
|
|
240
|
+
this._unloadScopedThemeStyles();
|
|
241
|
+
this.onDestroy();
|
|
242
|
+
this._hook('onDestroy');
|
|
243
|
+
}
|
|
244
|
+
/******************** Methods ********************/
|
|
245
|
+
_mergeProps(fn, ...args) {
|
|
246
|
+
return isFunction(fn) ? fn(...args) : mergeProps(...args);
|
|
247
|
+
}
|
|
248
|
+
_getHostInstance(instance) {
|
|
249
|
+
return instance ? (this.$hostName ? (this.$name === this.$hostName ? instance : this._getHostInstance(instance.$parentInstance)) : instance.$parentInstance) : undefined;
|
|
250
|
+
}
|
|
251
|
+
_getPropValue(name) {
|
|
252
|
+
return this[name] || this._getHostInstance(this)?.[name];
|
|
253
|
+
}
|
|
254
|
+
_getOptionValue(options, key = '', params = {}) {
|
|
255
|
+
return getKeyValue(options, key, params);
|
|
256
|
+
}
|
|
257
|
+
_hook(hookName, ...args) {
|
|
258
|
+
if (!this.$hostName) {
|
|
259
|
+
const selfHook = this._usePT(this._getPT(this.$pt(), this.$name), this._getOptionValue, `hooks.${hookName}`);
|
|
260
|
+
const defaultHook = this._useDefaultPT(this._getOptionValue, `hooks.${hookName}`);
|
|
261
|
+
selfHook?.(...args);
|
|
262
|
+
defaultHook?.(...args);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
/********** Load Styles **********/
|
|
266
|
+
_load() {
|
|
267
|
+
if (!Base.isStyleNameLoaded('base')) {
|
|
268
|
+
this.baseStyle.loadBaseCSS(this.$styleOptions);
|
|
269
|
+
this._loadGlobalStyles();
|
|
270
|
+
Base.setLoadedStyleName('base');
|
|
271
|
+
}
|
|
272
|
+
this._loadThemeStyles();
|
|
273
|
+
}
|
|
274
|
+
_loadStyles() {
|
|
275
|
+
this._load();
|
|
276
|
+
this._themeChangeListener('_load', () => this._load());
|
|
277
|
+
}
|
|
278
|
+
_loadGlobalStyles() {
|
|
279
|
+
const globalCSS = this._useGlobalPT(this._getOptionValue, 'global.css', this.$params);
|
|
280
|
+
isNotEmpty(globalCSS) && this.baseStyle.load(globalCSS, { name: 'global', ...this.$styleOptions });
|
|
281
|
+
}
|
|
282
|
+
_loadCoreStyles() {
|
|
283
|
+
if (!Base.isStyleNameLoaded(this.$style?.name) && this.$style?.name) {
|
|
284
|
+
this.baseComponentStyle.loadCSS(this.$styleOptions);
|
|
285
|
+
this.$style.loadCSS(this.$styleOptions);
|
|
286
|
+
Base.setLoadedStyleName(this.$style.name);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
_loadThemeStyles() {
|
|
290
|
+
if (this.$unstyled() || this.config?.theme() === 'none')
|
|
291
|
+
return;
|
|
292
|
+
// common
|
|
293
|
+
if (!Theme.isStyleNameLoaded('common')) {
|
|
294
|
+
const { primitive, semantic, global, style } = this.$style?.getCommonTheme?.() || {};
|
|
295
|
+
this.baseStyle.load(primitive?.css, { name: 'primitive-variables', ...this.$styleOptions });
|
|
296
|
+
this.baseStyle.load(semantic?.css, { name: 'semantic-variables', ...this.$styleOptions });
|
|
297
|
+
this.baseStyle.load(global?.css, { name: 'global-variables', ...this.$styleOptions });
|
|
298
|
+
this.baseStyle.loadBaseStyle({ name: 'global-style', ...this.$styleOptions }, style);
|
|
299
|
+
Theme.setLoadedStyleName('common');
|
|
300
|
+
}
|
|
301
|
+
// component
|
|
302
|
+
if (!Theme.isStyleNameLoaded(this.$style?.name) && this.$style?.name) {
|
|
303
|
+
const { css, style } = this.$style?.getComponentTheme?.() || {};
|
|
304
|
+
this.$style?.load(css, { name: `${this.$style?.name}-variables`, ...this.$styleOptions });
|
|
305
|
+
this.$style?.loadStyle({ name: `${this.$style?.name}-style`, ...this.$styleOptions }, style);
|
|
306
|
+
Theme.setLoadedStyleName(this.$style?.name);
|
|
307
|
+
}
|
|
308
|
+
// layer order
|
|
309
|
+
if (!Theme.isStyleNameLoaded('layer-order')) {
|
|
310
|
+
const layerOrder = this.$style?.getLayerOrderThemeCSS?.();
|
|
311
|
+
this.baseStyle.load(layerOrder, { name: 'layer-order', first: true, ...this.$styleOptions });
|
|
312
|
+
Theme.setLoadedStyleName('layer-order');
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
_loadScopedThemeStyles(preset) {
|
|
316
|
+
const { css } = this.$style?.getPresetTheme?.(preset, `[${this.$attrSelector}]`) || {};
|
|
317
|
+
const scopedStyle = this.$style?.load(css, { name: `${this.$attrSelector}-${this.$style?.name}`, ...this.$styleOptions });
|
|
318
|
+
this.scopedStyleEl = scopedStyle?.el;
|
|
319
|
+
}
|
|
320
|
+
_unloadScopedThemeStyles() {
|
|
321
|
+
this.scopedStyleEl?.remove();
|
|
322
|
+
}
|
|
323
|
+
_themeChangeListener(id, callback = () => { }) {
|
|
324
|
+
this._offThemeChangeListener(id);
|
|
325
|
+
Base.clearLoadedStyleNames();
|
|
326
|
+
const hold = callback.bind(this);
|
|
327
|
+
this.themeChangeListenerMap.set(id, hold);
|
|
328
|
+
ThemeService.on('theme:change', hold);
|
|
329
|
+
}
|
|
330
|
+
_removeThemeListeners() {
|
|
331
|
+
this._offThemeChangeListener('_themeScopedListener');
|
|
332
|
+
this._offThemeChangeListener('_loadCoreStyles');
|
|
333
|
+
this._offThemeChangeListener('_load');
|
|
334
|
+
}
|
|
335
|
+
_offThemeChangeListener(id) {
|
|
336
|
+
if (this.themeChangeListenerMap.has(id)) {
|
|
337
|
+
ThemeService.off('theme:change', this.themeChangeListenerMap.get(id));
|
|
338
|
+
this.themeChangeListenerMap.delete(id);
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
/********** Passthrough **********/
|
|
342
|
+
_getPTValue(obj = {}, key = '', params = {}, searchInDefaultPT = true) {
|
|
343
|
+
const searchOut = /./g.test(key) && !!params[key.split('.')[0]];
|
|
344
|
+
const { mergeSections = true, mergeProps: useMergeProps = false } = this._getPropValue('ptOptions')?.() || this.config?.['ptOptions']?.() || {};
|
|
345
|
+
const global = searchInDefaultPT ? (searchOut ? this._useGlobalPT(this._getPTClassValue, key, params) : this._useDefaultPT(this._getPTClassValue, key, params)) : undefined;
|
|
346
|
+
const self = searchOut ? undefined : this._usePT(this._getPT(obj, this.$hostName || this.$name), this._getPTClassValue, key, { ...params, global: global || {} });
|
|
347
|
+
const datasets = this._getPTDatasets(key);
|
|
348
|
+
return mergeSections || (!mergeSections && self) ? (useMergeProps ? this._mergeProps(useMergeProps, global, self, datasets) : { ...global, ...self, ...datasets }) : { ...self, ...datasets };
|
|
349
|
+
}
|
|
350
|
+
_getPTDatasets(key = '') {
|
|
351
|
+
const datasetPrefix = 'data-pc-';
|
|
352
|
+
const isExtended = key === 'root' && isNotEmpty(this.$pt()?.['data-pc-section']);
|
|
353
|
+
return (key !== 'transition' && {
|
|
354
|
+
...(key === 'root' && {
|
|
355
|
+
[`${datasetPrefix}name`]: toFlatCase(isExtended ? this.$pt()?.['data-pc-section'] : this.$name),
|
|
356
|
+
...(isExtended && { [`${datasetPrefix}extend`]: toFlatCase(this.$name) }),
|
|
357
|
+
[`${this.$attrSelector}`]: '' // @todo - use `data-pc-id: this.$attrSelector` instead.
|
|
358
|
+
}),
|
|
359
|
+
[`${datasetPrefix}section`]: toFlatCase(key.includes('.') ? (key.split('.').at(-1) ?? '') : key)
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
_getPTClassValue(options, key, params) {
|
|
363
|
+
const value = this._getOptionValue(options, key, params);
|
|
364
|
+
return isString(value) || isArray(value) ? { class: value } : value;
|
|
365
|
+
}
|
|
366
|
+
_getPT(pt, key = '', callback) {
|
|
367
|
+
const getValue = (value, checkSameKey = false) => {
|
|
368
|
+
const computedValue = callback ? callback(value) : value;
|
|
369
|
+
const _key = toFlatCase(key);
|
|
370
|
+
const _cKey = toFlatCase(this.$hostName || this.$name);
|
|
371
|
+
return (checkSameKey ? (_key !== _cKey ? computedValue?.[_key] : undefined) : computedValue?.[_key]) ?? computedValue;
|
|
372
|
+
};
|
|
373
|
+
return pt?.hasOwnProperty('_usept')
|
|
374
|
+
? {
|
|
375
|
+
_usept: pt['_usept'],
|
|
376
|
+
originalValue: getValue(pt.originalValue),
|
|
377
|
+
value: getValue(pt.value)
|
|
378
|
+
}
|
|
379
|
+
: getValue(pt, true);
|
|
380
|
+
}
|
|
381
|
+
_usePT(pt, callback, key, params) {
|
|
382
|
+
const fn = (value) => callback?.call(this, value, key, params);
|
|
383
|
+
if (pt?.hasOwnProperty('_usept')) {
|
|
384
|
+
const { mergeSections = true, mergeProps: useMergeProps = false } = pt['_usept'] || this.config?.['ptOptions']() || {};
|
|
385
|
+
const originalValue = fn(pt.originalValue);
|
|
386
|
+
const value = fn(pt.value);
|
|
387
|
+
if (originalValue === undefined && value === undefined)
|
|
388
|
+
return undefined;
|
|
389
|
+
else if (isString(value))
|
|
390
|
+
return value;
|
|
391
|
+
else if (isString(originalValue))
|
|
392
|
+
return originalValue;
|
|
393
|
+
return mergeSections || (!mergeSections && value) ? (useMergeProps ? this._mergeProps(useMergeProps, originalValue, value) : { ...originalValue, ...value }) : value;
|
|
394
|
+
}
|
|
395
|
+
return fn(pt);
|
|
396
|
+
}
|
|
397
|
+
_useGlobalPT(callback, key, params) {
|
|
398
|
+
return this._usePT(this.$globalPT, callback, key, params);
|
|
399
|
+
}
|
|
400
|
+
_useDefaultPT(callback, key, params) {
|
|
401
|
+
return this._usePT(this.$defaultPT, callback, key, params);
|
|
402
|
+
}
|
|
403
|
+
/******************** Exposed API ********************/
|
|
404
|
+
ptm(key = '', params = {}) {
|
|
405
|
+
return this._getPTValue(this.$pt(), key, { ...this.$params, ...params });
|
|
406
|
+
}
|
|
407
|
+
ptms(keys, params = {}) {
|
|
408
|
+
return keys.reduce((acc, arg) => {
|
|
409
|
+
acc = mergeProps(acc, this.ptm(arg, params)) || {};
|
|
410
|
+
return acc;
|
|
411
|
+
}, {});
|
|
412
|
+
}
|
|
413
|
+
ptmo(obj = {}, key = '', params = {}) {
|
|
414
|
+
return this._getPTValue(obj, key, { instance: this, ...params }, false);
|
|
415
|
+
}
|
|
416
|
+
cx(key, params = {}) {
|
|
417
|
+
return !this.$unstyled() ? cn(this._getOptionValue(this.$style.classes, key, { ...this.$params, ...params })) : undefined;
|
|
418
|
+
}
|
|
419
|
+
sx(key = '', when = true, params = {}) {
|
|
420
|
+
if (when) {
|
|
421
|
+
const self = this._getOptionValue(this.$style.inlineStyles, key, { ...this.$params, ...params });
|
|
422
|
+
const base = this._getOptionValue(this.baseComponentStyle.inlineStyles, key, { ...this.$params, ...params });
|
|
423
|
+
return { ...base, ...self };
|
|
424
|
+
}
|
|
425
|
+
return undefined;
|
|
426
|
+
}
|
|
427
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
428
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: BaseComponent, isStandalone: true, inputs: { dt: { classPropertyName: "dt", publicName: "dt", isSignal: true, isRequired: false, transformFunction: null }, unstyled: { classPropertyName: "unstyled", publicName: "unstyled", isSignal: true, isRequired: false, transformFunction: null }, pt: { classPropertyName: "pt", publicName: "pt", isSignal: true, isRequired: false, transformFunction: null }, ptOptions: { classPropertyName: "ptOptions", publicName: "ptOptions", isSignal: true, isRequired: false, transformFunction: null } }, providers: [BaseComponentStyle, BaseStyle], usesOnChanges: true, ngImport: i0 });
|
|
429
|
+
}
|
|
430
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: BaseComponent, decorators: [{
|
|
431
|
+
type: Directive,
|
|
432
|
+
args: [{
|
|
433
|
+
standalone: true,
|
|
434
|
+
providers: [BaseComponentStyle, BaseStyle]
|
|
435
|
+
}]
|
|
436
|
+
}], ctorParameters: () => [], propDecorators: { dt: [{ type: i0.Input, args: [{ isSignal: true, alias: "dt", required: false }] }], unstyled: [{ type: i0.Input, args: [{ isSignal: true, alias: "unstyled", required: false }] }], pt: [{ type: i0.Input, args: [{ isSignal: true, alias: "pt", required: false }] }], ptOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "ptOptions", required: false }] }] } });
|
|
437
|
+
|
|
438
|
+
/**
|
|
439
|
+
* Generated bundle index. Do not edit.
|
|
440
|
+
*/
|
|
441
|
+
|
|
442
|
+
export { BaseComponent, BaseComponentStyle, PARENT_INSTANCE };
|
|
443
|
+
//# sourceMappingURL=anguless-angulux-basecomponent.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anguless-angulux-basecomponent.mjs","sources":["../../src/basecomponent/style/basecomponentstyle.ts","../../src/basecomponent/basecomponent.ts","../../src/basecomponent/anguless-angulux-basecomponent.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from '@anguless/angulux/base';\n\n@Injectable({ providedIn: 'root' })\nexport class BaseComponentStyle extends BaseStyle {\n name = 'common';\n}\n","import { DOCUMENT, isPlatformServer } from '@angular/common';\nimport { ChangeDetectorRef, computed, Directive, effect, ElementRef, inject, InjectionToken, Injector, input, PLATFORM_ID, Renderer2, signal, SimpleChanges } from '@angular/core';\nimport { Theme, ThemeService } from '@anguless/angulux-styled';\nimport { cn, getKeyValue, isArray, isFunction, isNotEmpty, isString, mergeProps, resolve, toFlatCase, uuid } from '@anguless/angulux-utils';\nimport type { Lifecycle, PassThroughOptions } from '@anguless/angulux/api';\nimport { Base, BaseStyle } from '@anguless/angulux/base';\nimport { AnguluxConfig } from '@anguless/angulux/config';\nimport { BaseComponentStyle } from './style/basecomponentstyle';\n\nexport const PARENT_INSTANCE = new InjectionToken<BaseComponent>('PARENT_INSTANCE');\n\n@Directive({\n standalone: true,\n providers: [BaseComponentStyle, BaseStyle]\n})\nexport class BaseComponent<PT = any> implements Lifecycle {\n public document: Document = inject(DOCUMENT);\n\n public platformId: any = inject(PLATFORM_ID);\n\n public el: ElementRef = inject(ElementRef);\n\n public readonly injector: Injector = inject(Injector);\n\n public readonly cd: ChangeDetectorRef = inject(ChangeDetectorRef);\n\n public renderer: Renderer2 = inject(Renderer2);\n\n public config: AnguluxConfig = inject(AnguluxConfig);\n\n public $parentInstance: BaseComponent | undefined = inject(PARENT_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n public baseComponentStyle: BaseComponentStyle = inject(BaseComponentStyle);\n\n public baseStyle: BaseStyle = inject(BaseStyle);\n\n public scopedStyleEl: any;\n\n public parent = this.$params.parent;\n\n protected readonly cn = cn;\n\n private _themeScopedListener: () => void;\n\n private themeChangeListenerMap: Map<string, any> = new Map();\n\n /******************** Inputs ********************/\n\n /**\n * Defines scoped design tokens of the component.\n * @defaultValue undefined\n * @group Props\n */\n dt = input<Object | undefined>();\n /**\n * Indicates whether the component should be rendered without styles.\n * @defaultValue undefined\n * @group Props\n */\n unstyled = input<boolean | undefined>();\n /**\n * Used to pass attributes to DOM elements inside the component.\n * @defaultValue undefined\n * @group Props\n */\n pt = input<PT | undefined>();\n /**\n * Used to configure passthrough(pt) options of the component.\n * @group Props\n * @defaultValue undefined\n */\n ptOptions = input<PassThroughOptions | undefined>();\n\n /******************** Computed ********************/\n\n $attrSelector = uuid('pc');\n\n get $name() {\n return this['componentName'] || 'UnknownComponent';\n }\n\n private get $hostName() {\n return this['hostName'];\n }\n\n get $el() {\n return this.el?.nativeElement;\n }\n\n directivePT = signal<any>(undefined);\n\n directiveUnstyled = signal<boolean | undefined>(undefined);\n\n $unstyled = computed(() => {\n return this.unstyled() ?? this.directiveUnstyled() ?? this.config?.unstyled() ?? false;\n });\n\n $pt = computed(() => {\n return resolve(this.pt() || this.directivePT(), this.$params);\n });\n\n get $globalPT() {\n return this._getPT(this.config?.pt(), undefined, (value) => resolve(value, this.$params));\n }\n\n get $defaultPT() {\n return this._getPT(this.config?.pt(), undefined, (value) => this._getOptionValue(value, this.$hostName || this.$name, this.$params) || resolve(value, this.$params));\n }\n\n get $style() {\n return { theme: undefined, css: undefined, classes: undefined, inlineStyles: undefined, ...(this._getHostInstance(this) || {}).$style, ...this['_componentStyle'] };\n }\n\n get $styleOptions() {\n return { nonce: this.config?.csp().nonce };\n }\n\n get $params() {\n const parentInstance = this._getHostInstance(this) || this.$parentInstance;\n\n return {\n instance: this as any,\n parent: {\n instance: parentInstance\n }\n };\n }\n\n /******************** Lifecycle Hooks ********************/\n\n onInit() {\n // NOOP - to be implemented by subclasses\n }\n\n onChanges(changes: SimpleChanges) {\n // NOOP - to be implemented by subclasses\n }\n\n onDoCheck() {\n // NOOP - to be implemented by subclasses\n }\n\n onAfterContentInit() {\n // NOOP - to be implemented by subclasses\n }\n\n onAfterContentChecked() {\n // NOOP - to be implemented by subclasses\n }\n\n onAfterViewInit() {\n // NOOP - to be implemented by subclasses\n }\n\n onAfterViewChecked() {\n // NOOP - to be implemented by subclasses\n }\n\n onDestroy() {\n // NOOP - to be implemented by subclasses\n }\n\n /******************** Angular Lifecycle Hooks ********************/\n\n constructor() {\n // watch _dt_ changes\n effect((onCleanup) => {\n if (this.document && !isPlatformServer(this.platformId)) {\n if (this.dt()) {\n this._loadScopedThemeStyles(this.dt());\n this._themeScopedListener = () => this._loadScopedThemeStyles(this.dt());\n this._themeChangeListener('_themeScopedListener', this._themeScopedListener);\n } else {\n this._unloadScopedThemeStyles();\n }\n }\n\n onCleanup(() => {\n this._offThemeChangeListener('_themeScopedListener');\n });\n });\n\n // watch _unstyled_ changes\n effect((onCleanup) => {\n if (this.document && !isPlatformServer(this.platformId)) {\n if (!this.$unstyled()) {\n this._loadCoreStyles();\n this._themeChangeListener('_loadCoreStyles', this._loadCoreStyles); // Update styles with theme settings\n }\n }\n\n onCleanup(() => {\n this._offThemeChangeListener('_loadCoreStyles');\n });\n });\n\n this._hook('onBeforeInit');\n }\n\n /**\n * ⚠ Do not override ngOnInit!\n *\n * Use 'onInit()' in subclasses instead.\n */\n ngOnInit() {\n this._loadCoreStyles();\n this._loadStyles();\n\n this.onInit();\n this._hook('onInit');\n }\n\n /**\n * ⚠ Do not override ngOnChanges!\n *\n * Use 'onChanges(changes: SimpleChanges)' in subclasses instead.\n */\n ngOnChanges(changes: SimpleChanges) {\n this.onChanges(changes);\n this._hook('onChanges', changes);\n }\n\n /**\n * ⚠ Do not override ngDoCheck!\n *\n * Use 'onDoCheck()' in subclasses instead.\n */\n ngDoCheck() {\n this.onDoCheck();\n this._hook('onDoCheck');\n }\n\n /**\n * ⚠ Do not override ngAfterContentInit!\n *\n * Use 'onAfterContentInit()' in subclasses instead.\n */\n ngAfterContentInit() {\n this.onAfterContentInit();\n this._hook('onAfterContentInit');\n }\n\n /**\n * ⚠ Do not override ngAfterContentChecked!\n *\n * Use 'onAfterContentChecked()' in subclasses instead.\n */\n ngAfterContentChecked() {\n this.onAfterContentChecked();\n this._hook('onAfterContentChecked');\n }\n\n /**\n * ⚠ Do not override ngAfterViewInit!\n *\n * Use 'onAfterViewInit()' in subclasses instead.\n */\n ngAfterViewInit() {\n // @todo - remove this after implementing pt for root\n this.$el?.setAttribute(this.$attrSelector, '');\n\n this.onAfterViewInit();\n this._hook('onAfterViewInit');\n }\n\n /**\n * ⚠ Do not override ngAfterViewChecked!\n *\n * Use 'onAfterViewChecked()' in subclasses instead.\n */\n ngAfterViewChecked() {\n this.onAfterViewChecked();\n this._hook('onAfterViewChecked');\n }\n\n /**\n * ⚠ Do not override ngOnDestroy!\n *\n * Use 'onDestroy()' in subclasses instead.\n */\n ngOnDestroy() {\n this._removeThemeListeners();\n this._unloadScopedThemeStyles();\n\n this.onDestroy();\n this._hook('onDestroy');\n }\n\n /******************** Methods ********************/\n\n private _mergeProps(fn: any, ...args: any[]) {\n return isFunction(fn) ? fn(...args) : mergeProps(...args);\n }\n\n private _getHostInstance(instance: any) {\n return instance ? (this.$hostName ? (this.$name === this.$hostName ? instance : this._getHostInstance(instance.$parentInstance)) : instance.$parentInstance) : undefined;\n }\n\n private _getPropValue(name: string) {\n return this[name] || this._getHostInstance(this)?.[name];\n }\n\n private _getOptionValue(options: any, key = '', params = {}) {\n return getKeyValue(options, key, params);\n }\n\n private _hook(hookName: string, ...args: any[]) {\n if (!this.$hostName) {\n const selfHook = this._usePT(this._getPT(this.$pt(), this.$name), this._getOptionValue, `hooks.${hookName}`);\n const defaultHook = this._useDefaultPT(this._getOptionValue, `hooks.${hookName}`);\n\n selfHook?.(...args);\n defaultHook?.(...args);\n }\n }\n\n /********** Load Styles **********/\n\n private _load() {\n if (!Base.isStyleNameLoaded('base')) {\n this.baseStyle.loadBaseCSS(this.$styleOptions);\n this._loadGlobalStyles();\n\n Base.setLoadedStyleName('base');\n }\n\n this._loadThemeStyles();\n }\n\n private _loadStyles() {\n this._load();\n this._themeChangeListener('_load', () => this._load());\n }\n\n private _loadGlobalStyles() {\n const globalCSS = this._useGlobalPT(this._getOptionValue, 'global.css', this.$params);\n\n isNotEmpty(globalCSS) && this.baseStyle.load(globalCSS, { name: 'global', ...this.$styleOptions });\n }\n\n private _loadCoreStyles() {\n if (!Base.isStyleNameLoaded(this.$style?.name) && this.$style?.name) {\n this.baseComponentStyle.loadCSS(this.$styleOptions);\n this.$style.loadCSS(this.$styleOptions);\n\n Base.setLoadedStyleName(this.$style.name);\n }\n }\n\n private _loadThemeStyles() {\n if (this.$unstyled() || this.config?.theme() === 'none') return;\n\n // common\n if (!Theme.isStyleNameLoaded('common')) {\n const { primitive, semantic, global, style } = this.$style?.getCommonTheme?.() || {};\n\n this.baseStyle.load(primitive?.css, { name: 'primitive-variables', ...this.$styleOptions });\n this.baseStyle.load(semantic?.css, { name: 'semantic-variables', ...this.$styleOptions });\n this.baseStyle.load(global?.css, { name: 'global-variables', ...this.$styleOptions });\n this.baseStyle.loadBaseStyle({ name: 'global-style', ...this.$styleOptions }, style);\n\n Theme.setLoadedStyleName('common');\n }\n\n // component\n if (!Theme.isStyleNameLoaded(this.$style?.name) && this.$style?.name) {\n const { css, style } = this.$style?.getComponentTheme?.() || {};\n\n this.$style?.load(css, { name: `${this.$style?.name}-variables`, ...this.$styleOptions });\n this.$style?.loadStyle({ name: `${this.$style?.name}-style`, ...this.$styleOptions }, style);\n\n Theme.setLoadedStyleName(this.$style?.name);\n }\n\n // layer order\n if (!Theme.isStyleNameLoaded('layer-order')) {\n const layerOrder = this.$style?.getLayerOrderThemeCSS?.();\n\n this.baseStyle.load(layerOrder, { name: 'layer-order', first: true, ...this.$styleOptions });\n Theme.setLoadedStyleName('layer-order');\n }\n }\n\n private _loadScopedThemeStyles(preset) {\n const { css } = this.$style?.getPresetTheme?.(preset, `[${this.$attrSelector}]`) || {};\n const scopedStyle = this.$style?.load(css, { name: `${this.$attrSelector}-${this.$style?.name}`, ...this.$styleOptions });\n\n this.scopedStyleEl = scopedStyle?.el;\n }\n\n private _unloadScopedThemeStyles() {\n this.scopedStyleEl?.remove();\n }\n\n private _themeChangeListener(id: string, callback = () => {}) {\n this._offThemeChangeListener(id);\n Base.clearLoadedStyleNames();\n const hold = callback.bind(this);\n this.themeChangeListenerMap.set(id, hold);\n ThemeService.on('theme:change', hold);\n }\n\n private _removeThemeListeners() {\n this._offThemeChangeListener('_themeScopedListener');\n this._offThemeChangeListener('_loadCoreStyles');\n this._offThemeChangeListener('_load');\n }\n\n private _offThemeChangeListener(id: string) {\n if (this.themeChangeListenerMap.has(id)) {\n ThemeService.off('theme:change', this.themeChangeListenerMap.get(id));\n this.themeChangeListenerMap.delete(id);\n }\n }\n\n /********** Passthrough **********/\n\n private _getPTValue(obj = {}, key = '', params = {}, searchInDefaultPT = true) {\n const searchOut = /./g.test(key) && !!params[key.split('.')[0]];\n const { mergeSections = true, mergeProps: useMergeProps = false } = this._getPropValue('ptOptions')?.() || this.config?.['ptOptions']?.() || {};\n const global = searchInDefaultPT ? (searchOut ? this._useGlobalPT(this._getPTClassValue, key, params) : this._useDefaultPT(this._getPTClassValue, key, params)) : undefined;\n const self = searchOut ? undefined : this._usePT(this._getPT(obj, this.$hostName || this.$name), this._getPTClassValue, key, { ...params, global: global || {} });\n const datasets = this._getPTDatasets(key);\n\n return mergeSections || (!mergeSections && self) ? (useMergeProps ? this._mergeProps(useMergeProps, global, self, datasets) : { ...global, ...self, ...datasets }) : { ...self, ...datasets };\n }\n\n private _getPTDatasets(key = '') {\n const datasetPrefix = 'data-pc-';\n const isExtended = key === 'root' && isNotEmpty(this.$pt()?.['data-pc-section']);\n\n return (\n key !== 'transition' && {\n ...(key === 'root' && {\n [`${datasetPrefix}name`]: toFlatCase(isExtended ? this.$pt()?.['data-pc-section'] : this.$name),\n ...(isExtended && { [`${datasetPrefix}extend`]: toFlatCase(this.$name) }),\n [`${this.$attrSelector}`]: '' // @todo - use `data-pc-id: this.$attrSelector` instead.\n }),\n [`${datasetPrefix}section`]: toFlatCase(key.includes('.') ? (key.split('.').at(-1) ?? '') : key)\n }\n );\n }\n\n private _getPTClassValue(options?: any, key?: any, params?: any) {\n const value = this._getOptionValue(options, key, params);\n\n return isString(value) || isArray(value) ? { class: value } : value;\n }\n\n private _getPT(pt: any, key = '', callback?: any) {\n const getValue = (value, checkSameKey = false) => {\n const computedValue = callback ? callback(value) : value;\n const _key = toFlatCase(key);\n const _cKey = toFlatCase(this.$hostName || this.$name);\n\n return (checkSameKey ? (_key !== _cKey ? computedValue?.[_key] : undefined) : computedValue?.[_key]) ?? computedValue;\n };\n\n return pt?.hasOwnProperty('_usept')\n ? {\n _usept: pt['_usept'],\n originalValue: getValue(pt.originalValue),\n value: getValue(pt.value)\n }\n : getValue(pt, true);\n }\n\n private _usePT(pt: any, callback: any, key: any, params?: any) {\n const fn = (value) => callback?.call(this, value, key, params);\n\n if (pt?.hasOwnProperty('_usept')) {\n const { mergeSections = true, mergeProps: useMergeProps = false } = pt['_usept'] || this.config?.['ptOptions']() || {};\n const originalValue = fn(pt.originalValue);\n const value = fn(pt.value);\n\n if (originalValue === undefined && value === undefined) return undefined;\n else if (isString(value)) return value;\n else if (isString(originalValue)) return originalValue;\n\n return mergeSections || (!mergeSections && value) ? (useMergeProps ? this._mergeProps(useMergeProps, originalValue, value) : { ...originalValue, ...value }) : value;\n }\n\n return fn(pt);\n }\n\n private _useGlobalPT(callback: any, key: any, params?: any) {\n return this._usePT(this.$globalPT, callback, key, params);\n }\n\n private _useDefaultPT(callback: any, key: any, params?: any) {\n return this._usePT(this.$defaultPT, callback, key, params);\n }\n\n /******************** Exposed API ********************/\n\n public ptm(key = '', params = {}) {\n return this._getPTValue(this.$pt() as any, key, { ...this.$params, ...params });\n }\n\n public ptms(keys: string[], params = {}) {\n return keys.reduce((acc, arg) => {\n acc = mergeProps(acc, this.ptm(arg, params)) || {};\n return acc;\n }, {});\n }\n\n public ptmo(obj = {}, key = '', params = {}) {\n return this._getPTValue(obj, key, { instance: this, ...params }, false);\n }\n\n public cx(key: string, params = {}) {\n return !this.$unstyled() ? cn(this._getOptionValue(this.$style.classes, key, { ...this.$params, ...params })) : undefined;\n }\n\n public sx(key = '', when = true, params = {}) {\n if (when) {\n const self = this._getOptionValue(this.$style.inlineStyles, key, { ...this.$params, ...params }) as Record<string, any>;\n const base = this._getOptionValue(this.baseComponentStyle.inlineStyles, key, { ...this.$params, ...params }) as Record<string, any>;\n\n return { ...base, ...self };\n }\n\n return undefined;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, signal, computed, Directive } from '@angular/core';
|
|
3
|
+
import { BaseModelHolder } from '@anguless/angulux/basemodelholder';
|
|
4
|
+
|
|
5
|
+
class BaseEditableHolder extends BaseModelHolder {
|
|
6
|
+
/**
|
|
7
|
+
* There must be a value (if set).
|
|
8
|
+
* @defaultValue false
|
|
9
|
+
* @group Props
|
|
10
|
+
*/
|
|
11
|
+
required = input(undefined, { ...(ngDevMode ? { debugName: "required" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
12
|
+
/**
|
|
13
|
+
* When present, it specifies that the component should have invalid state style.
|
|
14
|
+
* @defaultValue false
|
|
15
|
+
* @group Props
|
|
16
|
+
*/
|
|
17
|
+
invalid = input(undefined, { ...(ngDevMode ? { debugName: "invalid" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
18
|
+
/**
|
|
19
|
+
* When present, it specifies that the component should have disabled state style.
|
|
20
|
+
* @defaultValue false
|
|
21
|
+
* @group Props
|
|
22
|
+
*/
|
|
23
|
+
disabled = input(undefined, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
24
|
+
/**
|
|
25
|
+
* When present, it specifies that the name of the input.
|
|
26
|
+
* @defaultValue undefined
|
|
27
|
+
* @group Props
|
|
28
|
+
*/
|
|
29
|
+
name = input(/* @ts-ignore */
|
|
30
|
+
...(ngDevMode ? [undefined, { debugName: "name" }] : /* istanbul ignore next */ []));
|
|
31
|
+
_disabled = signal(false, /* @ts-ignore */
|
|
32
|
+
...(ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []));
|
|
33
|
+
$disabled = computed(() => this.disabled() || this._disabled(), /* @ts-ignore */
|
|
34
|
+
...(ngDevMode ? [{ debugName: "$disabled" }] : /* istanbul ignore next */ []));
|
|
35
|
+
onModelChange = () => { };
|
|
36
|
+
onModelTouched = () => { };
|
|
37
|
+
writeDisabledState(value) {
|
|
38
|
+
this._disabled.set(value);
|
|
39
|
+
}
|
|
40
|
+
writeControlValue(value, setModelValue) {
|
|
41
|
+
// NOOP - this method should be overridden in the derived classes
|
|
42
|
+
}
|
|
43
|
+
/**** Angular ControlValueAccessors ****/
|
|
44
|
+
writeValue(value) {
|
|
45
|
+
this.writeControlValue(value, this.writeModelValue.bind(this));
|
|
46
|
+
}
|
|
47
|
+
registerOnChange(fn) {
|
|
48
|
+
this.onModelChange = fn;
|
|
49
|
+
}
|
|
50
|
+
registerOnTouched(fn) {
|
|
51
|
+
this.onModelTouched = fn;
|
|
52
|
+
}
|
|
53
|
+
setDisabledState(val) {
|
|
54
|
+
this.writeDisabledState(val);
|
|
55
|
+
this.cd.markForCheck();
|
|
56
|
+
}
|
|
57
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: BaseEditableHolder, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
58
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: BaseEditableHolder, isStandalone: true, inputs: { required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
59
|
+
}
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: BaseEditableHolder, decorators: [{
|
|
61
|
+
type: Directive,
|
|
62
|
+
args: [{ standalone: true }]
|
|
63
|
+
}], propDecorators: { required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }] } });
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Generated bundle index. Do not edit.
|
|
67
|
+
*/
|
|
68
|
+
|
|
69
|
+
export { BaseEditableHolder };
|
|
70
|
+
//# sourceMappingURL=anguless-angulux-baseeditableholder.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anguless-angulux-baseeditableholder.mjs","sources":["../../src/baseeditableholder/baseeditableholder.ts","../../src/baseeditableholder/anguless-angulux-baseeditableholder.ts"],"sourcesContent":["import { booleanAttribute, computed, Directive, input, signal } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\nimport { BaseModelHolder } from '@anguless/angulux/basemodelholder';\n\n@Directive({ standalone: true })\nexport class BaseEditableHolder<PT = any> extends BaseModelHolder<PT> implements ControlValueAccessor {\n /**\n * There must be a value (if set).\n * @defaultValue false\n * @group Props\n */\n required = input(undefined, { transform: booleanAttribute });\n /**\n * When present, it specifies that the component should have invalid state style.\n * @defaultValue false\n * @group Props\n */\n invalid = input(undefined, { transform: booleanAttribute });\n /**\n * When present, it specifies that the component should have disabled state style.\n * @defaultValue false\n * @group Props\n */\n disabled = input(undefined, { transform: booleanAttribute });\n /**\n * When present, it specifies that the name of the input.\n * @defaultValue undefined\n * @group Props\n */\n name = input<string | undefined>();\n\n _disabled = signal<boolean>(false);\n\n $disabled = computed(() => this.disabled() || this._disabled());\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n writeDisabledState(value: boolean) {\n this._disabled.set(value);\n }\n\n writeControlValue(value: any, setModelValue?: (value: any) => void) {\n // NOOP - this method should be overridden in the derived classes\n }\n\n /**** Angular ControlValueAccessors ****/\n writeValue(value: any) {\n this.writeControlValue(value, this.writeModelValue.bind(this));\n }\n\n registerOnChange(fn: Function) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function) {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean) {\n this.writeDisabledState(val);\n this.cd.markForCheck();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;AAKM,MAAO,kBAA6B,SAAQ,eAAmB,CAAA;AACjE;;;;AAIG;IACH,QAAQ,GAAG,KAAK,CAAC,SAAS,gFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAC5D;;;;AAIG;IACH,OAAO,GAAG,KAAK,CAAC,SAAS,+EAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAC3D;;;;AAIG;IACH,QAAQ,GAAG,KAAK,CAAC,SAAS,gFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAC5D;;;;AAIG;AACH,IAAA,IAAI,GAAG,KAAK;wFAAsB;IAElC,SAAS,GAAG,MAAM,CAAU,KAAK;kFAAC;AAElC,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE;kFAAC;AAE/D,IAAA,aAAa,GAAa,MAAK,EAAE,CAAC;AAElC,IAAA,cAAc,GAAa,MAAK,EAAE,CAAC;AAEnC,IAAA,kBAAkB,CAAC,KAAc,EAAA;AAC7B,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;IAC7B;IAEA,iBAAiB,CAAC,KAAU,EAAE,aAAoC,EAAA;;IAElE;;AAGA,IAAA,UAAU,CAAC,KAAU,EAAA;AACjB,QAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClE;AAEA,IAAA,gBAAgB,CAAC,EAAY,EAAA;AACzB,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE;IAC3B;AAEA,IAAA,iBAAiB,CAAC,EAAY,EAAA;AAC1B,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE;IAC5B;AAEA,IAAA,gBAAgB,CAAC,GAAY,EAAA;AACzB,QAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC;AAC5B,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE;IAC1B;uGA1DS,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,SAAS;mBAAC,EAAE,UAAU,EAAE,IAAI,EAAE;;;ACJ/B;;AAEG;;;;"}
|