@gravionlabs/helix-core 22.1.2 → 22.1.3
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/fesm2022/gravionlabs-helix-core-accordion.mjs +994 -541
- package/fesm2022/gravionlabs-helix-core-accordion.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-animateonscroll.mjs +265 -166
- package/fesm2022/gravionlabs-helix-core-animateonscroll.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-api.mjs +926 -836
- package/fesm2022/gravionlabs-helix-core-api.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-autocomplete.mjs +2603 -1611
- package/fesm2022/gravionlabs-helix-core-autocomplete.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-autofocus.mjs +115 -79
- package/fesm2022/gravionlabs-helix-core-autofocus.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-avatar.mjs +356 -180
- package/fesm2022/gravionlabs-helix-core-avatar.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-avatargroup.mjs +200 -84
- package/fesm2022/gravionlabs-helix-core-avatargroup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-badge.mjs +671 -390
- package/fesm2022/gravionlabs-helix-core-badge.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-base.mjs +113 -103
- package/fesm2022/gravionlabs-helix-core-base.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-basecomponent.mjs +498 -444
- package/fesm2022/gravionlabs-helix-core-basecomponent.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-baseeditableholder.mjs +131 -69
- package/fesm2022/gravionlabs-helix-core-baseeditableholder.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-baseinput.mjs +210 -94
- package/fesm2022/gravionlabs-helix-core-baseinput.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-basemodelholder.mjs +39 -26
- package/fesm2022/gravionlabs-helix-core-basemodelholder.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-bind.mjs +136 -98
- package/fesm2022/gravionlabs-helix-core-bind.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-blockui.mjs +390 -224
- package/fesm2022/gravionlabs-helix-core-blockui.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-breadcrumb.mjs +473 -212
- package/fesm2022/gravionlabs-helix-core-breadcrumb.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-button.mjs +1739 -825
- package/fesm2022/gravionlabs-helix-core-button.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-buttongroup.mjs +116 -64
- package/fesm2022/gravionlabs-helix-core-buttongroup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-card.mjs +454 -205
- package/fesm2022/gravionlabs-helix-core-card.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-carousel.mjs +1238 -898
- package/fesm2022/gravionlabs-helix-core-carousel.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-cascadeselect.mjs +2373 -1337
- package/fesm2022/gravionlabs-helix-core-cascadeselect.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-chart.mjs +407 -214
- package/fesm2022/gravionlabs-helix-core-chart.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-checkbox.mjs +704 -346
- package/fesm2022/gravionlabs-helix-core-checkbox.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-chip.mjs +489 -251
- package/fesm2022/gravionlabs-helix-core-chip.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-classnames.mjs +95 -48
- package/fesm2022/gravionlabs-helix-core-classnames.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-colorpicker.mjs +975 -667
- package/fesm2022/gravionlabs-helix-core-colorpicker.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-config.mjs +395 -306
- package/fesm2022/gravionlabs-helix-core-config.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-confirmdialog.mjs +1222 -546
- package/fesm2022/gravionlabs-helix-core-confirmdialog.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-confirmpopup.mjs +878 -524
- package/fesm2022/gravionlabs-helix-core-confirmpopup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-contextmenu.mjs +1917 -1031
- package/fesm2022/gravionlabs-helix-core-contextmenu.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-dataview.mjs +1075 -522
- package/fesm2022/gravionlabs-helix-core-dataview.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-datepicker.mjs +3797 -3313
- package/fesm2022/gravionlabs-helix-core-datepicker.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-dialog.mjs +1852 -1047
- package/fesm2022/gravionlabs-helix-core-dialog.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-divider.mjs +288 -136
- package/fesm2022/gravionlabs-helix-core-divider.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-dock.mjs +655 -387
- package/fesm2022/gravionlabs-helix-core-dock.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-dom.mjs +589 -760
- package/fesm2022/gravionlabs-helix-core-dom.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-dragdrop.mjs +457 -302
- package/fesm2022/gravionlabs-helix-core-dragdrop.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-drawer.mjs +986 -507
- package/fesm2022/gravionlabs-helix-core-drawer.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-dynamicdialog.mjs +849 -923
- package/fesm2022/gravionlabs-helix-core-dynamicdialog.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-editor.mjs +578 -383
- package/fesm2022/gravionlabs-helix-core-editor.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-fieldset.mjs +593 -280
- package/fesm2022/gravionlabs-helix-core-fieldset.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-fileupload.mjs +1882 -994
- package/fesm2022/gravionlabs-helix-core-fileupload.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-firsterror.mjs +41 -23
- package/fesm2022/gravionlabs-helix-core-firsterror.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-floatlabel.mjs +197 -94
- package/fesm2022/gravionlabs-helix-core-floatlabel.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-fluid.mjs +149 -74
- package/fesm2022/gravionlabs-helix-core-fluid.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-focustrap.mjs +141 -104
- package/fesm2022/gravionlabs-helix-core-focustrap.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-galleria.mjs +2800 -1449
- package/fesm2022/gravionlabs-helix-core-galleria.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-iconfield.mjs +214 -98
- package/fesm2022/gravionlabs-helix-core-iconfield.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angledoubledown.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angledoubledown.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angledoubleleft.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angledoubleleft.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angledoubleright.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angledoubleright.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angledoubleup.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angledoubleup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angledown.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angledown.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angleleft.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angleleft.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angleright.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angleright.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-angleup.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-angleup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-arrowdown.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-arrowdown.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-arrowdownleft.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-arrowdownleft.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-arrowdownright.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-arrowdownright.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-arrowleft.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-arrowleft.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-arrowright.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-arrowright.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-arrowup.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-arrowup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-ban.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-ban.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-bars.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-bars.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-baseicon.mjs +120 -64
- package/fesm2022/gravionlabs-helix-core-icons-baseicon.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-blank.mjs +42 -23
- package/fesm2022/gravionlabs-helix-core-icons-blank.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-calendar.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-calendar.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-caretleft.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-caretleft.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-caretright.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-caretright.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-check.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-check.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-chevrondown.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-chevrondown.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-chevronleft.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-chevronleft.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-chevronright.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-chevronright.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-chevronup.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-chevronup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-exclamationtriangle.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-exclamationtriangle.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-eye.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-eye.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-eyeslash.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-eyeslash.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-filter.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-filter.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-filterfill.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-filterfill.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-filterslash.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-filterslash.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-home.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-home.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-infocircle.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-infocircle.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-minus.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-minus.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-pencil.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-pencil.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-plus.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-plus.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-refresh.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-refresh.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-search.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-search.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-searchminus.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-searchminus.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-searchplus.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-searchplus.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-sortalt.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-sortalt.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-sortamountdown.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-sortamountdown.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-sortamountupalt.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-sortamountupalt.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-spinner.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-spinner.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-star.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-star.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-starfill.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-starfill.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-thlarge.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-thlarge.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-times.mjs +43 -24
- package/fesm2022/gravionlabs-helix-core-icons-times.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-timescircle.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-timescircle.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-trash.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-trash.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-undo.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-undo.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-upload.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-upload.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-windowmaximize.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-windowmaximize.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons-windowminimize.mjs +48 -29
- package/fesm2022/gravionlabs-helix-core-icons-windowminimize.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-icons.mjs +53 -63
- package/fesm2022/gravionlabs-helix-core-iftalabel.mjs +175 -81
- package/fesm2022/gravionlabs-helix-core-iftalabel.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-image.mjs +1089 -552
- package/fesm2022/gravionlabs-helix-core-image.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-imagecompare.mjs +348 -165
- package/fesm2022/gravionlabs-helix-core-imagecompare.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inplace.mjs +591 -249
- package/fesm2022/gravionlabs-helix-core-inplace.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inputgroup.mjs +175 -91
- package/fesm2022/gravionlabs-helix-core-inputgroup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inputgroupaddon.mjs +196 -73
- package/fesm2022/gravionlabs-helix-core-inputgroupaddon.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inputicon.mjs +207 -70
- package/fesm2022/gravionlabs-helix-core-inputicon.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inputmask.mjs +1581 -1330
- package/fesm2022/gravionlabs-helix-core-inputmask.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inputnumber.mjs +1696 -1294
- package/fesm2022/gravionlabs-helix-core-inputnumber.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inputotp.mjs +576 -363
- package/fesm2022/gravionlabs-helix-core-inputotp.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-inputtext.mjs +344 -183
- package/fesm2022/gravionlabs-helix-core-inputtext.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-keyfilter.mjs +291 -252
- package/fesm2022/gravionlabs-helix-core-keyfilter.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-knob.mjs +642 -396
- package/fesm2022/gravionlabs-helix-core-knob.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-listbox.mjs +2354 -1401
- package/fesm2022/gravionlabs-helix-core-listbox.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-megamenu.mjs +1913 -1052
- package/fesm2022/gravionlabs-helix-core-megamenu.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-menu.mjs +1392 -767
- package/fesm2022/gravionlabs-helix-core-menu.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-menubar.mjs +1857 -984
- package/fesm2022/gravionlabs-helix-core-menubar.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-message.mjs +605 -288
- package/fesm2022/gravionlabs-helix-core-message.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-metergroup.mjs +719 -323
- package/fesm2022/gravionlabs-helix-core-metergroup.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-motion.mjs +1178 -694
- package/fesm2022/gravionlabs-helix-core-motion.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-multiselect.mjs +3437 -1839
- package/fesm2022/gravionlabs-helix-core-multiselect.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-orderlist.mjs +1426 -753
- package/fesm2022/gravionlabs-helix-core-orderlist.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-organizationchart.mjs +755 -371
- package/fesm2022/gravionlabs-helix-core-organizationchart.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-overlay.mjs +984 -600
- package/fesm2022/gravionlabs-helix-core-overlay.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-overlaybadge.mjs +310 -107
- package/fesm2022/gravionlabs-helix-core-overlaybadge.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-paginator.mjs +1076 -564
- package/fesm2022/gravionlabs-helix-core-paginator.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-panel.mjs +759 -364
- package/fesm2022/gravionlabs-helix-core-panel.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-panelmenu.mjs +1909 -888
- package/fesm2022/gravionlabs-helix-core-panelmenu.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-passthrough.mjs +10 -18
- package/fesm2022/gravionlabs-helix-core-passthrough.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-password.mjs +1624 -894
- package/fesm2022/gravionlabs-helix-core-password.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-picklist.mjs +2415 -1359
- package/fesm2022/gravionlabs-helix-core-picklist.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-popover.mjs +708 -442
- package/fesm2022/gravionlabs-helix-core-popover.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-progressbar.mjs +380 -170
- package/fesm2022/gravionlabs-helix-core-progressbar.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-progressspinner.mjs +276 -121
- package/fesm2022/gravionlabs-helix-core-progressspinner.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-radiobutton.mjs +525 -291
- package/fesm2022/gravionlabs-helix-core-radiobutton.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-rating.mjs +529 -286
- package/fesm2022/gravionlabs-helix-core-rating.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-ripple.mjs +194 -175
- package/fesm2022/gravionlabs-helix-core-ripple.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-scroller.mjs +1384 -977
- package/fesm2022/gravionlabs-helix-core-scroller.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-scrollpanel.mjs +605 -458
- package/fesm2022/gravionlabs-helix-core-scrollpanel.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-scrolltop.mjs +565 -261
- package/fesm2022/gravionlabs-helix-core-scrolltop.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-select.mjs +2959 -1644
- package/fesm2022/gravionlabs-helix-core-select.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-selectbutton.mjs +644 -335
- package/fesm2022/gravionlabs-helix-core-selectbutton.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-skeleton.mjs +315 -160
- package/fesm2022/gravionlabs-helix-core-skeleton.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-slider.mjs +839 -630
- package/fesm2022/gravionlabs-helix-core-slider.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-speeddial.mjs +1183 -700
- package/fesm2022/gravionlabs-helix-core-speeddial.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-splitbutton.mjs +977 -375
- package/fesm2022/gravionlabs-helix-core-splitbutton.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-splitter.mjs +737 -509
- package/fesm2022/gravionlabs-helix-core-splitter.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-stepper.mjs +1397 -628
- package/fesm2022/gravionlabs-helix-core-stepper.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-steps.mjs +457 -272
- package/fesm2022/gravionlabs-helix-core-steps.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-styleclass.mjs +466 -344
- package/fesm2022/gravionlabs-helix-core-styleclass.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-table.mjs +9728 -5590
- package/fesm2022/gravionlabs-helix-core-table.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-tabs.mjs +1350 -735
- package/fesm2022/gravionlabs-helix-core-tabs.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-tag.mjs +343 -154
- package/fesm2022/gravionlabs-helix-core-tag.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-terminal.mjs +384 -214
- package/fesm2022/gravionlabs-helix-core-terminal.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-textarea.mjs +347 -209
- package/fesm2022/gravionlabs-helix-core-textarea.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-themes-aura.mjs +4846 -5618
- package/fesm2022/gravionlabs-helix-core-themes-aura.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-themes-lara.mjs +4961 -5809
- package/fesm2022/gravionlabs-helix-core-themes-lara.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-themes-nora.mjs +4780 -5567
- package/fesm2022/gravionlabs-helix-core-themes-nora.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-themes-types.mjs +0 -700
- package/fesm2022/gravionlabs-helix-core-themes.mjs +4 -9
- package/fesm2022/gravionlabs-helix-core-themes.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-tieredmenu.mjs +1967 -1048
- package/fesm2022/gravionlabs-helix-core-tieredmenu.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-timeline.mjs +370 -185
- package/fesm2022/gravionlabs-helix-core-timeline.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-toast.mjs +1083 -526
- package/fesm2022/gravionlabs-helix-core-toast.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-togglebutton.mjs +609 -315
- package/fesm2022/gravionlabs-helix-core-togglebutton.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-toggleswitch.mjs +504 -246
- package/fesm2022/gravionlabs-helix-core-toggleswitch.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-toolbar.mjs +350 -149
- package/fesm2022/gravionlabs-helix-core-toolbar.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-tooltip.mjs +1035 -795
- package/fesm2022/gravionlabs-helix-core-tooltip.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-tree.mjs +2673 -1668
- package/fesm2022/gravionlabs-helix-core-tree.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-treeselect.mjs +1773 -976
- package/fesm2022/gravionlabs-helix-core-treeselect.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-treetable.mjs +5963 -3647
- package/fesm2022/gravionlabs-helix-core-treetable.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-ts-helpers.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-accordion.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-autocomplete.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-avatar.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-avatargroup.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-badge.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-blockui.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-breadcrumb.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-button.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-card.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-carousel.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-cascadeselect.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-chart.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-checkbox.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-chip.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-colorpicker.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-confirmdialog.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-confirmpopup.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-contextmenu.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-dataview.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-datepicker.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-dialog.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-divider.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-dock.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-drawer.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-editor.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-fieldset.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-fileupload.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-floatlabel.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-fluid.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-galleria.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-iconfield.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-iftalabel.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-image.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-imagecompare.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inplace.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inputgroup.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inputgroupaddon.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inputicon.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inputmask.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inputnumber.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inputotp.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-inputtext.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-knob.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-listbox.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-megamenu.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-menu.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-menubar.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-message.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-metergroup.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-motion.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-multiselect.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-orderlist.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-organizationchart.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-overlay.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-overlaybadge.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-paginator.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-panel.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-panelmenu.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-password.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-picklist.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-popover.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-progressbar.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-progressspinner.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-radiobutton.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-rating.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-scroller.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-scrollpanel.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-scrolltop.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-select.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-selectbutton.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-skeleton.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-slider.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-speeddial.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-splitbutton.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-splitter.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-stepper.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-table.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-tabs.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-tag.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-terminal.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-textarea.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-tieredmenu.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-timeline.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-toast.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-togglebutton.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-toggleswitch.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-toolbar.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-tooltip.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-tree.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-treeselect.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-types-treetable.mjs +0 -4
- package/fesm2022/gravionlabs-helix-core-uix-motion.mjs +192 -282
- package/fesm2022/gravionlabs-helix-core-uix-motion.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-uix-styled.mjs +827 -813
- package/fesm2022/gravionlabs-helix-core-uix-styled.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-uix-utils.mjs +967 -1558
- package/fesm2022/gravionlabs-helix-core-uix-utils.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-usestyle.mjs +62 -52
- package/fesm2022/gravionlabs-helix-core-usestyle.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-utils.mjs +272 -366
- package/fesm2022/gravionlabs-helix-core-utils.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core-validators.mjs +86 -93
- package/fesm2022/gravionlabs-helix-core-validators.mjs.map +1 -1
- package/fesm2022/gravionlabs-helix-core.mjs +1 -5
- package/fesm2022/gravionlabs-helix-core.mjs.map +1 -1
- package/package.json +1 -1
- package/types/gravionlabs-helix-core-accordion.d.ts +317 -246
- package/types/gravionlabs-helix-core-animateonscroll.d.ts +89 -61
- package/types/gravionlabs-helix-core-api.d.ts +1743 -1777
- package/types/gravionlabs-helix-core-autocomplete.d.ts +1070 -750
- package/types/gravionlabs-helix-core-autofocus.d.ts +29 -26
- package/types/gravionlabs-helix-core-avatar.d.ts +165 -123
- package/types/gravionlabs-helix-core-avatargroup.d.ts +58 -48
- package/types/gravionlabs-helix-core-badge.d.ts +243 -162
- package/types/gravionlabs-helix-core-base.d.ts +46 -49
- package/types/gravionlabs-helix-core-basecomponent.d.ts +187 -170
- package/types/gravionlabs-helix-core-baseeditableholder.d.ts +63 -45
- package/types/gravionlabs-helix-core-baseinput.d.ts +121 -73
- package/types/gravionlabs-helix-core-basemodelholder.d.ts +9 -12
- package/types/gravionlabs-helix-core-bind.d.ts +36 -33
- package/types/gravionlabs-helix-core-blockui.d.ts +114 -90
- package/types/gravionlabs-helix-core-breadcrumb.d.ts +158 -132
- package/types/gravionlabs-helix-core-button.d.ts +716 -443
- package/types/gravionlabs-helix-core-buttongroup.d.ts +28 -33
- package/types/gravionlabs-helix-core-card.d.ts +156 -136
- package/types/gravionlabs-helix-core-carousel.d.ts +461 -361
- package/types/gravionlabs-helix-core-cascadeselect.d.ts +880 -604
- package/types/gravionlabs-helix-core-chart.d.ts +162 -115
- package/types/gravionlabs-helix-core-checkbox.d.ts +310 -211
- package/types/gravionlabs-helix-core-chip.d.ts +202 -147
- package/types/gravionlabs-helix-core-classnames.d.ts +23 -21
- package/types/gravionlabs-helix-core-colorpicker.d.ts +359 -290
- package/types/gravionlabs-helix-core-config.d.ts +249 -259
- package/types/gravionlabs-helix-core-confirmdialog.d.ts +498 -325
- package/types/gravionlabs-helix-core-confirmpopup.d.ts +273 -218
- package/types/gravionlabs-helix-core-contextmenu.d.ts +509 -351
- package/types/gravionlabs-helix-core-dataview.d.ts +507 -349
- package/types/gravionlabs-helix-core-datepicker.d.ts +1267 -954
- package/types/gravionlabs-helix-core-dialog.d.ts +758 -515
- package/types/gravionlabs-helix-core-divider.d.ts +126 -106
- package/types/gravionlabs-helix-core-dock.d.ts +219 -181
- package/types/gravionlabs-helix-core-dom.d.ts +97 -100
- package/types/gravionlabs-helix-core-dragdrop.d.ts +149 -107
- package/types/gravionlabs-helix-core-drawer.d.ts +382 -278
- package/types/gravionlabs-helix-core-dynamicdialog.d.ts +512 -519
- package/types/gravionlabs-helix-core-editor.d.ts +225 -173
- package/types/gravionlabs-helix-core-fieldset.d.ts +209 -170
- package/types/gravionlabs-helix-core-fileupload.d.ts +764 -533
- package/types/gravionlabs-helix-core-firsterror.d.ts +8 -11
- package/types/gravionlabs-helix-core-floatlabel.d.ts +57 -52
- package/types/gravionlabs-helix-core-fluid.d.ts +38 -39
- package/types/gravionlabs-helix-core-focustrap.d.ts +33 -30
- package/types/gravionlabs-helix-core-galleria.d.ts +957 -628
- package/types/gravionlabs-helix-core-iconfield.d.ts +72 -57
- package/types/gravionlabs-helix-core-icons-angledoubledown.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-angledoubleleft.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-angledoubleright.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-angledoubleup.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-angledown.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-angleleft.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-angleright.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-angleup.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-arrowdown.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-arrowdownleft.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-arrowdownright.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-arrowleft.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-arrowright.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-arrowup.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-ban.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-bars.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-baseicon.d.ts +25 -24
- package/types/gravionlabs-helix-core-icons-blank.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-calendar.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-caretleft.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-caretright.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-check.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-chevrondown.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-chevronleft.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-chevronright.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-chevronup.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-exclamationtriangle.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-eye.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-eyeslash.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-filter.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-filterfill.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-filterslash.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-home.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-infocircle.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-minus.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-pencil.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-plus.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-refresh.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-search.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-searchminus.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-searchplus.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-sortalt.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-sortamountdown.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-sortamountupalt.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-spinner.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-star.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-starfill.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-thlarge.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-times.d.ts +6 -9
- package/types/gravionlabs-helix-core-icons-timescircle.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-trash.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-undo.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-upload.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-windowmaximize.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons-windowminimize.d.ts +8 -11
- package/types/gravionlabs-helix-core-icons.d.ts +53 -53
- package/types/gravionlabs-helix-core-iftalabel.d.ts +42 -43
- package/types/gravionlabs-helix-core-image.d.ts +440 -331
- package/types/gravionlabs-helix-core-imagecompare.d.ts +99 -84
- package/types/gravionlabs-helix-core-inplace.d.ts +188 -149
- package/types/gravionlabs-helix-core-inputgroup.d.ts +55 -50
- package/types/gravionlabs-helix-core-inputgroupaddon.d.ts +54 -43
- package/types/gravionlabs-helix-core-inputicon.d.ts +49 -38
- package/types/gravionlabs-helix-core-inputmask.d.ts +499 -353
- package/types/gravionlabs-helix-core-inputnumber.d.ts +581 -410
- package/types/gravionlabs-helix-core-inputotp.d.ts +206 -158
- package/types/gravionlabs-helix-core-inputtext.d.ts +142 -102
- package/types/gravionlabs-helix-core-keyfilter.d.ts +62 -53
- package/types/gravionlabs-helix-core-knob.d.ts +265 -188
- package/types/gravionlabs-helix-core-listbox.d.ts +897 -638
- package/types/gravionlabs-helix-core-megamenu.d.ts +512 -365
- package/types/gravionlabs-helix-core-menu.d.ts +441 -343
- package/types/gravionlabs-helix-core-menubar.d.ts +499 -361
- package/types/gravionlabs-helix-core-message.d.ts +267 -195
- package/types/gravionlabs-helix-core-metergroup.d.ts +256 -190
- package/types/gravionlabs-helix-core-motion.d.ts +602 -385
- package/types/gravionlabs-helix-core-multiselect.d.ts +1256 -855
- package/types/gravionlabs-helix-core-orderlist.d.ts +504 -351
- package/types/gravionlabs-helix-core-organizationchart.d.ts +264 -203
- package/types/gravionlabs-helix-core-overlay.d.ts +417 -307
- package/types/gravionlabs-helix-core-overlaybadge.d.ts +107 -71
- package/types/gravionlabs-helix-core-paginator.d.ts +445 -336
- package/types/gravionlabs-helix-core-panel.d.ts +285 -225
- package/types/gravionlabs-helix-core-panelmenu.d.ts +499 -340
- package/types/gravionlabs-helix-core-passthrough.d.ts +5 -7
- package/types/gravionlabs-helix-core-password.d.ts +657 -463
- package/types/gravionlabs-helix-core-picklist.d.ts +938 -647
- package/types/gravionlabs-helix-core-popover.d.ts +259 -190
- package/types/gravionlabs-helix-core-progressbar.d.ts +141 -106
- package/types/gravionlabs-helix-core-progressspinner.d.ts +101 -76
- package/types/gravionlabs-helix-core-radiobutton.d.ts +228 -174
- package/types/gravionlabs-helix-core-rating.d.ts +217 -178
- package/types/gravionlabs-helix-core-ripple.d.ts +43 -48
- package/types/gravionlabs-helix-core-scroller.d.ts +505 -371
- package/types/gravionlabs-helix-core-scrollpanel.d.ts +151 -141
- package/types/gravionlabs-helix-core-scrolltop.d.ts +195 -140
- package/types/gravionlabs-helix-core-select.d.ts +1095 -749
- package/types/gravionlabs-helix-core-selectbutton.d.ts +238 -165
- package/types/gravionlabs-helix-core-skeleton.d.ts +123 -88
- package/types/gravionlabs-helix-core-slider.d.ts +259 -201
- package/types/gravionlabs-helix-core-speeddial.d.ts +511 -390
- package/types/gravionlabs-helix-core-splitbutton.d.ts +422 -267
- package/types/gravionlabs-helix-core-splitter.d.ts +246 -192
- package/types/gravionlabs-helix-core-stepper.d.ts +428 -269
- package/types/gravionlabs-helix-core-steps.d.ts +162 -134
- package/types/gravionlabs-helix-core-styleclass.d.ts +165 -107
- package/types/gravionlabs-helix-core-table.d.ts +2908 -1935
- package/types/gravionlabs-helix-core-tabs.d.ts +471 -311
- package/types/gravionlabs-helix-core-tag.d.ts +123 -98
- package/types/gravionlabs-helix-core-terminal.d.ts +142 -124
- package/types/gravionlabs-helix-core-textarea.d.ts +147 -110
- package/types/gravionlabs-helix-core-themes-aura.d.ts +957 -942
- package/types/gravionlabs-helix-core-themes-lara.d.ts +968 -953
- package/types/gravionlabs-helix-core-themes-nora.d.ts +954 -939
- package/types/gravionlabs-helix-core-themes-types.d.ts +17940 -18746
- package/types/gravionlabs-helix-core-themes.d.ts +8 -11
- package/types/gravionlabs-helix-core-tieredmenu.d.ts +583 -398
- package/types/gravionlabs-helix-core-timeline.d.ts +145 -125
- package/types/gravionlabs-helix-core-toast.d.ts +408 -275
- package/types/gravionlabs-helix-core-togglebutton.d.ts +264 -188
- package/types/gravionlabs-helix-core-toggleswitch.d.ts +202 -150
- package/types/gravionlabs-helix-core-toolbar.d.ts +100 -90
- package/types/gravionlabs-helix-core-tooltip.d.ts +362 -256
- package/types/gravionlabs-helix-core-tree.d.ts +902 -630
- package/types/gravionlabs-helix-core-treeselect.d.ts +770 -559
- package/types/gravionlabs-helix-core-treetable.d.ts +1715 -1205
- package/types/gravionlabs-helix-core-ts-helpers.d.ts +4 -6
- package/types/gravionlabs-helix-core-types-accordion.d.ts +42 -45
- package/types/gravionlabs-helix-core-types-autocomplete.d.ts +230 -233
- package/types/gravionlabs-helix-core-types-avatar.d.ts +23 -26
- package/types/gravionlabs-helix-core-types-avatargroup.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-badge.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-blockui.d.ts +18 -21
- package/types/gravionlabs-helix-core-types-breadcrumb.d.ts +65 -68
- package/types/gravionlabs-helix-core-types-button.d.ts +90 -93
- package/types/gravionlabs-helix-core-types-card.d.ts +54 -57
- package/types/gravionlabs-helix-core-types-carousel.d.ts +107 -110
- package/types/gravionlabs-helix-core-types-cascadeselect.d.ts +151 -157
- package/types/gravionlabs-helix-core-types-chart.d.ts +15 -18
- package/types/gravionlabs-helix-core-types-checkbox.d.ts +48 -51
- package/types/gravionlabs-helix-core-types-chip.d.ts +49 -52
- package/types/gravionlabs-helix-core-types-colorpicker.d.ts +58 -61
- package/types/gravionlabs-helix-core-types-confirmdialog.d.ts +116 -119
- package/types/gravionlabs-helix-core-types-confirmpopup.d.ts +74 -77
- package/types/gravionlabs-helix-core-types-contextmenu.d.ts +71 -74
- package/types/gravionlabs-helix-core-types-dataview.d.ts +178 -181
- package/types/gravionlabs-helix-core-types-datepicker.d.ts +436 -439
- package/types/gravionlabs-helix-core-types-dialog.d.ts +86 -89
- package/types/gravionlabs-helix-core-types-divider.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-dock.d.ts +44 -47
- package/types/gravionlabs-helix-core-types-drawer.d.ts +61 -64
- package/types/gravionlabs-helix-core-types-editor.d.ts +143 -146
- package/types/gravionlabs-helix-core-types-fieldset.d.ts +69 -73
- package/types/gravionlabs-helix-core-types-fileupload.d.ts +260 -265
- package/types/gravionlabs-helix-core-types-floatlabel.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-fluid.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-galleria.d.ts +204 -207
- package/types/gravionlabs-helix-core-types-iconfield.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-iftalabel.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-image.d.ts +113 -116
- package/types/gravionlabs-helix-core-types-imagecompare.d.ts +22 -25
- package/types/gravionlabs-helix-core-types-inplace.d.ts +46 -49
- package/types/gravionlabs-helix-core-types-inputgroup.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-inputgroupaddon.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-inputicon.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-inputmask.d.ts +30 -33
- package/types/gravionlabs-helix-core-types-inputnumber.d.ts +68 -71
- package/types/gravionlabs-helix-core-types-inputotp.d.ts +67 -70
- package/types/gravionlabs-helix-core-types-inputtext.d.ts +7 -10
- package/types/gravionlabs-helix-core-types-knob.d.ts +23 -26
- package/types/gravionlabs-helix-core-types-listbox.d.ts +262 -266
- package/types/gravionlabs-helix-core-types-megamenu.d.ts +112 -115
- package/types/gravionlabs-helix-core-types-menu.d.ts +83 -86
- package/types/gravionlabs-helix-core-types-menubar.d.ts +98 -101
- package/types/gravionlabs-helix-core-types-message.d.ts +61 -64
- package/types/gravionlabs-helix-core-types-metergroup.d.ts +135 -138
- package/types/gravionlabs-helix-core-types-motion.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-multiselect.d.ts +302 -306
- package/types/gravionlabs-helix-core-types-orderlist.d.ts +125 -128
- package/types/gravionlabs-helix-core-types-organizationchart.d.ts +90 -96
- package/types/gravionlabs-helix-core-types-overlay.d.ts +31 -34
- package/types/gravionlabs-helix-core-types-overlaybadge.d.ts +17 -20
- package/types/gravionlabs-helix-core-types-paginator.d.ts +131 -134
- package/types/gravionlabs-helix-core-types-panel.d.ts +89 -93
- package/types/gravionlabs-helix-core-types-panelmenu.d.ts +105 -108
- package/types/gravionlabs-helix-core-types-password.d.ts +94 -97
- package/types/gravionlabs-helix-core-types-picklist.d.ts +240 -250
- package/types/gravionlabs-helix-core-types-popover.d.ts +33 -36
- package/types/gravionlabs-helix-core-types-progressbar.d.ts +32 -35
- package/types/gravionlabs-helix-core-types-progressspinner.d.ts +19 -22
- package/types/gravionlabs-helix-core-types-radiobutton.d.ts +29 -32
- package/types/gravionlabs-helix-core-types-rating.d.ts +62 -65
- package/types/gravionlabs-helix-core-types-scroller.d.ts +142 -146
- package/types/gravionlabs-helix-core-types-scrollpanel.d.ts +30 -33
- package/types/gravionlabs-helix-core-types-scrolltop.d.ts +35 -38
- package/types/gravionlabs-helix-core-types-select.d.ts +245 -248
- package/types/gravionlabs-helix-core-types-selectbutton.d.ts +56 -59
- package/types/gravionlabs-helix-core-types-skeleton.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-slider.d.ts +50 -53
- package/types/gravionlabs-helix-core-types-speeddial.d.ts +69 -72
- package/types/gravionlabs-helix-core-types-splitbutton.d.ts +41 -44
- package/types/gravionlabs-helix-core-types-splitter.d.ts +36 -40
- package/types/gravionlabs-helix-core-types-stepper.d.ts +68 -71
- package/types/gravionlabs-helix-core-types-table.d.ts +721 -727
- package/types/gravionlabs-helix-core-types-tabs.d.ts +51 -54
- package/types/gravionlabs-helix-core-types-tag.d.ts +26 -29
- package/types/gravionlabs-helix-core-types-terminal.d.ts +43 -46
- package/types/gravionlabs-helix-core-types-textarea.d.ts +11 -14
- package/types/gravionlabs-helix-core-types-tieredmenu.d.ts +69 -72
- package/types/gravionlabs-helix-core-types-timeline.d.ts +58 -61
- package/types/gravionlabs-helix-core-types-toast.d.ts +86 -89
- package/types/gravionlabs-helix-core-types-togglebutton.d.ts +51 -54
- package/types/gravionlabs-helix-core-types-toggleswitch.d.ts +41 -44
- package/types/gravionlabs-helix-core-types-toolbar.d.ts +34 -37
- package/types/gravionlabs-helix-core-types-tooltip.d.ts +15 -18
- package/types/gravionlabs-helix-core-types-tree.d.ts +230 -239
- package/types/gravionlabs-helix-core-types-treeselect.d.ts +195 -199
- package/types/gravionlabs-helix-core-types-treetable.d.ts +486 -491
- package/types/gravionlabs-helix-core-uix-motion.d.ts +177 -190
- package/types/gravionlabs-helix-core-uix-styled.d.ts +254 -277
- package/types/gravionlabs-helix-core-uix-utils.d.ts +39 -176
- package/types/gravionlabs-helix-core-usestyle.d.ts +12 -15
- package/types/gravionlabs-helix-core-utils.d.ts +45 -50
- package/types/gravionlabs-helix-core-validators.d.ts +29 -34
- package/types/gravionlabs-helix-core.d.ts +2 -2
- package/fesm2022/gravionlabs-helix-core-icons.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-themes-types.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-ts-helpers.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-accordion.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-autocomplete.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-avatar.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-avatargroup.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-badge.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-blockui.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-breadcrumb.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-button.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-card.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-carousel.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-cascadeselect.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-chart.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-checkbox.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-chip.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-colorpicker.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-confirmdialog.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-confirmpopup.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-contextmenu.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-dataview.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-datepicker.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-dialog.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-divider.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-dock.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-drawer.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-editor.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-fieldset.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-fileupload.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-floatlabel.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-fluid.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-galleria.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-iconfield.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-iftalabel.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-image.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-imagecompare.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inplace.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inputgroup.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inputgroupaddon.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inputicon.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inputmask.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inputnumber.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inputotp.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-inputtext.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-knob.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-listbox.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-megamenu.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-menu.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-menubar.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-message.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-metergroup.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-motion.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-multiselect.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-orderlist.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-organizationchart.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-overlay.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-overlaybadge.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-paginator.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-panel.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-panelmenu.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-password.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-picklist.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-popover.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-progressbar.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-progressspinner.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-radiobutton.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-rating.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-scroller.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-scrollpanel.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-scrolltop.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-select.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-selectbutton.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-skeleton.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-slider.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-speeddial.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-splitbutton.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-splitter.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-stepper.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-table.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-tabs.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-tag.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-terminal.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-textarea.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-tieredmenu.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-timeline.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-toast.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-togglebutton.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-toggleswitch.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-toolbar.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-tooltip.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-tree.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-treeselect.mjs.map +0 -1
- package/fesm2022/gravionlabs-helix-core-types-treetable.mjs.map +0 -1
|
@@ -1,1839 +1,1248 @@
|
|
|
1
1
|
function cn(...args) {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
18
|
-
return classes.join(' ').trim();
|
|
19
|
-
}
|
|
20
|
-
return undefined;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* @deprecated Use `cn` instead.
|
|
24
|
-
* @param args
|
|
25
|
-
* @returns
|
|
26
|
-
*/
|
|
2
|
+
if (args) {
|
|
3
|
+
let classes = [];
|
|
4
|
+
for (let i = 0; i < args.length; i++) {
|
|
5
|
+
const className = args[i];
|
|
6
|
+
if (!className) continue;
|
|
7
|
+
const type = typeof className;
|
|
8
|
+
if (type === "string" || type === "number") classes.push(className);
|
|
9
|
+
else if (type === "object") {
|
|
10
|
+
const _classes = Array.isArray(className) ? [cn(...className)] : Object.entries(className).map(([key, value]) => value ? key : void 0);
|
|
11
|
+
classes = _classes.length ? classes.concat(_classes.filter((c) => !!c)) : classes;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return classes.join(" ").trim();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
27
17
|
function classNames(...args) {
|
|
28
|
-
|
|
18
|
+
return cn(...args);
|
|
29
19
|
}
|
|
30
|
-
|
|
31
20
|
function hasClass(element, className) {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
else
|
|
36
|
-
return new RegExp('(^| )' + className + '( |$)', 'gi').test(element.className);
|
|
37
|
-
}
|
|
38
|
-
return false;
|
|
21
|
+
if (element) if (element.classList) return element.classList.contains(className);
|
|
22
|
+
else return new RegExp("(^| )" + className + "( |$)", "gi").test(element.className);
|
|
23
|
+
return false;
|
|
39
24
|
}
|
|
40
|
-
|
|
41
25
|
function addClass(element, className) {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
[className]
|
|
52
|
-
.flat()
|
|
53
|
-
.filter(Boolean)
|
|
54
|
-
.forEach((_classNames) => _classNames.split(' ').forEach(fn));
|
|
55
|
-
}
|
|
26
|
+
if (element && className) {
|
|
27
|
+
const fn = (_className) => {
|
|
28
|
+
if (!hasClass(element, _className)) if (element.classList) element.classList.add(_className);
|
|
29
|
+
else element.className += " " + _className;
|
|
30
|
+
};
|
|
31
|
+
[className].flat().filter(Boolean).forEach((_classNames) => _classNames.split(" ").forEach(fn));
|
|
32
|
+
}
|
|
56
33
|
}
|
|
57
|
-
|
|
58
34
|
function calculateBodyScrollbarWidth() {
|
|
59
|
-
|
|
35
|
+
return window.innerWidth - document.documentElement.offsetWidth;
|
|
60
36
|
}
|
|
61
|
-
|
|
62
37
|
function blockBodyScroll(option) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
addClass(document.body, option?.className || 'h-overflow-hidden');
|
|
69
|
-
}
|
|
38
|
+
if (typeof option === "string") addClass(document.body, option || "h-overflow-hidden");
|
|
39
|
+
else {
|
|
40
|
+
option?.variableName && document.body.style.setProperty(option.variableName, calculateBodyScrollbarWidth() + "px");
|
|
41
|
+
addClass(document.body, option?.className || "h-overflow-hidden");
|
|
42
|
+
}
|
|
70
43
|
}
|
|
71
|
-
|
|
72
44
|
function saveAs(file) {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
45
|
+
if (file) {
|
|
46
|
+
const link = document.createElement("a");
|
|
47
|
+
if (link.download !== void 0) {
|
|
48
|
+
const { name, src } = file;
|
|
49
|
+
link.setAttribute("href", src);
|
|
50
|
+
link.setAttribute("download", name);
|
|
51
|
+
link.style.display = "none";
|
|
52
|
+
document.body.appendChild(link);
|
|
53
|
+
link.click();
|
|
54
|
+
document.body.removeChild(link);
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return false;
|
|
87
59
|
}
|
|
88
|
-
|
|
89
60
|
function exportCSV(csv, filename) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
csv = 'data:text/csv;charset=utf-8,' + csv;
|
|
100
|
-
window.open(encodeURI(csv));
|
|
101
|
-
}
|
|
102
|
-
}
|
|
61
|
+
const blob = new Blob([csv], { type: "application/csv;charset=utf-8;" });
|
|
62
|
+
if (window.navigator.msSaveOrOpenBlob) navigator.msSaveOrOpenBlob(blob, filename + ".csv");
|
|
63
|
+
else if (!saveAs({
|
|
64
|
+
name: filename + ".csv",
|
|
65
|
+
src: URL.createObjectURL(blob)
|
|
66
|
+
})) {
|
|
67
|
+
csv = "data:text/csv;charset=utf-8," + csv;
|
|
68
|
+
window.open(encodeURI(csv));
|
|
69
|
+
}
|
|
103
70
|
}
|
|
104
|
-
|
|
105
71
|
function removeClass(element, className) {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
[className]
|
|
114
|
-
.flat()
|
|
115
|
-
.filter(Boolean)
|
|
116
|
-
.forEach((_classNames) => _classNames.split(' ').forEach(fn));
|
|
117
|
-
}
|
|
72
|
+
if (element && className) {
|
|
73
|
+
const fn = (_className) => {
|
|
74
|
+
if (element.classList) element.classList.remove(_className);
|
|
75
|
+
else element.className = element.className.replace(new RegExp("(^|\\b)" + _className.split(" ").join("|") + "(\\b|$)", "gi"), " ");
|
|
76
|
+
};
|
|
77
|
+
[className].flat().filter(Boolean).forEach((_classNames) => _classNames.split(" ").forEach(fn));
|
|
78
|
+
}
|
|
118
79
|
}
|
|
119
|
-
|
|
120
80
|
function unblockBodyScroll(option) {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
document.body.style.removeProperty(option.variableName);
|
|
127
|
-
removeClass(document.body, option?.className || 'h-overflow-hidden');
|
|
128
|
-
}
|
|
81
|
+
if (typeof option === "string") removeClass(document.body, option || "h-overflow-hidden");
|
|
82
|
+
else {
|
|
83
|
+
if (option?.variableName) document.body.style.removeProperty(option.variableName);
|
|
84
|
+
removeClass(document.body, option?.className || "h-overflow-hidden");
|
|
85
|
+
}
|
|
129
86
|
}
|
|
130
|
-
|
|
131
87
|
function getCSSVariableByRegex(variableRegex) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
catch { }
|
|
143
|
-
}
|
|
144
|
-
return null;
|
|
88
|
+
for (const sheet of document?.styleSheets) try {
|
|
89
|
+
for (const rule of sheet?.cssRules) for (const property of rule?.style) if (variableRegex.test(property)) return {
|
|
90
|
+
name: property,
|
|
91
|
+
value: rule.style.getPropertyValue(property).trim()
|
|
92
|
+
};
|
|
93
|
+
} catch {}
|
|
94
|
+
return null;
|
|
145
95
|
}
|
|
146
|
-
|
|
147
96
|
function getHiddenElementDimensions(element) {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
97
|
+
const dimensions = {
|
|
98
|
+
width: 0,
|
|
99
|
+
height: 0
|
|
100
|
+
};
|
|
101
|
+
if (element) {
|
|
102
|
+
const [visibility, display] = [element.style.visibility, element.style.display];
|
|
103
|
+
const rect = element.getBoundingClientRect();
|
|
104
|
+
element.style.visibility = "hidden";
|
|
105
|
+
element.style.display = "block";
|
|
106
|
+
dimensions.width = rect.width || element.offsetWidth;
|
|
107
|
+
dimensions.height = rect.height || element.offsetHeight;
|
|
108
|
+
element.style.display = display;
|
|
109
|
+
element.style.visibility = visibility;
|
|
110
|
+
}
|
|
111
|
+
return dimensions;
|
|
161
112
|
}
|
|
162
|
-
|
|
163
113
|
function getViewport() {
|
|
164
|
-
|
|
165
|
-
|
|
114
|
+
const win = window, d = document, e = d.documentElement, g = d.getElementsByTagName("body")[0];
|
|
115
|
+
return {
|
|
116
|
+
width: win.innerWidth || e.clientWidth || g.clientWidth,
|
|
117
|
+
height: win.innerHeight || e.clientHeight || g.clientHeight
|
|
118
|
+
};
|
|
166
119
|
}
|
|
167
|
-
|
|
168
120
|
function getScrollLeft(element) {
|
|
169
|
-
|
|
170
|
-
return element ? Math.abs(element.scrollLeft) : 0;
|
|
121
|
+
return element ? Math.abs(element.scrollLeft) : 0;
|
|
171
122
|
}
|
|
172
|
-
|
|
173
123
|
function getWindowScrollLeft() {
|
|
174
|
-
|
|
175
|
-
|
|
124
|
+
const doc = document.documentElement;
|
|
125
|
+
return (window.pageXOffset || getScrollLeft(doc)) - (doc.clientLeft || 0);
|
|
176
126
|
}
|
|
177
|
-
|
|
178
127
|
function getWindowScrollTop() {
|
|
179
|
-
|
|
180
|
-
|
|
128
|
+
const doc = document.documentElement;
|
|
129
|
+
return (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);
|
|
181
130
|
}
|
|
182
|
-
|
|
183
131
|
function isRTL(element) {
|
|
184
|
-
|
|
132
|
+
return element ? getComputedStyle(element).direction === "rtl" : false;
|
|
185
133
|
}
|
|
186
|
-
|
|
187
134
|
function absolutePosition(element, target, gutter = true) {
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
}
|
|
216
|
-
else {
|
|
217
|
-
element.style.insetInlineStart = left + 'px';
|
|
218
|
-
}
|
|
219
|
-
element.style.top = top + 'px';
|
|
220
|
-
element.style.transformOrigin = origin;
|
|
221
|
-
if (gutter)
|
|
222
|
-
element.style.marginTop = origin === 'bottom' ? `calc(${getCSSVariableByRegex(/-anchor-gutter$/)?.value ?? '2px'} * -1)` : (getCSSVariableByRegex(/-anchor-gutter$/)?.value ?? '');
|
|
223
|
-
}
|
|
135
|
+
if (element) {
|
|
136
|
+
const elementDimensions = element.offsetParent ? {
|
|
137
|
+
width: element.offsetWidth,
|
|
138
|
+
height: element.offsetHeight
|
|
139
|
+
} : getHiddenElementDimensions(element);
|
|
140
|
+
const elementOuterHeight = elementDimensions.height;
|
|
141
|
+
const elementOuterWidth = elementDimensions.width;
|
|
142
|
+
const targetOuterHeight = target.offsetHeight;
|
|
143
|
+
const targetOuterWidth = target.offsetWidth;
|
|
144
|
+
const targetOffset = target.getBoundingClientRect();
|
|
145
|
+
const windowScrollTop = getWindowScrollTop();
|
|
146
|
+
const windowScrollLeft = getWindowScrollLeft();
|
|
147
|
+
const viewport = getViewport();
|
|
148
|
+
let top, left, origin = "top";
|
|
149
|
+
if (targetOffset.top + targetOuterHeight + elementOuterHeight > viewport.height) {
|
|
150
|
+
top = targetOffset.top + windowScrollTop - elementOuterHeight;
|
|
151
|
+
origin = "bottom";
|
|
152
|
+
if (top < 0) top = windowScrollTop;
|
|
153
|
+
} else top = targetOuterHeight + targetOffset.top + windowScrollTop;
|
|
154
|
+
if (targetOffset.left + elementOuterWidth > viewport.width) left = Math.max(0, targetOffset.left + windowScrollLeft + targetOuterWidth - elementOuterWidth);
|
|
155
|
+
else left = targetOffset.left + windowScrollLeft;
|
|
156
|
+
if (isRTL(element)) element.style.insetInlineEnd = left + "px";
|
|
157
|
+
else element.style.insetInlineStart = left + "px";
|
|
158
|
+
element.style.top = top + "px";
|
|
159
|
+
element.style.transformOrigin = origin;
|
|
160
|
+
if (gutter) element.style.marginTop = origin === "bottom" ? `calc(${getCSSVariableByRegex(/-anchor-gutter$/)?.value ?? "2px"} * -1)` : getCSSVariableByRegex(/-anchor-gutter$/)?.value ?? "";
|
|
161
|
+
}
|
|
224
162
|
}
|
|
225
|
-
|
|
226
163
|
function addStyle(element, style) {
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
element.style.cssText = style;
|
|
230
|
-
}
|
|
231
|
-
else {
|
|
232
|
-
Object.entries(style || {}).forEach(([key, value]) => (element.style[key] = value));
|
|
233
|
-
}
|
|
234
|
-
}
|
|
164
|
+
if (element) if (typeof style === "string") element.style.cssText = style;
|
|
165
|
+
else Object.entries(style || {}).forEach(([key, value]) => element.style[key] = value);
|
|
235
166
|
}
|
|
236
|
-
|
|
237
167
|
function getOuterWidth(element, margin) {
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
168
|
+
if (element instanceof HTMLElement) {
|
|
169
|
+
let width = element.offsetWidth;
|
|
170
|
+
if (margin) {
|
|
171
|
+
const style = getComputedStyle(element);
|
|
172
|
+
width += parseFloat(style.marginLeft) + parseFloat(style.marginRight);
|
|
173
|
+
}
|
|
174
|
+
return width;
|
|
175
|
+
}
|
|
176
|
+
return 0;
|
|
177
|
+
}
|
|
178
|
+
function relativePosition(element, target, gutter = true, fixedOrigin = void 0) {
|
|
179
|
+
if (element) {
|
|
180
|
+
const elementDimensions = element.offsetParent ? {
|
|
181
|
+
width: element.offsetWidth,
|
|
182
|
+
height: element.offsetHeight
|
|
183
|
+
} : getHiddenElementDimensions(element);
|
|
184
|
+
const targetHeight = target.offsetHeight;
|
|
185
|
+
const targetOffset = target.getBoundingClientRect();
|
|
186
|
+
const viewport = getViewport();
|
|
187
|
+
let top, left, origin = fixedOrigin ?? "top";
|
|
188
|
+
if (!fixedOrigin && targetOffset.top + targetHeight + elementDimensions.height > viewport.height) {
|
|
189
|
+
top = -1 * elementDimensions.height;
|
|
190
|
+
origin = "bottom";
|
|
191
|
+
if (targetOffset.top + top < 0) top = -1 * targetOffset.top;
|
|
192
|
+
} else top = targetHeight;
|
|
193
|
+
if (elementDimensions.width > viewport.width) left = targetOffset.left * -1;
|
|
194
|
+
else if (targetOffset.left + elementDimensions.width > viewport.width) left = (targetOffset.left + elementDimensions.width - viewport.width) * -1;
|
|
195
|
+
else left = 0;
|
|
196
|
+
element.style.top = top + "px";
|
|
197
|
+
element.style.insetInlineStart = left + "px";
|
|
198
|
+
element.style.transformOrigin = origin;
|
|
199
|
+
if (gutter) {
|
|
200
|
+
const gutterValue = getCSSVariableByRegex(/-anchor-gutter$/)?.value;
|
|
201
|
+
element.style.marginTop = origin === "bottom" ? `calc(${gutterValue ?? "2px"} * -1)` : gutterValue ?? "";
|
|
202
|
+
}
|
|
203
|
+
}
|
|
247
204
|
}
|
|
248
|
-
|
|
249
|
-
function relativePosition(element, target, gutter = true, fixedOrigin = undefined) {
|
|
250
|
-
if (element) {
|
|
251
|
-
const elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : getHiddenElementDimensions(element);
|
|
252
|
-
const targetHeight = target.offsetHeight;
|
|
253
|
-
const targetOffset = target.getBoundingClientRect();
|
|
254
|
-
const viewport = getViewport();
|
|
255
|
-
let top, left, origin = fixedOrigin ?? 'top';
|
|
256
|
-
if (!fixedOrigin && targetOffset.top + targetHeight + elementDimensions.height > viewport.height) {
|
|
257
|
-
top = -1 * elementDimensions.height;
|
|
258
|
-
origin = 'bottom';
|
|
259
|
-
if (targetOffset.top + top < 0) {
|
|
260
|
-
top = -1 * targetOffset.top;
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
else {
|
|
264
|
-
top = targetHeight;
|
|
265
|
-
}
|
|
266
|
-
if (elementDimensions.width > viewport.width) {
|
|
267
|
-
// element wider then viewport and cannot fit on screen (align at left side of viewport)
|
|
268
|
-
left = targetOffset.left * -1;
|
|
269
|
-
}
|
|
270
|
-
else if (targetOffset.left + elementDimensions.width > viewport.width) {
|
|
271
|
-
// element wider then viewport but can be fit on screen (align at right side of viewport)
|
|
272
|
-
left = (targetOffset.left + elementDimensions.width - viewport.width) * -1;
|
|
273
|
-
}
|
|
274
|
-
else {
|
|
275
|
-
// element fits on screen (align with target)
|
|
276
|
-
left = 0;
|
|
277
|
-
}
|
|
278
|
-
element.style.top = top + 'px';
|
|
279
|
-
element.style.insetInlineStart = left + 'px';
|
|
280
|
-
element.style.transformOrigin = origin;
|
|
281
|
-
if (gutter) {
|
|
282
|
-
const gutterValue = getCSSVariableByRegex(/-anchor-gutter$/)?.value;
|
|
283
|
-
element.style.marginTop = origin === 'bottom' ? `calc(${gutterValue ?? '2px'} * -1)` : (gutterValue ?? '');
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
|
|
288
205
|
function alignOverlay(overlay, target, appendTo, calculateMinWidth = true) {
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
if (calculateMinWidth)
|
|
295
|
-
overlay.style.minWidth = getOuterWidth(target) + 'px';
|
|
296
|
-
absolutePosition(overlay, target);
|
|
297
|
-
}
|
|
298
|
-
}
|
|
206
|
+
if (overlay && target) if (appendTo === "self") relativePosition(overlay, target);
|
|
207
|
+
else {
|
|
208
|
+
if (calculateMinWidth) overlay.style.minWidth = getOuterWidth(target) + "px";
|
|
209
|
+
absolutePosition(overlay, target);
|
|
210
|
+
}
|
|
299
211
|
}
|
|
300
|
-
|
|
301
212
|
function getParentNode(element) {
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
}
|
|
309
|
-
return null;
|
|
213
|
+
if (element) {
|
|
214
|
+
let parent = element.parentNode;
|
|
215
|
+
if (parent && parent instanceof ShadowRoot && parent.host) parent = parent.host;
|
|
216
|
+
return parent;
|
|
217
|
+
}
|
|
218
|
+
return null;
|
|
310
219
|
}
|
|
311
|
-
|
|
312
220
|
function isExist(element) {
|
|
313
|
-
|
|
221
|
+
return !!(element !== null && typeof element !== "undefined" && element.nodeName && getParentNode(element));
|
|
314
222
|
}
|
|
315
|
-
|
|
316
223
|
function isElement(element) {
|
|
317
|
-
|
|
224
|
+
return typeof Element !== "undefined" ? element instanceof Element : element !== null && typeof element === "object" && element.nodeType === 1 && typeof element.nodeName === "string";
|
|
318
225
|
}
|
|
319
|
-
|
|
320
|
-
/**
|
|
321
|
-
* Ported from @primeuix/utils 0.7.2 (main was 0.6.4 at vendor time): adds `value` (signal-style
|
|
322
|
-
* refs) and recursive `elementRef` unwrapping on top of the 0.6.4 current/el handling.
|
|
323
|
-
*/
|
|
324
226
|
function toElement(element) {
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
// For Angular signals / Vue refs
|
|
338
|
-
target = element.value;
|
|
339
|
-
}
|
|
340
|
-
else if (Object.hasOwn(element, 'nativeElement')) {
|
|
341
|
-
// For Angular ElementRef
|
|
342
|
-
target = element.nativeElement;
|
|
343
|
-
}
|
|
344
|
-
else if (Object.hasOwn(element, 'el')) {
|
|
345
|
-
const el = element.el;
|
|
346
|
-
if (el && typeof el === 'object' && Object.hasOwn(el, 'nativeElement')) {
|
|
347
|
-
// For Angular
|
|
348
|
-
target = el.nativeElement;
|
|
349
|
-
}
|
|
350
|
-
else {
|
|
351
|
-
// For Vue
|
|
352
|
-
target = element.el;
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
else if (Object.hasOwn(element, 'elementRef')) {
|
|
356
|
-
return toElement(element.elementRef);
|
|
357
|
-
}
|
|
358
|
-
return isElement(target) ? target : undefined;
|
|
227
|
+
if (isElement(element)) return element;
|
|
228
|
+
if (!element || typeof element !== "object") return;
|
|
229
|
+
let target = element;
|
|
230
|
+
if (Object.hasOwn(element, "current")) target = toElement(element.current) ?? element.current;
|
|
231
|
+
else if (Object.hasOwn(element, "value")) target = element.value;
|
|
232
|
+
else if (Object.hasOwn(element, "nativeElement")) target = element.nativeElement;
|
|
233
|
+
else if (Object.hasOwn(element, "el")) {
|
|
234
|
+
const el = element.el;
|
|
235
|
+
if (el && typeof el === "object" && Object.hasOwn(el, "nativeElement")) target = el.nativeElement;
|
|
236
|
+
else target = element.el;
|
|
237
|
+
} else if (Object.hasOwn(element, "elementRef")) return toElement(element.elementRef);
|
|
238
|
+
return isElement(target) ? target : void 0;
|
|
359
239
|
}
|
|
360
|
-
|
|
361
240
|
function getTargetElement(target, currentElement) {
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
if (typeof target === 'string') {
|
|
387
|
-
// child selector
|
|
388
|
-
const match = target.match(/^@child\[(\d+)]/);
|
|
389
|
-
if (match) {
|
|
390
|
-
return currentElement?.children?.[parseInt(match[1], 10)] || null;
|
|
391
|
-
}
|
|
392
|
-
return document.querySelector(target) || null;
|
|
393
|
-
}
|
|
394
|
-
const isFunction = (value) => typeof value === 'function' && 'call' in value && 'apply' in value;
|
|
395
|
-
const computedTarget = isFunction(target) ? target() : target;
|
|
396
|
-
const element = toElement(computedTarget);
|
|
397
|
-
return isExist(element) ? element : computedTarget?.nodeType === 9 ? computedTarget : undefined;
|
|
398
|
-
}
|
|
399
|
-
}
|
|
241
|
+
if (!target) return void 0;
|
|
242
|
+
switch (target) {
|
|
243
|
+
case "document": return document;
|
|
244
|
+
case "window": return window;
|
|
245
|
+
case "body": return document.body;
|
|
246
|
+
case "@next": return currentElement?.nextElementSibling;
|
|
247
|
+
case "@prev": return currentElement?.previousElementSibling;
|
|
248
|
+
case "@first": return currentElement?.firstElementChild;
|
|
249
|
+
case "@last": return currentElement?.lastElementChild;
|
|
250
|
+
case "@child": return currentElement?.children?.[0];
|
|
251
|
+
case "@parent": return currentElement?.parentElement;
|
|
252
|
+
case "@grandparent": return currentElement?.parentElement?.parentElement;
|
|
253
|
+
default: {
|
|
254
|
+
if (typeof target === "string") {
|
|
255
|
+
const match = target.match(/^@child\[(\d+)]/);
|
|
256
|
+
if (match) return currentElement?.children?.[parseInt(match[1], 10)] || null;
|
|
257
|
+
return document.querySelector(target) || null;
|
|
258
|
+
}
|
|
259
|
+
const isFunction = (value) => typeof value === "function" && "call" in value && "apply" in value;
|
|
260
|
+
const computedTarget = isFunction(target) ? target() : target;
|
|
261
|
+
const element = toElement(computedTarget);
|
|
262
|
+
return isExist(element) ? element : computedTarget?.nodeType === 9 ? computedTarget : void 0;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
400
265
|
}
|
|
401
|
-
|
|
402
266
|
function appendChild(element, child) {
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
else
|
|
407
|
-
throw new Error('Cannot append ' + child + ' to ' + element);
|
|
267
|
+
const target = getTargetElement(element, child);
|
|
268
|
+
if (target) target.appendChild(child);
|
|
269
|
+
else throw new Error("Cannot append " + child + " to " + element);
|
|
408
270
|
}
|
|
409
|
-
|
|
410
|
-
let calculatedScrollbarHeight = undefined;
|
|
271
|
+
let calculatedScrollbarHeight = void 0;
|
|
411
272
|
function calculateScrollbarHeight(element) {
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
}
|
|
434
|
-
|
|
435
|
-
let calculatedScrollbarWidth = undefined;
|
|
273
|
+
if (element) {
|
|
274
|
+
const style = getComputedStyle(element);
|
|
275
|
+
return element.offsetHeight - element.clientHeight - parseFloat(style.borderTopWidth) - parseFloat(style.borderBottomWidth);
|
|
276
|
+
} else {
|
|
277
|
+
if (calculatedScrollbarHeight != null) return calculatedScrollbarHeight;
|
|
278
|
+
const scrollDiv = document.createElement("div");
|
|
279
|
+
addStyle(scrollDiv, {
|
|
280
|
+
width: "100px",
|
|
281
|
+
height: "100px",
|
|
282
|
+
overflow: "scroll",
|
|
283
|
+
position: "absolute",
|
|
284
|
+
top: "-9999px"
|
|
285
|
+
});
|
|
286
|
+
document.body.appendChild(scrollDiv);
|
|
287
|
+
const scrollbarHeight = scrollDiv.offsetHeight - scrollDiv.clientHeight;
|
|
288
|
+
document.body.removeChild(scrollDiv);
|
|
289
|
+
calculatedScrollbarHeight = scrollbarHeight;
|
|
290
|
+
return scrollbarHeight;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
let calculatedScrollbarWidth = void 0;
|
|
436
294
|
function calculateScrollbarWidth(element) {
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
return scrollbarWidth;
|
|
457
|
-
}
|
|
295
|
+
if (element) {
|
|
296
|
+
const style = getComputedStyle(element);
|
|
297
|
+
return element.offsetWidth - element.clientWidth - parseFloat(style.borderLeftWidth) - parseFloat(style.borderRightWidth);
|
|
298
|
+
} else {
|
|
299
|
+
if (calculatedScrollbarWidth != null) return calculatedScrollbarWidth;
|
|
300
|
+
const scrollDiv = document.createElement("div");
|
|
301
|
+
addStyle(scrollDiv, {
|
|
302
|
+
width: "100px",
|
|
303
|
+
height: "100px",
|
|
304
|
+
overflow: "scroll",
|
|
305
|
+
position: "absolute",
|
|
306
|
+
top: "-9999px"
|
|
307
|
+
});
|
|
308
|
+
document.body.appendChild(scrollDiv);
|
|
309
|
+
const scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;
|
|
310
|
+
document.body.removeChild(scrollDiv);
|
|
311
|
+
calculatedScrollbarWidth = scrollbarWidth;
|
|
312
|
+
return scrollbarWidth;
|
|
313
|
+
}
|
|
458
314
|
}
|
|
459
|
-
|
|
460
315
|
function clearSelection() {
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
else if (selection.removeAllRanges && selection.rangeCount > 0 && selection.getRangeAt(0).getClientRects().length > 0) {
|
|
467
|
-
selection.removeAllRanges();
|
|
468
|
-
}
|
|
469
|
-
}
|
|
316
|
+
if (window.getSelection) {
|
|
317
|
+
const selection = window.getSelection() || {};
|
|
318
|
+
if (selection.empty) selection.empty();
|
|
319
|
+
else if (selection.removeAllRanges && selection.rangeCount > 0 && selection.getRangeAt(0).getClientRects().length > 0) selection.removeAllRanges();
|
|
320
|
+
}
|
|
470
321
|
}
|
|
471
|
-
|
|
472
322
|
function setAttributes(element, attributes = {}) {
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
(element.$attrs = element.$attrs || {}) && (element.$attrs[key] = value);
|
|
502
|
-
element.setAttribute(key, value);
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
|
-
});
|
|
506
|
-
}
|
|
323
|
+
if (isElement(element)) {
|
|
324
|
+
const computedStyles = (rule, value) => {
|
|
325
|
+
const styles = element?.$attrs?.[rule] ? [element?.$attrs?.[rule]] : [];
|
|
326
|
+
return [value].flat().reduce((cv, v) => {
|
|
327
|
+
if (v !== null && v !== void 0) {
|
|
328
|
+
const type = typeof v;
|
|
329
|
+
if (type === "string" || type === "number") cv.push(v);
|
|
330
|
+
else if (type === "object") {
|
|
331
|
+
const _cv = Array.isArray(v) ? computedStyles(rule, v) : Object.entries(v).map(([_k, _v]) => rule === "style" && (!!_v || _v === 0) ? `${_k.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase()}:${_v}` : _v ? _k : void 0);
|
|
332
|
+
cv = _cv.length ? cv.concat(_cv.filter((c) => !!c)) : cv;
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
return cv;
|
|
336
|
+
}, styles);
|
|
337
|
+
};
|
|
338
|
+
Object.entries(attributes).forEach(([key, value]) => {
|
|
339
|
+
if (value !== void 0 && value !== null) {
|
|
340
|
+
const matchedEvent = key.match(/^on(.+)/);
|
|
341
|
+
if (matchedEvent) element.addEventListener(matchedEvent[1].toLowerCase(), value);
|
|
342
|
+
else if (key === "h-bind" || key === "pBind") setAttributes(element, value);
|
|
343
|
+
else {
|
|
344
|
+
value = key === "class" ? [...new Set(computedStyles("class", value))].join(" ").trim() : key === "style" ? computedStyles("style", value).join(";").trim() : value;
|
|
345
|
+
(element.$attrs = element.$attrs || {}) && (element.$attrs[key] = value);
|
|
346
|
+
element.setAttribute(key, value);
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
});
|
|
350
|
+
}
|
|
507
351
|
}
|
|
508
|
-
|
|
509
352
|
function createElement(type, attributes = {}, ...children) {
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
return undefined;
|
|
353
|
+
if (type) {
|
|
354
|
+
const element = document.createElement(type);
|
|
355
|
+
setAttributes(element, attributes);
|
|
356
|
+
element.append(...children);
|
|
357
|
+
return element;
|
|
358
|
+
}
|
|
517
359
|
}
|
|
518
|
-
|
|
519
360
|
function createStyleMarkup(css, attributes = {}) {
|
|
520
|
-
|
|
361
|
+
return css ? `<style${Object.entries(attributes).reduce((s, [k, v]) => s + ` ${k}="${v}"`, "")}>${css}</style>` : "";
|
|
521
362
|
}
|
|
522
|
-
|
|
523
|
-
/**
|
|
524
|
-
* @deprecated Use `createStyleMarkup` instead.
|
|
525
|
-
*/
|
|
526
363
|
function createStyleAsString(css, options = {}) {
|
|
527
|
-
|
|
364
|
+
return createStyleMarkup(css, options);
|
|
528
365
|
}
|
|
529
|
-
|
|
530
366
|
function createStyleElement(css, attributes = {}, container) {
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
367
|
+
const element = createElement("style", attributes, css);
|
|
368
|
+
container?.appendChild(element);
|
|
369
|
+
return element;
|
|
534
370
|
}
|
|
535
|
-
|
|
536
|
-
/**
|
|
537
|
-
* @deprecated Use `createStyleElement` instead.
|
|
538
|
-
*/
|
|
539
371
|
function createStyleTag(attributes = {}, container) {
|
|
540
|
-
|
|
372
|
+
return createStyleElement("", attributes, container || document.head);
|
|
541
373
|
}
|
|
542
|
-
|
|
543
374
|
function fadeIn(element, duration) {
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
}
|
|
558
|
-
};
|
|
559
|
-
tick();
|
|
560
|
-
}
|
|
375
|
+
if (element) {
|
|
376
|
+
element.style.opacity = "0";
|
|
377
|
+
let last = +/* @__PURE__ */ new Date();
|
|
378
|
+
let opacity = "0";
|
|
379
|
+
const tick = function() {
|
|
380
|
+
opacity = `${+element.style.opacity + ((/* @__PURE__ */ new Date()).getTime() - last) / duration}`;
|
|
381
|
+
element.style.opacity = opacity;
|
|
382
|
+
last = +/* @__PURE__ */ new Date();
|
|
383
|
+
if (+opacity < 1) if ("requestAnimationFrame" in window) requestAnimationFrame(tick);
|
|
384
|
+
else setTimeout(tick, 16);
|
|
385
|
+
};
|
|
386
|
+
tick();
|
|
387
|
+
}
|
|
561
388
|
}
|
|
562
|
-
|
|
563
389
|
function fadeOut(element, duration) {
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
390
|
+
if (element) {
|
|
391
|
+
let opacity = 1;
|
|
392
|
+
const interval = 50;
|
|
393
|
+
const gap = interval / duration;
|
|
394
|
+
const fading = setInterval(() => {
|
|
395
|
+
opacity -= gap;
|
|
396
|
+
if (opacity <= 0) {
|
|
397
|
+
opacity = 0;
|
|
398
|
+
clearInterval(fading);
|
|
399
|
+
}
|
|
400
|
+
element.style.opacity = opacity.toString();
|
|
401
|
+
}, interval);
|
|
402
|
+
}
|
|
577
403
|
}
|
|
578
|
-
|
|
579
404
|
function find(element, selector) {
|
|
580
|
-
|
|
405
|
+
return isElement(element) ? Array.from(element.querySelectorAll(selector)) : [];
|
|
581
406
|
}
|
|
582
|
-
|
|
583
407
|
function findSingle(element, selector) {
|
|
584
|
-
|
|
408
|
+
return isElement(element) ? element.matches(selector) ? element : element.querySelector(selector) : null;
|
|
585
409
|
}
|
|
586
|
-
|
|
587
410
|
function focus(element, options) {
|
|
588
|
-
|
|
589
|
-
element.focus(options);
|
|
411
|
+
if (element && document.activeElement !== element) element.focus(options);
|
|
590
412
|
}
|
|
591
|
-
|
|
592
413
|
function getAttribute(element, name) {
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
return value === 'true';
|
|
600
|
-
}
|
|
601
|
-
return value;
|
|
602
|
-
}
|
|
603
|
-
return undefined;
|
|
414
|
+
if (isElement(element)) {
|
|
415
|
+
const value = element.getAttribute(name);
|
|
416
|
+
if (!isNaN(value)) return +value;
|
|
417
|
+
if (value === "true" || value === "false") return value === "true";
|
|
418
|
+
return value;
|
|
419
|
+
}
|
|
604
420
|
}
|
|
605
|
-
|
|
606
421
|
function resolveUserAgent() {
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
422
|
+
const ua = navigator.userAgent.toLowerCase();
|
|
423
|
+
const match = /(chrome)[ ]([\w.]+)/.exec(ua) || /(webkit)[ ]([\w.]+)/.exec(ua) || /(opera)(?:.*version|)[ ]([\w.]+)/.exec(ua) || /(msie) ([\w.]+)/.exec(ua) || ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || [];
|
|
424
|
+
return {
|
|
425
|
+
browser: match[1] || "",
|
|
426
|
+
version: match[2] || "0"
|
|
427
|
+
};
|
|
613
428
|
}
|
|
614
|
-
|
|
615
429
|
let browser = null;
|
|
616
430
|
function getBrowser() {
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
browser['safari'] = true;
|
|
629
|
-
}
|
|
630
|
-
}
|
|
631
|
-
return browser;
|
|
431
|
+
if (!browser) {
|
|
432
|
+
browser = {};
|
|
433
|
+
const matched = resolveUserAgent();
|
|
434
|
+
if (matched.browser) {
|
|
435
|
+
browser[matched.browser] = true;
|
|
436
|
+
browser["version"] = matched.version;
|
|
437
|
+
}
|
|
438
|
+
if (browser["chrome"]) browser["webkit"] = true;
|
|
439
|
+
else if (browser["webkit"]) browser["safari"] = true;
|
|
440
|
+
}
|
|
441
|
+
return browser;
|
|
632
442
|
}
|
|
633
|
-
|
|
634
443
|
function getBrowserLanguage() {
|
|
635
|
-
|
|
444
|
+
return navigator.languages && navigator.languages.length && navigator.languages[0] || navigator.language || "en";
|
|
636
445
|
}
|
|
637
|
-
|
|
638
446
|
function getCSSProperty(element, property, inline) {
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
}
|
|
642
|
-
return null;
|
|
447
|
+
if (element && property) return inline ? element?.style?.getPropertyValue(property) : getComputedStyle(element).getPropertyValue(property);
|
|
448
|
+
return null;
|
|
643
449
|
}
|
|
644
|
-
|
|
645
|
-
/**
|
|
646
|
-
* Ported from @primeuix/utils 0.7.2 (new in 0.7.x; not present in main's 0.6.4 at vendor time).
|
|
647
|
-
*/
|
|
648
450
|
function isCssSupported(property, value) {
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
}
|
|
656
|
-
return CSS.supports(property.toString());
|
|
451
|
+
if (typeof CSS === "undefined" || !CSS.supports) return false;
|
|
452
|
+
if (value !== void 0) {
|
|
453
|
+
const cssProperty = property.toString().replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`);
|
|
454
|
+
return CSS.supports(cssProperty, value);
|
|
455
|
+
}
|
|
456
|
+
return CSS.supports(property.toString());
|
|
657
457
|
}
|
|
658
|
-
|
|
659
458
|
function getCursorOffset(element, prevText, nextText, currentText) {
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
}
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
const focusableElements = find(element, `button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
459
|
+
if (element) {
|
|
460
|
+
const style = getComputedStyle(element);
|
|
461
|
+
const ghostDiv = document.createElement("div");
|
|
462
|
+
ghostDiv.style.position = "absolute";
|
|
463
|
+
ghostDiv.style.top = "0px";
|
|
464
|
+
ghostDiv.style.left = "0px";
|
|
465
|
+
ghostDiv.style.visibility = "hidden";
|
|
466
|
+
ghostDiv.style.pointerEvents = "none";
|
|
467
|
+
ghostDiv.style.overflow = style.overflow;
|
|
468
|
+
ghostDiv.style.width = style.width;
|
|
469
|
+
ghostDiv.style.height = style.height;
|
|
470
|
+
ghostDiv.style.padding = style.padding;
|
|
471
|
+
ghostDiv.style.border = style.border;
|
|
472
|
+
ghostDiv.style.overflowWrap = style.overflowWrap;
|
|
473
|
+
ghostDiv.style.whiteSpace = style.whiteSpace;
|
|
474
|
+
ghostDiv.style.lineHeight = style.lineHeight;
|
|
475
|
+
ghostDiv.innerHTML = prevText.replace(/\r\n|\r|\n/g, "<br />");
|
|
476
|
+
const ghostSpan = document.createElement("span");
|
|
477
|
+
ghostSpan.textContent = currentText;
|
|
478
|
+
ghostDiv.appendChild(ghostSpan);
|
|
479
|
+
const text = document.createTextNode(nextText);
|
|
480
|
+
ghostDiv.appendChild(text);
|
|
481
|
+
document.body.appendChild(ghostDiv);
|
|
482
|
+
const { offsetLeft, offsetTop, clientHeight } = ghostSpan;
|
|
483
|
+
document.body.removeChild(ghostDiv);
|
|
484
|
+
return {
|
|
485
|
+
left: Math.abs(offsetLeft - element.scrollLeft),
|
|
486
|
+
top: Math.abs(offsetTop - element.scrollTop) + clientHeight
|
|
487
|
+
};
|
|
488
|
+
}
|
|
489
|
+
return {
|
|
490
|
+
top: "auto",
|
|
491
|
+
left: "auto"
|
|
492
|
+
};
|
|
493
|
+
}
|
|
494
|
+
function getFocusableElements(element, selector = "") {
|
|
495
|
+
const focusableElements = find(element, `button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
698
496
|
[href]:not([tabindex = "-1"]):not([style*="display:none"]):not([hidden])${selector},
|
|
699
497
|
input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
700
498
|
select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
701
499
|
textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
702
500
|
[tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
703
501
|
[contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector}`);
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
visibleFocusableElements.push(focusableElement);
|
|
708
|
-
}
|
|
709
|
-
return visibleFocusableElements;
|
|
502
|
+
const visibleFocusableElements = [];
|
|
503
|
+
for (const focusableElement of focusableElements) if (getComputedStyle(focusableElement).display != "none" && getComputedStyle(focusableElement).visibility != "hidden") visibleFocusableElements.push(focusableElement);
|
|
504
|
+
return visibleFocusableElements;
|
|
710
505
|
}
|
|
711
|
-
|
|
712
506
|
function getFirstFocusableElement(element, selector) {
|
|
713
|
-
|
|
714
|
-
|
|
507
|
+
const focusableElements = getFocusableElements(element, selector);
|
|
508
|
+
return focusableElements.length > 0 ? focusableElements[0] : null;
|
|
715
509
|
}
|
|
716
|
-
|
|
717
510
|
function getHeight(element) {
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
511
|
+
if (element) {
|
|
512
|
+
let height = element.offsetHeight;
|
|
513
|
+
const style = getComputedStyle(element);
|
|
514
|
+
height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth);
|
|
515
|
+
return height;
|
|
516
|
+
}
|
|
517
|
+
return 0;
|
|
725
518
|
}
|
|
726
|
-
|
|
727
519
|
function getHiddenElementOuterHeight(element) {
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
return 0;
|
|
520
|
+
if (element) {
|
|
521
|
+
const [visibility, display] = [element.style.visibility, element.style.display];
|
|
522
|
+
element.style.visibility = "hidden";
|
|
523
|
+
element.style.display = "block";
|
|
524
|
+
const elementHeight = element.offsetHeight;
|
|
525
|
+
element.style.display = display;
|
|
526
|
+
element.style.visibility = visibility;
|
|
527
|
+
return elementHeight;
|
|
528
|
+
}
|
|
529
|
+
return 0;
|
|
739
530
|
}
|
|
740
|
-
|
|
741
531
|
function getHiddenElementOuterWidth(element) {
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
return 0;
|
|
532
|
+
if (element) {
|
|
533
|
+
const [visibility, display] = [element.style.visibility, element.style.display];
|
|
534
|
+
element.style.visibility = "hidden";
|
|
535
|
+
element.style.display = "block";
|
|
536
|
+
const elementWidth = element.offsetWidth;
|
|
537
|
+
element.style.display = display;
|
|
538
|
+
element.style.visibility = visibility;
|
|
539
|
+
return elementWidth;
|
|
540
|
+
}
|
|
541
|
+
return 0;
|
|
753
542
|
}
|
|
754
|
-
|
|
755
543
|
function getIndex(element) {
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
}
|
|
766
|
-
}
|
|
767
|
-
}
|
|
768
|
-
return -1;
|
|
544
|
+
if (element) {
|
|
545
|
+
const children = getParentNode(element)?.childNodes;
|
|
546
|
+
let num = 0;
|
|
547
|
+
if (children) for (let i = 0; i < children.length; i++) {
|
|
548
|
+
if (children[i] === element) return num;
|
|
549
|
+
if (children[i].nodeType === 1) num++;
|
|
550
|
+
}
|
|
551
|
+
}
|
|
552
|
+
return -1;
|
|
769
553
|
}
|
|
770
|
-
|
|
771
554
|
function getInnerWidth(element) {
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
555
|
+
if (element) {
|
|
556
|
+
let width = element.offsetWidth;
|
|
557
|
+
const style = getComputedStyle(element);
|
|
558
|
+
width -= parseFloat(style.borderLeft) + parseFloat(style.borderRight);
|
|
559
|
+
return width;
|
|
560
|
+
}
|
|
561
|
+
return 0;
|
|
779
562
|
}
|
|
780
|
-
|
|
781
563
|
function getLastFocusableElement(element, selector) {
|
|
782
|
-
|
|
783
|
-
|
|
564
|
+
const focusableElements = getFocusableElements(element, selector);
|
|
565
|
+
return focusableElements.length > 0 ? focusableElements[focusableElements.length - 1] : null;
|
|
784
566
|
}
|
|
785
|
-
|
|
786
567
|
function getNextElementSibling(element, selector) {
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
}
|
|
792
|
-
else {
|
|
793
|
-
nextElement = nextElement.nextElementSibling;
|
|
794
|
-
}
|
|
795
|
-
}
|
|
796
|
-
return null;
|
|
568
|
+
let nextElement = element.nextElementSibling;
|
|
569
|
+
while (nextElement) if (nextElement.matches(selector)) return nextElement;
|
|
570
|
+
else nextElement = nextElement.nextElementSibling;
|
|
571
|
+
return null;
|
|
797
572
|
}
|
|
798
|
-
|
|
799
573
|
function getNextFocusableElement(container, element, selector) {
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
574
|
+
const focusableElements = getFocusableElements(container, selector);
|
|
575
|
+
const index = focusableElements.length > 0 ? focusableElements.findIndex((el) => el === element) : -1;
|
|
576
|
+
const nextIndex = index > -1 && focusableElements.length >= index + 1 ? index + 1 : -1;
|
|
577
|
+
return nextIndex > -1 ? focusableElements[nextIndex] : null;
|
|
804
578
|
}
|
|
805
|
-
|
|
806
579
|
function getOffset(element) {
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
580
|
+
if (element) {
|
|
581
|
+
const rect = element.getBoundingClientRect();
|
|
582
|
+
return {
|
|
583
|
+
top: rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),
|
|
584
|
+
left: rect.left + (window.pageXOffset || getScrollLeft(document.documentElement) || getScrollLeft(document.body) || 0)
|
|
585
|
+
};
|
|
586
|
+
}
|
|
587
|
+
return {
|
|
588
|
+
top: "auto",
|
|
589
|
+
left: "auto"
|
|
590
|
+
};
|
|
818
591
|
}
|
|
819
|
-
|
|
820
592
|
function getOuterHeight(element, margin) {
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
593
|
+
if (element) {
|
|
594
|
+
let height = element.offsetHeight;
|
|
595
|
+
if (margin) {
|
|
596
|
+
const style = getComputedStyle(element);
|
|
597
|
+
height += parseFloat(style.marginTop) + parseFloat(style.marginBottom);
|
|
598
|
+
}
|
|
599
|
+
return height;
|
|
600
|
+
}
|
|
601
|
+
return 0;
|
|
830
602
|
}
|
|
831
|
-
|
|
832
603
|
function getParents(element, parents = []) {
|
|
833
|
-
|
|
834
|
-
|
|
604
|
+
const parent = getParentNode(element);
|
|
605
|
+
return parent === null ? parents : getParents(parent, parents.concat([parent]));
|
|
835
606
|
}
|
|
836
|
-
|
|
837
607
|
function getPreviousElementSibling(element, selector) {
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
}
|
|
843
|
-
else {
|
|
844
|
-
previousElement = previousElement.previousElementSibling;
|
|
845
|
-
}
|
|
846
|
-
}
|
|
847
|
-
return null;
|
|
608
|
+
let previousElement = element.previousElementSibling;
|
|
609
|
+
while (previousElement) if (previousElement.matches(selector)) return previousElement;
|
|
610
|
+
else previousElement = previousElement.previousElementSibling;
|
|
611
|
+
return null;
|
|
848
612
|
}
|
|
849
|
-
|
|
850
613
|
function getScrollableParents(element) {
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
scrollableParents.push(parent);
|
|
877
|
-
}
|
|
878
|
-
}
|
|
879
|
-
}
|
|
880
|
-
return scrollableParents;
|
|
614
|
+
const scrollableParents = [];
|
|
615
|
+
if (element) {
|
|
616
|
+
const parents = getParents(element);
|
|
617
|
+
const overflowRegex = /(auto|scroll)/;
|
|
618
|
+
const overflowCheck = (node) => {
|
|
619
|
+
try {
|
|
620
|
+
const styleDeclaration = window["getComputedStyle"](node, null);
|
|
621
|
+
return overflowRegex.test(styleDeclaration.getPropertyValue("overflow")) || overflowRegex.test(styleDeclaration.getPropertyValue("overflowX")) || overflowRegex.test(styleDeclaration.getPropertyValue("overflowY"));
|
|
622
|
+
} catch {
|
|
623
|
+
return false;
|
|
624
|
+
}
|
|
625
|
+
};
|
|
626
|
+
for (const parent of parents) {
|
|
627
|
+
const scrollSelectors = parent.nodeType === 1 && parent.dataset["scrollselectors"];
|
|
628
|
+
if (scrollSelectors) {
|
|
629
|
+
const selectors = scrollSelectors.split(",");
|
|
630
|
+
for (const selector of selectors) {
|
|
631
|
+
const el = findSingle(parent, selector);
|
|
632
|
+
if (el && overflowCheck(el)) scrollableParents.push(el);
|
|
633
|
+
}
|
|
634
|
+
}
|
|
635
|
+
if (parent.nodeType !== 9 && overflowCheck(parent)) scrollableParents.push(parent);
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
return scrollableParents;
|
|
881
639
|
}
|
|
882
|
-
|
|
883
640
|
function getSelection() {
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
else if (document.getSelection)
|
|
887
|
-
return document.getSelection().toString();
|
|
888
|
-
return undefined;
|
|
641
|
+
if (window.getSelection) return window.getSelection().toString();
|
|
642
|
+
else if (document.getSelection) return document.getSelection().toString();
|
|
889
643
|
}
|
|
890
|
-
|
|
891
644
|
function getUserAgent() {
|
|
892
|
-
|
|
645
|
+
return navigator.userAgent;
|
|
893
646
|
}
|
|
894
|
-
|
|
895
647
|
function getWidth(element) {
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
648
|
+
if (element) {
|
|
649
|
+
let width = element.offsetWidth;
|
|
650
|
+
const style = getComputedStyle(element);
|
|
651
|
+
width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth);
|
|
652
|
+
return width;
|
|
653
|
+
}
|
|
654
|
+
return 0;
|
|
903
655
|
}
|
|
904
|
-
|
|
905
656
|
function hasCSSAnimation(element) {
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
return false;
|
|
657
|
+
if (element) {
|
|
658
|
+
const style = getComputedStyle(element);
|
|
659
|
+
return parseFloat(style.getPropertyValue("animation-duration") || "0") > 0;
|
|
660
|
+
}
|
|
661
|
+
return false;
|
|
912
662
|
}
|
|
913
|
-
|
|
914
663
|
function hasCSSTransition(element) {
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
return false;
|
|
664
|
+
if (element) {
|
|
665
|
+
const style = getComputedStyle(element);
|
|
666
|
+
return parseFloat(style.getPropertyValue("transition-duration") || "0") > 0;
|
|
667
|
+
}
|
|
668
|
+
return false;
|
|
921
669
|
}
|
|
922
|
-
|
|
923
670
|
function invokeElementMethod(element, methodName, args) {
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
method.apply(element, args ?? []);
|
|
927
|
-
}
|
|
671
|
+
const method = element[methodName];
|
|
672
|
+
if (typeof method === "function") method.apply(element, args ?? []);
|
|
928
673
|
}
|
|
929
|
-
|
|
930
674
|
function isAndroid() {
|
|
931
|
-
|
|
675
|
+
return /(android)/i.test(navigator.userAgent);
|
|
932
676
|
}
|
|
933
|
-
|
|
934
677
|
function isAttributeEquals(element, name, value) {
|
|
935
|
-
|
|
678
|
+
return isElement(element) ? getAttribute(element, name) === value : false;
|
|
936
679
|
}
|
|
937
|
-
|
|
938
680
|
function isAttributeNotEquals(element, name, value) {
|
|
939
|
-
|
|
681
|
+
return !isAttributeEquals(element, name, value);
|
|
940
682
|
}
|
|
941
|
-
|
|
942
683
|
function isClickable(element) {
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
targetNode === 'A' ||
|
|
950
|
-
parentNode === 'INPUT' ||
|
|
951
|
-
parentNode === 'TEXTAREA' ||
|
|
952
|
-
parentNode === 'BUTTON' ||
|
|
953
|
-
parentNode === 'A' ||
|
|
954
|
-
!!element.closest('.h-button, .h-checkbox, .h-radiobutton') // @todo Add [data-pc-section="button"]
|
|
955
|
-
);
|
|
956
|
-
}
|
|
957
|
-
return false;
|
|
684
|
+
if (element) {
|
|
685
|
+
const targetNode = element.nodeName;
|
|
686
|
+
const parentNode = element.parentElement && element.parentElement.nodeName;
|
|
687
|
+
return targetNode === "INPUT" || targetNode === "TEXTAREA" || targetNode === "BUTTON" || targetNode === "A" || parentNode === "INPUT" || parentNode === "TEXTAREA" || parentNode === "BUTTON" || parentNode === "A" || !!element.closest(".h-button, .h-checkbox, .h-radiobutton");
|
|
688
|
+
}
|
|
689
|
+
return false;
|
|
958
690
|
}
|
|
959
|
-
|
|
960
691
|
function isClient() {
|
|
961
|
-
|
|
692
|
+
return !!(typeof window !== "undefined" && window.document && window.document.createElement);
|
|
962
693
|
}
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
return isElement(element)
|
|
966
|
-
? element.matches(`button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
694
|
+
function isFocusableElement(element, selector = "") {
|
|
695
|
+
return isElement(element) ? element.matches(`button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
967
696
|
[href][clientHeight][clientWidth]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
968
697
|
input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
969
698
|
select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
970
699
|
textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
971
700
|
[tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector},
|
|
972
|
-
[contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector}`)
|
|
973
|
-
: false;
|
|
701
|
+
[contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${selector}`) : false;
|
|
974
702
|
}
|
|
975
|
-
|
|
976
703
|
function isVisible(element) {
|
|
977
|
-
|
|
704
|
+
return !!(element && element.offsetParent != null);
|
|
978
705
|
}
|
|
979
|
-
|
|
980
706
|
function isHidden(element) {
|
|
981
|
-
|
|
707
|
+
return !isVisible(element);
|
|
982
708
|
}
|
|
983
|
-
|
|
984
709
|
function isIOS() {
|
|
985
|
-
|
|
710
|
+
return /iPad|iPhone|iPod/.test(navigator.userAgent) && !("MSStream" in window);
|
|
986
711
|
}
|
|
987
|
-
|
|
988
712
|
function isPrefersReducedMotion() {
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
}
|
|
992
|
-
const mediaQuery = window.matchMedia('(prefers-reduced-motion: reduce)');
|
|
993
|
-
return mediaQuery.matches;
|
|
713
|
+
if (typeof window === "undefined" || !window.matchMedia) return false;
|
|
714
|
+
return window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
994
715
|
}
|
|
995
|
-
|
|
996
716
|
function isServer() {
|
|
997
|
-
|
|
717
|
+
return !isClient();
|
|
998
718
|
}
|
|
999
|
-
|
|
1000
719
|
function isTouchDevice() {
|
|
1001
|
-
|
|
720
|
+
return "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0;
|
|
1002
721
|
}
|
|
1003
|
-
|
|
1004
722
|
function nestedPosition(element, level) {
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
else {
|
|
1026
|
-
left = '-100%';
|
|
1027
|
-
}
|
|
1028
|
-
}
|
|
1029
|
-
else {
|
|
1030
|
-
left = '100%';
|
|
1031
|
-
}
|
|
1032
|
-
// getBoundingClientRect returns a top position from the current visible viewport area
|
|
1033
|
-
if (element.getBoundingClientRect().top + itemOuterHeight + sublistHeight > viewport.height) {
|
|
1034
|
-
top = `-${sublistHeight - itemOuterHeight}px`;
|
|
1035
|
-
}
|
|
1036
|
-
else {
|
|
1037
|
-
top = '0px';
|
|
1038
|
-
}
|
|
1039
|
-
element.style.top = top;
|
|
1040
|
-
element.style.insetInlineStart = left;
|
|
1041
|
-
}
|
|
723
|
+
if (element) {
|
|
724
|
+
const parentItem = element.parentElement;
|
|
725
|
+
const elementOffset = getOffset(parentItem);
|
|
726
|
+
const viewport = getViewport();
|
|
727
|
+
const sublistWidth = element.offsetParent ? element.offsetWidth : getHiddenElementOuterWidth(element);
|
|
728
|
+
const sublistHeight = element.offsetParent ? element.offsetHeight : getHiddenElementOuterHeight(element);
|
|
729
|
+
const itemOuterWidth = getOuterWidth(parentItem?.children?.[0]);
|
|
730
|
+
const itemOuterHeight = getOuterHeight(parentItem?.children?.[0]);
|
|
731
|
+
let left = "";
|
|
732
|
+
let top = "";
|
|
733
|
+
if (elementOffset.left + itemOuterWidth + sublistWidth > viewport.width - calculateScrollbarWidth()) if (elementOffset.left < sublistWidth) {
|
|
734
|
+
if (level % 2 === 1) left = elementOffset.left ? "-" + elementOffset.left + "px" : "100%";
|
|
735
|
+
else if (level % 2 === 0) left = viewport.width - sublistWidth - calculateScrollbarWidth() + "px";
|
|
736
|
+
} else left = "-100%";
|
|
737
|
+
else left = "100%";
|
|
738
|
+
if (element.getBoundingClientRect().top + itemOuterHeight + sublistHeight > viewport.height) top = `-${sublistHeight - itemOuterHeight}px`;
|
|
739
|
+
else top = "0px";
|
|
740
|
+
element.style.top = top;
|
|
741
|
+
element.style.insetInlineStart = left;
|
|
742
|
+
}
|
|
1042
743
|
}
|
|
1043
|
-
|
|
1044
744
|
function nextFrame() {
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
745
|
+
return new Promise((resolve) => {
|
|
746
|
+
requestAnimationFrame(() => {
|
|
747
|
+
requestAnimationFrame(resolve);
|
|
748
|
+
});
|
|
749
|
+
});
|
|
1050
750
|
}
|
|
1051
|
-
|
|
1052
751
|
function remove(element) {
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
element.parentNode?.removeChild(element);
|
|
1056
|
-
else
|
|
1057
|
-
element.remove();
|
|
1058
|
-
}
|
|
752
|
+
if (element) if (!("remove" in Element.prototype)) element.parentNode?.removeChild(element);
|
|
753
|
+
else element.remove();
|
|
1059
754
|
}
|
|
1060
|
-
|
|
1061
755
|
function removeChild(element, child) {
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
else
|
|
1066
|
-
throw new Error('Cannot remove ' + child + ' from ' + element);
|
|
756
|
+
const target = toElement(element);
|
|
757
|
+
if (target) target.removeChild(child);
|
|
758
|
+
else throw new Error("Cannot remove " + child + " from " + element);
|
|
1067
759
|
}
|
|
1068
|
-
|
|
1069
760
|
function removeStyleTag(element) {
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
return null;
|
|
1078
|
-
}
|
|
1079
|
-
return element;
|
|
761
|
+
if (isExist(element)) {
|
|
762
|
+
try {
|
|
763
|
+
element.parentNode?.removeChild(element);
|
|
764
|
+
} catch {}
|
|
765
|
+
return null;
|
|
766
|
+
}
|
|
767
|
+
return element;
|
|
1080
768
|
}
|
|
1081
|
-
|
|
1082
769
|
function scrollInView(container, item) {
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
return;
|
|
1112
|
-
}
|
|
1113
|
-
const cssProperty = property.startsWith('--') ? property : property.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
|
|
1114
|
-
element.style.setProperty(cssProperty, String(propertyValue));
|
|
1115
|
-
});
|
|
1116
|
-
return;
|
|
1117
|
-
}
|
|
1118
|
-
if (attribute === 'style' && typeof value === 'string') {
|
|
1119
|
-
element.style.cssText = value;
|
|
1120
|
-
return;
|
|
1121
|
-
}
|
|
1122
|
-
element.setAttribute(attribute, value);
|
|
1123
|
-
}
|
|
770
|
+
const borderTopValue = getComputedStyle(container).getPropertyValue("borderTopWidth");
|
|
771
|
+
const borderTop = borderTopValue ? parseFloat(borderTopValue) : 0;
|
|
772
|
+
const paddingTopValue = getComputedStyle(container).getPropertyValue("paddingTop");
|
|
773
|
+
const paddingTop = paddingTopValue ? parseFloat(paddingTopValue) : 0;
|
|
774
|
+
const containerRect = container.getBoundingClientRect();
|
|
775
|
+
const offset = item.getBoundingClientRect().top + document.body.scrollTop - (containerRect.top + document.body.scrollTop) - borderTop - paddingTop;
|
|
776
|
+
const scroll = container.scrollTop;
|
|
777
|
+
const elementHeight = container.clientHeight;
|
|
778
|
+
const itemHeight = getOuterHeight(item);
|
|
779
|
+
if (offset < 0) container.scrollTop = scroll + offset;
|
|
780
|
+
else if (offset + itemHeight > elementHeight) container.scrollTop = scroll + offset - elementHeight + itemHeight;
|
|
781
|
+
}
|
|
782
|
+
function setAttribute(element, attribute = "", value) {
|
|
783
|
+
if (isElement(element) && value !== null && value !== void 0) {
|
|
784
|
+
if (attribute === "style" && typeof value === "object") {
|
|
785
|
+
Object.entries(value).forEach(([property, propertyValue]) => {
|
|
786
|
+
if (propertyValue == null) return;
|
|
787
|
+
const cssProperty = property.startsWith("--") ? property : property.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
|
|
788
|
+
element.style.setProperty(cssProperty, String(propertyValue));
|
|
789
|
+
});
|
|
790
|
+
return;
|
|
791
|
+
}
|
|
792
|
+
if (attribute === "style" && typeof value === "string") {
|
|
793
|
+
element.style.cssText = value;
|
|
794
|
+
return;
|
|
795
|
+
}
|
|
796
|
+
element.setAttribute(attribute, value);
|
|
797
|
+
}
|
|
1124
798
|
}
|
|
1125
|
-
|
|
1126
799
|
function setCSSProperty(element, property, value = null, priority) {
|
|
1127
|
-
|
|
800
|
+
property && element?.style?.setProperty(property, value, priority);
|
|
1128
801
|
}
|
|
1129
|
-
|
|
1130
802
|
function EventBus() {
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
}
|
|
1156
|
-
},
|
|
1157
|
-
clear() {
|
|
1158
|
-
allHandlers.clear();
|
|
1159
|
-
}
|
|
1160
|
-
};
|
|
803
|
+
const allHandlers = /* @__PURE__ */ new Map();
|
|
804
|
+
return {
|
|
805
|
+
on(type, handler) {
|
|
806
|
+
let handlers = allHandlers.get(type);
|
|
807
|
+
if (!handlers) handlers = [handler];
|
|
808
|
+
else handlers.push(handler);
|
|
809
|
+
allHandlers.set(type, handlers);
|
|
810
|
+
return this;
|
|
811
|
+
},
|
|
812
|
+
off(type, handler) {
|
|
813
|
+
const handlers = allHandlers.get(type);
|
|
814
|
+
if (handlers) handlers.splice(handlers.indexOf(handler) >>> 0, 1);
|
|
815
|
+
return this;
|
|
816
|
+
},
|
|
817
|
+
emit(type, evt) {
|
|
818
|
+
const handlers = allHandlers.get(type);
|
|
819
|
+
if (handlers) handlers.forEach((handler) => {
|
|
820
|
+
handler(evt);
|
|
821
|
+
});
|
|
822
|
+
},
|
|
823
|
+
clear() {
|
|
824
|
+
allHandlers.clear();
|
|
825
|
+
}
|
|
826
|
+
};
|
|
1161
827
|
}
|
|
1162
|
-
|
|
1163
828
|
function isEmpty(value) {
|
|
1164
|
-
|
|
829
|
+
return value === null || value === void 0 || value === "" || Array.isArray(value) && value.length === 0 || !(value instanceof Date) && typeof value === "object" && Object.keys(value).length === 0;
|
|
1165
830
|
}
|
|
1166
|
-
|
|
1167
831
|
function compare(value1, value2, comparator, order = 1) {
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
if (arrObj1 != arrObj2)
|
|
1209
|
-
return false;
|
|
1210
|
-
const dateObj1 = obj1 instanceof Date, dateObj2 = obj2 instanceof Date;
|
|
1211
|
-
if (dateObj1 != dateObj2)
|
|
1212
|
-
return false;
|
|
1213
|
-
if (dateObj1 && dateObj2)
|
|
1214
|
-
return obj1.getTime() == obj2.getTime();
|
|
1215
|
-
const regexpObj1 = obj1 instanceof RegExp, regexpObj2 = obj2 instanceof RegExp;
|
|
1216
|
-
if (regexpObj1 != regexpObj2)
|
|
1217
|
-
return false;
|
|
1218
|
-
if (regexpObj1 && regexpObj2)
|
|
1219
|
-
return obj1.toString() == obj2.toString();
|
|
1220
|
-
const keys = Object.keys(obj1);
|
|
1221
|
-
length = keys.length;
|
|
1222
|
-
if (length !== Object.keys(obj2).length)
|
|
1223
|
-
return false;
|
|
1224
|
-
for (i = length; i-- !== 0;)
|
|
1225
|
-
if (!Object.prototype.hasOwnProperty.call(obj2, keys[i]))
|
|
1226
|
-
return false;
|
|
1227
|
-
for (i = length; i-- !== 0;) {
|
|
1228
|
-
key = keys[i];
|
|
1229
|
-
if (!_deepEquals(obj1[key], obj2[key], visited))
|
|
1230
|
-
return false;
|
|
1231
|
-
}
|
|
1232
|
-
return true;
|
|
832
|
+
let result = -1;
|
|
833
|
+
const emptyValue1 = isEmpty(value1);
|
|
834
|
+
const emptyValue2 = isEmpty(value2);
|
|
835
|
+
if (emptyValue1 && emptyValue2) result = 0;
|
|
836
|
+
else if (emptyValue1) result = order;
|
|
837
|
+
else if (emptyValue2) result = -order;
|
|
838
|
+
else if (typeof value1 === "string" && typeof value2 === "string") result = comparator(value1, value2);
|
|
839
|
+
else result = value1 < value2 ? -1 : value1 > value2 ? 1 : 0;
|
|
840
|
+
return result;
|
|
841
|
+
}
|
|
842
|
+
function _deepEquals(obj1, obj2, visited = /* @__PURE__ */ new WeakSet()) {
|
|
843
|
+
if (obj1 === obj2) return true;
|
|
844
|
+
if (!obj1 || !obj2 || typeof obj1 !== "object" || typeof obj2 !== "object") return false;
|
|
845
|
+
if (visited.has(obj1) || visited.has(obj2)) return false;
|
|
846
|
+
visited.add(obj1).add(obj2);
|
|
847
|
+
const arrObj1 = Array.isArray(obj1);
|
|
848
|
+
const arrObj2 = Array.isArray(obj2);
|
|
849
|
+
let i, length, key;
|
|
850
|
+
if (arrObj1 && arrObj2) {
|
|
851
|
+
length = obj1.length;
|
|
852
|
+
if (length != obj2.length) return false;
|
|
853
|
+
for (i = length; i-- !== 0;) if (!_deepEquals(obj1[i], obj2[i], visited)) return false;
|
|
854
|
+
return true;
|
|
855
|
+
}
|
|
856
|
+
if (arrObj1 != arrObj2) return false;
|
|
857
|
+
const dateObj1 = obj1 instanceof Date, dateObj2 = obj2 instanceof Date;
|
|
858
|
+
if (dateObj1 != dateObj2) return false;
|
|
859
|
+
if (dateObj1 && dateObj2) return obj1.getTime() == obj2.getTime();
|
|
860
|
+
const regexpObj1 = obj1 instanceof RegExp, regexpObj2 = obj2 instanceof RegExp;
|
|
861
|
+
if (regexpObj1 != regexpObj2) return false;
|
|
862
|
+
if (regexpObj1 && regexpObj2) return obj1.toString() == obj2.toString();
|
|
863
|
+
const keys = Object.keys(obj1);
|
|
864
|
+
length = keys.length;
|
|
865
|
+
if (length !== Object.keys(obj2).length) return false;
|
|
866
|
+
for (i = length; i-- !== 0;) if (!Object.prototype.hasOwnProperty.call(obj2, keys[i])) return false;
|
|
867
|
+
for (i = length; i-- !== 0;) {
|
|
868
|
+
key = keys[i];
|
|
869
|
+
if (!_deepEquals(obj1[key], obj2[key], visited)) return false;
|
|
870
|
+
}
|
|
871
|
+
return true;
|
|
1233
872
|
}
|
|
1234
873
|
function deepEquals(obj1, obj2) {
|
|
1235
|
-
|
|
874
|
+
return _deepEquals(obj1, obj2);
|
|
1236
875
|
}
|
|
1237
|
-
|
|
1238
876
|
function isFunction(value) {
|
|
1239
|
-
|
|
877
|
+
return typeof value === "function" && "call" in value && "apply" in value;
|
|
1240
878
|
}
|
|
1241
|
-
|
|
1242
879
|
function isNotEmpty(value) {
|
|
1243
|
-
|
|
880
|
+
return !isEmpty(value);
|
|
1244
881
|
}
|
|
1245
|
-
|
|
1246
882
|
function resolveFieldData(data, field) {
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
else if (field.indexOf('.') === -1) {
|
|
1265
|
-
return data[field];
|
|
1266
|
-
}
|
|
1267
|
-
else {
|
|
1268
|
-
const fields = field.split('.');
|
|
1269
|
-
let value = data;
|
|
1270
|
-
for (let i = 0, len = fields.length; i < len; ++i) {
|
|
1271
|
-
if (value == null) {
|
|
1272
|
-
return null;
|
|
1273
|
-
}
|
|
1274
|
-
value = value[fields[i]];
|
|
1275
|
-
}
|
|
1276
|
-
return value;
|
|
1277
|
-
}
|
|
1278
|
-
}
|
|
1279
|
-
return null;
|
|
883
|
+
if (!data || !field) return null;
|
|
884
|
+
try {
|
|
885
|
+
const value = data[field];
|
|
886
|
+
if (isNotEmpty(value)) return value;
|
|
887
|
+
} catch {}
|
|
888
|
+
if (Object.keys(data).length) if (isFunction(field)) return field(data);
|
|
889
|
+
else if (field.indexOf(".") === -1) return data[field];
|
|
890
|
+
else {
|
|
891
|
+
const fields = field.split(".");
|
|
892
|
+
let value = data;
|
|
893
|
+
for (let i = 0, len = fields.length; i < len; ++i) {
|
|
894
|
+
if (value == null) return null;
|
|
895
|
+
value = value[fields[i]];
|
|
896
|
+
}
|
|
897
|
+
return value;
|
|
898
|
+
}
|
|
899
|
+
return null;
|
|
1280
900
|
}
|
|
1281
|
-
|
|
1282
901
|
function equals(obj1, obj2, field) {
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
else
|
|
1286
|
-
return deepEquals(obj1, obj2);
|
|
902
|
+
if (field) return resolveFieldData(obj1, field) === resolveFieldData(obj2, field);
|
|
903
|
+
else return deepEquals(obj1, obj2);
|
|
1287
904
|
}
|
|
1288
|
-
|
|
1289
905
|
function contains(value, list) {
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
}
|
|
1295
|
-
}
|
|
1296
|
-
return false;
|
|
906
|
+
if (value != null && list && list.length) {
|
|
907
|
+
for (const val of list) if (equals(value, val)) return true;
|
|
908
|
+
}
|
|
909
|
+
return false;
|
|
1297
910
|
}
|
|
1298
|
-
|
|
1299
911
|
function isObject(value, empty = true) {
|
|
1300
|
-
|
|
912
|
+
return value instanceof Object && value.constructor === Object && (empty || Object.keys(value).length !== 0);
|
|
1301
913
|
}
|
|
1302
|
-
|
|
1303
914
|
function _deepMerge(target = {}, source = {}) {
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
}
|
|
1313
|
-
});
|
|
1314
|
-
return mergedObj;
|
|
1315
|
-
}
|
|
1316
|
-
/**
|
|
1317
|
-
* Merges multiple objects into one.
|
|
1318
|
-
* @param args - Objects to merge.
|
|
1319
|
-
* @returns Merged object.
|
|
1320
|
-
*/
|
|
915
|
+
const mergedObj = { ...target };
|
|
916
|
+
Object.keys(source).forEach((key) => {
|
|
917
|
+
const typedKey = key;
|
|
918
|
+
if (isObject(source[typedKey]) && typedKey in target && isObject(target[typedKey])) mergedObj[typedKey] = _deepMerge(target[typedKey], source[typedKey]);
|
|
919
|
+
else mergedObj[typedKey] = source[typedKey];
|
|
920
|
+
});
|
|
921
|
+
return mergedObj;
|
|
922
|
+
}
|
|
1321
923
|
function deepMerge(...args) {
|
|
1322
|
-
|
|
924
|
+
return args.reduce((acc, obj, i) => i === 0 ? obj : _deepMerge(acc, obj), {});
|
|
1323
925
|
}
|
|
1324
|
-
|
|
1325
926
|
function filter(value, fields, filterValue) {
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
}
|
|
1335
|
-
}
|
|
1336
|
-
}
|
|
1337
|
-
return filteredItems;
|
|
927
|
+
const filteredItems = [];
|
|
928
|
+
if (value) {
|
|
929
|
+
for (const item of value) for (const field of fields) if (String(resolveFieldData(item, field)).toLowerCase().indexOf(filterValue.toLowerCase()) > -1) {
|
|
930
|
+
filteredItems.push(item);
|
|
931
|
+
break;
|
|
932
|
+
}
|
|
933
|
+
}
|
|
934
|
+
return filteredItems;
|
|
1338
935
|
}
|
|
1339
|
-
|
|
1340
936
|
function findIndexInList(value, list) {
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
}
|
|
1350
|
-
return index;
|
|
937
|
+
let index = -1;
|
|
938
|
+
if (list) {
|
|
939
|
+
for (let i = 0; i < list.length; i++) if (list[i] === value) {
|
|
940
|
+
index = i;
|
|
941
|
+
break;
|
|
942
|
+
}
|
|
943
|
+
}
|
|
944
|
+
return index;
|
|
1351
945
|
}
|
|
1352
|
-
|
|
1353
|
-
/**
|
|
1354
|
-
* Firefox-v103 does not currently support the "findLast" method. It is stated that this method will be supported with Firefox-v104.
|
|
1355
|
-
* https://caniuse.com/mdn-javascript_builtins_array_findlast
|
|
1356
|
-
*/
|
|
1357
946
|
function findLast(arr, callback) {
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
}
|
|
1366
|
-
}
|
|
1367
|
-
return item;
|
|
947
|
+
let item;
|
|
948
|
+
if (isNotEmpty(arr)) try {
|
|
949
|
+
item = arr.findLast(callback);
|
|
950
|
+
} catch {
|
|
951
|
+
item = [...arr].reverse().find(callback);
|
|
952
|
+
}
|
|
953
|
+
return item;
|
|
1368
954
|
}
|
|
1369
|
-
|
|
1370
|
-
/**
|
|
1371
|
-
* Firefox-v103 does not currently support the "findLastIndex" method. It is stated that this method will be supported with Firefox-v104.
|
|
1372
|
-
* https://caniuse.com/mdn-javascript_builtins_array_findlastindex
|
|
1373
|
-
*/
|
|
1374
955
|
function findLastIndex(arr, callback) {
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
}
|
|
1383
|
-
}
|
|
1384
|
-
return index;
|
|
956
|
+
let index = -1;
|
|
957
|
+
if (isNotEmpty(arr)) try {
|
|
958
|
+
index = arr.findLastIndex(callback);
|
|
959
|
+
} catch {
|
|
960
|
+
index = arr.lastIndexOf([...arr].reverse().find(callback));
|
|
961
|
+
}
|
|
962
|
+
return index;
|
|
1385
963
|
}
|
|
1386
|
-
|
|
1387
964
|
function resolve(obj, ...params) {
|
|
1388
|
-
|
|
965
|
+
return isFunction(obj) ? obj(...params) : obj;
|
|
1389
966
|
}
|
|
1390
|
-
|
|
1391
967
|
function isString(value, empty = true) {
|
|
1392
|
-
|
|
968
|
+
return typeof value === "string" && (empty || value !== "");
|
|
1393
969
|
}
|
|
1394
|
-
|
|
1395
970
|
function toFlatCase(str) {
|
|
1396
|
-
|
|
1397
|
-
return isString(str) ? str.replace(/(-|_)/g, '').toLowerCase() : str;
|
|
971
|
+
return isString(str) ? str.replace(/(-|_)/g, "").toLowerCase() : str;
|
|
1398
972
|
}
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
}
|
|
1408
|
-
return undefined;
|
|
1409
|
-
}
|
|
1410
|
-
return resolve(obj, params);
|
|
973
|
+
function getKeyValue(obj, key = "", params = {}) {
|
|
974
|
+
const fKeys = toFlatCase(key).split(".");
|
|
975
|
+
const fKey = fKeys.shift();
|
|
976
|
+
if (fKey) {
|
|
977
|
+
if (isObject(obj)) return getKeyValue(resolve(obj[Object.keys(obj).find((k) => toFlatCase(k) === fKey) || ""], params), fKeys.join("."), params);
|
|
978
|
+
return;
|
|
979
|
+
}
|
|
980
|
+
return resolve(obj, params);
|
|
1411
981
|
}
|
|
1412
|
-
|
|
1413
982
|
function insertIntoOrderedArray(item, index, arr, sourceArr) {
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
}
|
|
1424
|
-
if (!injected) {
|
|
1425
|
-
arr.push(item);
|
|
1426
|
-
}
|
|
1427
|
-
}
|
|
1428
|
-
else {
|
|
1429
|
-
arr.push(item);
|
|
1430
|
-
}
|
|
983
|
+
if (arr.length > 0) {
|
|
984
|
+
let injected = false;
|
|
985
|
+
for (let i = 0; i < arr.length; i++) if (findIndexInList(arr[i], sourceArr) > index) {
|
|
986
|
+
arr.splice(i, 0, item);
|
|
987
|
+
injected = true;
|
|
988
|
+
break;
|
|
989
|
+
}
|
|
990
|
+
if (!injected) arr.push(item);
|
|
991
|
+
} else arr.push(item);
|
|
1431
992
|
}
|
|
1432
|
-
|
|
1433
993
|
function isArray(value, empty = true) {
|
|
1434
|
-
|
|
994
|
+
return Array.isArray(value) && (empty || value.length !== 0);
|
|
1435
995
|
}
|
|
1436
|
-
|
|
1437
996
|
function isDate(value) {
|
|
1438
|
-
|
|
997
|
+
return value instanceof Date;
|
|
1439
998
|
}
|
|
1440
|
-
|
|
1441
999
|
function isLetter(char) {
|
|
1442
|
-
|
|
1000
|
+
return /^[a-zA-Z\u00C0-\u017F]$/.test(char);
|
|
1443
1001
|
}
|
|
1444
|
-
|
|
1445
1002
|
function isNumber(value) {
|
|
1446
|
-
|
|
1003
|
+
return isNotEmpty(value) && !isNaN(value);
|
|
1447
1004
|
}
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
return isNotEmpty(char) && char.length === 1 && !!char.match(/\S| /);
|
|
1005
|
+
function isPrintableCharacter(char = "") {
|
|
1006
|
+
return isNotEmpty(char) && char.length === 1 && !!char.match(/\S| /);
|
|
1451
1007
|
}
|
|
1452
|
-
|
|
1453
1008
|
function isScalar(value) {
|
|
1454
|
-
|
|
1009
|
+
return value != null && (typeof value === "string" || typeof value === "number" || typeof value === "bigint" || typeof value === "boolean");
|
|
1455
1010
|
}
|
|
1456
|
-
|
|
1457
1011
|
function localeComparator() {
|
|
1458
|
-
|
|
1459
|
-
return new Intl.Collator(undefined, { numeric: true }).compare;
|
|
1012
|
+
return new Intl.Collator(void 0, { numeric: true }).compare;
|
|
1460
1013
|
}
|
|
1461
|
-
|
|
1462
1014
|
function matchRegex(str, regex) {
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1015
|
+
if (regex) {
|
|
1016
|
+
const match = regex.test(str);
|
|
1017
|
+
regex.lastIndex = 0;
|
|
1018
|
+
return match;
|
|
1019
|
+
}
|
|
1020
|
+
return false;
|
|
1469
1021
|
}
|
|
1470
|
-
|
|
1471
|
-
/**
|
|
1472
|
-
* @deprecated Use `deepMerge` instead.
|
|
1473
|
-
*
|
|
1474
|
-
* Merges multiple objects into one.
|
|
1475
|
-
* @param args - Objects to merge.
|
|
1476
|
-
* @returns Merged object.
|
|
1477
|
-
*/
|
|
1478
1022
|
function mergeKeys(...args) {
|
|
1479
|
-
|
|
1023
|
+
return deepMerge(...args);
|
|
1480
1024
|
}
|
|
1481
|
-
|
|
1482
1025
|
function minifyCSS(css) {
|
|
1483
|
-
|
|
1484
|
-
? css
|
|
1485
|
-
.replace(/\/\*(?:(?!\*\/)[\s\S])*\*\/|[\r\n\t]+/g, '')
|
|
1486
|
-
.replace(/ {2,}/g, ' ')
|
|
1487
|
-
.replace(/ ([{:}]) /g, '$1')
|
|
1488
|
-
.replace(/([;,]) /g, '$1')
|
|
1489
|
-
.replace(/ !/g, '!')
|
|
1490
|
-
.replace(/: /g, ':')
|
|
1491
|
-
.trim()
|
|
1492
|
-
: css;
|
|
1026
|
+
return css ? css.replace(/\/\*(?:(?!\*\/)[\s\S])*\*\/|[\r\n\t]+/g, "").replace(/ {2,}/g, " ").replace(/ ([{:}]) /g, "$1").replace(/([;,]) /g, "$1").replace(/ !/g, "!").replace(/: /g, ":").trim() : css;
|
|
1493
1027
|
}
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
}, []);
|
|
1028
|
+
function nestedKeys(obj = {}, parentKey = "") {
|
|
1029
|
+
return Object.entries(obj).reduce((o, [key, value]) => {
|
|
1030
|
+
const currentKey = parentKey ? `${parentKey}.${key}` : key;
|
|
1031
|
+
isObject(value) ? o = o.concat(nestedKeys(value, currentKey)) : o.push(currentKey);
|
|
1032
|
+
return o;
|
|
1033
|
+
}, []);
|
|
1501
1034
|
}
|
|
1502
|
-
|
|
1503
1035
|
function omit(obj, ...keys) {
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
return copy;
|
|
1036
|
+
if (!isObject(obj)) return obj;
|
|
1037
|
+
const copy = { ...obj };
|
|
1038
|
+
keys?.flat().forEach((key) => delete copy[key]);
|
|
1039
|
+
return copy;
|
|
1509
1040
|
}
|
|
1510
|
-
|
|
1511
1041
|
function removeAccents(str) {
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
str = str.replace(accentsMap[key], key);
|
|
1563
|
-
}
|
|
1564
|
-
}
|
|
1565
|
-
return str;
|
|
1042
|
+
if (str && /[\xC0-\xFF\u0100-\u017E]/.test(str)) {
|
|
1043
|
+
const accentsMap = {
|
|
1044
|
+
A: /[\xC0-\xC5\u0100\u0102\u0104]/g,
|
|
1045
|
+
AE: /[\xC6]/g,
|
|
1046
|
+
C: /[\xC7\u0106\u0108\u010A\u010C]/g,
|
|
1047
|
+
D: /[\xD0\u010E\u0110]/g,
|
|
1048
|
+
E: /[\xC8-\xCB\u0112\u0114\u0116\u0118\u011A]/g,
|
|
1049
|
+
G: /[\u011C\u011E\u0120\u0122]/g,
|
|
1050
|
+
H: /[\u0124\u0126]/g,
|
|
1051
|
+
I: /[\xCC-\xCF\u0128\u012A\u012C\u012E\u0130]/g,
|
|
1052
|
+
IJ: /[\u0132]/g,
|
|
1053
|
+
J: /[\u0134]/g,
|
|
1054
|
+
K: /[\u0136]/g,
|
|
1055
|
+
L: /[\u0139\u013B\u013D\u013F\u0141]/g,
|
|
1056
|
+
N: /[\xD1\u0143\u0145\u0147\u014A]/g,
|
|
1057
|
+
O: /[\xD2-\xD6\xD8\u014C\u014E\u0150]/g,
|
|
1058
|
+
OE: /[\u0152]/g,
|
|
1059
|
+
R: /[\u0154\u0156\u0158]/g,
|
|
1060
|
+
S: /[\u015A\u015C\u015E\u0160]/g,
|
|
1061
|
+
T: /[\u0162\u0164\u0166]/g,
|
|
1062
|
+
U: /[\xD9-\xDC\u0168\u016A\u016C\u016E\u0170\u0172]/g,
|
|
1063
|
+
W: /[\u0174]/g,
|
|
1064
|
+
Y: /[\xDD\u0176\u0178]/g,
|
|
1065
|
+
Z: /[\u0179\u017B\u017D]/g,
|
|
1066
|
+
a: /[\xE0-\xE5\u0101\u0103\u0105]/g,
|
|
1067
|
+
ae: /[\xE6]/g,
|
|
1068
|
+
c: /[\xE7\u0107\u0109\u010B\u010D]/g,
|
|
1069
|
+
d: /[\u010F\u0111]/g,
|
|
1070
|
+
e: /[\xE8-\xEB\u0113\u0115\u0117\u0119\u011B]/g,
|
|
1071
|
+
g: /[\u011D\u011F\u0121\u0123]/g,
|
|
1072
|
+
i: /[\xEC-\xEF\u0129\u012B\u012D\u012F\u0131]/g,
|
|
1073
|
+
ij: /[\u0133]/g,
|
|
1074
|
+
j: /[\u0135]/g,
|
|
1075
|
+
k: /[\u0137,\u0138]/g,
|
|
1076
|
+
l: /[\u013A\u013C\u013E\u0140\u0142]/g,
|
|
1077
|
+
n: /[\xF1\u0144\u0146\u0148\u014B]/g,
|
|
1078
|
+
p: /[\xFE]/g,
|
|
1079
|
+
o: /[\xF2-\xF6\xF8\u014D\u014F\u0151]/g,
|
|
1080
|
+
oe: /[\u0153]/g,
|
|
1081
|
+
r: /[\u0155\u0157\u0159]/g,
|
|
1082
|
+
s: /[\u015B\u015D\u015F\u0161]/g,
|
|
1083
|
+
t: /[\u0163\u0165\u0167]/g,
|
|
1084
|
+
u: /[\xF9-\xFC\u0169\u016B\u016D\u016F\u0171\u0173]/g,
|
|
1085
|
+
w: /[\u0175]/g,
|
|
1086
|
+
y: /[\xFD\xFF\u0177]/g,
|
|
1087
|
+
z: /[\u017A\u017C\u017E]/g
|
|
1088
|
+
};
|
|
1089
|
+
for (const key in accentsMap) str = str.replace(accentsMap[key], key);
|
|
1090
|
+
}
|
|
1091
|
+
return str;
|
|
1566
1092
|
}
|
|
1567
|
-
|
|
1568
1093
|
function reorderArray(value, from, to) {
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1094
|
+
if (value && from !== to) {
|
|
1095
|
+
if (to >= value.length) {
|
|
1096
|
+
to %= value.length;
|
|
1097
|
+
from %= value.length;
|
|
1098
|
+
}
|
|
1099
|
+
value.splice(to, 0, value.splice(from, 1)[0]);
|
|
1100
|
+
}
|
|
1576
1101
|
}
|
|
1577
|
-
|
|
1578
|
-
/**
|
|
1579
|
-
* Shallow equal for React/Vue props comparison
|
|
1580
|
-
* Ignores functions (common in props)
|
|
1581
|
-
*/
|
|
1582
1102
|
function shallowEqualProps(propsA, propsB) {
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
continue;
|
|
1595
|
-
}
|
|
1596
|
-
if (!Object.is(valueA, valueB)) {
|
|
1597
|
-
return false;
|
|
1598
|
-
}
|
|
1599
|
-
}
|
|
1600
|
-
return true;
|
|
1103
|
+
if (propsA === propsB) return true;
|
|
1104
|
+
const keysA = Object.keys(propsA);
|
|
1105
|
+
const keysB = Object.keys(propsB);
|
|
1106
|
+
if (keysA.length !== keysB.length) return false;
|
|
1107
|
+
for (const key of keysA) {
|
|
1108
|
+
const valueA = propsA[key];
|
|
1109
|
+
const valueB = propsB[key];
|
|
1110
|
+
if (typeof valueA === "function" && typeof valueB === "function") continue;
|
|
1111
|
+
if (!Object.is(valueA, valueB)) return false;
|
|
1112
|
+
}
|
|
1113
|
+
return true;
|
|
1601
1114
|
}
|
|
1602
|
-
|
|
1603
|
-
/**
|
|
1604
|
-
* Checks if two values are shallowly equal
|
|
1605
|
-
* - Primitives: compared by value (===)
|
|
1606
|
-
* - Objects/Arrays: compared by reference and first-level properties
|
|
1607
|
-
*
|
|
1608
|
-
* @param objA - First value to compare
|
|
1609
|
-
* @param objB - Second value to compare
|
|
1610
|
-
* @returns True if values are shallowly equal, false otherwise
|
|
1611
|
-
*
|
|
1612
|
-
* @example
|
|
1613
|
-
* shallowEquals(1, 1) // true
|
|
1614
|
-
* shallowEquals('a', 'a') // true
|
|
1615
|
-
* shallowEquals({ a: 1 }, { a: 1 }) // true (shallow)
|
|
1616
|
-
* shallowEquals({ a: { b: 1 } }, { a: { b: 1 } }) // false (nested objects are different references)
|
|
1617
|
-
* shallowEquals([1, 2], [1, 2]) // true (shallow)
|
|
1618
|
-
* shallowEquals([1, [2]], [1, [2]]) // false (nested arrays are different references)
|
|
1619
|
-
*/
|
|
1620
1115
|
function shallowEquals(objA, objB) {
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
|
|
1638
|
-
return false;
|
|
1639
|
-
}
|
|
1640
|
-
// Compare arrays
|
|
1641
|
-
if (Array.isArray(objA) && Array.isArray(objB)) {
|
|
1642
|
-
if (objA.length !== objB.length) {
|
|
1643
|
-
return false;
|
|
1644
|
-
}
|
|
1645
|
-
for (let i = 0; i < objA.length; i++) {
|
|
1646
|
-
if (!Object.is(objA[i], objB[i])) {
|
|
1647
|
-
return false;
|
|
1648
|
-
}
|
|
1649
|
-
}
|
|
1650
|
-
return true;
|
|
1651
|
-
}
|
|
1652
|
-
// If only one is array, they're not equal
|
|
1653
|
-
if (Array.isArray(objA) || Array.isArray(objB)) {
|
|
1654
|
-
return false;
|
|
1655
|
-
}
|
|
1656
|
-
// Compare object keys
|
|
1657
|
-
const keysA = Object.keys(objA);
|
|
1658
|
-
const keysB = Object.keys(objB);
|
|
1659
|
-
if (keysA.length !== keysB.length) {
|
|
1660
|
-
return false;
|
|
1661
|
-
}
|
|
1662
|
-
// Check if all keys and values match
|
|
1663
|
-
for (const key of keysA) {
|
|
1664
|
-
if (!Object.prototype.hasOwnProperty.call(objB, key) || !Object.is(objA[key], objB[key])) {
|
|
1665
|
-
return false;
|
|
1666
|
-
}
|
|
1667
|
-
}
|
|
1668
|
-
return true;
|
|
1116
|
+
if (objA === objB) return true;
|
|
1117
|
+
if (typeof objA !== typeof objB || objA === null || objB === null) return false;
|
|
1118
|
+
if (typeof objA !== "object") return objA === objB;
|
|
1119
|
+
if (Object.is(objA, objB)) return true;
|
|
1120
|
+
if (typeof objA !== "object" || objA === null || typeof objB !== "object" || objB === null) return false;
|
|
1121
|
+
if (Array.isArray(objA) && Array.isArray(objB)) {
|
|
1122
|
+
if (objA.length !== objB.length) return false;
|
|
1123
|
+
for (let i = 0; i < objA.length; i++) if (!Object.is(objA[i], objB[i])) return false;
|
|
1124
|
+
return true;
|
|
1125
|
+
}
|
|
1126
|
+
if (Array.isArray(objA) || Array.isArray(objB)) return false;
|
|
1127
|
+
const keysA = Object.keys(objA);
|
|
1128
|
+
const keysB = Object.keys(objB);
|
|
1129
|
+
if (keysA.length !== keysB.length) return false;
|
|
1130
|
+
for (const key of keysA) if (!Object.prototype.hasOwnProperty.call(objB, key) || !Object.is(objA[key], objB[key])) return false;
|
|
1131
|
+
return true;
|
|
1669
1132
|
}
|
|
1670
|
-
|
|
1671
1133
|
function sort(value1, value2, order = 1, comparator, nullSortOrder = 1) {
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
finalSortOrder = nullSortOrder === 1 ? order : nullSortOrder;
|
|
1677
|
-
}
|
|
1678
|
-
return finalSortOrder * result;
|
|
1134
|
+
const result = compare(value1, value2, comparator, order);
|
|
1135
|
+
let finalSortOrder = order;
|
|
1136
|
+
if (isEmpty(value1) || isEmpty(value2)) finalSortOrder = nullSortOrder === 1 ? order : nullSortOrder;
|
|
1137
|
+
return finalSortOrder * result;
|
|
1679
1138
|
}
|
|
1680
|
-
|
|
1681
1139
|
function stringify(value, indent = 2, currentIndent = 0) {
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
}
|
|
1690
|
-
else if (isFunction(value)) {
|
|
1691
|
-
return value.toString();
|
|
1692
|
-
}
|
|
1693
|
-
else if (isObject(value)) {
|
|
1694
|
-
return ('{\n' +
|
|
1695
|
-
Object.entries(value)
|
|
1696
|
-
.map(([k, v]) => `${nextIndentStr}${k}: ${stringify(v, indent, currentIndent + indent)}`)
|
|
1697
|
-
.join(',\n') +
|
|
1698
|
-
`\n${currentIndentStr}` +
|
|
1699
|
-
'}');
|
|
1700
|
-
}
|
|
1701
|
-
else {
|
|
1702
|
-
return JSON.stringify(value);
|
|
1703
|
-
}
|
|
1140
|
+
const currentIndentStr = " ".repeat(currentIndent);
|
|
1141
|
+
const nextIndentStr = " ".repeat(currentIndent + indent);
|
|
1142
|
+
if (isArray(value)) return "[" + value.map((v) => stringify(v, indent, currentIndent + indent)).join(", ") + "]";
|
|
1143
|
+
else if (isDate(value)) return value.toISOString();
|
|
1144
|
+
else if (isFunction(value)) return value.toString();
|
|
1145
|
+
else if (isObject(value)) return "{\n" + Object.entries(value).map(([k, v]) => `${nextIndentStr}${k}: ${stringify(v, indent, currentIndent + indent)}`).join(",\n") + `\n${currentIndentStr}}`;
|
|
1146
|
+
else return JSON.stringify(value);
|
|
1704
1147
|
}
|
|
1705
|
-
|
|
1706
1148
|
function toCamelCase(str) {
|
|
1707
|
-
|
|
1708
|
-
return isString(str) ? str.replace(/[-_](\w)/g, (_, c) => (c ? c.toUpperCase() : '')) : str;
|
|
1149
|
+
return isString(str) ? str.replace(/[-_](\w)/g, (_, c) => c ? c.toUpperCase() : "") : str;
|
|
1709
1150
|
}
|
|
1710
|
-
|
|
1711
1151
|
function toCapitalCase(str) {
|
|
1712
|
-
|
|
1152
|
+
return isString(str, false) ? str[0].toUpperCase() + str.slice(1) : str;
|
|
1713
1153
|
}
|
|
1714
|
-
|
|
1715
1154
|
function toKebabCase(str) {
|
|
1716
|
-
|
|
1717
|
-
return isString(str)
|
|
1718
|
-
? str
|
|
1719
|
-
.replace(/(_)/g, '-')
|
|
1720
|
-
.replace(/([a-z])([A-Z])/g, '$1-$2')
|
|
1721
|
-
.toLowerCase()
|
|
1722
|
-
: str;
|
|
1155
|
+
return isString(str) ? str.replace(/(_)/g, "-").replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase() : str;
|
|
1723
1156
|
}
|
|
1724
|
-
|
|
1725
1157
|
function toMs(value) {
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
return value;
|
|
1730
|
-
return Number(value.replace(/[^\d.]/g, '').replace(',', '.')) * 1000;
|
|
1158
|
+
if (value === "auto") return 0;
|
|
1159
|
+
if (typeof value === "number") return value;
|
|
1160
|
+
return Number(value.replace(/[^\d.]/g, "").replace(",", ".")) * 1e3;
|
|
1731
1161
|
}
|
|
1732
|
-
|
|
1733
1162
|
function toTokenKey(str) {
|
|
1734
|
-
|
|
1163
|
+
return isString(str) ? str.replace(/[A-Z]/g, (c, i) => i === 0 ? c : "." + c.toLowerCase()).toLowerCase() : str;
|
|
1735
1164
|
}
|
|
1736
|
-
|
|
1737
1165
|
function toValue(value) {
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
else if (Object.hasOwn(value, 'value')) {
|
|
1744
|
-
// For Vue
|
|
1745
|
-
return value.value;
|
|
1746
|
-
}
|
|
1747
|
-
}
|
|
1748
|
-
// For Angular signals and functions usage
|
|
1749
|
-
return resolve(value);
|
|
1166
|
+
if (value && typeof value === "object") {
|
|
1167
|
+
if (Object.hasOwn(value, "current")) return value.current;
|
|
1168
|
+
else if (Object.hasOwn(value, "value")) return value.value;
|
|
1169
|
+
}
|
|
1170
|
+
return resolve(value);
|
|
1750
1171
|
}
|
|
1751
|
-
|
|
1752
1172
|
function _mergeProps({ skipUndefined = false }, ...props) {
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
}
|
|
1773
|
-
else {
|
|
1774
|
-
merged[key] = value;
|
|
1775
|
-
}
|
|
1776
|
-
}
|
|
1777
|
-
return merged;
|
|
1778
|
-
}, {});
|
|
1173
|
+
return props?.reduce((merged, ps = {}) => {
|
|
1174
|
+
for (const key in ps) {
|
|
1175
|
+
const value = ps[key];
|
|
1176
|
+
if (skipUndefined && value === void 0) continue;
|
|
1177
|
+
if (key === "style") merged["style"] = {
|
|
1178
|
+
...merged["style"],
|
|
1179
|
+
...ps["style"]
|
|
1180
|
+
};
|
|
1181
|
+
else if (key === "class" || key === "className") merged[key] = cn(merged[key], ps[key]);
|
|
1182
|
+
else if (isFunction(value)) {
|
|
1183
|
+
const fn = merged[key];
|
|
1184
|
+
merged[key] = fn ? (...args) => {
|
|
1185
|
+
fn(...args);
|
|
1186
|
+
value(...args);
|
|
1187
|
+
} : value;
|
|
1188
|
+
} else merged[key] = value;
|
|
1189
|
+
}
|
|
1190
|
+
return merged;
|
|
1191
|
+
}, {});
|
|
1779
1192
|
}
|
|
1780
1193
|
function mergeProps(...props) {
|
|
1781
|
-
|
|
1194
|
+
return _mergeProps({ skipUndefined: false }, ...props);
|
|
1782
1195
|
}
|
|
1783
1196
|
function mergeDefaultProps(...props) {
|
|
1784
|
-
|
|
1197
|
+
return _mergeProps({ skipUndefined: true }, ...props);
|
|
1785
1198
|
}
|
|
1786
|
-
|
|
1787
1199
|
const lastIds = {};
|
|
1788
|
-
function uuid(prefix =
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
lastIds[prefix]++;
|
|
1793
|
-
return `${prefix}${lastIds[prefix]}`;
|
|
1200
|
+
function uuid(prefix = "pui_id_") {
|
|
1201
|
+
if (!Object.hasOwn(lastIds, prefix)) lastIds[prefix] = 0;
|
|
1202
|
+
lastIds[prefix]++;
|
|
1203
|
+
return `${prefix}${lastIds[prefix]}`;
|
|
1794
1204
|
}
|
|
1795
|
-
|
|
1796
1205
|
function handler() {
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1206
|
+
let zIndexes = [];
|
|
1207
|
+
const generateZIndex = (key, autoZIndex, baseZIndex = 999) => {
|
|
1208
|
+
const lastZIndex = getLastZIndex(key, autoZIndex, baseZIndex);
|
|
1209
|
+
const newZIndex = lastZIndex.value + (lastZIndex.key === key ? 0 : baseZIndex) + 1;
|
|
1210
|
+
zIndexes.push({
|
|
1211
|
+
key,
|
|
1212
|
+
value: newZIndex
|
|
1213
|
+
});
|
|
1214
|
+
return newZIndex;
|
|
1215
|
+
};
|
|
1216
|
+
const revertZIndex = (zIndex) => {
|
|
1217
|
+
zIndexes = zIndexes.filter((obj) => obj.value !== zIndex);
|
|
1218
|
+
};
|
|
1219
|
+
const getCurrentZIndex = (key, autoZIndex) => {
|
|
1220
|
+
return getLastZIndex(key, autoZIndex).value;
|
|
1221
|
+
};
|
|
1222
|
+
const getLastZIndex = (key, autoZIndex, baseZIndex = 0) => {
|
|
1223
|
+
return [...zIndexes].reverse().find((obj) => autoZIndex ? true : obj.key === key) || {
|
|
1224
|
+
key,
|
|
1225
|
+
value: baseZIndex
|
|
1226
|
+
};
|
|
1227
|
+
};
|
|
1228
|
+
const getZIndex = (element) => {
|
|
1229
|
+
return element ? parseInt(element.style.zIndex, 10) || 0 : 0;
|
|
1230
|
+
};
|
|
1231
|
+
return {
|
|
1232
|
+
get: getZIndex,
|
|
1233
|
+
set: (key, element, baseZIndex) => {
|
|
1234
|
+
if (element) element.style.zIndex = String(generateZIndex(key, true, baseZIndex));
|
|
1235
|
+
},
|
|
1236
|
+
clear: (element) => {
|
|
1237
|
+
if (element) {
|
|
1238
|
+
revertZIndex(getZIndex(element));
|
|
1239
|
+
element.style.zIndex = "";
|
|
1240
|
+
}
|
|
1241
|
+
},
|
|
1242
|
+
getCurrent: (key) => getCurrentZIndex(key, true)
|
|
1243
|
+
};
|
|
1831
1244
|
}
|
|
1832
1245
|
const ZIndex = handler();
|
|
1833
|
-
|
|
1834
|
-
/**
|
|
1835
|
-
* Generated bundle index. Do not edit.
|
|
1836
|
-
*/
|
|
1837
|
-
|
|
1838
1246
|
export { EventBus, ZIndex, absolutePosition, addClass, addStyle, alignOverlay, appendChild, blockBodyScroll, calculateBodyScrollbarWidth, calculateScrollbarHeight, calculateScrollbarWidth, classNames, clearSelection, cn, compare, contains, createElement, createStyleAsString, createStyleElement, createStyleMarkup, createStyleTag, deepEquals, deepMerge, equals, exportCSV, fadeIn, fadeOut, filter, find, findIndexInList, findLast, findLastIndex, findSingle, focus, getAttribute, getBrowser, getBrowserLanguage, getCSSProperty, getCSSVariableByRegex, getCursorOffset, getFirstFocusableElement, getFocusableElements, getHeight, getHiddenElementDimensions, getHiddenElementOuterHeight, getHiddenElementOuterWidth, getIndex, getInnerWidth, getKeyValue, getLastFocusableElement, getNextElementSibling, getNextFocusableElement, getOffset, getOuterHeight, getOuterWidth, getParentNode, getParents, getPreviousElementSibling, getScrollLeft, getScrollableParents, getSelection, getTargetElement, getUserAgent, getViewport, getWidth, getWindowScrollLeft, getWindowScrollTop, hasCSSAnimation, hasCSSTransition, hasClass, insertIntoOrderedArray, invokeElementMethod, isAndroid, isArray, isAttributeEquals, isAttributeNotEquals, isClickable, isClient, isCssSupported, isDate, isElement, isEmpty, isExist, isFocusableElement, isFunction, isHidden, isIOS, isLetter, isNotEmpty, isNumber, isObject, isPrefersReducedMotion, isPrintableCharacter, isRTL, isScalar, isServer, isString, isTouchDevice, isVisible, localeComparator, matchRegex, mergeDefaultProps, mergeKeys, mergeProps, minifyCSS, nestedKeys, nestedPosition, nextFrame, omit, relativePosition, remove, removeAccents, removeChild, removeClass, removeStyleTag, reorderArray, resolve, resolveFieldData, resolveUserAgent, saveAs, scrollInView, setAttribute, setAttributes, setCSSProperty, shallowEqualProps, shallowEquals, sort, stringify, toCamelCase, toCapitalCase, toElement, toFlatCase, toKebabCase, toMs, toTokenKey, toValue, unblockBodyScroll, uuid };
|
|
1839
|
-
|
|
1247
|
+
|
|
1248
|
+
//# sourceMappingURL=gravionlabs-helix-core-uix-utils.mjs.map
|