optikos 0.0.0-stage → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +146 -0
- package/LICENSE +21 -0
- package/README.md +213 -2
- package/THIRD_PARTY_NOTICES.md +83 -0
- package/dist/bind.js +2 -0
- package/dist/bind.js.map +7 -0
- package/dist/chunk-23XLG2EM.js +2 -0
- package/dist/chunk-23XLG2EM.js.map +7 -0
- package/dist/chunk-27UZFEXD.js +2 -0
- package/dist/chunk-27UZFEXD.js.map +7 -0
- package/dist/chunk-2UPUC4RK.js +2 -0
- package/dist/chunk-2UPUC4RK.js.map +7 -0
- package/dist/chunk-2ZRNGG2N.js +2 -0
- package/dist/chunk-2ZRNGG2N.js.map +7 -0
- package/dist/chunk-2ZUZ5HDL.js +2 -0
- package/dist/chunk-2ZUZ5HDL.js.map +7 -0
- package/dist/chunk-3DBEZGOY.js +2 -0
- package/dist/chunk-3DBEZGOY.js.map +7 -0
- package/dist/chunk-3S24ZRPK.js +2 -0
- package/dist/chunk-3S24ZRPK.js.map +7 -0
- package/dist/chunk-3TAW4AKH.js +2 -0
- package/dist/chunk-3TAW4AKH.js.map +7 -0
- package/dist/chunk-4AA4FQEM.js +2 -0
- package/dist/chunk-4AA4FQEM.js.map +7 -0
- package/dist/chunk-4C666HHU.js +2 -0
- package/dist/chunk-4C666HHU.js.map +7 -0
- package/dist/chunk-4EZJ5FKJ.js +2 -0
- package/dist/chunk-4EZJ5FKJ.js.map +7 -0
- package/dist/chunk-4LZZ244E.js +2 -0
- package/dist/chunk-4LZZ244E.js.map +7 -0
- package/dist/chunk-4SYIIX5A.js +2 -0
- package/dist/chunk-4SYIIX5A.js.map +7 -0
- package/dist/chunk-5BC72727.js +2 -0
- package/dist/chunk-5BC72727.js.map +7 -0
- package/dist/chunk-5DJTP53N.js +2 -0
- package/dist/chunk-5DJTP53N.js.map +7 -0
- package/dist/chunk-5JEXM5S7.js +2 -0
- package/dist/chunk-5JEXM5S7.js.map +7 -0
- package/dist/chunk-5Q76ACVI.js +2 -0
- package/dist/chunk-5Q76ACVI.js.map +7 -0
- package/dist/chunk-5QUY72FX.js +2 -0
- package/dist/chunk-5QUY72FX.js.map +7 -0
- package/dist/chunk-5YS7OD5E.js +2 -0
- package/dist/chunk-5YS7OD5E.js.map +7 -0
- package/dist/chunk-676AKAGF.js +2 -0
- package/dist/chunk-676AKAGF.js.map +7 -0
- package/dist/chunk-6NCXO5ZP.js +2 -0
- package/dist/chunk-6NCXO5ZP.js.map +7 -0
- package/dist/chunk-6VBK2I5B.js +2 -0
- package/dist/chunk-6VBK2I5B.js.map +7 -0
- package/dist/chunk-7KMIFXHZ.js +2 -0
- package/dist/chunk-7KMIFXHZ.js.map +7 -0
- package/dist/chunk-A2NKDOYN.js +2 -0
- package/dist/chunk-A2NKDOYN.js.map +7 -0
- package/dist/chunk-ATFJ7PNA.js +2 -0
- package/dist/chunk-ATFJ7PNA.js.map +7 -0
- package/dist/chunk-BXYWVRKJ.js +2 -0
- package/dist/chunk-BXYWVRKJ.js.map +7 -0
- package/dist/chunk-CKXS375P.js +2 -0
- package/dist/chunk-CKXS375P.js.map +7 -0
- package/dist/chunk-CUN5QO4T.js +2 -0
- package/dist/chunk-CUN5QO4T.js.map +7 -0
- package/dist/chunk-DBMWS3O5.js +2 -0
- package/dist/chunk-DBMWS3O5.js.map +7 -0
- package/dist/chunk-E4VNLYO2.js +2 -0
- package/dist/chunk-E4VNLYO2.js.map +7 -0
- package/dist/chunk-EDUMAMK4.js +2 -0
- package/dist/chunk-EDUMAMK4.js.map +7 -0
- package/dist/chunk-ELYARUCN.js +2 -0
- package/dist/chunk-ELYARUCN.js.map +7 -0
- package/dist/chunk-EV73ADN2.js +2 -0
- package/dist/chunk-EV73ADN2.js.map +7 -0
- package/dist/chunk-FEHGU6EP.js +3 -0
- package/dist/chunk-FEHGU6EP.js.map +7 -0
- package/dist/chunk-FHM5NUS4.js +3 -0
- package/dist/chunk-FHM5NUS4.js.map +7 -0
- package/dist/chunk-G2DAD3MQ.js +2 -0
- package/dist/chunk-G2DAD3MQ.js.map +7 -0
- package/dist/chunk-G2KUK6AT.js +2 -0
- package/dist/chunk-G2KUK6AT.js.map +7 -0
- package/dist/chunk-GBPLNXMP.js +2 -0
- package/dist/chunk-GBPLNXMP.js.map +7 -0
- package/dist/chunk-GNU4VOOE.js +2 -0
- package/dist/chunk-GNU4VOOE.js.map +7 -0
- package/dist/chunk-GZ7X34QP.js +2 -0
- package/dist/chunk-GZ7X34QP.js.map +7 -0
- package/dist/chunk-HOF4JGMQ.js +2 -0
- package/dist/chunk-HOF4JGMQ.js.map +7 -0
- package/dist/chunk-HXDTGP2K.js +2 -0
- package/dist/chunk-HXDTGP2K.js.map +7 -0
- package/dist/chunk-I4SP6JTU.js +2 -0
- package/dist/chunk-I4SP6JTU.js.map +7 -0
- package/dist/chunk-IHE2MQ3W.js +2 -0
- package/dist/chunk-IHE2MQ3W.js.map +7 -0
- package/dist/chunk-II6ITOA6.js +2 -0
- package/dist/chunk-II6ITOA6.js.map +7 -0
- package/dist/chunk-JBLRAM7Z.js +2 -0
- package/dist/chunk-JBLRAM7Z.js.map +7 -0
- package/dist/chunk-JI265XFO.js +2 -0
- package/dist/chunk-JI265XFO.js.map +7 -0
- package/dist/chunk-JK74QK3M.js +2 -0
- package/dist/chunk-JK74QK3M.js.map +7 -0
- package/dist/chunk-JOFQJGZK.js +2 -0
- package/dist/chunk-JOFQJGZK.js.map +7 -0
- package/dist/chunk-KCEUD232.js +2 -0
- package/dist/chunk-KCEUD232.js.map +7 -0
- package/dist/chunk-KLLAY2IM.js +2 -0
- package/dist/chunk-KLLAY2IM.js.map +7 -0
- package/dist/chunk-LBJSMXLV.js +2 -0
- package/dist/chunk-LBJSMXLV.js.map +7 -0
- package/dist/chunk-LQRFNQ2N.js +2 -0
- package/dist/chunk-LQRFNQ2N.js.map +7 -0
- package/dist/chunk-LW2WRUVL.js +2 -0
- package/dist/chunk-LW2WRUVL.js.map +7 -0
- package/dist/chunk-M242VYZA.js +2 -0
- package/dist/chunk-M242VYZA.js.map +7 -0
- package/dist/chunk-MB3MU6HR.js +2 -0
- package/dist/chunk-MB3MU6HR.js.map +7 -0
- package/dist/chunk-MW3RWBZ7.js +2 -0
- package/dist/chunk-MW3RWBZ7.js.map +7 -0
- package/dist/chunk-NXSTUFS7.js +2 -0
- package/dist/chunk-NXSTUFS7.js.map +7 -0
- package/dist/chunk-OEAXCCVM.js +2 -0
- package/dist/chunk-OEAXCCVM.js.map +7 -0
- package/dist/chunk-OGRFQTXA.js +2 -0
- package/dist/chunk-OGRFQTXA.js.map +7 -0
- package/dist/chunk-OWEQT2HN.js +2 -0
- package/dist/chunk-OWEQT2HN.js.map +7 -0
- package/dist/chunk-PZSHOSOS.js +2 -0
- package/dist/chunk-PZSHOSOS.js.map +7 -0
- package/dist/chunk-REW4LR46.js +2 -0
- package/dist/chunk-REW4LR46.js.map +7 -0
- package/dist/chunk-RNN55473.js +2 -0
- package/dist/chunk-RNN55473.js.map +7 -0
- package/dist/chunk-SA53QUBF.js +2 -0
- package/dist/chunk-SA53QUBF.js.map +7 -0
- package/dist/chunk-TIPK3SCJ.js +2 -0
- package/dist/chunk-TIPK3SCJ.js.map +7 -0
- package/dist/chunk-TOLTUOZS.js +2 -0
- package/dist/chunk-TOLTUOZS.js.map +7 -0
- package/dist/chunk-TZOQWCVH.js +2 -0
- package/dist/chunk-TZOQWCVH.js.map +7 -0
- package/dist/chunk-VF7BGP6L.js +2 -0
- package/dist/chunk-VF7BGP6L.js.map +7 -0
- package/dist/chunk-VU3GIDZ3.js +2 -0
- package/dist/chunk-VU3GIDZ3.js.map +7 -0
- package/dist/chunk-VV7CFMPZ.js +2 -0
- package/dist/chunk-VV7CFMPZ.js.map +7 -0
- package/dist/chunk-W3H7GTJY.js +2 -0
- package/dist/chunk-W3H7GTJY.js.map +7 -0
- package/dist/chunk-X2ASKUFD.js +2 -0
- package/dist/chunk-X2ASKUFD.js.map +7 -0
- package/dist/chunk-X6AULZI4.js +1 -0
- package/dist/chunk-X6AULZI4.js.map +7 -0
- package/dist/chunk-XHOBNSBO.js +2 -0
- package/dist/chunk-XHOBNSBO.js.map +7 -0
- package/dist/chunk-XX2MVWFS.js +4 -0
- package/dist/chunk-XX2MVWFS.js.map +7 -0
- package/dist/chunk-XYZ6VZ5T.js +2 -0
- package/dist/chunk-XYZ6VZ5T.js.map +7 -0
- package/dist/chunk-YBAYEU25.js +2 -0
- package/dist/chunk-YBAYEU25.js.map +7 -0
- package/dist/chunk-YHEMA56R.js +2 -0
- package/dist/chunk-YHEMA56R.js.map +7 -0
- package/dist/chunk-Z2JBUHKA.js +2 -0
- package/dist/chunk-Z2JBUHKA.js.map +7 -0
- package/dist/chunk-Z2Z52GFT.js +2 -0
- package/dist/chunk-Z2Z52GFT.js.map +7 -0
- package/dist/chunk-ZPPELYNJ.js +2 -0
- package/dist/chunk-ZPPELYNJ.js.map +7 -0
- package/dist/chunk-ZVK4L5GK.js +2 -0
- package/dist/chunk-ZVK4L5GK.js.map +7 -0
- package/dist/chunk-ZWNQREWS.js +2 -0
- package/dist/chunk-ZWNQREWS.js.map +7 -0
- package/dist/components/badge.js +2 -0
- package/dist/components/badge.js.map +7 -0
- package/dist/components/breadcrumb.js +2 -0
- package/dist/components/breadcrumb.js.map +7 -0
- package/dist/components/button.js +2 -0
- package/dist/components/button.js.map +7 -0
- package/dist/components/calendar.js +2 -0
- package/dist/components/calendar.js.map +7 -0
- package/dist/components/cellediting.js +2 -0
- package/dist/components/cellediting.js.map +7 -0
- package/dist/components/chat.js +2 -0
- package/dist/components/chat.js.map +7 -0
- package/dist/components/checkbox.js +2 -0
- package/dist/components/checkbox.js.map +7 -0
- package/dist/components/checkboxgroup.js +2 -0
- package/dist/components/checkboxgroup.js.map +7 -0
- package/dist/components/chip.js +2 -0
- package/dist/components/chip.js.map +7 -0
- package/dist/components/codeviewer.js +2 -0
- package/dist/components/codeviewer.js.map +7 -0
- package/dist/components/combobox.js +2 -0
- package/dist/components/combobox.js.map +7 -0
- package/dist/components/commandpalette.js +2 -0
- package/dist/components/commandpalette.js.map +7 -0
- package/dist/components/container.js +2 -0
- package/dist/components/container.js.map +7 -0
- package/dist/components/dataview.js +2 -0
- package/dist/components/dataview.js.map +7 -0
- package/dist/components/datefield.js +2 -0
- package/dist/components/datefield.js.map +7 -0
- package/dist/components/daterangefield.js +2 -0
- package/dist/components/daterangefield.js.map +7 -0
- package/dist/components/dial.js +2 -0
- package/dist/components/dial.js.map +7 -0
- package/dist/components/dropdown.js +2 -0
- package/dist/components/dropdown.js.map +7 -0
- package/dist/components/fieldgroup.js +2 -0
- package/dist/components/fieldgroup.js.map +7 -0
- package/dist/components/fieldlist.js +2 -0
- package/dist/components/fieldlist.js.map +7 -0
- package/dist/components/fieldset.js +2 -0
- package/dist/components/fieldset.js.map +7 -0
- package/dist/components/filterbuilder.js +2 -0
- package/dist/components/filterbuilder.js.map +7 -0
- package/dist/components/form.js +2 -0
- package/dist/components/form.js.map +7 -0
- package/dist/components/formactions.js +2 -0
- package/dist/components/formactions.js.map +7 -0
- package/dist/components/formerrors.js +2 -0
- package/dist/components/formerrors.js.map +7 -0
- package/dist/components/formsection.js +2 -0
- package/dist/components/formsection.js.map +7 -0
- package/dist/components/grid.js +2 -0
- package/dist/components/grid.js.map +7 -0
- package/dist/components/icon.js +2 -0
- package/dist/components/icon.js.map +7 -0
- package/dist/components/inputgroup.js +2 -0
- package/dist/components/inputgroup.js.map +7 -0
- package/dist/components/label.js +2 -0
- package/dist/components/label.js.map +7 -0
- package/dist/components/listbox.js +2 -0
- package/dist/components/listbox.js.map +7 -0
- package/dist/components/lookupfield.js +2 -0
- package/dist/components/lookupfield.js.map +7 -0
- package/dist/components/menu.js +2 -0
- package/dist/components/menu.js.map +7 -0
- package/dist/components/messagebox.js +2 -0
- package/dist/components/messagebox.js.map +7 -0
- package/dist/components/navmenu.js +2 -0
- package/dist/components/navmenu.js.map +7 -0
- package/dist/components/numberfield.js +2 -0
- package/dist/components/numberfield.js.map +7 -0
- package/dist/components/pagination.js +2 -0
- package/dist/components/pagination.js.map +7 -0
- package/dist/components/panel.js +2 -0
- package/dist/components/panel.js.map +7 -0
- package/dist/components/pickerfield.js +2 -0
- package/dist/components/pickerfield.js.map +7 -0
- package/dist/components/radiogroup.js +2 -0
- package/dist/components/radiogroup.js.map +7 -0
- package/dist/components/searchgrid.js +2 -0
- package/dist/components/searchgrid.js.map +7 -0
- package/dist/components/secretfield.js +2 -0
- package/dist/components/secretfield.js.map +7 -0
- package/dist/components/select.js +2 -0
- package/dist/components/select.js.map +7 -0
- package/dist/components/slider.js +2 -0
- package/dist/components/slider.js.map +7 -0
- package/dist/components/spacer.js +2 -0
- package/dist/components/spacer.js.map +7 -0
- package/dist/components/spinner.js +2 -0
- package/dist/components/spinner.js.map +7 -0
- package/dist/components/stepform.js +2 -0
- package/dist/components/stepform.js.map +7 -0
- package/dist/components/stepper.js +2 -0
- package/dist/components/stepper.js.map +7 -0
- package/dist/components/suggestfield.js +2 -0
- package/dist/components/suggestfield.js.map +7 -0
- package/dist/components/table.js +2 -0
- package/dist/components/table.js.map +7 -0
- package/dist/components/tabs.js +2 -0
- package/dist/components/tabs.js.map +7 -0
- package/dist/components/textarea.js +2 -0
- package/dist/components/textarea.js.map +7 -0
- package/dist/components/textfield.js +2 -0
- package/dist/components/textfield.js.map +7 -0
- package/dist/components/toast.js +2 -0
- package/dist/components/toast.js.map +7 -0
- package/dist/components/toggle.js +2 -0
- package/dist/components/toggle.js.map +7 -0
- package/dist/components/toolbar.js +2 -0
- package/dist/components/toolbar.js.map +7 -0
- package/dist/components/tooltip.js +2 -0
- package/dist/components/tooltip.js.map +7 -0
- package/dist/components/tree.js +2 -0
- package/dist/components/tree.js.map +7 -0
- package/dist/components/viewmanager.js +2 -0
- package/dist/components/viewmanager.js.map +7 -0
- package/dist/components/viewport.js +2 -0
- package/dist/components/viewport.js.map +7 -0
- package/dist/components/widget.js +2 -0
- package/dist/components/widget.js.map +7 -0
- package/dist/components/window.js +2 -0
- package/dist/components/window.js.map +7 -0
- package/dist/core.js +2 -0
- package/dist/core.js.map +7 -0
- package/dist/css/badge.css +39 -0
- package/dist/css/base.css +180 -0
- package/dist/css/breadcrumb.css +53 -0
- package/dist/css/button.css +103 -0
- package/dist/css/calendar.css +108 -0
- package/dist/css/cellediting.css +33 -0
- package/dist/css/chat.css +232 -0
- package/dist/css/checkbox.css +64 -0
- package/dist/css/checkboxgroup.css +12 -0
- package/dist/css/chip.css +64 -0
- package/dist/css/codeviewer.css +109 -0
- package/dist/css/commandpalette.css +167 -0
- package/dist/css/container.css +5 -0
- package/dist/css/core.css +88 -0
- package/dist/css/dataview.css +56 -0
- package/dist/css/dial.css +203 -0
- package/dist/css/dropdown.css +13 -0
- package/dist/css/field.css +62 -0
- package/dist/css/fieldgroup.css +26 -0
- package/dist/css/fieldlist.css +84 -0
- package/dist/css/fieldset.css +68 -0
- package/dist/css/filterbuilder.css +125 -0
- package/dist/css/form.css +8 -0
- package/dist/css/formactions.css +40 -0
- package/dist/css/formerrors.css +39 -0
- package/dist/css/formsection.css +45 -0
- package/dist/css/grid.css +378 -0
- package/dist/css/icon.css +16 -0
- package/dist/css/inputgroup.css +58 -0
- package/dist/css/label.css +12 -0
- package/dist/css/layout.css +116 -0
- package/dist/css/listbox.css +50 -0
- package/dist/css/menu.css +92 -0
- package/dist/css/messagebox.css +6 -0
- package/dist/css/motion.css +29 -0
- package/dist/css/navmenu.css +115 -0
- package/dist/css/pagination.css +23 -0
- package/dist/css/panel.css +84 -0
- package/dist/css/pickerfield.css +85 -0
- package/dist/css/radiogroup.css +53 -0
- package/dist/css/searchgrid.css +37 -0
- package/dist/css/secretfield.css +73 -0
- package/dist/css/slider.css +107 -0
- package/dist/css/spacer.css +7 -0
- package/dist/css/stepform.css +46 -0
- package/dist/css/stepper.css +122 -0
- package/dist/css/table.css +36 -0
- package/dist/css/tabs.css +108 -0
- package/dist/css/textarea.css +11 -0
- package/dist/css/textfield.css +59 -0
- package/dist/css/toast.css +91 -0
- package/dist/css/toggle.css +39 -0
- package/dist/css/toolbar.css +14 -0
- package/dist/css/tooltip.css +17 -0
- package/dist/css/tree.css +94 -0
- package/dist/css/viewport.css +9 -0
- package/dist/css/widget.css +135 -0
- package/dist/css/window.css +35 -0
- package/dist/data.js +2 -0
- package/dist/data.js.map +7 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +7 -0
- package/dist/motion.js +2 -0
- package/dist/motion.js.map +7 -0
- package/dist/optikos.css +4240 -0
- package/dist/themes/compact.css +17 -0
- package/dist/themes/dark.css +53 -0
- package/dist/types/bind/index.d.ts +23 -0
- package/dist/types/components/badge.d.ts +1 -0
- package/dist/types/components/base/badge/badge.d.ts +18 -0
- package/dist/types/components/base/button/button.d.ts +34 -0
- package/dist/types/components/base/chip/chip.d.ts +27 -0
- package/dist/types/components/base/codeviewer/codeviewer.d.ts +48 -0
- package/dist/types/components/base/icon/icon.d.ts +17 -0
- package/dist/types/components/base/label/label.d.ts +14 -0
- package/dist/types/components/breadcrumb.d.ts +1 -0
- package/dist/types/components/button.d.ts +1 -0
- package/dist/types/components/calendar.d.ts +1 -0
- package/dist/types/components/cellediting.d.ts +1 -0
- package/dist/types/components/chat/chat/chat.d.ts +84 -0
- package/dist/types/components/chat.d.ts +1 -0
- package/dist/types/components/checkbox.d.ts +1 -0
- package/dist/types/components/checkboxgroup.d.ts +1 -0
- package/dist/types/components/chip.d.ts +1 -0
- package/dist/types/components/codeviewer.d.ts +1 -0
- package/dist/types/components/combobox.d.ts +1 -0
- package/dist/types/components/commandpalette.d.ts +1 -0
- package/dist/types/components/container.d.ts +1 -0
- package/dist/types/components/data/cellediting/cellediting.d.ts +10 -0
- package/dist/types/components/data/dataview/dataview.d.ts +61 -0
- package/dist/types/components/data/filterbuilder/filterbuilder.d.ts +73 -0
- package/dist/types/components/data/grid/grid.d.ts +177 -0
- package/dist/types/components/data/pagination/pagination.d.ts +31 -0
- package/dist/types/components/data/searchgrid/searchgrid.d.ts +63 -0
- package/dist/types/components/data/table/table.d.ts +26 -0
- package/dist/types/components/data/tree/tree.d.ts +71 -0
- package/dist/types/components/data/viewmanager/viewmanager.d.ts +86 -0
- package/dist/types/components/dataview.d.ts +1 -0
- package/dist/types/components/datefield.d.ts +1 -0
- package/dist/types/components/daterangefield.d.ts +1 -0
- package/dist/types/components/dates/calendar/calendar.d.ts +48 -0
- package/dist/types/components/dial.d.ts +1 -0
- package/dist/types/components/dropdown.d.ts +1 -0
- package/dist/types/components/feedback/spinner/spinner.d.ts +11 -0
- package/dist/types/components/fieldgroup.d.ts +1 -0
- package/dist/types/components/fieldlist.d.ts +1 -0
- package/dist/types/components/fields/checkbox/checkbox.d.ts +20 -0
- package/dist/types/components/fields/checkboxgroup/checkboxgroup.d.ts +27 -0
- package/dist/types/components/fields/combobox/combobox.d.ts +15 -0
- package/dist/types/components/fields/datefield/datefield.d.ts +30 -0
- package/dist/types/components/fields/daterangefield/daterangefield.d.ts +32 -0
- package/dist/types/components/fields/dial/dial.d.ts +84 -0
- package/dist/types/components/fields/listbox/listbox.d.ts +54 -0
- package/dist/types/components/fields/lookupfield/lookupfield.d.ts +25 -0
- package/dist/types/components/fields/numberfield/numberfield.d.ts +31 -0
- package/dist/types/components/fields/pickerfield/pickerfield.d.ts +77 -0
- package/dist/types/components/fields/radiogroup/radiogroup.d.ts +26 -0
- package/dist/types/components/fields/secretfield/secretfield.d.ts +52 -0
- package/dist/types/components/fields/select/select.d.ts +10 -0
- package/dist/types/components/fields/slider/slider.d.ts +62 -0
- package/dist/types/components/fields/suggestfield/suggestfield.d.ts +34 -0
- package/dist/types/components/fields/textarea/textarea.d.ts +16 -0
- package/dist/types/components/fields/textfield/textfield.d.ts +38 -0
- package/dist/types/components/fields/toggle/toggle.d.ts +9 -0
- package/dist/types/components/fieldset.d.ts +1 -0
- package/dist/types/components/filterbuilder.d.ts +1 -0
- package/dist/types/components/form/fieldgroup/fieldgroup.d.ts +33 -0
- package/dist/types/components/form/fieldlist/fieldlist.d.ts +58 -0
- package/dist/types/components/form/form/form.d.ts +68 -0
- package/dist/types/components/form/formactions/formactions.d.ts +34 -0
- package/dist/types/components/form/formerrors/formerrors.d.ts +23 -0
- package/dist/types/components/form/formsection/formsection.d.ts +26 -0
- package/dist/types/components/form/inputgroup/inputgroup.d.ts +28 -0
- package/dist/types/components/form/stepform/stepform.d.ts +64 -0
- package/dist/types/components/form.d.ts +1 -0
- package/dist/types/components/formactions.d.ts +1 -0
- package/dist/types/components/formerrors.d.ts +1 -0
- package/dist/types/components/formsection.d.ts +1 -0
- package/dist/types/components/grid.d.ts +1 -0
- package/dist/types/components/icon.d.ts +1 -0
- package/dist/types/components/inputgroup.d.ts +1 -0
- package/dist/types/components/label.d.ts +1 -0
- package/dist/types/components/layout/container/container.d.ts +1 -0
- package/dist/types/components/layout/fieldset/fieldset.d.ts +30 -0
- package/dist/types/components/layout/panel/panel.d.ts +53 -0
- package/dist/types/components/layout/panel/reload.d.ts +1 -0
- package/dist/types/components/layout/spacer/spacer.d.ts +12 -0
- package/dist/types/components/layout/toolbar/toolbar.d.ts +15 -0
- package/dist/types/components/layout/viewport/viewport.d.ts +7 -0
- package/dist/types/components/listbox.d.ts +1 -0
- package/dist/types/components/lookupfield.d.ts +1 -0
- package/dist/types/components/menu.d.ts +1 -0
- package/dist/types/components/messagebox.d.ts +1 -0
- package/dist/types/components/navigation/breadcrumb/breadcrumb.d.ts +32 -0
- package/dist/types/components/navigation/navmenu/navmenu.d.ts +63 -0
- package/dist/types/components/navigation/stepper/stepper.d.ts +31 -0
- package/dist/types/components/navigation/tabs/tabs.d.ts +57 -0
- package/dist/types/components/navmenu.d.ts +1 -0
- package/dist/types/components/numberfield.d.ts +1 -0
- package/dist/types/components/overlays/commandpalette/commandpalette.d.ts +80 -0
- package/dist/types/components/overlays/dropdown/dropdown.d.ts +41 -0
- package/dist/types/components/overlays/menu/menu.d.ts +56 -0
- package/dist/types/components/overlays/messagebox/messagebox.d.ts +61 -0
- package/dist/types/components/overlays/toast/toast.d.ts +45 -0
- package/dist/types/components/overlays/tooltip/tooltip.d.ts +13 -0
- package/dist/types/components/overlays/widget/widget.d.ts +61 -0
- package/dist/types/components/overlays/window/window.d.ts +38 -0
- package/dist/types/components/pagination.d.ts +1 -0
- package/dist/types/components/panel.d.ts +1 -0
- package/dist/types/components/pickerfield.d.ts +1 -0
- package/dist/types/components/radiogroup.d.ts +1 -0
- package/dist/types/components/searchgrid.d.ts +1 -0
- package/dist/types/components/secretfield.d.ts +1 -0
- package/dist/types/components/select.d.ts +1 -0
- package/dist/types/components/slider.d.ts +1 -0
- package/dist/types/components/spacer.d.ts +1 -0
- package/dist/types/components/spinner.d.ts +1 -0
- package/dist/types/components/stepform.d.ts +1 -0
- package/dist/types/components/stepper.d.ts +1 -0
- package/dist/types/components/suggestfield.d.ts +1 -0
- package/dist/types/components/table.d.ts +1 -0
- package/dist/types/components/tabs.d.ts +1 -0
- package/dist/types/components/textarea.d.ts +1 -0
- package/dist/types/components/textfield.d.ts +1 -0
- package/dist/types/components/toast.d.ts +1 -0
- package/dist/types/components/toggle.d.ts +1 -0
- package/dist/types/components/toolbar.d.ts +1 -0
- package/dist/types/components/tooltip.d.ts +1 -0
- package/dist/types/components/tree.d.ts +1 -0
- package/dist/types/components/viewmanager.d.ts +1 -0
- package/dist/types/components/viewport.d.ts +1 -0
- package/dist/types/components/widget.d.ts +1 -0
- package/dist/types/components/window.d.ts +1 -0
- package/dist/types/core/component.d.ts +94 -0
- package/dist/types/core/container.d.ts +43 -0
- package/dist/types/core/date.d.ts +14 -0
- package/dist/types/core/dom.d.ts +11 -0
- package/dist/types/core/emitter.d.ts +12 -0
- package/dist/types/core/field.d.ts +78 -0
- package/dist/types/core/focus.d.ts +18 -0
- package/dist/types/core/i18n.d.ts +12 -0
- package/dist/types/core/index.d.ts +15 -0
- package/dist/types/core/layer.d.ts +6 -0
- package/dist/types/core/position.d.ts +19 -0
- package/dist/types/core/registry.d.ts +12 -0
- package/dist/types/core/validators.d.ts +10 -0
- package/dist/types/core/virtual.d.ts +24 -0
- package/dist/types/data/column.d.ts +32 -0
- package/dist/types/data/format.d.ts +4 -0
- package/dist/types/data/index.d.ts +5 -0
- package/dist/types/data/model.d.ts +28 -0
- package/dist/types/data/proxy.d.ts +61 -0
- package/dist/types/data/store.d.ts +94 -0
- package/dist/types/index.d.ts +67 -0
- package/dist/types/layout/layout.d.ts +27 -0
- package/dist/types/motion/config.d.ts +83 -0
- package/dist/types/motion/core.d.ts +40 -0
- package/dist/types/motion/extras.d.ts +66 -0
- package/dist/types/motion/index.d.ts +3 -0
- package/dist/types/themes/define.d.ts +31 -0
- package/dist/types/themes/index.d.ts +1 -0
- package/dist/types/ui/enums.d.ts +82 -0
- package/dist/types/ui/index.d.ts +2 -0
- package/dist/types/ui/ui.d.ts +67 -0
- package/dist/ui.js +2 -0
- package/dist/ui.js.map +7 -0
- package/package.json +104 -4
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { Component, type ComponentConfig } from '../../../core/component.js';
|
|
2
|
+
export interface Command {
|
|
3
|
+
id: string;
|
|
4
|
+
title: string;
|
|
5
|
+
/** Groups the command and gives it a filter chip. */
|
|
6
|
+
category?: string;
|
|
7
|
+
icon?: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
/** Extra words that find the command. */
|
|
10
|
+
keywords?: string[];
|
|
11
|
+
/** Only displayed (the app binds the key itself). */
|
|
12
|
+
shortcut?: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
hidden?: () => boolean;
|
|
15
|
+
/** Runs after the palette closed. Errors become the palette's `error` event. */
|
|
16
|
+
handler?: (ctx: {
|
|
17
|
+
palette: CommandPalette;
|
|
18
|
+
command: Command;
|
|
19
|
+
}) => unknown;
|
|
20
|
+
/** A second level: choosing this command shows these (Backspace on an empty field goes back). */
|
|
21
|
+
children?: Command[] | (() => Command[] | Promise<Command[]>);
|
|
22
|
+
}
|
|
23
|
+
export interface CommandPaletteConfig extends ComponentConfig {
|
|
24
|
+
commands?: Command[];
|
|
25
|
+
/** `mod` is Ctrl on Windows/Linux and ⌘ on macOS. `false` turns the global key off. Default `'mod+k'`. */
|
|
26
|
+
hotkey?: string | false;
|
|
27
|
+
placeholder?: string;
|
|
28
|
+
emptyText?: string;
|
|
29
|
+
maxResults?: number;
|
|
30
|
+
/** Order of the category groups; the others follow. */
|
|
31
|
+
categories?: string[];
|
|
32
|
+
/** Category chips under the field. Default true. */
|
|
33
|
+
filters?: boolean;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Command palette: Ctrl/⌘+K opens a searchable, categorized list of the actions the app registered. Choosing one closes
|
|
37
|
+
* the palette and runs it; a command with `children` opens a second level instead.
|
|
38
|
+
*/
|
|
39
|
+
export declare class CommandPalette extends Component<CommandPaletteConfig> {
|
|
40
|
+
protected baseCls: string;
|
|
41
|
+
private commands;
|
|
42
|
+
private levels;
|
|
43
|
+
private query;
|
|
44
|
+
private cat;
|
|
45
|
+
private shown;
|
|
46
|
+
private active;
|
|
47
|
+
private opened;
|
|
48
|
+
private opener;
|
|
49
|
+
private release;
|
|
50
|
+
private panel;
|
|
51
|
+
private input;
|
|
52
|
+
private filtersEl;
|
|
53
|
+
private listEl;
|
|
54
|
+
private live;
|
|
55
|
+
private crumb;
|
|
56
|
+
constructor(config?: CommandPaletteConfig);
|
|
57
|
+
protected build(): HTMLDivElement;
|
|
58
|
+
getCommands(): Command[];
|
|
59
|
+
setCommands(list: Command[]): void;
|
|
60
|
+
/** Adds commands; returns the function that removes them again. */
|
|
61
|
+
register(cmd: Command | Command[]): () => void;
|
|
62
|
+
/** Runs a command by id (searching every level that is not a submenu), without opening the palette. */
|
|
63
|
+
run(id: string): Promise<void>;
|
|
64
|
+
isOpen(): boolean;
|
|
65
|
+
toggle(): void;
|
|
66
|
+
open(): void;
|
|
67
|
+
close(): void;
|
|
68
|
+
protected onDestroy(): void;
|
|
69
|
+
private level;
|
|
70
|
+
/** Commands for the current query/filter, in display order. */
|
|
71
|
+
private results;
|
|
72
|
+
private paint;
|
|
73
|
+
private paintFilters;
|
|
74
|
+
private indexOf;
|
|
75
|
+
private setActive;
|
|
76
|
+
private onKey;
|
|
77
|
+
private back;
|
|
78
|
+
private choose;
|
|
79
|
+
private exec;
|
|
80
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component, type ComponentConfig } from '../../../core/component.js';
|
|
2
|
+
import { type AnyConfig } from '../../../core/registry.js';
|
|
3
|
+
import { type Placement } from '../../../core/position.js';
|
|
4
|
+
export interface DropdownConfig extends ComponentConfig {
|
|
5
|
+
anchor?: HTMLElement | Component | {
|
|
6
|
+
x: number;
|
|
7
|
+
y: number;
|
|
8
|
+
};
|
|
9
|
+
content?: HTMLElement | Component | AnyConfig;
|
|
10
|
+
placement?: Placement;
|
|
11
|
+
offset?: number;
|
|
12
|
+
flip?: boolean;
|
|
13
|
+
matchWidth?: boolean;
|
|
14
|
+
closeOnOutside?: boolean;
|
|
15
|
+
closeOnEsc?: boolean;
|
|
16
|
+
role?: string;
|
|
17
|
+
/** Move focus to the first focusable element of the content on open. */
|
|
18
|
+
autoFocus?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/** Floating panel anchored to an element. Lives in the global layer; closes on outside click and Esc. */
|
|
21
|
+
export declare class Dropdown extends Component<DropdownConfig> {
|
|
22
|
+
protected baseCls: string;
|
|
23
|
+
private content?;
|
|
24
|
+
private open_;
|
|
25
|
+
private release;
|
|
26
|
+
private leaving;
|
|
27
|
+
protected build(): HTMLDivElement;
|
|
28
|
+
getAnchor(): HTMLElement | undefined;
|
|
29
|
+
isOpen(): boolean;
|
|
30
|
+
open(): void;
|
|
31
|
+
close(): void;
|
|
32
|
+
toggle(): void;
|
|
33
|
+
reposition(): void;
|
|
34
|
+
setAnchor(anchor: HTMLElement | Component | {
|
|
35
|
+
x: number;
|
|
36
|
+
y: number;
|
|
37
|
+
}): void;
|
|
38
|
+
setPlacement(placement: Placement): void;
|
|
39
|
+
setContent(content: HTMLElement | Component): void;
|
|
40
|
+
protected onDestroy(): void;
|
|
41
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Component, type ComponentConfig } from '../../../core/component.js';
|
|
2
|
+
import type { Placement } from '../../../core/position.js';
|
|
3
|
+
export interface MenuItem {
|
|
4
|
+
text?: string;
|
|
5
|
+
icon?: string;
|
|
6
|
+
handler?: (item: MenuItem) => void;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
/** Present (true/false) makes it a checkable item. */
|
|
9
|
+
checked?: boolean;
|
|
10
|
+
items?: MenuEntry[];
|
|
11
|
+
/** Items with the same group sit together under its name (ungrouped items come first). */
|
|
12
|
+
group?: string;
|
|
13
|
+
}
|
|
14
|
+
export type MenuEntry = MenuItem | '-';
|
|
15
|
+
export interface MenuConfig extends ComponentConfig {
|
|
16
|
+
items?: MenuEntry[];
|
|
17
|
+
/** A search field over the items: filters as you type; a search that names a group shows the whole group. */
|
|
18
|
+
search?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/** Floating menu with submenus. Use `showBy(button)` for button menus and `showAt(x, y)` for context menus. */
|
|
21
|
+
export declare class Menu extends Component<MenuConfig> {
|
|
22
|
+
protected baseCls: string;
|
|
23
|
+
parentMenu?: Menu;
|
|
24
|
+
private dd?;
|
|
25
|
+
private sub?;
|
|
26
|
+
private subOwner?;
|
|
27
|
+
private opener;
|
|
28
|
+
private hoverCancel?;
|
|
29
|
+
/** The `role=menu` element: the root itself, or a list under the search field. */
|
|
30
|
+
private list;
|
|
31
|
+
private searchEl?;
|
|
32
|
+
private emptyEl?;
|
|
33
|
+
protected build(): HTMLDivElement;
|
|
34
|
+
/** Without search the root is the menu; with it, the root holds the field, the menu and the "no results" line. */
|
|
35
|
+
private shell;
|
|
36
|
+
private first;
|
|
37
|
+
/** Hides the items that do not match the search (a group whose name matches keeps all of them); empty groups hide in CSS. */
|
|
38
|
+
private filter;
|
|
39
|
+
protected onRender(): void;
|
|
40
|
+
private entries;
|
|
41
|
+
private renderItems;
|
|
42
|
+
setItems(items: MenuEntry[]): void;
|
|
43
|
+
/** Turns the search field on or off. */
|
|
44
|
+
setSearch(search: boolean): void;
|
|
45
|
+
private activate;
|
|
46
|
+
private root;
|
|
47
|
+
private openSub;
|
|
48
|
+
isOpen(): boolean;
|
|
49
|
+
private focusFirst;
|
|
50
|
+
showBy(anchor: HTMLElement | Component, placement?: Placement, focus?: boolean): void;
|
|
51
|
+
showAt(x: number, y: number): void;
|
|
52
|
+
private open;
|
|
53
|
+
hide(): void;
|
|
54
|
+
closeAll(): void;
|
|
55
|
+
protected onDestroy(): void;
|
|
56
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Window } from '../window/window.js';
|
|
2
|
+
import { TextField } from '../../fields/textfield/textfield.js';
|
|
3
|
+
import type { Validator } from '../../../core/validators.js';
|
|
4
|
+
export interface MessageBoxButton {
|
|
5
|
+
id: string;
|
|
6
|
+
text: string;
|
|
7
|
+
variant?: 'default' | 'primary' | 'danger';
|
|
8
|
+
}
|
|
9
|
+
export interface MessageBoxConfig {
|
|
10
|
+
text: string;
|
|
11
|
+
title?: string;
|
|
12
|
+
icon?: string;
|
|
13
|
+
buttons: MessageBoxButton[];
|
|
14
|
+
/** Resolved when closed with Esc or the close button. */
|
|
15
|
+
cancelId?: string;
|
|
16
|
+
/** Adds a text input; `show` then resolves with the button id and the input is read by `prompt`. */
|
|
17
|
+
input?: {
|
|
18
|
+
value?: string;
|
|
19
|
+
placeholder?: string;
|
|
20
|
+
validators?: Validator<string>[];
|
|
21
|
+
autoFocus?: boolean;
|
|
22
|
+
};
|
|
23
|
+
/** Called with the pressed button id before closing; return `false` to keep the dialog open. */
|
|
24
|
+
beforeClose?: (id: string, win: Window, input?: TextField) => boolean | void;
|
|
25
|
+
/** Dim the page behind. Default false: a message is still modal, but it does not darken the screen. */
|
|
26
|
+
mask?: boolean;
|
|
27
|
+
}
|
|
28
|
+
declare function open(cfg: MessageBoxConfig): Promise<string>;
|
|
29
|
+
export interface AlertOptions {
|
|
30
|
+
title?: string;
|
|
31
|
+
mask?: boolean;
|
|
32
|
+
okText?: string;
|
|
33
|
+
icon?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface ConfirmOptions {
|
|
36
|
+
title?: string;
|
|
37
|
+
mask?: boolean;
|
|
38
|
+
okText?: string;
|
|
39
|
+
cancelText?: string;
|
|
40
|
+
danger?: boolean;
|
|
41
|
+
icon?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface PromptOptions {
|
|
44
|
+
title?: string;
|
|
45
|
+
mask?: boolean;
|
|
46
|
+
value?: string;
|
|
47
|
+
placeholder?: string;
|
|
48
|
+
okText?: string;
|
|
49
|
+
cancelText?: string;
|
|
50
|
+
validators?: Validator<string>[];
|
|
51
|
+
/** Focus the text field on open (a phone keyboard pops up). Default false: the dialog gets the focus. */
|
|
52
|
+
autoFocus?: boolean;
|
|
53
|
+
}
|
|
54
|
+
export declare const MessageBox: {
|
|
55
|
+
show: typeof open;
|
|
56
|
+
alert(text: string, o?: AlertOptions): Promise<void>;
|
|
57
|
+
confirm(text: string, o?: ConfirmOptions): Promise<boolean>;
|
|
58
|
+
/** Resolves with the text, or `null` when cancelled. The dialog stays open while the validators fail. */
|
|
59
|
+
prompt(text: string, o?: PromptOptions): Promise<string | null>;
|
|
60
|
+
};
|
|
61
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Component, type ComponentConfig } from '../../../core/component.js';
|
|
2
|
+
export type ToastPosition = 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top' | 'bottom';
|
|
3
|
+
export interface ToastConfig extends ComponentConfig {
|
|
4
|
+
text?: string;
|
|
5
|
+
title?: string;
|
|
6
|
+
type?: 'info' | 'success' | 'warning' | 'error';
|
|
7
|
+
/** ms before it closes by itself; 0 keeps it until closed. Default 4000. */
|
|
8
|
+
duration?: number;
|
|
9
|
+
closable?: boolean;
|
|
10
|
+
position?: ToastPosition;
|
|
11
|
+
}
|
|
12
|
+
declare const defaults: {
|
|
13
|
+
duration: number;
|
|
14
|
+
position: ToastPosition;
|
|
15
|
+
max: number;
|
|
16
|
+
};
|
|
17
|
+
export declare class Toast extends Component<ToastConfig> {
|
|
18
|
+
protected baseCls: string;
|
|
19
|
+
private cancelTimer?;
|
|
20
|
+
private remaining;
|
|
21
|
+
private started;
|
|
22
|
+
protected build(): HTMLDivElement;
|
|
23
|
+
/** Puts the toast on screen and starts the timer. */
|
|
24
|
+
show(): void;
|
|
25
|
+
private pause;
|
|
26
|
+
private resume;
|
|
27
|
+
close(): void;
|
|
28
|
+
}
|
|
29
|
+
export interface ToastHandle {
|
|
30
|
+
close(): void;
|
|
31
|
+
}
|
|
32
|
+
/** `toast('Saved')` or `toast({ text, title, type, duration, closable, position })`. */
|
|
33
|
+
export declare function toast(opts: string | ToastConfig): ToastHandle;
|
|
34
|
+
export declare namespace toast {
|
|
35
|
+
var configure: (o: Partial<typeof defaults>) => {
|
|
36
|
+
duration: number;
|
|
37
|
+
position: ToastPosition;
|
|
38
|
+
max: number;
|
|
39
|
+
} & Partial<{
|
|
40
|
+
duration: number;
|
|
41
|
+
position: ToastPosition;
|
|
42
|
+
max: number;
|
|
43
|
+
}>;
|
|
44
|
+
}
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
declare function show(t: HTMLElement): void;
|
|
2
|
+
declare function hide(): void;
|
|
3
|
+
export declare const Tooltip: {
|
|
4
|
+
/** Default delay (ms) before a hover tooltip shows. */
|
|
5
|
+
configure(o: {
|
|
6
|
+
delay?: number;
|
|
7
|
+
}): void;
|
|
8
|
+
show: typeof show;
|
|
9
|
+
hide: typeof hide;
|
|
10
|
+
};
|
|
11
|
+
/** Gives any element a tooltip (same as the `tooltip` config on components). */
|
|
12
|
+
export declare function attachTooltip(target: HTMLElement, text: string): void;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Panel, type PanelConfig } from '../../layout/panel/panel.js';
|
|
2
|
+
export type WidgetSide = 'right' | 'left' | 'top' | 'bottom';
|
|
3
|
+
export interface WidgetConfig extends PanelConfig {
|
|
4
|
+
side?: WidgetSide;
|
|
5
|
+
/** Float above the page (default). `false`: an ordinary panel where the layout puts it. */
|
|
6
|
+
floating?: boolean;
|
|
7
|
+
/** Width on the sides, height on top/bottom (CSS length or px). */
|
|
8
|
+
size?: number | string;
|
|
9
|
+
/** Header buttons that let the user pick the side. */
|
|
10
|
+
sideSwitcher?: boolean;
|
|
11
|
+
/** Which sides the switcher offers. Default left, right, bottom. */
|
|
12
|
+
sides?: WidgetSide[];
|
|
13
|
+
closeOnEsc?: boolean;
|
|
14
|
+
/** On open the focus goes to the widget itself; `true` focuses its first field instead. Default false. */
|
|
15
|
+
autoFocus?: boolean;
|
|
16
|
+
/** The user can move it by its header (pointer drag, or Alt+arrow keys). A move frees it from the side; `setSide` docks it again. */
|
|
17
|
+
draggable?: boolean;
|
|
18
|
+
/** The user can resize it: the inner edge while docked, a corner grip once moved; arrow keys on the handle. */
|
|
19
|
+
resizable?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/** A panel that floats over the page, attached to one edge. Not modal: the page behind stays usable. */
|
|
22
|
+
export declare class Widget extends Panel<WidgetConfig> {
|
|
23
|
+
protected baseCls: string;
|
|
24
|
+
private opened;
|
|
25
|
+
private opener;
|
|
26
|
+
private cancelHide?;
|
|
27
|
+
private userTools;
|
|
28
|
+
private pos?;
|
|
29
|
+
private grip?;
|
|
30
|
+
constructor(config?: WidgetConfig);
|
|
31
|
+
protected onRender(): void;
|
|
32
|
+
getSide(): WidgetSide;
|
|
33
|
+
setSide(side: WidgetSide): void;
|
|
34
|
+
private paintSide;
|
|
35
|
+
/** Where the user left it (viewport px), or undefined while it sits on its side. */
|
|
36
|
+
getPosition(): {
|
|
37
|
+
x: number;
|
|
38
|
+
y: number;
|
|
39
|
+
} | undefined;
|
|
40
|
+
/** Puts a dragged widget back on its side. */
|
|
41
|
+
resetPosition(): void;
|
|
42
|
+
private moveTo;
|
|
43
|
+
private initDrag;
|
|
44
|
+
setSize(size: number | string): void;
|
|
45
|
+
/** Adds or removes the resize handle (only for a floating widget). */
|
|
46
|
+
setResizable(resizable: boolean): void;
|
|
47
|
+
/**
|
|
48
|
+
* Resizes from rect `r` by a pointer (or key) delta. Moved: the corner grip sets width and height. Docked: the inner edge
|
|
49
|
+
* sets the size, so pulling it away from the docked edge makes the widget bigger.
|
|
50
|
+
*/
|
|
51
|
+
private resizeBy;
|
|
52
|
+
/** The handle's orientation and value follow the dimension it changes. */
|
|
53
|
+
private paintGrip;
|
|
54
|
+
isOpen(): boolean;
|
|
55
|
+
open(): void;
|
|
56
|
+
/** Opens or closes (with no argument: the other one). `toggle()` stays the Panel's collapse. */
|
|
57
|
+
setOpen(open?: boolean): void;
|
|
58
|
+
show(): void;
|
|
59
|
+
hide(): void;
|
|
60
|
+
protected onDestroy(): void;
|
|
61
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Panel, type PanelConfig } from '../../layout/panel/panel.js';
|
|
2
|
+
export interface WindowConfig extends PanelConfig {
|
|
3
|
+
modal?: boolean;
|
|
4
|
+
/** Dims the page behind a modal window. `false` keeps it modal (inert page, trapped focus) but clear. Default true. */
|
|
5
|
+
mask?: boolean;
|
|
6
|
+
draggable?: boolean;
|
|
7
|
+
closeOnEsc?: boolean;
|
|
8
|
+
closeOnBackdrop?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* On show the focus goes to the dialog itself (it is modal: the focus must be inside), so a phone keyboard does not
|
|
11
|
+
* pop up. `true` focuses its first field instead. Default false.
|
|
12
|
+
*/
|
|
13
|
+
autoFocus?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/** Floating dialog. Modal by default: the page behind becomes inert and Tab stays inside. */
|
|
16
|
+
export declare class Window extends Panel<WindowConfig> {
|
|
17
|
+
protected baseCls: string;
|
|
18
|
+
private backdrop?;
|
|
19
|
+
private visible;
|
|
20
|
+
private cleanup;
|
|
21
|
+
private opener;
|
|
22
|
+
private moved;
|
|
23
|
+
private leaving;
|
|
24
|
+
constructor(config?: WindowConfig);
|
|
25
|
+
protected onRender(): void;
|
|
26
|
+
private initDrag;
|
|
27
|
+
/** Dims (true) or not (false) the page behind the modal window. */
|
|
28
|
+
setMask(mask: boolean): void;
|
|
29
|
+
isVisible(): boolean;
|
|
30
|
+
/** Centers in the viewport (also done on show and on resize until the user drags it). */
|
|
31
|
+
center(): void;
|
|
32
|
+
show(): void;
|
|
33
|
+
private focusFirst;
|
|
34
|
+
hide(): void;
|
|
35
|
+
/** Cleans up at once (the page is usable again) and takes the window off the screen: shrinking toward its opener, 20 % faster than it came. */
|
|
36
|
+
private release;
|
|
37
|
+
protected onDestroy(): void;
|
|
38
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/data/pagination/pagination.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/layout/panel/panel.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/pickerfield/pickerfield.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/radiogroup/radiogroup.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/data/searchgrid/searchgrid.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/secretfield/secretfield.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/select/select.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/slider/slider.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/layout/spacer/spacer.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/feedback/spinner/spinner.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/form/stepform/stepform.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/navigation/stepper/stepper.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/suggestfield/suggestfield.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/data/table/table.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/navigation/tabs/tabs.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/textarea/textarea.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/textfield/textfield.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/overlays/toast/toast.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/fields/toggle/toggle.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/layout/toolbar/toolbar.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/overlays/tooltip/tooltip.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/data/tree/tree.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/data/viewmanager/viewmanager.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/layout/viewport/viewport.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/overlays/widget/widget.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/overlays/window/window.js';
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { Emitter, type Handler } from './emitter.js';
|
|
2
|
+
export interface ComponentConfig {
|
|
3
|
+
type?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
cls?: string;
|
|
6
|
+
style?: string | Record<string, string | number>;
|
|
7
|
+
hidden?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
width?: number | string;
|
|
10
|
+
height?: number | string;
|
|
11
|
+
flex?: number | string;
|
|
12
|
+
tooltip?: string;
|
|
13
|
+
/** Inside a Form: shown only while this returns true (given the form values). A field hidden this way neither validates nor goes into `getValues`. */
|
|
14
|
+
showIf?: (values: Record<string, any>) => boolean;
|
|
15
|
+
/** Inside a Form: enabled only while this returns true (given the form values). */
|
|
16
|
+
enableIf?: (values: Record<string, any>) => boolean;
|
|
17
|
+
/** Component-scoped tokens: `{ radius: '0' }` on a button sets `--op-button-radius`. Keys starting with `--` are used as is. */
|
|
18
|
+
theme?: Record<string, string | number>;
|
|
19
|
+
/**
|
|
20
|
+
* Default `true`: the component keeps its size when only its *state* changes (loading, searching, invalid).
|
|
21
|
+
* The CSS reserves room for the state's extra content instead of growing. `false` lets it fit the content.
|
|
22
|
+
* Does not apply to new *content* (`setText` with a longer text).
|
|
23
|
+
*/
|
|
24
|
+
stableSize?: boolean;
|
|
25
|
+
/** `true` or a text: shows a mask with a spinner over the component. */
|
|
26
|
+
loading?: boolean | string;
|
|
27
|
+
ariaLabel?: string;
|
|
28
|
+
/** Layout `border`: where the item goes. */
|
|
29
|
+
region?: 'north' | 'south' | 'west' | 'east' | 'center';
|
|
30
|
+
/** Layout `grid`: columns spanned; `'full'` takes the whole row. */
|
|
31
|
+
colspan?: number | 'full';
|
|
32
|
+
listeners?: Record<string, Handler>;
|
|
33
|
+
renderTo?: string | HTMLElement;
|
|
34
|
+
/** Free slot for application data. */
|
|
35
|
+
data?: unknown;
|
|
36
|
+
}
|
|
37
|
+
/** Anything that owns children (Container) and accepts being asked to drop one. */
|
|
38
|
+
export interface Parent {
|
|
39
|
+
remove(child: Component, destroy?: boolean): unknown;
|
|
40
|
+
}
|
|
41
|
+
export declare class Component<C extends ComponentConfig = ComponentConfig> extends Emitter {
|
|
42
|
+
static type?: string;
|
|
43
|
+
config: C;
|
|
44
|
+
readonly id: string;
|
|
45
|
+
parent?: Component & Parent;
|
|
46
|
+
rendered: boolean;
|
|
47
|
+
mounted: boolean;
|
|
48
|
+
destroyed: boolean;
|
|
49
|
+
protected baseCls: string;
|
|
50
|
+
protected tag: keyof HTMLElementTagNameMap;
|
|
51
|
+
private _el?;
|
|
52
|
+
private disposers;
|
|
53
|
+
private mask?;
|
|
54
|
+
constructor(config?: C);
|
|
55
|
+
/** The root element. Built on first access. */
|
|
56
|
+
get el(): HTMLElement;
|
|
57
|
+
/** Builds the root element. Subclasses override to create their own DOM. */
|
|
58
|
+
protected build(): HTMLElement;
|
|
59
|
+
protected onRender(): void;
|
|
60
|
+
protected onMount(): void;
|
|
61
|
+
protected onDestroy(): void;
|
|
62
|
+
/** Builds the DOM once. Safe to call repeatedly. */
|
|
63
|
+
render(): HTMLElement;
|
|
64
|
+
/** Appends to a target (default `document.body`) and fires `onMount` for the whole subtree. */
|
|
65
|
+
mount(target?: string | HTMLElement): this;
|
|
66
|
+
/** Called when the element becomes part of a mounted tree. Containers override to reach children. */
|
|
67
|
+
notifyMount(): void;
|
|
68
|
+
destroy(): void;
|
|
69
|
+
/** Registers a function to run on `destroy` (listeners, timers, effects). Returns it. */
|
|
70
|
+
own<F extends () => void>(fn: F): F;
|
|
71
|
+
/** Adds a DOM listener released on `destroy`. */
|
|
72
|
+
listen(target: EventTarget, type: string, fn: (e: any) => void, opts?: AddEventListenerOptions | boolean): () => void;
|
|
73
|
+
/** `setTimeout` released on `destroy`; returns the cancel function. */
|
|
74
|
+
later(fn: () => void, ms: number): () => void;
|
|
75
|
+
protected onDisabled(_disabled: boolean): void;
|
|
76
|
+
setDisabled(disabled: boolean): void;
|
|
77
|
+
show(): void;
|
|
78
|
+
hide(): void;
|
|
79
|
+
isHidden(): boolean;
|
|
80
|
+
addCls(name: string): void;
|
|
81
|
+
removeCls(name: string): void;
|
|
82
|
+
toggleCls(name: string, on?: boolean): void;
|
|
83
|
+
setWidth(v: number | string): void;
|
|
84
|
+
setHeight(v: number | string): void;
|
|
85
|
+
setFlex(v: number | string): void;
|
|
86
|
+
setStableSize(stable: boolean): void;
|
|
87
|
+
setTooltip(text: string): void;
|
|
88
|
+
setTheme(theme: Record<string, string | number>): void;
|
|
89
|
+
/** Shows (or removes) a loading mask. A string is shown as text under the spinner. */
|
|
90
|
+
setLoading(loading: boolean | string): void;
|
|
91
|
+
/** The element that receives focus on `focus()`. */
|
|
92
|
+
protected focusEl(): HTMLElement;
|
|
93
|
+
focus(): void;
|
|
94
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Component, type ComponentConfig, type Parent } from './component.js';
|
|
2
|
+
import { type AnyConfig } from './registry.js';
|
|
3
|
+
import { type Layout, type LayoutSpec } from '../layout/layout.js';
|
|
4
|
+
export interface ContainerConfig extends ComponentConfig {
|
|
5
|
+
items?: Array<AnyConfig | Component | string>;
|
|
6
|
+
layout?: LayoutSpec;
|
|
7
|
+
/** Config merged into every item that does not set the key itself. */
|
|
8
|
+
defaults?: Record<string, unknown>;
|
|
9
|
+
/** `type` used by items that do not declare one. */
|
|
10
|
+
defaultType?: string;
|
|
11
|
+
/** Layout `card`: initial visible child (index or id). */
|
|
12
|
+
activeItem?: number | string;
|
|
13
|
+
}
|
|
14
|
+
export declare class Container<C extends ContainerConfig = ContainerConfig> extends Component<C> implements Parent {
|
|
15
|
+
protected baseCls: string;
|
|
16
|
+
protected defaultLayout: LayoutSpec | undefined;
|
|
17
|
+
items: Component[];
|
|
18
|
+
layout?: Layout;
|
|
19
|
+
constructor(config?: C);
|
|
20
|
+
/** Element that holds the children. Panels override it. */
|
|
21
|
+
getBody(): HTMLElement;
|
|
22
|
+
/** Turns shorthand strings (`'->'`) into configs. Subclasses override; the base has none. */
|
|
23
|
+
protected shorthand(s: string): AnyConfig;
|
|
24
|
+
private make;
|
|
25
|
+
protected onRender(): void;
|
|
26
|
+
protected attach(c: Component, index: number): void;
|
|
27
|
+
add(item: AnyConfig | Component | string): Component;
|
|
28
|
+
insert(index: number, item: AnyConfig | Component | string): Component;
|
|
29
|
+
/** Removes a child (by instance, id or index). Destroys it unless `destroy` is `false`. */
|
|
30
|
+
remove(child: Component | string | number, destroy?: boolean): Component | undefined;
|
|
31
|
+
removeAll(destroy?: boolean): void;
|
|
32
|
+
getItems(): Component[];
|
|
33
|
+
/** Direct child by id. */
|
|
34
|
+
get(id: string): Component | undefined;
|
|
35
|
+
/** All descendants (depth-first) matching `fn`. */
|
|
36
|
+
query(fn: (c: Component) => boolean): Component[];
|
|
37
|
+
/** Layout `card`: which child is visible. */
|
|
38
|
+
getActiveItem(): Component | undefined;
|
|
39
|
+
setActiveItem(item: Component | string | number): void;
|
|
40
|
+
notifyMount(): void;
|
|
41
|
+
protected onDestroy(): void;
|
|
42
|
+
setDisabled(disabled: boolean): void;
|
|
43
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const toISO: (d: Date) => string;
|
|
2
|
+
export declare function fromISO(iso: string): Date | null;
|
|
3
|
+
export declare const today: () => string;
|
|
4
|
+
export declare function addDays(iso: string, n: number): string;
|
|
5
|
+
/** Moves by whole months, clamping the day (Jan 31 + 1 month → Feb 28). */
|
|
6
|
+
export declare function addMonths(iso: string, n: number): string;
|
|
7
|
+
export declare const formatDate: (iso: string, opts?: Intl.DateTimeFormatOptions) => string;
|
|
8
|
+
/**
|
|
9
|
+
* Parses what a user types: ISO, or day/month/year in the order the current locale uses (derived from `Intl`),
|
|
10
|
+
* with `/`, `-` or `.` as separators and 2- or 4-digit years.
|
|
11
|
+
*/
|
|
12
|
+
export declare function parseDate(text: string): string | null;
|
|
13
|
+
/** 0 = Sunday. Reads the locale's week start when the engine knows it. */
|
|
14
|
+
export declare function firstDay(): number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type Child = Node | string | number | null | undefined | false;
|
|
2
|
+
export type Attrs = Record<string, string | number | boolean | null | undefined>;
|
|
3
|
+
/** Sets attributes; `null`, `undefined` and `false` remove, `true` sets an empty attribute. */
|
|
4
|
+
export declare function attr(el: Element, attrs: Attrs): void;
|
|
5
|
+
/** Tiny element factory: `h('button', 'op-button', { type: 'button' }, 'Save')`. */
|
|
6
|
+
export declare function h<K extends keyof HTMLElementTagNameMap>(tag: K, cls?: string, attrs?: Attrs, ...kids: Child[]): HTMLElementTagNameMap[K];
|
|
7
|
+
export declare const uid: (prefix?: string) => string;
|
|
8
|
+
export declare const kebab: (s: string) => string;
|
|
9
|
+
export declare const px: (v: number | string) => string;
|
|
10
|
+
export declare const clamp: (n: number, min: number, max: number) => number;
|
|
11
|
+
export declare const isEl: (v: unknown) => v is HTMLElement;
|