primeng 18.0.5-lts → 18.0.7-lts
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.md +3 -3
- package/api/translation.d.ts +1 -0
- package/autocomplete/autocomplete.d.ts +1 -1
- package/chips/chips.d.ts +237 -0
- package/chips/chips.interface.d.ts +66 -0
- package/chips/index.d.ts +5 -0
- package/chips/public_api.d.ts +2 -0
- package/chips/style/chipsstyle.d.ts +69 -0
- package/confirmdialog/confirmdialog.d.ts +2 -0
- package/datepicker/datepicker.d.ts +6 -2
- package/dialog/dialog.d.ts +1 -0
- package/dynamicdialog/dynamicdialog-config.d.ts +1 -1
- package/editor/editor.d.ts +25 -4
- package/editor/editor.interface.d.ts +67 -9
- package/esm2022/accordion/accordion.mjs +13 -12
- package/esm2022/api/translation.mjs +1 -1
- package/esm2022/autocomplete/autocomplete.mjs +56 -59
- package/esm2022/base/style/basestyle.mjs +5 -1
- package/esm2022/carousel/carousel.mjs +3 -3
- package/esm2022/chips/chips.interface.mjs +2 -0
- package/esm2022/chips/chips.mjs +827 -0
- package/esm2022/chips/primeng-chips.mjs +5 -0
- package/esm2022/chips/public_api.mjs +3 -0
- package/esm2022/chips/style/chipsstyle.mjs +175 -0
- package/esm2022/config/primeng.mjs +3 -2
- package/esm2022/confirmdialog/confirmdialog.mjs +51 -3
- package/esm2022/contextmenu/contextmenu.mjs +3 -3
- package/esm2022/dataview/dataview.mjs +2 -2
- package/esm2022/datepicker/datepicker.mjs +35 -11
- package/esm2022/datepicker/style/datepickerstyle.mjs +6 -2
- package/esm2022/dialog/dialog.mjs +15 -4
- package/esm2022/dock/dock.mjs +2 -2
- package/esm2022/dynamicdialog/dynamicdialog-config.mjs +2 -2
- package/esm2022/dynamicdialog/dynamicdialog.mjs +6 -2
- package/esm2022/editor/editor.interface.mjs +1 -1
- package/esm2022/editor/editor.mjs +61 -3
- package/esm2022/inputmask/inputmask.mjs +2 -1
- package/esm2022/inputnumber/inputnumber.mjs +13 -5
- package/esm2022/listbox/listbox.mjs +85 -10
- package/esm2022/listbox/style/listboxstyle.mjs +23 -1
- package/esm2022/megamenu/megamenu.mjs +7 -9
- package/esm2022/menu/menu.mjs +3 -2
- package/esm2022/menubar/menubar.mjs +4 -5
- package/esm2022/message/message.mjs +1 -1
- package/esm2022/multiselect/multiselect.interface.mjs +1 -1
- package/esm2022/multiselect/multiselect.mjs +30 -12
- package/esm2022/overlay/overlay.mjs +14 -10
- package/esm2022/panel/panel.mjs +1 -2
- package/esm2022/picklist/picklist.mjs +355 -194
- package/esm2022/radiobutton/radiobutton.mjs +4 -5
- package/esm2022/scroller/scroller.mjs +26 -10
- package/esm2022/select/select.mjs +37 -19
- package/esm2022/selectbutton/selectbutton.mjs +12 -5
- package/esm2022/splitbutton/splitbutton.mjs +9 -28
- package/esm2022/stepper/stepper.mjs +3 -3
- package/esm2022/table/style/tablestyle.mjs +3 -3
- package/esm2022/table/table.mjs +92 -49
- package/esm2022/tabs/tablist.mjs +2 -2
- package/esm2022/tabs/tabs.mjs +3 -3
- package/esm2022/tag/tag.mjs +1 -1
- package/esm2022/terminal/terminal.mjs +22 -12
- package/esm2022/textarea/textarea.mjs +5 -1
- package/esm2022/tieredmenu/style/tieredmenustyle.mjs +13 -32
- package/esm2022/tieredmenu/tieredmenu.mjs +9 -9
- package/esm2022/togglebutton/style/togglebuttonstyle.mjs +2 -2
- package/esm2022/tooltip/tooltip.mjs +2 -2
- package/esm2022/tree/tree.mjs +51 -29
- package/esm2022/treeselect/treeselect.mjs +8 -7
- package/esm2022/treetable/treetable.mjs +11 -11
- package/fesm2022/primeng-accordion.mjs +12 -11
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +55 -58
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs.map +1 -1
- package/fesm2022/primeng-avatargroup.mjs.map +1 -1
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs +4 -0
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs.map +1 -1
- package/fesm2022/primeng-calendar.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-carousel.mjs +2 -2
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-chips.mjs +1006 -0
- package/fesm2022/primeng-chips.mjs.map +1 -0
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-config.mjs +2 -1
- package/fesm2022/primeng-config.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +50 -2
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +2 -2
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +1 -1
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +39 -11
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-defer.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +14 -3
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +1 -1
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dragdrop.mjs.map +1 -1
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +6 -2
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +60 -2
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs.map +1 -1
- package/fesm2022/primeng-fluid.mjs.map +1 -1
- package/fesm2022/primeng-focustrap.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
- package/fesm2022/primeng-icons-ban.mjs.map +1 -1
- package/fesm2022/primeng-icons-bars.mjs.map +1 -1
- package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
- package/fesm2022/primeng-icons-blank.mjs.map +1 -1
- package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
- package/fesm2022/primeng-icons-check.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
- package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
- package/fesm2022/primeng-icons-eye.mjs.map +1 -1
- package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-filter.mjs.map +1 -1
- package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-home.mjs.map +1 -1
- package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-minus.mjs.map +1 -1
- package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
- package/fesm2022/primeng-icons-plus.mjs.map +1 -1
- package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
- package/fesm2022/primeng-icons-search.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
- package/fesm2022/primeng-icons-star.mjs.map +1 -1
- package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
- package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
- package/fesm2022/primeng-icons-times.mjs.map +1 -1
- package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-trash.mjs.map +1 -1
- package/fesm2022/primeng-icons-undo.mjs.map +1 -1
- package/fesm2022/primeng-icons-upload.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
- package/fesm2022/primeng-iftalabel.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-inputgroup.mjs.map +1 -1
- package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
- package/fesm2022/primeng-inputicon.mjs.map +1 -1
- package/fesm2022/primeng-inputmask.mjs +1 -0
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +12 -4
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputswitch.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-inputtextarea.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-knob.mjs.map +1 -1
- package/fesm2022/primeng-listbox.mjs +107 -10
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +6 -8
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +2 -1
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +3 -4
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-messages.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +29 -11
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlay.mjs +13 -9
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
- package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +0 -1
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +354 -193
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-progressspinner.mjs.map +1 -1
- package/fesm2022/primeng-radiobutton.mjs +3 -4
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs.map +1 -1
- package/fesm2022/primeng-scroller.mjs +25 -9
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-select.mjs +36 -18
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +11 -4
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-sidebar.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs.map +1 -1
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +9 -28
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +2 -2
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-styleclass.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +94 -51
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +3 -3
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tabview.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +21 -11
- package/fesm2022/primeng-terminal.mjs.map +1 -1
- package/fesm2022/primeng-textarea.mjs +4 -0
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +21 -40
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +1 -1
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
- package/fesm2022/primeng-toolbar.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs +1 -1
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +50 -28
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +7 -6
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +10 -10
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/inputnumber/inputnumber.d.ts +6 -1
- package/listbox/listbox.d.ts +28 -2
- package/message/message.d.ts +1 -1
- package/multiselect/multiselect.d.ts +11 -3
- package/multiselect/multiselect.interface.d.ts +1 -1
- package/package.json +351 -345
- package/panel/panel.d.ts +0 -1
- package/picklist/picklist.d.ts +2 -2
- package/scroller/scroller.d.ts +4 -0
- package/select/select.d.ts +1 -0
- package/selectbutton/selectbutton.d.ts +1 -0
- package/splitbutton/splitbutton.d.ts +4 -6
- package/table/table.d.ts +13 -3
- package/tag/tag.d.ts +1 -1
- package/terminal/terminal.d.ts +2 -1
- package/textarea/textarea.d.ts +1 -0
- package/tree/tree.d.ts +7 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-textarea.mjs","sources":["../../src/textarea/style/textareastyle.ts","../../src/textarea/textarea.ts","../../src/textarea/primeng-textarea.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-textarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-size: 1rem;\n color: ${dt('textarea.color')};\n background: ${dt('textarea.background')};\n padding: ${dt('textarea.padding.y')} ${dt('textarea.padding.x')};\n border: 1px solid ${dt('textarea.border.color')};\n transition: background ${dt('textarea.transition.duration')}, color ${dt('textarea.transition.duration')}, border-color ${dt('textarea.transition.duration')}, outline-color ${dt('textarea.transition.duration')}, box-shadow ${dt(\n 'textarea.transition.duration'\n )};\n appearance: none;\n border-radius: ${dt('textarea.border.radius')};\n outline-color: transparent;\n box-shadow: ${dt('textarea.shadow')};\n}\n\n.p-textarea.ng-invalid.ng-dirty {\n border-color: ${dt('textarea.invalid.border.color')}\n};\n\n.p-textarea:enabled:hover {\n border-color: ${dt('textarea.hover.border.color')};\n}\n\n.p-textarea:enabled:focus {\n border-color: ${dt('textarea.focus.border.color')};\n box-shadow: ${dt('textarea.focus.ring.shadow')};\n outline: ${dt('textarea.focus.ring.width')} ${dt('textarea.focus.ring.style')} ${dt('textarea.focus.ring.color')};\n outline-offset: ${dt('textarea.focus.ring.offset')};\n}\n\n.p-textarea.p-invalid {\n border-color: ${dt('textarea.invalid.border.color')};\n}\n\n.p-textarea.p-variant-filled {\n background: ${dt('textarea.filled.background')};\n}\n\n.p-textarea.p-variant-filled:enabled:focus {\n background: ${dt('textarea.filled.focus.background')};\n}\n\n.p-textarea:disabled {\n opacity: 1;\n background: ${dt('textarea.disabled.background')};\n color: ${dt('textarea.disabled.color')};\n}\n\n.p-textarea::placeholder {\n color: ${dt('textarea.placeholder.color')};\n}\n\n.p-textarea.ng-invalid.ng-dirty::placeholder {\n color: ${dt('textarea.invalid.placeholder.color')};\n}\n\n.p-textarea-fluid {\n width: 100%;\n}\n\n.p-textarea-resizable {\n overflow: hidden;\n resize: none;\n}\n\n.p-textarea-sm {\n font-size: ${dt('textarea.sm.font.size')};\n padding-block: ${dt('textarea.sm.padding.y')};\n padding-inline: ${dt('textarea.sm.padding.x')};\n}\n\n.p-textarea-lg {\n font-size: ${dt('textarea.lg.font.size')};\n padding-block: ${dt('textarea.lg.padding.y')};\n padding-inline: ${dt('textarea.lg.padding.x')};\n}\n`;\n\nconst classes = {\n root: ({ instance, props }) => [\n 'p-textarea p-component',\n {\n 'p-filled': instance.filled,\n 'p-textarea-resizable ': props.autoResize,\n 'p-invalid': props.invalid,\n 'p-variant-filled': props.variant ? props.variant === 'filled' : instance.config.inputStyle === 'filled' || instance.config.inputVariant === 'filled',\n 'p-textarea-fluid': props.fluid\n }\n ]\n};\n\n@Injectable()\nexport class TextareaStyle extends BaseStyle {\n name = 'textarea';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Textarea is a multi-line text input element.\n *\n * [Live Demo](https://www.primeng.org/textarea/)\n *\n * @module textareastyle\n *\n */\nexport enum TextareaClasses {\n /**\n * Class name of the root element\n */\n root = 'p-textarea'\n}\n\nexport interface TextareaStyle extends BaseStyle {}\n","import { AfterViewInit, booleanAttribute, Directive, EventEmitter, HostListener, inject, Input, NgModule, OnDestroy, OnInit, Optional, Output } from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Subscription } from 'rxjs';\nimport { TextareaStyle } from './style/textareastyle';\n\n/**\n * Textarea adds styling and autoResize functionality to standard textarea element.\n * @group Components\n */\n@Directive({\n selector: '[pTextarea]',\n standalone: true,\n host: {\n class: 'p-textarea p-component',\n '[class.p-filled]': 'filled',\n '[class.p-textarea-resizable]': 'autoResize',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-textarea-fluid]': 'hasFluid',\n '[class.p-textarea-sm]': 'pSize === \"small\"',\n '[class.p-inputfield-sm]': 'pSize === \"small\"',\n '[class.p-textarea-lg]': 'pSize === \"large\"',\n '[class.p-inputfield-lg]': 'pSize === \"large\"'\n },\n providers: [TextareaStyle]\n})\nexport class Textarea extends BaseComponent implements OnInit, AfterViewInit, OnDestroy {\n /**\n * When present, textarea size changes as being typed.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoResize: boolean | undefined;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean = false;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() pSize: 'large' | 'small';\n /**\n * Callback to invoke on textarea resize.\n * @param {(Event | {})} event - Custom resize event.\n * @group Emits\n */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n filled: boolean | undefined;\n\n cachedScrollHeight: number | undefined;\n\n ngModelSubscription: Subscription | undefined;\n\n ngControlSubscription: Subscription | undefined;\n\n _componentStyle = inject(TextareaStyle);\n\n constructor(\n @Optional() public ngModel: NgModel,\n @Optional() public control: NgControl\n ) {\n super();\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.ngModel) {\n this.ngModelSubscription = (this.ngModel as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n\n if (this.control) {\n this.ngControlSubscription = (this.control as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n }\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.autoResize) this.resize();\n\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n\n updateState() {\n this.updateFilledState();\n\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngOnDestroy() {\n if (this.ngModelSubscription) {\n this.ngModelSubscription.unsubscribe();\n }\n\n if (this.ngControlSubscription) {\n this.ngControlSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Textarea],\n exports: [Textarea]\n})\nexport class TextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-textarea.mjs","sources":["../../src/textarea/style/textareastyle.ts","../../src/textarea/textarea.ts","../../src/textarea/primeng-textarea.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-textarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-size: 1rem;\n color: ${dt('textarea.color')};\n background: ${dt('textarea.background')};\n padding: ${dt('textarea.padding.y')} ${dt('textarea.padding.x')};\n border: 1px solid ${dt('textarea.border.color')};\n transition: background ${dt('textarea.transition.duration')}, color ${dt('textarea.transition.duration')}, border-color ${dt('textarea.transition.duration')}, outline-color ${dt('textarea.transition.duration')}, box-shadow ${dt(\n 'textarea.transition.duration'\n )};\n appearance: none;\n border-radius: ${dt('textarea.border.radius')};\n outline-color: transparent;\n box-shadow: ${dt('textarea.shadow')};\n}\n\n.p-textarea.ng-invalid.ng-dirty {\n border-color: ${dt('textarea.invalid.border.color')}\n};\n\n.p-textarea:enabled:hover {\n border-color: ${dt('textarea.hover.border.color')};\n}\n\n.p-textarea:enabled:focus {\n border-color: ${dt('textarea.focus.border.color')};\n box-shadow: ${dt('textarea.focus.ring.shadow')};\n outline: ${dt('textarea.focus.ring.width')} ${dt('textarea.focus.ring.style')} ${dt('textarea.focus.ring.color')};\n outline-offset: ${dt('textarea.focus.ring.offset')};\n}\n\n.p-textarea.p-invalid {\n border-color: ${dt('textarea.invalid.border.color')};\n}\n\n.p-textarea.p-variant-filled {\n background: ${dt('textarea.filled.background')};\n}\n\n.p-textarea.p-variant-filled:enabled:focus {\n background: ${dt('textarea.filled.focus.background')};\n}\n\n.p-textarea:disabled {\n opacity: 1;\n background: ${dt('textarea.disabled.background')};\n color: ${dt('textarea.disabled.color')};\n}\n\n.p-textarea::placeholder {\n color: ${dt('textarea.placeholder.color')};\n}\n\n.p-textarea.ng-invalid.ng-dirty::placeholder {\n color: ${dt('textarea.invalid.placeholder.color')};\n}\n\n.p-textarea-fluid {\n width: 100%;\n}\n\n.p-textarea-resizable {\n overflow: hidden;\n resize: none;\n}\n\n.p-textarea-sm {\n font-size: ${dt('textarea.sm.font.size')};\n padding-block: ${dt('textarea.sm.padding.y')};\n padding-inline: ${dt('textarea.sm.padding.x')};\n}\n\n.p-textarea-lg {\n font-size: ${dt('textarea.lg.font.size')};\n padding-block: ${dt('textarea.lg.padding.y')};\n padding-inline: ${dt('textarea.lg.padding.x')};\n}\n`;\n\nconst classes = {\n root: ({ instance, props }) => [\n 'p-textarea p-component',\n {\n 'p-filled': instance.filled,\n 'p-textarea-resizable ': props.autoResize,\n 'p-invalid': props.invalid,\n 'p-variant-filled': props.variant ? props.variant === 'filled' : instance.config.inputStyle === 'filled' || instance.config.inputVariant === 'filled',\n 'p-textarea-fluid': props.fluid\n }\n ]\n};\n\n@Injectable()\nexport class TextareaStyle extends BaseStyle {\n name = 'textarea';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Textarea is a multi-line text input element.\n *\n * [Live Demo](https://www.primeng.org/textarea/)\n *\n * @module textareastyle\n *\n */\nexport enum TextareaClasses {\n /**\n * Class name of the root element\n */\n root = 'p-textarea'\n}\n\nexport interface TextareaStyle extends BaseStyle {}\n","import { AfterViewInit, booleanAttribute, Directive, EventEmitter, HostListener, inject, Input, NgModule, OnDestroy, OnInit, Optional, Output } from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Subscription } from 'rxjs';\nimport { TextareaStyle } from './style/textareastyle';\n\n/**\n * Textarea adds styling and autoResize functionality to standard textarea element.\n * @group Components\n */\n@Directive({\n selector: '[pTextarea]',\n standalone: true,\n host: {\n class: 'p-textarea p-component',\n '[class.p-filled]': 'filled',\n '[class.p-textarea-resizable]': 'autoResize',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-textarea-fluid]': 'hasFluid',\n '[class.p-textarea-sm]': 'pSize === \"small\"',\n '[class.p-inputfield-sm]': 'pSize === \"small\"',\n '[class.p-textarea-lg]': 'pSize === \"large\"',\n '[class.p-inputfield-lg]': 'pSize === \"large\"'\n },\n providers: [TextareaStyle]\n})\nexport class Textarea extends BaseComponent implements OnInit, AfterViewInit, OnDestroy {\n /**\n * When present, textarea size changes as being typed.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoResize: boolean | undefined;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean = false;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() pSize: 'large' | 'small';\n /**\n * Callback to invoke on textarea resize.\n * @param {(Event | {})} event - Custom resize event.\n * @group Emits\n */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n filled: boolean | undefined;\n\n cachedScrollHeight: number | undefined;\n\n ngModelSubscription: Subscription | undefined;\n\n ngControlSubscription: Subscription | undefined;\n\n _componentStyle = inject(TextareaStyle);\n\n constructor(\n @Optional() public ngModel: NgModel,\n @Optional() public control: NgControl\n ) {\n super();\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.ngModel) {\n this.ngModelSubscription = (this.ngModel as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n\n if (this.control) {\n this.ngControlSubscription = (this.control as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n }\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.autoResize) this.resize();\n\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n ngAfterViewChecked() {\n if (this.autoResize) this.resize();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n\n updateState() {\n this.updateFilledState();\n\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngOnDestroy() {\n if (this.ngModelSubscription) {\n this.ngModelSubscription.unsubscribe();\n }\n\n if (this.ngControlSubscription) {\n this.ngControlSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Textarea],\n exports: [Textarea]\n})\nexport class TextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -2,10 +2,10 @@ import { trigger, transition, style, animate } from '@angular/animations';
|
|
2
2
|
import * as i1 from '@angular/common';
|
3
3
|
import { isPlatformBrowser, CommonModule } from '@angular/common';
|
4
4
|
import * as i0 from '@angular/core';
|
5
|
-
import { Injectable, input, EventEmitter,
|
5
|
+
import { Injectable, input, EventEmitter, forwardRef, numberAttribute, booleanAttribute, ViewEncapsulation, Component, Inject, ViewChild, Output, Input, signal, inject, effect, ChangeDetectionStrategy, ContentChildren, ContentChild, NgModule } from '@angular/core';
|
6
6
|
import * as i2 from '@angular/router';
|
7
7
|
import { RouterModule } from '@angular/router';
|
8
|
-
import {
|
8
|
+
import { nestedPosition, resolve, isNotEmpty, uuid, isEmpty, focus, isTouchDevice, isPrintableCharacter, findSingle, addStyle, relativePosition, absolutePosition, getOuterWidth, appendChild, findLastIndex } from '@primeuix/utils';
|
9
9
|
import * as i4 from 'primeng/api';
|
10
10
|
import { SharedModule, PrimeTemplate } from 'primeng/api';
|
11
11
|
import { BaseComponent } from 'primeng/basecomponent';
|
@@ -133,11 +133,10 @@ const theme = ({ dt }) => `
|
|
133
133
|
}
|
134
134
|
|
135
135
|
.p-tieredmenu-separator {
|
136
|
-
border-
|
136
|
+
border-block-start: 1px solid ${dt('tieredmenu.separator.border.color')};
|
137
137
|
}
|
138
138
|
|
139
139
|
.p-tieredmenu-overlay {
|
140
|
-
position: absolute;
|
141
140
|
box-shadow: ${dt('tieredmenu.shadow')};
|
142
141
|
}
|
143
142
|
|
@@ -149,46 +148,28 @@ const theme = ({ dt }) => `
|
|
149
148
|
.p-tieredmenu-enter-active {
|
150
149
|
transition: opacity 250ms;
|
151
150
|
}
|
152
|
-
.p-tieredmenu-mobile {
|
153
|
-
position: relative;
|
154
|
-
}
|
155
|
-
|
156
|
-
.p-tieredmenu-mobile .p-tieredmenu-button {
|
157
|
-
display: flex;
|
158
|
-
}
|
159
151
|
|
160
|
-
.p-tieredmenu-mobile .p-tieredmenu-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
}
|
167
|
-
|
168
|
-
.p-tieredmenu-mobile .p-tieredmenu-root-list > .p-tieredmenu-item > .p-tieredmenu-item-content .p-tieredmenu-submenu-icon {
|
169
|
-
margin-left: auto;
|
170
|
-
transition: transform 0.2s;
|
152
|
+
.p-tieredmenu-mobile .p-tieredmenu-submenu {
|
153
|
+
position: static;
|
154
|
+
box-shadow: none;
|
155
|
+
border: 0 none;
|
156
|
+
padding-inline-start: ${dt('tieredmenu.submenu.mobile.indent')};
|
157
|
+
padding-inline-end: 0;
|
171
158
|
}
|
172
159
|
|
173
|
-
.p-tieredmenu-mobile .p-tieredmenu-
|
174
|
-
|
160
|
+
.p-tieredmenu-mobile .p-tieredmenu-submenu:dir(rtl) {
|
161
|
+
padding-inline-start: 0;
|
162
|
+
padding-inline-end: ${dt('tieredmenu.submenu.mobile.indent')};
|
175
163
|
}
|
176
164
|
|
177
|
-
.p-tieredmenu-mobile .p-tieredmenu-submenu
|
165
|
+
.p-tieredmenu-mobile .p-tieredmenu-submenu-icon {
|
178
166
|
transition: transform 0.2s;
|
179
167
|
transform: rotate(90deg);
|
180
168
|
}
|
181
169
|
|
182
|
-
.p-tieredmenu-mobile
|
170
|
+
.p-tieredmenu-mobile .p-tieredmenu-item-active > .p-tieredmenu-item-content .p-tieredmenu-submenu-icon {
|
183
171
|
transform: rotate(-90deg);
|
184
172
|
}
|
185
|
-
|
186
|
-
.p-tieredmenu-mobile .p-tieredmenu-submenu {
|
187
|
-
position: static;
|
188
|
-
box-shadow: none;
|
189
|
-
border: 0 none;
|
190
|
-
padding-left: ${dt('tieredmenu.submenu.mobile.indent')};
|
191
|
-
}
|
192
173
|
`;
|
193
174
|
const inlineStyles = {
|
194
175
|
submenu: ({ instance, processedItem }) => ({ display: instance.isItemActive(processedItem) ? 'flex' : 'none' })
|
@@ -587,12 +568,6 @@ class TieredMenuSub extends BaseComponent {
|
|
587
568
|
this.el = el;
|
588
569
|
this.renderer = renderer;
|
589
570
|
this.tieredMenu = tieredMenu;
|
590
|
-
effect(() => {
|
591
|
-
const path = this.activeItemPath();
|
592
|
-
if (isNotEmpty(path)) {
|
593
|
-
this.positionSubmenu();
|
594
|
-
}
|
595
|
-
});
|
596
571
|
}
|
597
572
|
positionSubmenu() {
|
598
573
|
if (isPlatformBrowser(this.tieredMenu.platformId)) {
|
@@ -646,6 +621,7 @@ class TieredMenuSub extends BaseComponent {
|
|
646
621
|
}
|
647
622
|
isItemActive(processedItem) {
|
648
623
|
if (this.activeItemPath()) {
|
624
|
+
this.positionSubmenu();
|
649
625
|
return this.activeItemPath().some((path) => path.key === processedItem.key);
|
650
626
|
}
|
651
627
|
}
|
@@ -1318,7 +1294,7 @@ class TieredMenu extends BaseComponent {
|
|
1318
1294
|
onEnterKey(event) {
|
1319
1295
|
if (this.focusedItemInfo().index !== -1) {
|
1320
1296
|
const element = findSingle(this.rootmenu.el.nativeElement, `li[id="${`${this.focusedItemId}`}"]`);
|
1321
|
-
const anchorElement = element && findSingle(element, '
|
1297
|
+
const anchorElement = element && (findSingle(element, '[data-pc-section="action"]') || findSingle(element, 'a,button'));
|
1322
1298
|
anchorElement ? anchorElement.click() : element && element.click();
|
1323
1299
|
if (!this.popup) {
|
1324
1300
|
const processedItem = this.visibleItems[this.focusedItemInfo().index];
|
@@ -1363,6 +1339,7 @@ class TieredMenu extends BaseComponent {
|
|
1363
1339
|
this.container = event.element;
|
1364
1340
|
this.moveOnTop();
|
1365
1341
|
this.onShow.emit({});
|
1342
|
+
addStyle(this.containerViewChild.nativeElement, { position: 'absolute', top: 0 });
|
1366
1343
|
this.appendOverlay();
|
1367
1344
|
this.alignOverlay();
|
1368
1345
|
this.bindOutsideClickListener();
|
@@ -1383,6 +1360,10 @@ class TieredMenu extends BaseComponent {
|
|
1383
1360
|
relativePosition(this.container, this.target);
|
1384
1361
|
else
|
1385
1362
|
absolutePosition(this.container, this.target);
|
1363
|
+
const targetWidth = getOuterWidth(this.target);
|
1364
|
+
if (targetWidth > getOuterWidth(this.container)) {
|
1365
|
+
this.container.style.minWidth = getOuterWidth(this.target) + 'px';
|
1366
|
+
}
|
1386
1367
|
}
|
1387
1368
|
onOverlayAnimationEnd(event) {
|
1388
1369
|
switch (event.toState) {
|