solid-ui 3.1.3-12 → 3.1.3-14
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/README.md +9 -14
- package/dist/_virtual/_rolldown/runtime.cjs.js +1 -1
- package/dist/acl/access-controller.cjs.js.map +1 -1
- package/dist/acl/access-groups.cjs.js +1 -1
- package/dist/acl/access-groups.cjs.js.map +1 -1
- package/dist/acl/access-groups.esm.js +2 -1
- package/dist/acl/access-groups.esm.js.map +1 -1
- package/dist/acl/acl.cjs.js.map +1 -1
- package/dist/acl/acl.esm.js.map +1 -1
- package/dist/chat/bookmarks.esm.js +2 -1
- package/dist/chat/bookmarks.esm.js.map +1 -1
- package/dist/chat/chatLogic.cjs.js +1 -1
- package/dist/chat/chatLogic.cjs.js.map +1 -1
- package/dist/chat/chatLogic.esm.js +2 -2
- package/dist/chat/chatLogic.esm.js.map +1 -1
- package/dist/chat/keys.cjs.js +1 -1
- package/dist/chat/keys.cjs.js.map +1 -1
- package/dist/chat/keys.d.ts +1 -1
- package/dist/chat/keys.d.ts.map +1 -1
- package/dist/chat/keys.esm.js +5 -2
- package/dist/chat/keys.esm.js.map +1 -1
- package/dist/chat/signature.cjs.js +1 -1
- package/dist/chat/signature.cjs.js.map +1 -1
- package/dist/chat/signature.esm.js +2 -1
- package/dist/chat/signature.esm.js.map +1 -1
- package/dist/chunks/{DialogProvider-ge2aA77F.js → DialogProvider-0HIHjONx.js} +7 -9
- package/dist/chunks/{DialogProvider-ge2aA77F.js.map → DialogProvider-0HIHjONx.js.map} +1 -1
- package/dist/chunks/{account-Bb818bGF.js → account-Ch8h_zTv.js} +22 -25
- package/dist/chunks/{account-Bb818bGF.js.map → account-Ch8h_zTv.js.map} +1 -1
- package/dist/chunks/{auth-ClVI18ss.js → auth-D4NUMSzc.js} +111 -113
- package/dist/chunks/auth-D4NUMSzc.js.map +1 -0
- package/dist/chunks/{avatar-DGu_PX5y.js → avatar-BWtz4RlU.js} +9 -11
- package/dist/chunks/{avatar-DGu_PX5y.js.map → avatar-BWtz4RlU.js.map} +1 -1
- package/dist/chunks/{button-B9-nlEpz.js → button-BJyFKOKO.js} +12 -16
- package/dist/chunks/{button-B9-nlEpz.js.map → button-BJyFKOKO.js.map} +1 -1
- package/dist/chunks/{chunk.7MPIABXH-CEYdxYyt.js → chunk.64OG2H45-BADxAtEI.js} +104 -57
- package/dist/chunks/chunk.64OG2H45-BADxAtEI.js.map +1 -0
- package/dist/chunks/{combobox-DrT0Nb-A.js → combobox-0NWv9K3D.js} +120 -178
- package/dist/chunks/combobox-0NWv9K3D.js.map +1 -0
- package/dist/chunks/{combobox-option-DxJvAZ_Q.js → combobox-option-B-twy1Zn.js} +6 -8
- package/dist/chunks/{combobox-option-DxJvAZ_Q.js.map → combobox-option-B-twy1Zn.js.map} +1 -1
- package/dist/chunks/components-DrP7BOrs.js +1281 -0
- package/dist/chunks/components-DrP7BOrs.js.map +1 -0
- package/dist/chunks/{dialog-kyHgc-uy.js → dialog-CcMVH-Ut.js} +58 -115
- package/dist/chunks/dialog-CcMVH-Ut.js.map +1 -0
- package/dist/chunks/{dialog-content-CEITrC59.js → dialog-content-DcD_s3hK.js} +4 -5
- package/dist/chunks/{dialog-content-CEITrC59.js.map → dialog-content-DcD_s3hK.js.map} +1 -1
- package/dist/chunks/{dialog-footer-DVLEK5bU.js → dialog-footer-CHgSH7G5.js} +4 -5
- package/dist/chunks/{dialog-footer-DVLEK5bU.js.map → dialog-footer-CHgSH7G5.js.map} +1 -1
- package/dist/chunks/{dialog-header-kEWl21oD.js → dialog-header-BjellR7_.js} +4 -5
- package/dist/chunks/{dialog-header-kEWl21oD.js.map → dialog-header-BjellR7_.js.map} +1 -1
- package/dist/chunks/dialogs-CeHuLUo5.js +26 -0
- package/dist/chunks/dialogs-CeHuLUo5.js.map +1 -0
- package/dist/chunks/{dialogs-root-dPGfuzSZ.js → dialogs-root-CvsON-m8.js} +12 -18
- package/dist/chunks/dialogs-root-CvsON-m8.js.map +1 -0
- package/dist/chunks/{guard-DEqOFEs4.js → guard-BIesxo_f.js} +9 -11
- package/dist/chunks/{guard-DEqOFEs4.js.map → guard-BIesxo_f.js.map} +1 -1
- package/dist/chunks/{solid-logic.esm-BrMdCG2_.js → index.esm-CyyOkz04.js} +2663 -2745
- package/dist/chunks/index.esm-CyyOkz04.js.map +1 -0
- package/dist/chunks/{input-BjCX2bFe.js → input-CFDN76Y5.js} +68 -97
- package/dist/chunks/input-CFDN76Y5.js.map +1 -0
- package/dist/chunks/{jsonld-B61R4iOL.js → jsonld-52q5nY_t.js} +22 -27
- package/dist/chunks/{jsonld-B61R4iOL.js.map → jsonld-52q5nY_t.js.map} +1 -1
- package/dist/chunks/{login-button-Czm-E9Na.js → login-button-BhdKFJ-F.js} +10 -12
- package/dist/chunks/{login-button-Czm-E9Na.js.map → login-button-BhdKFJ-F.js.map} +1 -1
- package/dist/chunks/{logout-button-BrR_jOhK.js → logout-button-ClbKS9ss.js} +10 -12
- package/dist/chunks/{logout-button-BrR_jOhK.js.map → logout-button-ClbKS9ss.js.map} +1 -1
- package/dist/chunks/{menu-1PG19fCC.js → menu-DVgG-el5.js} +58 -55
- package/dist/chunks/menu-DVgG-el5.js.map +1 -0
- package/dist/chunks/{menu-item-C9uErV38.js → menu-item-Bj3NgLzB.js} +10 -12
- package/dist/chunks/{menu-item-C9uErV38.js.map → menu-item-Bj3NgLzB.js.map} +1 -1
- package/dist/chunks/photo-capture-CVKE0SKx.js +402 -0
- package/dist/chunks/photo-capture-CVKE0SKx.js.map +1 -0
- package/dist/chunks/photo-capture-modal-DARmhHUH.js +560 -0
- package/dist/chunks/photo-capture-modal-DARmhHUH.js.map +1 -0
- package/dist/chunks/{provider-qd_4VaKB.js → provider-CBSBzOfP.js} +11 -13
- package/dist/chunks/{provider-qd_4VaKB.js.map → provider-CBSBzOfP.js.map} +1 -1
- package/dist/chunks/rdf-form-BeuzVBOP.js +339 -0
- package/dist/chunks/rdf-form-BeuzVBOP.js.map +1 -0
- package/dist/chunks/rdf-input-n73oeSkf.js +440 -0
- package/dist/chunks/rdf-input-n73oeSkf.js.map +1 -0
- package/dist/chunks/{rolldown-runtime-B1bRi_D7.js → rolldown-runtime-Cb76FRpK.js} +2 -2
- package/dist/chunks/{select-OM-SgY4K.js → select-BuIxSm1A.js} +53 -111
- package/dist/chunks/select-BuIxSm1A.js.map +1 -0
- package/dist/chunks/{select-option-pVhYlXrt.js → select-option-Z8qZsCQo.js} +6 -8
- package/dist/chunks/{select-option-pVhYlXrt.js.map → select-option-Z8qZsCQo.js.map} +1 -1
- package/dist/chunks/{signup-button-BnA5p-uJ.js → signup-button-B-AgjjAK.js} +10 -12
- package/dist/chunks/{signup-button-BnA5p-uJ.js.map → signup-button-B-AgjjAK.js.map} +1 -1
- package/dist/chunks/{solid-emblem-D2clBuKZ.js → solid-emblem-D4ItOckU.js} +5 -6
- package/dist/chunks/{solid-emblem-D2clBuKZ.js.map → solid-emblem-D4ItOckU.js.map} +1 -1
- package/dist/chunks/{src-DJOb1wMf.js → src-CMpy92si.js} +2741 -3206
- package/dist/chunks/src-CMpy92si.js.map +1 -0
- package/dist/chunks/style-CjYxsW7j.js +536 -0
- package/dist/chunks/style-CjYxsW7j.js.map +1 -0
- package/dist/components/account/Account.cjs.js.map +1 -1
- package/dist/components/account/Account.stories.d.ts +3 -13
- package/dist/components/account/Account.stories.d.ts.map +1 -1
- package/dist/components/account.js +1 -1
- package/dist/components/all.cjs.js +1 -1
- package/dist/components/all.esm.js +3 -1
- package/dist/components/avatar/Avatar.cjs.js.map +1 -1
- package/dist/components/avatar/Avatar.stories.d.ts +3 -21
- package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
- package/dist/components/avatar.js +1 -1
- package/dist/components/button/Button.cjs.js +1 -1
- package/dist/components/button/Button.cjs.js.map +1 -1
- package/dist/components/button/Button.esm.js +1 -3
- package/dist/components/button/Button.esm.js.map +1 -1
- package/dist/components/button/Button.stories.d.ts +15 -154
- package/dist/components/button/Button.stories.d.ts.map +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/combobox/Combobox.cjs.js +11 -11
- package/dist/components/combobox/Combobox.cjs.js.map +1 -1
- package/dist/components/combobox/Combobox.d.ts +5 -11
- package/dist/components/combobox/Combobox.d.ts.map +1 -1
- package/dist/components/combobox/Combobox.esm.js +115 -172
- package/dist/components/combobox/Combobox.esm.js.map +1 -1
- package/dist/components/combobox/Combobox.stories.d.ts +9 -46
- package/dist/components/combobox/Combobox.stories.d.ts.map +1 -1
- package/dist/components/combobox-option/ComboboxOption.cjs.js.map +1 -1
- package/dist/components/combobox-option.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/dialog/Dialog.cjs.js +6 -6
- package/dist/components/dialog/Dialog.cjs.js.map +1 -1
- package/dist/components/dialog/Dialog.esm.js +11 -10
- package/dist/components/dialog/Dialog.esm.js.map +1 -1
- package/dist/components/dialog/Dialog.stories.d.ts +22 -0
- package/dist/components/dialog/Dialog.stories.d.ts.map +1 -0
- package/dist/components/dialog/docs/sample-modal/SampleModal.d.ts +6 -0
- package/dist/components/dialog/docs/sample-modal/SampleModal.d.ts.map +1 -0
- package/dist/components/dialog/docs/sample-modal/index.d.ts +4 -0
- package/dist/components/dialog/docs/sample-modal/index.d.ts.map +1 -0
- package/dist/components/dialog-content.js +1 -1
- package/dist/components/dialog-footer.js +1 -1
- package/dist/components/dialog-header.js +1 -1
- package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
- package/dist/components/dialog-provider.js +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/dialogs-root/DialogsRoot.cjs.js +4 -7
- package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
- package/dist/components/dialogs-root/DialogsRoot.d.ts.map +1 -1
- package/dist/components/dialogs-root/DialogsRoot.esm.js +7 -10
- package/dist/components/dialogs-root/DialogsRoot.esm.js.map +1 -1
- package/dist/components/dialogs-root.js +1 -1
- package/dist/components/guard/Guard.cjs.js.map +1 -1
- package/dist/components/guard/Guard.stories.d.ts +3 -21
- package/dist/components/guard/Guard.stories.d.ts.map +1 -1
- package/dist/components/guard.js +1 -1
- package/dist/components/input/Input.cjs.js +3 -2
- package/dist/components/input/Input.cjs.js.map +1 -1
- package/dist/components/input/Input.d.ts +4 -9
- package/dist/components/input/Input.d.ts.map +1 -1
- package/dist/components/input/Input.esm.js +69 -97
- package/dist/components/input/Input.esm.js.map +1 -1
- package/dist/components/input/Input.stories.d.ts +13 -22
- package/dist/components/input/Input.stories.d.ts.map +1 -1
- package/dist/components/input/Input.styles.cjs.js +1 -1
- package/dist/components/input/Input.styles.cjs.js.map +1 -1
- package/dist/components/input/Input.styles.esm.js +1 -1
- package/dist/components/input/Input.styles.esm.js.map +1 -1
- package/dist/components/input.js +1 -1
- package/dist/components/login-button/LoginButton.cjs.js.map +1 -1
- package/dist/components/login-button/LoginButton.stories.d.ts +4 -4
- package/dist/components/login-button/LoginButton.stories.d.ts.map +1 -1
- package/dist/components/login-button.js +1 -1
- package/dist/components/login-modal/LoginModal.cjs.js +1 -1
- package/dist/components/login-modal/LoginModal.cjs.js.map +1 -1
- package/dist/components/login-modal/LoginModal.esm.js +1 -1
- package/dist/components/login-modal/LoginModal.esm.js.map +1 -1
- package/dist/components/login-modal/LoginModal.stories.d.ts +13 -5
- package/dist/components/login-modal/LoginModal.stories.d.ts.map +1 -1
- package/dist/components/login-modal.js +1 -1
- package/dist/components/logout-button/LogoutButton.cjs.js.map +1 -1
- package/dist/components/logout-button/LogoutButton.stories.d.ts +4 -4
- package/dist/components/logout-button/LogoutButton.stories.d.ts.map +1 -1
- package/dist/components/logout-button.js +1 -1
- package/dist/components/menu/Menu.cjs.js +1 -1
- package/dist/components/menu/Menu.cjs.js.map +1 -1
- package/dist/components/menu/Menu.d.ts.map +1 -1
- package/dist/components/menu/Menu.esm.js +1 -1
- package/dist/components/menu/Menu.esm.js.map +1 -1
- package/dist/components/menu/Menu.stories.d.ts +3 -4
- package/dist/components/menu/Menu.stories.d.ts.map +1 -1
- package/dist/components/menu/Menu.test.d.ts +1 -0
- package/dist/components/menu/Menu.test.d.ts.map +1 -0
- package/dist/components/menu-item/MenuItem.cjs.js.map +1 -1
- package/dist/components/menu-item.js +1 -1
- package/dist/components/menu.js +1 -1
- package/dist/components/photo-capture/PhotoCapture.cjs.js +6 -0
- package/dist/components/photo-capture/PhotoCapture.cjs.js.map +1 -0
- package/dist/components/photo-capture/PhotoCapture.d.ts +20 -0
- package/dist/components/photo-capture/PhotoCapture.d.ts.map +1 -0
- package/dist/components/photo-capture/PhotoCapture.esm.js +404 -0
- package/dist/components/photo-capture/PhotoCapture.esm.js.map +1 -0
- package/dist/components/photo-capture/PhotoCapture.stories.d.ts +16 -0
- package/dist/components/photo-capture/PhotoCapture.stories.d.ts.map +1 -0
- package/dist/components/photo-capture/docs/photo-capture-sandbox/PhotoCaptureSandbox.d.ts +9 -0
- package/dist/components/photo-capture/docs/photo-capture-sandbox/PhotoCaptureSandbox.d.ts.map +1 -0
- package/dist/components/photo-capture/docs/photo-capture-sandbox/index.d.ts +4 -0
- package/dist/components/photo-capture/docs/photo-capture-sandbox/index.d.ts.map +1 -0
- package/dist/components/photo-capture/index.cjs.js +2 -1
- package/dist/components/photo-capture/index.cjs.js.map +1 -0
- package/dist/components/photo-capture/index.d.ts +4 -1
- package/dist/components/photo-capture/index.d.ts.map +1 -1
- package/dist/components/photo-capture/index.esm.js +7 -3
- package/dist/components/photo-capture/index.esm.js.map +1 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.cjs.js +24 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.cjs.js.map +1 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.d.ts +42 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.d.ts.map +1 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.esm.js +562 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.esm.js.map +1 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.styles.cjs.js +2 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.styles.cjs.js.map +1 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.styles.esm.js +7 -0
- package/dist/components/photo-capture-modal/PhotoCaptureModal.styles.esm.js.map +1 -0
- package/dist/components/photo-capture-modal/index.cjs.js +2 -0
- package/dist/components/photo-capture-modal/index.cjs.js.map +1 -0
- package/dist/components/photo-capture-modal/index.d.ts +4 -0
- package/dist/components/photo-capture-modal/index.d.ts.map +1 -0
- package/dist/components/photo-capture-modal/index.esm.js +7 -0
- package/dist/components/photo-capture-modal/index.esm.js.map +1 -0
- package/dist/components/photo-capture-modal.js +2 -0
- package/dist/components/photo-capture.js +2 -2
- package/dist/components/provider/Provider.cjs.js.map +1 -1
- package/dist/components/provider.js +1 -1
- package/dist/components/rdf-form/RDFForm.cjs.js +12 -0
- package/dist/components/rdf-form/RDFForm.cjs.js.map +1 -0
- package/dist/components/rdf-form/RDFForm.d.ts +17 -0
- package/dist/components/rdf-form/RDFForm.d.ts.map +1 -0
- package/dist/components/rdf-form/RDFForm.esm.js +344 -0
- package/dist/components/rdf-form/RDFForm.esm.js.map +1 -0
- package/dist/components/rdf-form/RDForm.stories.d.ts +20 -0
- package/dist/components/rdf-form/RDForm.stories.d.ts.map +1 -0
- package/dist/components/rdf-form/index.cjs.js +2 -0
- package/dist/components/rdf-form/index.cjs.js.map +1 -0
- package/dist/components/rdf-form/index.d.ts +4 -0
- package/dist/components/rdf-form/index.d.ts.map +1 -0
- package/dist/components/rdf-form/index.esm.js +7 -0
- package/dist/components/rdf-form/index.esm.js.map +1 -0
- package/dist/components/rdf-form.js +2 -0
- package/dist/components/rdf-input/RDFInput.cjs.js +11 -0
- package/dist/components/rdf-input/RDFInput.cjs.js.map +1 -0
- package/dist/components/rdf-input/RDFInput.d.ts +24 -0
- package/dist/components/rdf-input/RDFInput.d.ts.map +1 -0
- package/dist/components/rdf-input/RDFInput.esm.js +349 -0
- package/dist/components/rdf-input/RDFInput.esm.js.map +1 -0
- package/dist/components/rdf-input/index.cjs.js +2 -0
- package/dist/components/rdf-input/index.cjs.js.map +1 -0
- package/dist/components/rdf-input/index.d.ts +4 -0
- package/dist/components/rdf-input/index.d.ts.map +1 -0
- package/dist/components/rdf-input/index.esm.js +7 -0
- package/dist/components/rdf-input/index.esm.js.map +1 -0
- package/dist/components/rdf-input.js +2 -0
- package/dist/components/select/Select.cjs.js +3 -3
- package/dist/components/select/Select.cjs.js.map +1 -1
- package/dist/components/select/Select.d.ts +3 -10
- package/dist/components/select/Select.d.ts.map +1 -1
- package/dist/components/select/Select.esm.js +52 -109
- package/dist/components/select/Select.esm.js.map +1 -1
- package/dist/components/select/Select.stories.d.ts +9 -13
- package/dist/components/select/Select.stories.d.ts.map +1 -1
- package/dist/components/select-option/SelectOption.cjs.js.map +1 -1
- package/dist/components/select-option.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/signup-button/SignupButton.cjs.js.map +1 -1
- package/dist/components/signup-button/SignupButton.stories.d.ts +4 -4
- package/dist/components/signup-button/SignupButton.stories.d.ts.map +1 -1
- package/dist/components/signup-button.js +1 -1
- package/dist/components/solid-emblem.js +1 -1
- package/dist/components.js +26 -24
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +12 -10
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +8 -9
- package/dist/lib/auth/SolidAuth.cjs.js +1 -1
- package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
- package/dist/lib/auth/SolidAuth.d.ts.map +1 -1
- package/dist/lib/auth/SolidAuth.esm.js +17 -16
- package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
- package/dist/lib/auth/context.cjs.js.map +1 -1
- package/dist/lib/components/decorators.cjs.js.map +1 -1
- package/dist/lib/components/decorators.esm.js.map +1 -1
- package/dist/lib/components/dialog-component/DialogComponent.cjs.js +2 -0
- package/dist/lib/components/dialog-component/DialogComponent.cjs.js.map +1 -0
- package/dist/lib/components/dialog-component/DialogComponent.d.ts +10 -0
- package/dist/lib/components/dialog-component/DialogComponent.d.ts.map +1 -0
- package/dist/lib/components/dialog-component/DialogComponent.esm.js +203 -0
- package/dist/lib/components/dialog-component/DialogComponent.esm.js.map +1 -0
- package/dist/lib/components/dialog-component/index.cjs.js +1 -0
- package/dist/lib/components/dialog-component/index.d.ts +4 -0
- package/dist/lib/components/dialog-component/index.d.ts.map +1 -0
- package/dist/lib/components/dialog-component/index.esm.js +2 -0
- package/dist/lib/components/form-control-component/FormControlComponent.cjs.js +2 -0
- package/dist/lib/components/form-control-component/FormControlComponent.cjs.js.map +1 -0
- package/dist/lib/components/form-control-component/FormControlComponent.d.ts +15 -0
- package/dist/lib/components/form-control-component/FormControlComponent.d.ts.map +1 -0
- package/dist/lib/components/form-control-component/FormControlComponent.esm.js +271 -0
- package/dist/lib/components/form-control-component/FormControlComponent.esm.js.map +1 -0
- package/dist/lib/components/form-control-component/index.cjs.js +1 -0
- package/dist/lib/components/form-control-component/index.d.ts +4 -0
- package/dist/lib/components/form-control-component/index.d.ts.map +1 -0
- package/dist/lib/components/form-control-component/index.esm.js +2 -0
- package/dist/lib/components/ids.cjs.js.map +1 -1
- package/dist/lib/components/ids.esm.js.map +1 -1
- package/dist/lib/components/index.cjs.js +1 -1
- package/dist/lib/components/index.d.ts +3 -1
- package/dist/lib/components/index.d.ts.map +1 -1
- package/dist/lib/components/index.esm.js +8 -4
- package/dist/lib/components/traits/DialogTrait.cjs.js +1 -1
- package/dist/lib/components/traits/DialogTrait.cjs.js.map +1 -1
- package/dist/lib/components/traits/DialogTrait.d.ts +2 -1
- package/dist/lib/components/traits/DialogTrait.d.ts.map +1 -1
- package/dist/lib/components/traits/DialogTrait.esm.js +26 -6
- package/dist/lib/components/traits/DialogTrait.esm.js.map +1 -1
- package/dist/lib/components/traits/FormControlTrait.cjs.js +1 -1
- package/dist/lib/components/traits/FormControlTrait.cjs.js.map +1 -1
- package/dist/lib/components/traits/FormControlTrait.d.ts +4 -2
- package/dist/lib/components/traits/FormControlTrait.d.ts.map +1 -1
- package/dist/lib/components/traits/FormControlTrait.esm.js +28 -10
- package/dist/lib/components/traits/FormControlTrait.esm.js.map +1 -1
- package/dist/lib/components/web-component/WebComponent.cjs.js +1 -1
- package/dist/lib/components/web-component/WebComponent.cjs.js.map +1 -1
- package/dist/lib/components/web-component/WebComponent.d.ts +12 -1
- package/dist/lib/components/web-component/WebComponent.d.ts.map +1 -1
- package/dist/lib/components/web-component/WebComponent.esm.js +30 -7
- package/dist/lib/components/web-component/WebComponent.esm.js.map +1 -1
- package/dist/lib/components/web-component/WebComponent.styles.cjs.js +1 -1
- package/dist/lib/components/web-component/WebComponent.styles.esm.js +1 -1
- package/dist/lib/dialogs/Dialog.cjs.js +1 -1
- package/dist/lib/dialogs/Dialog.cjs.js.map +1 -1
- package/dist/lib/dialogs/Dialog.d.ts +4 -8
- package/dist/lib/dialogs/Dialog.d.ts.map +1 -1
- package/dist/lib/dialogs/Dialog.esm.js +1 -8
- package/dist/lib/dialogs/Dialog.esm.js.map +1 -1
- package/dist/lib/dialogs/context.cjs.js.map +1 -1
- package/dist/lib/dialogs/helpers.cjs.js +1 -1
- package/dist/lib/dialogs/helpers.cjs.js.map +1 -1
- package/dist/lib/dialogs/helpers.d.ts +7 -2
- package/dist/lib/dialogs/helpers.d.ts.map +1 -1
- package/dist/lib/dialogs/helpers.esm.js +5 -3
- package/dist/lib/dialogs/helpers.esm.js.map +1 -1
- package/dist/lib/forms/fieldParams.cjs.js +2 -0
- package/dist/lib/forms/fieldParams.cjs.js.map +1 -0
- package/dist/lib/forms/fieldParams.d.ts +21 -0
- package/dist/lib/forms/fieldParams.d.ts.map +1 -0
- package/dist/lib/forms/fieldParams.esm.js +74 -0
- package/dist/lib/forms/fieldParams.esm.js.map +1 -0
- package/dist/lib/forms/rdfFormsHelper.cjs.js +2 -0
- package/dist/lib/forms/rdfFormsHelper.cjs.js.map +1 -0
- package/dist/lib/forms/rdfFormsHelper.d.ts +16 -0
- package/dist/lib/forms/rdfFormsHelper.d.ts.map +1 -0
- package/dist/lib/forms/rdfFormsHelper.esm.js +34 -0
- package/dist/lib/forms/rdfFormsHelper.esm.js.map +1 -0
- package/dist/lib/forms/store/NoopStore.cjs.js +2 -0
- package/dist/lib/forms/store/NoopStore.cjs.js.map +1 -0
- package/dist/lib/forms/store/NoopStore.d.ts +6 -0
- package/dist/lib/forms/store/NoopStore.d.ts.map +1 -0
- package/dist/lib/forms/store/NoopStore.esm.js +10 -0
- package/dist/lib/forms/store/NoopStore.esm.js.map +1 -0
- package/dist/lib/forms/store/StoreContext.cjs.js +2 -0
- package/dist/lib/forms/store/StoreContext.cjs.js.map +1 -0
- package/dist/lib/forms/store/StoreContext.d.ts +10 -0
- package/dist/lib/forms/store/StoreContext.d.ts.map +1 -0
- package/dist/lib/forms/store/StoreContext.esm.js +8 -0
- package/dist/lib/forms/store/StoreContext.esm.js.map +1 -0
- package/dist/lib/ns.cjs.js.map +1 -1
- package/dist/lib/pad.cjs.js +1 -1
- package/dist/lib/pad.cjs.js.map +1 -1
- package/dist/lib/pad.esm.js +6 -5
- package/dist/lib/pad.esm.js.map +1 -1
- package/dist/lib/participation.cjs.js +1 -1
- package/dist/lib/participation.cjs.js.map +1 -1
- package/dist/lib/participation.esm.js +4 -2
- package/dist/lib/participation.esm.js.map +1 -1
- package/dist/lib/preferences.cjs.js +1 -1
- package/dist/lib/preferences.cjs.js.map +1 -1
- package/dist/lib/preferences.esm.js +9 -7
- package/dist/lib/preferences.esm.js.map +1 -1
- package/dist/lib/table.cjs.js +2 -2
- package/dist/lib/table.cjs.js.map +1 -1
- package/dist/lib/table.esm.js +2 -2
- package/dist/lib/table.esm.js.map +1 -1
- package/dist/loader.js +8 -9
- package/dist/login/login.cjs.js.map +1 -1
- package/dist/media/media-capture.esm.js +2 -1
- package/dist/media/media-capture.esm.js.map +1 -1
- package/dist/solid-ui.js +162 -467
- package/dist/solid-ui.min.js +162 -467
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/storybook/components/StorybookProvider.d.ts +1 -0
- package/dist/storybook/components/StorybookProvider.d.ts.map +1 -1
- package/dist/storybook/helpers.d.ts +2 -6
- package/dist/storybook/helpers.d.ts.map +1 -1
- package/dist/storybook/store/StorybookStore.d.ts +6 -0
- package/dist/storybook/store/StorybookStore.d.ts.map +1 -0
- package/dist/utils/headerFooterHelpers.cjs.js +1 -1
- package/dist/utils/headerFooterHelpers.cjs.js.map +1 -1
- package/dist/utils/headerFooterHelpers.esm.js +2 -1
- package/dist/utils/headerFooterHelpers.esm.js.map +1 -1
- package/dist/utils/index.cjs.js +1 -1
- package/dist/utils/index.cjs.js.map +1 -1
- package/dist/utils/index.esm.js +1 -1
- package/dist/utils/index.esm.js.map +1 -1
- package/dist/utils/keyHelpers/accessData.cjs.js +1 -1
- package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
- package/dist/utils/keyHelpers/accessData.d.ts +3 -3
- package/dist/utils/keyHelpers/accessData.d.ts.map +1 -1
- package/dist/utils/keyHelpers/accessData.esm.js +2 -1
- package/dist/utils/keyHelpers/accessData.esm.js.map +1 -1
- package/dist/utils/keyHelpers/otherHelpers.d.ts +1 -1
- package/dist/utils/keyHelpers/otherHelpers.d.ts.map +1 -1
- package/dist/widgets/buttons.cjs.js +2 -2
- package/dist/widgets/buttons.cjs.js.map +1 -1
- package/dist/widgets/buttons.esm.js +10 -5
- package/dist/widgets/buttons.esm.js.map +1 -1
- package/dist/widgets/dragAndDrop.cjs.js +1 -1
- package/dist/widgets/dragAndDrop.cjs.js.map +1 -1
- package/dist/widgets/dragAndDrop.esm.js +1 -1
- package/dist/widgets/dragAndDrop.esm.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js +25 -18
- package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/publicData.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/publicData.d.ts +3 -3
- package/dist/widgets/forms/autocomplete/publicData.d.ts.map +1 -1
- package/dist/widgets/forms/autocomplete/publicData.esm.js +6 -4
- package/dist/widgets/forms/autocomplete/publicData.esm.js.map +1 -1
- package/dist/widgets/forms/basic.cjs.js +1 -1
- package/dist/widgets/forms/basic.cjs.js.map +1 -1
- package/dist/widgets/forms/basic.esm.js +27 -25
- package/dist/widgets/forms/basic.esm.js.map +1 -1
- package/dist/widgets/forms/formStyle.cjs.js +1 -1
- package/dist/widgets/forms/formStyle.cjs.js.map +1 -1
- package/dist/widgets/forms/formStyle.esm.js +4 -4
- package/dist/widgets/forms/formStyle.esm.js.map +1 -1
- package/dist/widgets/forms.cjs.js +2 -2
- package/dist/widgets/forms.cjs.js.map +1 -1
- package/dist/widgets/forms.esm.js +10 -8
- package/dist/widgets/forms.esm.js.map +1 -1
- package/dist/widgets/multiSelect.cjs.js +1 -1
- package/dist/widgets/multiSelect.cjs.js.map +1 -1
- package/dist/widgets/multiSelect.esm.js +2 -1
- package/dist/widgets/multiSelect.esm.js.map +1 -1
- package/dist/widgets/peoplePicker.cjs.js.map +1 -1
- package/package.json +4 -4
- package/dist/chunks/auth-ClVI18ss.js.map +0 -1
- package/dist/chunks/chunk.7MPIABXH-CEYdxYyt.js.map +0 -1
- package/dist/chunks/close-dialog-DfAh83bX.js +0 -14
- package/dist/chunks/close-dialog-DfAh83bX.js.map +0 -1
- package/dist/chunks/combobox-DrT0Nb-A.js.map +0 -1
- package/dist/chunks/components-PQfnwrHI.js +0 -107
- package/dist/chunks/components-PQfnwrHI.js.map +0 -1
- package/dist/chunks/context-B_xwK-Y_.js +0 -22
- package/dist/chunks/context-B_xwK-Y_.js.map +0 -1
- package/dist/chunks/decorators-BqWyWiL9.js +0 -50
- package/dist/chunks/decorators-BqWyWiL9.js.map +0 -1
- package/dist/chunks/dialog-kyHgc-uy.js.map +0 -1
- package/dist/chunks/dialogs-root-dPGfuzSZ.js.map +0 -1
- package/dist/chunks/footer-BLSjn5ur.js +0 -144
- package/dist/chunks/footer-BLSjn5ur.js.map +0 -1
- package/dist/chunks/headerFooterHelpers-CPd5d20q.js +0 -52
- package/dist/chunks/headerFooterHelpers-CPd5d20q.js.map +0 -1
- package/dist/chunks/input-BjCX2bFe.js.map +0 -1
- package/dist/chunks/lit-C4H1jI4q.js +0 -527
- package/dist/chunks/lit-C4H1jI4q.js.map +0 -1
- package/dist/chunks/menu-1PG19fCC.js.map +0 -1
- package/dist/chunks/photo-capture-DzK6wZF4.js +0 -624
- package/dist/chunks/photo-capture-DzK6wZF4.js.map +0 -1
- package/dist/chunks/select-OM-SgY4K.js.map +0 -1
- package/dist/chunks/solid-logic.esm-BrMdCG2_.js.map +0 -1
- package/dist/chunks/src-DJOb1wMf.js.map +0 -1
- package/dist/components/footer/index.cjs.js +0 -1
- package/dist/components/footer/index.d.ts +0 -2
- package/dist/components/footer/index.d.ts.map +0 -1
- package/dist/components/footer/index.esm.js +0 -3
- package/dist/components/footer.js +0 -2
- package/dist/v2/components/layout/footer/Footer.cjs.js +0 -73
- package/dist/v2/components/layout/footer/Footer.cjs.js.map +0 -1
- package/dist/v2/components/layout/footer/Footer.d.ts +0 -60
- package/dist/v2/components/layout/footer/Footer.d.ts.map +0 -1
- package/dist/v2/components/layout/footer/Footer.esm.js +0 -143
- package/dist/v2/components/layout/footer/Footer.esm.js.map +0 -1
- package/dist/v2/components/layout/footer/Footer.test.d.ts +0 -1
- package/dist/v2/components/layout/footer/Footer.test.d.ts.map +0 -1
- package/dist/v2/components/layout/footer/index.cjs.js +0 -2
- package/dist/v2/components/layout/footer/index.cjs.js.map +0 -1
- package/dist/v2/components/layout/footer/index.d.ts +0 -3
- package/dist/v2/components/layout/footer/index.d.ts.map +0 -1
- package/dist/v2/components/layout/footer/index.esm.js +0 -8
- package/dist/v2/components/layout/footer/index.esm.js.map +0 -1
- package/dist/v2/components/media/photoCapture/PhotoCapture.cjs.js +0 -281
- package/dist/v2/components/media/photoCapture/PhotoCapture.cjs.js.map +0 -1
- package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts +0 -200
- package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts.map +0 -1
- package/dist/v2/components/media/photoCapture/PhotoCapture.esm.js +0 -623
- package/dist/v2/components/media/photoCapture/PhotoCapture.esm.js.map +0 -1
- package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts +0 -1
- package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts.map +0 -1
- package/dist/v2/components/media/photoCapture/index.cjs.js +0 -2
- package/dist/v2/components/media/photoCapture/index.cjs.js.map +0 -1
- package/dist/v2/components/media/photoCapture/index.d.ts +0 -3
- package/dist/v2/components/media/photoCapture/index.d.ts.map +0 -1
- package/dist/v2/components/media/photoCapture/index.esm.js +0 -8
- package/dist/v2/components/media/photoCapture/index.esm.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebComponent.cjs.js","names":[],"sources":["../../../../src/lib/components/web-component/WebComponent.ts"],"sourcesContent":["import { html, LitElement, type CSSResultGroup, type PropertyValues } from 'lit'\nimport type { WebComponentTrait, WebComponentTraitMethodKey } from '@/lib/components/traits/WebComponentTrait'\n\nimport styles from './WebComponent.styles.css'\n\nexport default abstract class WebComponent extends LitElement {\n static states?: Record<string, Function>\n\n protected static finalizeStyles (componentStyles?: CSSResultGroup) {\n const elementStyles = super.finalizeStyles(componentStyles)\n\n return [styles, ...elementStyles]\n }\n\n protected internals?: ElementInternals\n protected globalListeners: [type: string, listener: EventListener][] = []\n protected traits: WebComponentTrait[] = []\n\n disconnectedCallback (): void {\n super.disconnectedCallback()\n\n for (const [type, listener] of this.globalListeners) {\n window.removeEventListener(type, listener)\n }\n\n this.globalListeners = []\n }\n\n protected addTrait<T extends WebComponentTrait>(trait: T): T {\n this.traits.push(trait)\n\n return trait\n }\n\n protected firstUpdated () {\n this.forwardMethodCall('firstUpdated')\n }\n\n protected updated (changedProperties: Map<PropertyKey, unknown>) {\n this.forwardMethodCall('updated', changedProperties)\n }\n\n protected formResetCallback () {\n this.forwardMethodCall('formResetCallback')\n }\n\n protected willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n\n const states = this.static().states\n\n if (!states) {\n return\n }\n\n for (const [state, condition] of Object.entries(states)) {\n // FIXME when browser support is good enough, use the internals API instead with :state() selectors\n this.toggleAttribute(`data-state-${state}`, !!condition(this))\n }\n }\n\n protected addGlobalEventListener <T extends keyof WindowEventMap>(type: T, listener: (this: Window, ev: WindowEventMap[T]) => any) {\n this.globalListeners.push([type, listener as EventListener])\n\n window.addEventListener(type, listener)\n }\n\n protected render () {\n return html`<slot></slot>`\n }\n\n protected getInternals (): ElementInternals {\n this.internals ??= this.attachInternals()\n\n return this.internals\n }\n\n private static (): typeof WebComponent {\n return this.constructor as typeof WebComponent\n }\n\n private forwardMethodCall<T extends WebComponentTraitMethodKey>(method: T, ...args: Parameters<Required<WebComponentTrait>[T]>) {\n for (const trait of this.traits) {\n (trait[method] as Function | undefined)?.(...args)\n }\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"WebComponent.cjs.js","names":["html","LitElement","styles","metadataMarker","Symbol","WebComponent","constructor","args","_defineProperty","finalizeStyles","componentStyles","elementStyles","disconnectedCallback","type","listener","globalListeners","window","removeEventListener","addTrait","trait","traits","push","firstUpdated","forwardMethodCall","updated","changedProperties","formResetCallback","willUpdate","states","static","state","condition","Object","entries","toggleAttribute","addGlobalEventListener","addEventListener","render","getInternals","internals","attachInternals","method"],"sources":["../../../../src/lib/components/web-component/WebComponent.ts"],"sourcesContent":["import { html, LitElement, type CSSResultGroup, type PropertyValues } from 'lit'\nimport type { WebComponentTrait, WebComponentTraitMethodKey } from '@/lib/components/traits/WebComponentTrait'\n\nimport styles from './WebComponent.styles.css'\n\nconst metadataMarker = Symbol('WebComponentMetadata')\n\nexport type GetWebComponentMetadata<T> = T extends { [metadataMarker]?: infer TMetadata } ? TMetadata : { nope: keyof T }\nexport type WebComponentConstructor<T extends WebComponent = WebComponent> = { new (): T }\n\nexport default abstract class WebComponent<T extends Record<string, unknown> = Record<string, unknown>> extends LitElement {\n static states?: Record<string, Function>\n\n protected static finalizeStyles (componentStyles?: CSSResultGroup) {\n const elementStyles = super.finalizeStyles(componentStyles)\n\n return [styles, ...elementStyles]\n }\n\n [metadataMarker]?: T\n\n protected internals?: ElementInternals\n protected globalListeners: [type: string, listener: EventListener][] = []\n protected traits: WebComponentTrait[] = []\n\n disconnectedCallback (): void {\n super.disconnectedCallback()\n\n for (const [type, listener] of this.globalListeners) {\n window.removeEventListener(type, listener)\n }\n\n this.globalListeners = []\n }\n\n protected addTrait<T extends WebComponentTrait>(trait: T): T {\n this.traits.push(trait)\n\n return trait\n }\n\n protected firstUpdated () {\n this.forwardMethodCall('firstUpdated')\n }\n\n protected updated (changedProperties: Map<PropertyKey, unknown>) {\n this.forwardMethodCall('updated', changedProperties)\n }\n\n protected formResetCallback () {\n this.forwardMethodCall('formResetCallback')\n }\n\n protected willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n\n const states = this.static().states\n\n if (!states) {\n return\n }\n\n for (const [state, condition] of Object.entries(states)) {\n // FIXME when browser support is good enough, use the internals API instead with :state() selectors\n this.toggleAttribute(`data-state-${state}`, !!condition(this))\n }\n }\n\n protected addGlobalEventListener <T extends keyof WindowEventMap>(type: T, listener: (this: Window, ev: WindowEventMap[T]) => any) {\n this.globalListeners.push([type, listener as EventListener])\n\n window.addEventListener(type, listener)\n }\n\n protected render () {\n return html`<slot></slot>`\n }\n\n protected getInternals (): ElementInternals {\n this.internals ??= this.attachInternals()\n\n return this.internals\n }\n\n private static (): typeof WebComponent {\n return this.constructor as typeof WebComponent\n }\n\n private forwardMethodCall<T extends WebComponentTraitMethodKey>(method: T, ...args: Parameters<Required<WebComponentTrait>[T]>) {\n for (const trait of this.traits) {\n (trait[method] as Function | undefined)?.(...args)\n }\n }\n}\n"],"mappings":"qgBAKA,IAAMG,EAAiBC,OAAO,sBAAsB,EAKtBC,EAA9B,cAAgHJ,EAAAA,UAAW,CAAAK,YAAA,GAAAC,EAAA,CAAA,MAAA,GAAAA,CAAA,EAAAC,EAAA,KASxHL,EAAc,IAAA,EAAA,EAAAK,EAAA,KAAA,YAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,kBAGwD,CAAA,CAAE,EAAAA,EAAA,KAAA,SACjC,CAAA,CAAE,CAAA,CAV1C,OAAiBC,eAAgBC,EAAkC,CACjE,IAAMC,EAAgB,MAAMF,eAAeC,CAAe,EAE1D,MAAO,CAACR,EAAAA,QAAQ,GAAGS,CAAa,CAClC,CAQAC,sBAA8B,CAC5B,MAAMA,qBAAqB,EAE3B,IAAK,GAAM,CAACC,EAAMC,KAAa,KAAKC,gBAClCC,OAAOC,oBAAoBJ,EAAMC,CAAQ,EAG3C,KAAKC,gBAAkB,CAAA,CACzB,CAEUG,SAAsCC,EAAa,CAG3D,OAFA,KAAKC,OAAOC,KAAKF,CAAK,EAEfA,CACT,CAEUG,cAAgB,CACxB,KAAKC,kBAAkB,cAAc,CACvC,CAEUC,QAASC,EAA8C,CAC/D,KAAKF,kBAAkB,UAAWE,CAAiB,CACrD,CAEUC,mBAAqB,CAC7B,KAAKH,kBAAkB,mBAAmB,CAC5C,CAEUI,WAAYF,EAAyC,CAC7D,MAAME,WAAWF,CAAiB,EAElC,IAAMG,EAAS,KAAKC,OAAO,CAAC,CAACD,OAExBA,KAIL,IAAK,GAAM,CAACE,EAAOC,KAAcC,OAAOC,QAAQL,CAAM,EAEpD,KAAKM,gBAAgB,cAAcJ,IAAS,CAAC,CAACC,EAAU,IAAI,CAAC,CAEjE,CAEUI,uBAAwDtB,EAASC,EAAwD,CACjI,KAAKC,gBAAgBM,KAAK,CAACR,EAAMC,CAAQ,CAAkB,EAE3DE,OAAOoB,iBAAiBvB,EAAMC,CAAQ,CACxC,CAEUuB,QAAU,CAClB,MAAOrC,GAAAA,IAAI,eACb,CAEUsC,cAAkC,CAG1C,MAFA,MAAKC,YAAc,KAAKC,gBAAgB,EAEjC,KAAKD,SACd,CAEQV,QAA+B,CACrC,OAAO,KAAKvB,WACd,CAEQiB,kBAAwDkB,EAAW,GAAGlC,EAAkD,CAC9H,IAAK,IAAMY,KAAS,KAAKC,OACtBD,EAAMsB,EAAO,GAA4B,GAAGlC,CAAI,CAErD,CACF,EAACC,EAnF6BH,EAAY,SAAA,IAAA,EAAA"}
|
|
@@ -1,8 +1,18 @@
|
|
|
1
1
|
import { LitElement, CSSResultGroup, PropertyValues } from 'lit';
|
|
2
2
|
import { WebComponentTrait } from '../traits/WebComponentTrait';
|
|
3
|
-
|
|
3
|
+
declare const metadataMarker: unique symbol;
|
|
4
|
+
export type GetWebComponentMetadata<T> = T extends {
|
|
5
|
+
[metadataMarker]?: infer TMetadata;
|
|
6
|
+
} ? TMetadata : {
|
|
7
|
+
nope: keyof T;
|
|
8
|
+
};
|
|
9
|
+
export type WebComponentConstructor<T extends WebComponent = WebComponent> = {
|
|
10
|
+
new (): T;
|
|
11
|
+
};
|
|
12
|
+
export default abstract class WebComponent<T extends Record<string, unknown> = Record<string, unknown>> extends LitElement {
|
|
4
13
|
static states?: Record<string, Function>;
|
|
5
14
|
protected static finalizeStyles(componentStyles?: CSSResultGroup): import('lit').CSSResultOrNative[];
|
|
15
|
+
[metadataMarker]?: T;
|
|
6
16
|
protected internals?: ElementInternals;
|
|
7
17
|
protected globalListeners: [type: string, listener: EventListener][];
|
|
8
18
|
protected traits: WebComponentTrait[];
|
|
@@ -18,4 +28,5 @@ export default abstract class WebComponent extends LitElement {
|
|
|
18
28
|
private static;
|
|
19
29
|
private forwardMethodCall;
|
|
20
30
|
}
|
|
31
|
+
export {};
|
|
21
32
|
//# sourceMappingURL=WebComponent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebComponent.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/web-component/WebComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAA;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAA8B,MAAM,2CAA2C,CAAA;AAI9G,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,
|
|
1
|
+
{"version":3,"file":"WebComponent.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/web-component/WebComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAA;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAA8B,MAAM,2CAA2C,CAAA;AAI9G,QAAA,MAAM,cAAc,eAAiC,CAAA;AAErD,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,SAAS,CAAA;CAAE,GAAG,SAAS,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC,CAAA;CAAE,CAAA;AACzH,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI;IAAE,QAAQ,CAAC,CAAA;CAAE,CAAA;AAE1F,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,UAAU;IACxH,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAExC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAE,eAAe,CAAC,EAAE,cAAc;IAMjE,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAA;IAEpB,SAAS,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAA;IACtC,SAAS,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAK;IACzE,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAK;IAE1C,oBAAoB,IAAK,IAAI;IAU7B,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,iBAAiB,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;IAM5D,SAAS,CAAC,YAAY;IAItB,SAAS,CAAC,OAAO,CAAE,iBAAiB,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC;IAI/D,SAAS,CAAC,iBAAiB;IAI3B,SAAS,CAAC,UAAU,CAAE,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC;IAe7D,SAAS,CAAC,sBAAsB,CAAE,CAAC,SAAS,MAAM,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG;IAMjI,SAAS,CAAC,MAAM;IAIhB,SAAS,CAAC,YAAY,IAAK,gBAAgB;IAM3C,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,iBAAiB;CAK1B"}
|
|
@@ -1,14 +1,36 @@
|
|
|
1
1
|
import e from "./WebComponent.styles.esm.js";
|
|
2
2
|
import { LitElement as t, html as n } from "lit";
|
|
3
3
|
//#region src/lib/components/web-component/WebComponent.ts
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
function r(e, t, n) {
|
|
5
|
+
return (t = i(t)) in e ? Object.defineProperty(e, t, {
|
|
6
|
+
value: n,
|
|
7
|
+
enumerable: !0,
|
|
8
|
+
configurable: !0,
|
|
9
|
+
writable: !0
|
|
10
|
+
}) : e[t] = n, e;
|
|
11
|
+
}
|
|
12
|
+
function i(e) {
|
|
13
|
+
var t = a(e, "string");
|
|
14
|
+
return typeof t == "symbol" ? t : t + "";
|
|
15
|
+
}
|
|
16
|
+
function a(e, t) {
|
|
17
|
+
if (typeof e != "object" || !e) return e;
|
|
18
|
+
var n = e[Symbol.toPrimitive];
|
|
19
|
+
if (n !== void 0) {
|
|
20
|
+
var r = n.call(e, t || "default");
|
|
21
|
+
if (typeof r != "object") return r;
|
|
22
|
+
throw TypeError("@@toPrimitive must return a primitive value.");
|
|
23
|
+
}
|
|
24
|
+
return (t === "string" ? String : Number)(e);
|
|
25
|
+
}
|
|
26
|
+
var o = Symbol("WebComponentMetadata"), s = class extends t {
|
|
27
|
+
constructor(...e) {
|
|
28
|
+
super(...e), r(this, o, void 0), r(this, "internals", void 0), r(this, "globalListeners", []), r(this, "traits", []);
|
|
29
|
+
}
|
|
6
30
|
static finalizeStyles(t) {
|
|
7
|
-
|
|
31
|
+
let n = super.finalizeStyles(t);
|
|
32
|
+
return [e, ...n];
|
|
8
33
|
}
|
|
9
|
-
internals;
|
|
10
|
-
globalListeners = [];
|
|
11
|
-
traits = [];
|
|
12
34
|
disconnectedCallback() {
|
|
13
35
|
super.disconnectedCallback();
|
|
14
36
|
for (let [e, t] of this.globalListeners) window.removeEventListener(e, t);
|
|
@@ -47,7 +69,8 @@ var r = class extends t {
|
|
|
47
69
|
for (let n of this.traits) n[e]?.(...t);
|
|
48
70
|
}
|
|
49
71
|
};
|
|
72
|
+
r(s, "states", void 0);
|
|
50
73
|
//#endregion
|
|
51
|
-
export {
|
|
74
|
+
export { s as default };
|
|
52
75
|
|
|
53
76
|
//# sourceMappingURL=WebComponent.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebComponent.esm.js","names":[],"sources":["../../../../src/lib/components/web-component/WebComponent.ts"],"sourcesContent":["import { html, LitElement, type CSSResultGroup, type PropertyValues } from 'lit'\nimport type { WebComponentTrait, WebComponentTraitMethodKey } from '@/lib/components/traits/WebComponentTrait'\n\nimport styles from './WebComponent.styles.css'\n\nexport default abstract class WebComponent extends LitElement {\n static states?: Record<string, Function>\n\n protected static finalizeStyles (componentStyles?: CSSResultGroup) {\n const elementStyles = super.finalizeStyles(componentStyles)\n\n return [styles, ...elementStyles]\n }\n\n protected internals?: ElementInternals\n protected globalListeners: [type: string, listener: EventListener][] = []\n protected traits: WebComponentTrait[] = []\n\n disconnectedCallback (): void {\n super.disconnectedCallback()\n\n for (const [type, listener] of this.globalListeners) {\n window.removeEventListener(type, listener)\n }\n\n this.globalListeners = []\n }\n\n protected addTrait<T extends WebComponentTrait>(trait: T): T {\n this.traits.push(trait)\n\n return trait\n }\n\n protected firstUpdated () {\n this.forwardMethodCall('firstUpdated')\n }\n\n protected updated (changedProperties: Map<PropertyKey, unknown>) {\n this.forwardMethodCall('updated', changedProperties)\n }\n\n protected formResetCallback () {\n this.forwardMethodCall('formResetCallback')\n }\n\n protected willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n\n const states = this.static().states\n\n if (!states) {\n return\n }\n\n for (const [state, condition] of Object.entries(states)) {\n // FIXME when browser support is good enough, use the internals API instead with :state() selectors\n this.toggleAttribute(`data-state-${state}`, !!condition(this))\n }\n }\n\n protected addGlobalEventListener <T extends keyof WindowEventMap>(type: T, listener: (this: Window, ev: WindowEventMap[T]) => any) {\n this.globalListeners.push([type, listener as EventListener])\n\n window.addEventListener(type, listener)\n }\n\n protected render () {\n return html`<slot></slot>`\n }\n\n protected getInternals (): ElementInternals {\n this.internals ??= this.attachInternals()\n\n return this.internals\n }\n\n private static (): typeof WebComponent {\n return this.constructor as typeof WebComponent\n }\n\n private forwardMethodCall<T extends WebComponentTraitMethodKey>(method: T, ...args: Parameters<Required<WebComponentTrait>[T]>) {\n for (const trait of this.traits) {\n (trait[method] as Function | undefined)?.(...args)\n }\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"WebComponent.esm.js","names":["html","LitElement","styles","metadataMarker","Symbol","WebComponent","constructor","args","_defineProperty","finalizeStyles","componentStyles","elementStyles","disconnectedCallback","type","listener","globalListeners","window","removeEventListener","addTrait","trait","traits","push","firstUpdated","forwardMethodCall","updated","changedProperties","formResetCallback","willUpdate","states","static","state","condition","Object","entries","toggleAttribute","addGlobalEventListener","addEventListener","render","getInternals","internals","attachInternals","method"],"sources":["../../../../src/lib/components/web-component/WebComponent.ts"],"sourcesContent":["import { html, LitElement, type CSSResultGroup, type PropertyValues } from 'lit'\nimport type { WebComponentTrait, WebComponentTraitMethodKey } from '@/lib/components/traits/WebComponentTrait'\n\nimport styles from './WebComponent.styles.css'\n\nconst metadataMarker = Symbol('WebComponentMetadata')\n\nexport type GetWebComponentMetadata<T> = T extends { [metadataMarker]?: infer TMetadata } ? TMetadata : { nope: keyof T }\nexport type WebComponentConstructor<T extends WebComponent = WebComponent> = { new (): T }\n\nexport default abstract class WebComponent<T extends Record<string, unknown> = Record<string, unknown>> extends LitElement {\n static states?: Record<string, Function>\n\n protected static finalizeStyles (componentStyles?: CSSResultGroup) {\n const elementStyles = super.finalizeStyles(componentStyles)\n\n return [styles, ...elementStyles]\n }\n\n [metadataMarker]?: T\n\n protected internals?: ElementInternals\n protected globalListeners: [type: string, listener: EventListener][] = []\n protected traits: WebComponentTrait[] = []\n\n disconnectedCallback (): void {\n super.disconnectedCallback()\n\n for (const [type, listener] of this.globalListeners) {\n window.removeEventListener(type, listener)\n }\n\n this.globalListeners = []\n }\n\n protected addTrait<T extends WebComponentTrait>(trait: T): T {\n this.traits.push(trait)\n\n return trait\n }\n\n protected firstUpdated () {\n this.forwardMethodCall('firstUpdated')\n }\n\n protected updated (changedProperties: Map<PropertyKey, unknown>) {\n this.forwardMethodCall('updated', changedProperties)\n }\n\n protected formResetCallback () {\n this.forwardMethodCall('formResetCallback')\n }\n\n protected willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n\n const states = this.static().states\n\n if (!states) {\n return\n }\n\n for (const [state, condition] of Object.entries(states)) {\n // FIXME when browser support is good enough, use the internals API instead with :state() selectors\n this.toggleAttribute(`data-state-${state}`, !!condition(this))\n }\n }\n\n protected addGlobalEventListener <T extends keyof WindowEventMap>(type: T, listener: (this: Window, ev: WindowEventMap[T]) => any) {\n this.globalListeners.push([type, listener as EventListener])\n\n window.addEventListener(type, listener)\n }\n\n protected render () {\n return html`<slot></slot>`\n }\n\n protected getInternals (): ElementInternals {\n this.internals ??= this.attachInternals()\n\n return this.internals\n }\n\n private static (): typeof WebComponent {\n return this.constructor as typeof WebComponent\n }\n\n private forwardMethodCall<T extends WebComponentTraitMethodKey>(method: T, ...args: Parameters<Required<WebComponentTrait>[T]>) {\n for (const trait of this.traits) {\n (trait[method] as Function | undefined)?.(...args)\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMG,IAAiBC,OAAO,sBAAsB,GAKtBC,IAA9B,cAAgHJ,EAAW;CAAAK,YAAA,GAAAC,GAAA;EAYhDC,AAZgD,MAAA,GAAAD,CAAA,GAAAC,EAAA,MASxHL,GAAc,KAAA,CAAA,GAAAK,EAAA,MAAA,aAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,mBAGwD,CAAA,CAAE,GAAAA,EAAA,MAAA,UACjC,CAAA,CAAE;CAAA;CAV1C,OAAiBC,eAAgBC,GAAkC;EACjE,IAAMC,IAAgB,MAAMF,eAAeC,CAAe;EAE1D,OAAO,CAACR,GAAQ,GAAGS,CAAa;CAClC;CAQAC,uBAA8B;EAC5B,MAAMA,qBAAqB;EAE3B,KAAK,IAAM,CAACC,GAAMC,MAAa,KAAKC,iBAClCC,OAAOC,oBAAoBJ,GAAMC,CAAQ;EAG3C,KAAKC,kBAAkB,CAAA;CACzB;CAEUG,SAAsCC,GAAa;EAG3D,OAFA,KAAKC,OAAOC,KAAKF,CAAK,GAEfA;CACT;CAEUG,eAAgB;EACxB,KAAKC,kBAAkB,cAAc;CACvC;CAEUC,QAASC,GAA8C;EAC/D,KAAKF,kBAAkB,WAAWE,CAAiB;CACrD;CAEUC,oBAAqB;EAC7B,KAAKH,kBAAkB,mBAAmB;CAC5C;CAEUI,WAAYF,GAAyC;EAC7D,MAAME,WAAWF,CAAiB;EAElC,IAAMG,IAAS,KAAKC,OAAO,CAAC,CAACD;EAExBA,OAIL,KAAK,IAAM,CAACE,GAAOC,MAAcC,OAAOC,QAAQL,CAAM,GAEpD,KAAKM,gBAAgB,cAAcJ,KAAS,CAAC,CAACC,EAAU,IAAI,CAAC;CAEjE;CAEUI,uBAAwDtB,GAASC,GAAwD;EAGjIE,AAFA,KAAKD,gBAAgBM,KAAK,CAACR,GAAMC,CAAQ,CAAkB,GAE3DE,OAAOoB,iBAAiBvB,GAAMC,CAAQ;CACxC;CAEUuB,SAAU;EAClB,OAAOrC,CAAI;CACb;CAEUsC,eAAkC;EAG1C,OAFA,KAAKC,cAAc,KAAKC,gBAAgB,GAEjC,KAAKD;CACd;CAEQV,SAA+B;EACrC,OAAO,KAAKvB;CACd;CAEQiB,kBAAwDkB,GAAW,GAAGlC,GAAkD;EAC9H,KAAK,IAAMY,KAAS,KAAKC,QACtBD,EAAMsB,EAAO,GAA4B,GAAGlC,CAAI;CAErD;AACF;AAACC,EAnF6BH,GAAY,UAAA,KAAA,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e=require("lit").css`/*! tailwindcss v4.3.
|
|
1
|
+
var e=require("lit").css`/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */\n*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid}::file-selector-button{box-sizing:border-box;border:0 solid}a,abbr,address,area,article,aside,audio,b,base,bdi,bdo,blockquote,body,br,button,canvas,caption,cite,code,col,colgroup,data,datalist,dd,del,details,dfn,dialog,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,i,iframe,img,input,ins,kbd,label,legend,li,link,main,map,mark,menu,meta,meter,nav,noscript,object,ol,optgroup,option,output,p,picture,pre,progress,q,rp,rt,ruby,s,samp,script,search,section,select,slot,small,source,span,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,u,ul,var,video,wbr,:after,:before,::backdrop{margin:0;padding:0}::file-selector-button{margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}`;exports.default=e;
|
|
2
2
|
//# sourceMappingURL=WebComponent.styles.cjs.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { css as e } from "lit";
|
|
2
2
|
//#region src/lib/components/web-component/WebComponent.styles.css
|
|
3
|
-
var t = e`/*! tailwindcss v4.3.
|
|
3
|
+
var t = e`/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */\n*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid}::file-selector-button{box-sizing:border-box;border:0 solid}a,abbr,address,area,article,aside,audio,b,base,bdi,bdo,blockquote,body,br,button,canvas,caption,cite,code,col,colgroup,data,datalist,dd,del,details,dfn,dialog,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,i,iframe,img,input,ins,kbd,label,legend,li,link,main,map,mark,menu,meta,meter,nav,noscript,object,ol,optgroup,option,output,p,picture,pre,progress,q,rp,rt,ruby,s,samp,script,search,section,select,slot,small,source,span,strong,style,sub,summary,sup,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,u,ul,var,video,wbr,:after,:before,::backdrop{margin:0;padding:0}::file-selector-button{margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}`;
|
|
4
4
|
//#endregion
|
|
5
5
|
export { t as default };
|
|
6
6
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require("../components/ids.cjs.js");require("../components/index.cjs.js");var t=class{id;
|
|
1
|
+
const e=require("../components/ids.cjs.js");require("../components/index.cjs.js");var t=class{id;element;config;constructor(t,n={}){this.id=e.generateId(),this.config=n,this.element=t}closed(e){this.config.onClose?.(e)}};exports.default=t;
|
|
2
2
|
//# sourceMappingURL=Dialog.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.cjs.js","names":[],"sources":["../../../src/lib/dialogs/Dialog.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"Dialog.cjs.js","names":[],"sources":["../../../src/lib/dialogs/Dialog.ts"],"sourcesContent":["import { generateId } from '@/lib/components'\n\nexport interface DialogConfig<T = unknown> {\n onClose?(data?: T): void\n}\n\nexport default class Dialog {\n public readonly id: string\n public readonly element: HTMLElement\n public readonly config: DialogConfig\n\n constructor (element: HTMLElement, config: DialogConfig = {}) {\n this.id = generateId()\n this.config = config\n this.element = element\n }\n\n closed (data?: unknown) {\n this.config.onClose?.(data)\n }\n}\n"],"mappings":"kFAMA,IAAqB,EAArB,KAA4B,CAC1B,GACA,QACA,OAEA,YAAa,EAAsB,EAAuB,CAAC,EAAG,CAC5D,KAAK,GAAK,EAAA,WAAW,EACrB,KAAK,OAAS,EACd,KAAK,QAAU,CACjB,CAEA,OAAQ,EAAgB,CACtB,KAAK,OAAO,UAAU,CAAI,CAC5B,CACF"}
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
onClose?(data?: unknown): void;
|
|
1
|
+
export interface DialogConfig<T = unknown> {
|
|
2
|
+
onClose?(data?: T): void;
|
|
4
3
|
}
|
|
5
4
|
export default class Dialog {
|
|
6
5
|
readonly id: string;
|
|
7
|
-
readonly
|
|
8
|
-
readonly element: Promise<HTMLElement>;
|
|
6
|
+
readonly element: HTMLElement;
|
|
9
7
|
readonly config: DialogConfig;
|
|
10
|
-
|
|
11
|
-
constructor(template: TemplateResult, config?: DialogConfig);
|
|
12
|
-
setElement(element: HTMLElement): void;
|
|
8
|
+
constructor(element: HTMLElement, config?: DialogConfig);
|
|
13
9
|
closed(data?: unknown): void;
|
|
14
10
|
}
|
|
15
11
|
//# sourceMappingURL=Dialog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/lib/dialogs/Dialog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/lib/dialogs/Dialog.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,CAAC,OAAO,OAAO,MAAM;IACzB,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,OAAO,EAAE,WAAW,CAAA;IACpC,SAAgB,MAAM,EAAE,YAAY,CAAA;gBAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,GAAE,YAAiB;IAM5D,MAAM,CAAE,IAAI,CAAC,EAAE,OAAO;CAGvB"}
|
|
@@ -3,17 +3,10 @@ import "../components/index.esm.js";
|
|
|
3
3
|
//#region src/lib/dialogs/Dialog.ts
|
|
4
4
|
var t = class {
|
|
5
5
|
id;
|
|
6
|
-
template;
|
|
7
6
|
element;
|
|
8
7
|
config;
|
|
9
|
-
_resolveElement;
|
|
10
8
|
constructor(t, n = {}) {
|
|
11
|
-
this.id = e(), this.
|
|
12
|
-
this._resolveElement = e;
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
setElement(e) {
|
|
16
|
-
this._resolveElement(e);
|
|
9
|
+
this.id = e(), this.config = n, this.element = t;
|
|
17
10
|
}
|
|
18
11
|
closed(e) {
|
|
19
12
|
this.config.onClose?.(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.esm.js","names":[],"sources":["../../../src/lib/dialogs/Dialog.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"Dialog.esm.js","names":[],"sources":["../../../src/lib/dialogs/Dialog.ts"],"sourcesContent":["import { generateId } from '@/lib/components'\n\nexport interface DialogConfig<T = unknown> {\n onClose?(data?: T): void\n}\n\nexport default class Dialog {\n public readonly id: string\n public readonly element: HTMLElement\n public readonly config: DialogConfig\n\n constructor (element: HTMLElement, config: DialogConfig = {}) {\n this.id = generateId()\n this.config = config\n this.element = element\n }\n\n closed (data?: unknown) {\n this.config.onClose?.(data)\n }\n}\n"],"mappings":";;;AAMA,IAAqB,IAArB,MAA4B;CAC1B;CACA;CACA;CAEA,YAAa,GAAsB,IAAuB,CAAC,GAAG;EAG5D,AAFA,KAAK,KAAK,EAAW,GACrB,KAAK,SAAS,GACd,KAAK,UAAU;CACjB;CAEA,OAAQ,GAAgB;EACtB,KAAK,OAAO,UAAU,CAAI;CAC5B;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.cjs.js","names":[],"sources":["../../../src/lib/dialogs/context.ts"],"sourcesContent":["import { createContext } from '@lit/context'\nimport { generateId } from '@/lib/components/ids'\n\nexport interface DialogContext {\n readonly id: string\n}\n\nexport const DEFAULT_DIALOG_CONTEXT = { id: `noop-${generateId()}` } satisfies DialogContext\nexport const dialogContext = createContext<DialogContext>(Symbol('dialog'))\n"],"mappings":"0EAOA,IAAa,EAAyB,CAAE,GAAI,QAAQ,EAAA,WAAW,GAAI,EACtD,GAAA,
|
|
1
|
+
{"version":3,"file":"context.cjs.js","names":[],"sources":["../../../src/lib/dialogs/context.ts"],"sourcesContent":["import { createContext } from '@lit/context'\nimport { generateId } from '@/lib/components/ids'\n\nexport interface DialogContext {\n readonly id: string\n}\n\nexport const DEFAULT_DIALOG_CONTEXT = { id: `noop-${generateId()}` } satisfies DialogContext\nexport const dialogContext = createContext<DialogContext>(Symbol('dialog'))\n"],"mappings":"0EAOA,IAAa,EAAyB,CAAE,GAAI,QAAQ,EAAA,WAAW,GAAI,EACtD,GAAA,EAAgB,EAAA,cAAA,CAA6B,OAAO,QAAQ,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require("./Dialog.cjs.js"),t=require("./events/show-dialog.cjs.js");function n(n,r
|
|
1
|
+
const e=require("./Dialog.cjs.js"),t=require("./events/show-dialog.cjs.js");function n(n,r){let i=new n;Object.assign(i,r?.props);let a=new e.default(i,r);return document.dispatchEvent(new t.ShowDialogEvent(a)),a.element}exports.showDialog=n;
|
|
2
2
|
//# sourceMappingURL=helpers.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.cjs.js","names":[],"sources":["../../../src/lib/dialogs/helpers.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"helpers.cjs.js","names":[],"sources":["../../../src/lib/dialogs/helpers.ts"],"sourcesContent":["import { ShowDialogEvent } from './events/show-dialog'\nimport Dialog, { DialogConfig } from './Dialog'\nimport type WebComponent from '@/lib/components/web-component/WebComponent'\nimport type { GetWebComponentMetadata, WebComponentConstructor } from '@/lib/components/web-component/WebComponent'\n\nexport type GetDialogResult<T, TFallback = unknown> = GetWebComponentMetadata<T> extends { dialogResult: infer TResult } ? TResult : TFallback\n\nexport function showDialog<T extends WebComponent> (\n DialogComponent: WebComponentConstructor<T>,\n config?: DialogConfig<GetDialogResult<T>> & { props?: Partial<T> }\n): T {\n const element = new DialogComponent()\n\n Object.assign(element, config?.props)\n\n const dialog = new Dialog(element, config)\n\n document.dispatchEvent(new ShowDialogEvent(dialog))\n\n return dialog.element as T\n}\n"],"mappings":"4EAOA,SAAgB,EACd,EACA,EACG,CACH,IAAM,EAAU,IAAI,EAEpB,OAAO,OAAO,EAAS,GAAQ,KAAK,EAEpC,IAAM,EAAS,IAAI,EAAA,QAAO,EAAS,CAAM,EAIzC,OAFA,SAAS,cAAc,IAAI,EAAA,gBAAgB,CAAM,CAAC,EAE3C,EAAO,OAChB"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import { TemplateResult } from 'lit';
|
|
2
1
|
import { DialogConfig } from './Dialog';
|
|
3
|
-
|
|
2
|
+
import { default as WebComponent, GetWebComponentMetadata, WebComponentConstructor } from '../components/web-component/WebComponent';
|
|
3
|
+
export type GetDialogResult<T, TFallback = unknown> = GetWebComponentMetadata<T> extends {
|
|
4
|
+
dialogResult: infer TResult;
|
|
5
|
+
} ? TResult : TFallback;
|
|
6
|
+
export declare function showDialog<T extends WebComponent>(DialogComponent: WebComponentConstructor<T>, config?: DialogConfig<GetDialogResult<T>> & {
|
|
7
|
+
props?: Partial<T>;
|
|
8
|
+
}): T;
|
|
4
9
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/lib/dialogs/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/lib/dialogs/helpers.ts"],"names":[],"mappings":"AACA,OAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,KAAK,YAAY,MAAM,6CAA6C,CAAA;AAC3E,OAAO,KAAK,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAA;AAEnH,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,IAAI,uBAAuB,CAAC,CAAC,CAAC,SAAS;IAAE,YAAY,EAAE,MAAM,OAAO,CAAA;CAAE,GAAG,OAAO,GAAG,SAAS,CAAA;AAE9I,wBAAgB,UAAU,CAAC,CAAC,SAAS,YAAY,EAC/C,eAAe,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAC3C,MAAM,CAAC,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;CAAE,GACjE,CAAC,CAUH"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import e from "./Dialog.esm.js";
|
|
2
2
|
import { ShowDialogEvent as t } from "./events/show-dialog.esm.js";
|
|
3
3
|
//#region src/lib/dialogs/helpers.ts
|
|
4
|
-
function n(n, r
|
|
5
|
-
let i = new
|
|
6
|
-
|
|
4
|
+
function n(n, r) {
|
|
5
|
+
let i = new n();
|
|
6
|
+
Object.assign(i, r?.props);
|
|
7
|
+
let a = new e(i, r);
|
|
8
|
+
return document.dispatchEvent(new t(a)), a.element;
|
|
7
9
|
}
|
|
8
10
|
//#endregion
|
|
9
11
|
export { n as showDialog };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.esm.js","names":[],"sources":["../../../src/lib/dialogs/helpers.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"helpers.esm.js","names":[],"sources":["../../../src/lib/dialogs/helpers.ts"],"sourcesContent":["import { ShowDialogEvent } from './events/show-dialog'\nimport Dialog, { DialogConfig } from './Dialog'\nimport type WebComponent from '@/lib/components/web-component/WebComponent'\nimport type { GetWebComponentMetadata, WebComponentConstructor } from '@/lib/components/web-component/WebComponent'\n\nexport type GetDialogResult<T, TFallback = unknown> = GetWebComponentMetadata<T> extends { dialogResult: infer TResult } ? TResult : TFallback\n\nexport function showDialog<T extends WebComponent> (\n DialogComponent: WebComponentConstructor<T>,\n config?: DialogConfig<GetDialogResult<T>> & { props?: Partial<T> }\n): T {\n const element = new DialogComponent()\n\n Object.assign(element, config?.props)\n\n const dialog = new Dialog(element, config)\n\n document.dispatchEvent(new ShowDialogEvent(dialog))\n\n return dialog.element as T\n}\n"],"mappings":";;;AAOA,SAAgB,EACd,GACA,GACG;CACH,IAAM,IAAU,IAAI,EAAgB;CAEpC,OAAO,OAAO,GAAS,GAAQ,KAAK;CAEpC,IAAM,IAAS,IAAI,EAAO,GAAS,CAAM;CAIzC,OAFA,SAAS,cAAc,IAAI,EAAgB,CAAM,CAAC,GAE3C,EAAO;AAChB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("../ns.cjs.js"),t=require("../style.cjs.js");var n={[e.default.ui(`ColorField`).uri]:{size:9,type:`color`,style:`height: 3em;`,dt:`color`,pattern:/^\s*#[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]([0-9a-f][0-9a-f])?\s*$/},[e.default.ui(`DateField`).uri]:{size:20,type:`date`,dt:`date`,pattern:/^\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?Z?\s*$/},[e.default.ui(`DateTimeField`).uri]:{size:20,type:`datetime-local`,dt:`dateTime`,pattern:/^\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?(T[0-2][0-9]:[0-5][0-9](:[0-5][0-9])?)?Z?\s*$/},[e.default.ui(`TimeField`).uri]:{size:10,type:`time`,dt:`time`,pattern:/^\s*([0-2]?[0-9]:[0-5][0-9](:[0-5][0-9])?)\s*$/},[e.default.ui(`IntegerField`).uri]:{size:12,style:`text-align: right;`,dt:`integer`,pattern:/^\s*-?[0-9]+\s*$/},[e.default.ui(`DecimalField`).uri]:{size:12,style:`text-align: right;`,dt:`decimal`,pattern:/^\s*-?[0-9]*(\.[0-9]*)?\s*$/},[e.default.ui(`FloatField`).uri]:{size:12,style:`text-align: right;`,dt:`float`,pattern:/^\s*-?[0-9]*(\.[0-9]*)?((e|E)-?[0-9]*)?\s*$/},[e.default.ui(`SingleLineTextField`).uri]:{},[e.default.ui(`NamedNodeURIField`).uri]:{namedNode:!0},[e.default.ui(`TextField`).uri]:{},[e.default.ui(`PhoneField`).uri]:{size:20,defaultInputValue:`tel:`,pattern:/^\+?[\d-]+[\d]*$/},[e.default.ui(`EmailField`).uri]:{size:30,defaultInputValue:`mailto:`,pattern:/^\s*.*@.*\..*\s*$/},[e.default.ui(`Group`).uri]:{style:t.style.formGroupStyle},[e.default.ui(`Comment`).uri]:{element:`p`,style:t.style.commentStyle},[e.default.ui(`Heading`).uri]:{element:`h3`,style:t.style.formHeadingStyle}};exports.fieldParams=n;
|
|
2
|
+
//# sourceMappingURL=fieldParams.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fieldParams.cjs.js","names":[],"sources":["../../../src/lib/forms/fieldParams.ts"],"sourcesContent":["import ns from '../../lib/ns'\nimport { style } from '../../lib/style'\n\nexport type InputType =\n | 'hidden'\n | 'text'\n | 'search'\n | 'tel'\n | 'url'\n | 'email'\n | 'password'\n | 'datetime'\n | 'date'\n | 'month'\n | 'week'\n | 'time'\n | 'datetime-local'\n | 'number'\n | 'range'\n | 'color'\n | 'checkbox'\n | 'radio'\n | 'file'\n | 'submit'\n | 'image'\n | 'reset'\n | 'button'\n\nexport type FieldParamsObject = {\n size?: number, // input element size attribute\n type?: InputType, // input element type attribute. Default: 'text' (not for Comment and Heading)\n element?: string, // element type to use (Comment and Heading only)\n style?: string, // style to use\n dt?: string, // xsd data type for the RDF Literal corresponding to the field value. Default: xsd:string\n defaultInputValue?: string, // e.g. 'mailto:'. Default value in input field, will be removed when displaying actual value to user.\n namedNode?: boolean, // if true, field value corresponds to the URI of an RDF NamedNode. Overrides dt and defaultInputValue.\n pattern?: RegExp // for client-side input validation; field will go red if violated, green if ok\n}\n\n/**\n * The fieldParams object defines various constants\n * for use in various form fields. Depending on the\n * field in questions, different values may be read\n * from here.\n */\nexport const fieldParams: { [ fieldUri: string ]: FieldParamsObject } = {\n /**\n * Text field\n *\n * For possible date popups see e.g. http://www.dynamicdrive.com/dynamicindex7/jasoncalendar.htm\n * or use HTML5: http://www.w3.org/TR/2011/WD-html-markup-20110113/input.date.html\n */\n [ns.ui('ColorField').uri]: {\n size: 9,\n type: 'color',\n style: 'height: 3em;', // around 1.5em is padding\n dt: 'color',\n pattern: /^\\s*#[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]([0-9a-f][0-9a-f])?\\s*$/\n }, // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/color\n\n [ns.ui('DateField').uri]: {\n size: 20,\n type: 'date',\n dt: 'date',\n pattern: /^\\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?Z?\\s*$/\n },\n\n [ns.ui('DateTimeField').uri]: {\n size: 20,\n type: 'datetime-local', // See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime\n dt: 'dateTime',\n pattern: /^\\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?(T[0-2][0-9]:[0-5][0-9](:[0-5][0-9])?)?Z?\\s*$/\n },\n\n [ns.ui('TimeField').uri]: {\n size: 10,\n type: 'time',\n dt: 'time',\n pattern: /^\\s*([0-2]?[0-9]:[0-5][0-9](:[0-5][0-9])?)\\s*$/\n },\n\n [ns.ui('IntegerField').uri]: {\n size: 12,\n style: 'text-align: right;',\n dt: 'integer',\n pattern: /^\\s*-?[0-9]+\\s*$/\n },\n\n [ns.ui('DecimalField').uri]: {\n size: 12,\n style: 'text-align: right;',\n dt: 'decimal',\n pattern: /^\\s*-?[0-9]*(\\.[0-9]*)?\\s*$/\n },\n\n [ns.ui('FloatField').uri]: {\n size: 12,\n style: 'text-align: right;',\n dt: 'float',\n pattern: /^\\s*-?[0-9]*(\\.[0-9]*)?((e|E)-?[0-9]*)?\\s*$/\n },\n\n [ns.ui('SingleLineTextField').uri]: {\n\n },\n [ns.ui('NamedNodeURIField').uri]: {\n namedNode: true\n },\n [ns.ui('TextField').uri]: {\n\n },\n\n [ns.ui('PhoneField').uri]: {\n size: 20,\n defaultInputValue: 'tel:',\n pattern: /^\\+?[\\d-]+[\\d]*$/\n },\n\n [ns.ui('EmailField').uri]: {\n size: 30,\n defaultInputValue: 'mailto:',\n pattern: /^\\s*.*@.*\\..*\\s*$/ // @@ Get the right regexp here\n },\n\n [ns.ui('Group').uri]: {\n style: style.formGroupStyle\n },\n\n /**\n * Non-interactive fields\n */\n [ns.ui('Comment').uri]: {\n element: 'p',\n style: style.commentStyle\n },\n [ns.ui('Heading').uri]: {\n element: 'h3',\n style: style.formHeadingStyle\n }\n}\n"],"mappings":"6DA6CA,IAAa,EAA2D,EAOrE,EAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,EACN,KAAM,QACN,MAAO,eACP,GAAI,QACJ,QAAS,8EACX,GAEC,EAAA,QAAG,GAAG,WAAW,CAAC,CAAC,KAAM,CACxB,KAAM,GACN,KAAM,OACN,GAAI,OACJ,QAAS,2DACX,GAEC,EAAA,QAAG,GAAG,eAAe,CAAC,CAAC,KAAM,CAC5B,KAAM,GACN,KAAM,iBACN,GAAI,WACJ,QAAS,kGACX,GAEC,EAAA,QAAG,GAAG,WAAW,CAAC,CAAC,KAAM,CACxB,KAAM,GACN,KAAM,OACN,GAAI,OACJ,QAAS,gDACX,GAEC,EAAA,QAAG,GAAG,cAAc,CAAC,CAAC,KAAM,CAC3B,KAAM,GACN,MAAO,qBACP,GAAI,UACJ,QAAS,kBACX,GAEC,EAAA,QAAG,GAAG,cAAc,CAAC,CAAC,KAAM,CAC3B,KAAM,GACN,MAAO,qBACP,GAAI,UACJ,QAAS,6BACX,GAEC,EAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,GACN,MAAO,qBACP,GAAI,QACJ,QAAS,6CACX,GAEC,EAAA,QAAG,GAAG,qBAAqB,CAAC,CAAC,KAAM,CAEpC,GACC,EAAA,QAAG,GAAG,mBAAmB,CAAC,CAAC,KAAM,CAChC,UAAW,EACb,GACC,EAAA,QAAG,GAAG,WAAW,CAAC,CAAC,KAAM,CAE1B,GAEC,EAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,GACN,kBAAmB,OACnB,QAAS,kBACX,GAEC,EAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,GACN,kBAAmB,UACnB,QAAS,mBACX,GAEC,EAAA,QAAG,GAAG,OAAO,CAAC,CAAC,KAAM,CACpB,MAAO,EAAA,MAAM,cACf,GAKC,EAAA,QAAG,GAAG,SAAS,CAAC,CAAC,KAAM,CACtB,QAAS,IACT,MAAO,EAAA,MAAM,YACf,GACC,EAAA,QAAG,GAAG,SAAS,CAAC,CAAC,KAAM,CACtB,QAAS,KACT,MAAO,EAAA,MAAM,gBACf,CACF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type InputType = 'hidden' | 'text' | 'search' | 'tel' | 'url' | 'email' | 'password' | 'datetime' | 'date' | 'month' | 'week' | 'time' | 'datetime-local' | 'number' | 'range' | 'color' | 'checkbox' | 'radio' | 'file' | 'submit' | 'image' | 'reset' | 'button';
|
|
2
|
+
export type FieldParamsObject = {
|
|
3
|
+
size?: number;
|
|
4
|
+
type?: InputType;
|
|
5
|
+
element?: string;
|
|
6
|
+
style?: string;
|
|
7
|
+
dt?: string;
|
|
8
|
+
defaultInputValue?: string;
|
|
9
|
+
namedNode?: boolean;
|
|
10
|
+
pattern?: RegExp;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* The fieldParams object defines various constants
|
|
14
|
+
* for use in various form fields. Depending on the
|
|
15
|
+
* field in questions, different values may be read
|
|
16
|
+
* from here.
|
|
17
|
+
*/
|
|
18
|
+
export declare const fieldParams: {
|
|
19
|
+
[fieldUri: string]: FieldParamsObject;
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=fieldParams.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fieldParams.d.ts","sourceRoot":"","sources":["../../../src/lib/forms/fieldParams.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,KAAK,GACL,KAAK,GACL,OAAO,GACP,UAAU,GACV,UAAU,GACV,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,gBAAgB,GAChB,QAAQ,GACR,OAAO,GACP,OAAO,GACP,UAAU,GACV,OAAO,GACP,MAAM,GACN,QAAQ,GACR,OAAO,GACP,OAAO,GACP,QAAQ,CAAA;AAEZ,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE;IAAE,CAAE,QAAQ,EAAE,MAAM,GAAI,iBAAiB,CAAA;CA8FlE,CAAA"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import e from "../ns.esm.js";
|
|
2
|
+
import { style as t } from "../style.esm.js";
|
|
3
|
+
//#region src/lib/forms/fieldParams.ts
|
|
4
|
+
var n = {
|
|
5
|
+
[e.ui("ColorField").uri]: {
|
|
6
|
+
size: 9,
|
|
7
|
+
type: "color",
|
|
8
|
+
style: "height: 3em;",
|
|
9
|
+
dt: "color",
|
|
10
|
+
pattern: /^\s*#[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]([0-9a-f][0-9a-f])?\s*$/
|
|
11
|
+
},
|
|
12
|
+
[e.ui("DateField").uri]: {
|
|
13
|
+
size: 20,
|
|
14
|
+
type: "date",
|
|
15
|
+
dt: "date",
|
|
16
|
+
pattern: /^\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?Z?\s*$/
|
|
17
|
+
},
|
|
18
|
+
[e.ui("DateTimeField").uri]: {
|
|
19
|
+
size: 20,
|
|
20
|
+
type: "datetime-local",
|
|
21
|
+
dt: "dateTime",
|
|
22
|
+
pattern: /^\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?(T[0-2][0-9]:[0-5][0-9](:[0-5][0-9])?)?Z?\s*$/
|
|
23
|
+
},
|
|
24
|
+
[e.ui("TimeField").uri]: {
|
|
25
|
+
size: 10,
|
|
26
|
+
type: "time",
|
|
27
|
+
dt: "time",
|
|
28
|
+
pattern: /^\s*([0-2]?[0-9]:[0-5][0-9](:[0-5][0-9])?)\s*$/
|
|
29
|
+
},
|
|
30
|
+
[e.ui("IntegerField").uri]: {
|
|
31
|
+
size: 12,
|
|
32
|
+
style: "text-align: right;",
|
|
33
|
+
dt: "integer",
|
|
34
|
+
pattern: /^\s*-?[0-9]+\s*$/
|
|
35
|
+
},
|
|
36
|
+
[e.ui("DecimalField").uri]: {
|
|
37
|
+
size: 12,
|
|
38
|
+
style: "text-align: right;",
|
|
39
|
+
dt: "decimal",
|
|
40
|
+
pattern: /^\s*-?[0-9]*(\.[0-9]*)?\s*$/
|
|
41
|
+
},
|
|
42
|
+
[e.ui("FloatField").uri]: {
|
|
43
|
+
size: 12,
|
|
44
|
+
style: "text-align: right;",
|
|
45
|
+
dt: "float",
|
|
46
|
+
pattern: /^\s*-?[0-9]*(\.[0-9]*)?((e|E)-?[0-9]*)?\s*$/
|
|
47
|
+
},
|
|
48
|
+
[e.ui("SingleLineTextField").uri]: {},
|
|
49
|
+
[e.ui("NamedNodeURIField").uri]: { namedNode: !0 },
|
|
50
|
+
[e.ui("TextField").uri]: {},
|
|
51
|
+
[e.ui("PhoneField").uri]: {
|
|
52
|
+
size: 20,
|
|
53
|
+
defaultInputValue: "tel:",
|
|
54
|
+
pattern: /^\+?[\d-]+[\d]*$/
|
|
55
|
+
},
|
|
56
|
+
[e.ui("EmailField").uri]: {
|
|
57
|
+
size: 30,
|
|
58
|
+
defaultInputValue: "mailto:",
|
|
59
|
+
pattern: /^\s*.*@.*\..*\s*$/
|
|
60
|
+
},
|
|
61
|
+
[e.ui("Group").uri]: { style: t.formGroupStyle },
|
|
62
|
+
[e.ui("Comment").uri]: {
|
|
63
|
+
element: "p",
|
|
64
|
+
style: t.commentStyle
|
|
65
|
+
},
|
|
66
|
+
[e.ui("Heading").uri]: {
|
|
67
|
+
element: "h3",
|
|
68
|
+
style: t.formHeadingStyle
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
//#endregion
|
|
72
|
+
export { n as fieldParams };
|
|
73
|
+
|
|
74
|
+
//# sourceMappingURL=fieldParams.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fieldParams.esm.js","names":[],"sources":["../../../src/lib/forms/fieldParams.ts"],"sourcesContent":["import ns from '../../lib/ns'\nimport { style } from '../../lib/style'\n\nexport type InputType =\n | 'hidden'\n | 'text'\n | 'search'\n | 'tel'\n | 'url'\n | 'email'\n | 'password'\n | 'datetime'\n | 'date'\n | 'month'\n | 'week'\n | 'time'\n | 'datetime-local'\n | 'number'\n | 'range'\n | 'color'\n | 'checkbox'\n | 'radio'\n | 'file'\n | 'submit'\n | 'image'\n | 'reset'\n | 'button'\n\nexport type FieldParamsObject = {\n size?: number, // input element size attribute\n type?: InputType, // input element type attribute. Default: 'text' (not for Comment and Heading)\n element?: string, // element type to use (Comment and Heading only)\n style?: string, // style to use\n dt?: string, // xsd data type for the RDF Literal corresponding to the field value. Default: xsd:string\n defaultInputValue?: string, // e.g. 'mailto:'. Default value in input field, will be removed when displaying actual value to user.\n namedNode?: boolean, // if true, field value corresponds to the URI of an RDF NamedNode. Overrides dt and defaultInputValue.\n pattern?: RegExp // for client-side input validation; field will go red if violated, green if ok\n}\n\n/**\n * The fieldParams object defines various constants\n * for use in various form fields. Depending on the\n * field in questions, different values may be read\n * from here.\n */\nexport const fieldParams: { [ fieldUri: string ]: FieldParamsObject } = {\n /**\n * Text field\n *\n * For possible date popups see e.g. http://www.dynamicdrive.com/dynamicindex7/jasoncalendar.htm\n * or use HTML5: http://www.w3.org/TR/2011/WD-html-markup-20110113/input.date.html\n */\n [ns.ui('ColorField').uri]: {\n size: 9,\n type: 'color',\n style: 'height: 3em;', // around 1.5em is padding\n dt: 'color',\n pattern: /^\\s*#[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]([0-9a-f][0-9a-f])?\\s*$/\n }, // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/color\n\n [ns.ui('DateField').uri]: {\n size: 20,\n type: 'date',\n dt: 'date',\n pattern: /^\\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?Z?\\s*$/\n },\n\n [ns.ui('DateTimeField').uri]: {\n size: 20,\n type: 'datetime-local', // See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime\n dt: 'dateTime',\n pattern: /^\\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?(T[0-2][0-9]:[0-5][0-9](:[0-5][0-9])?)?Z?\\s*$/\n },\n\n [ns.ui('TimeField').uri]: {\n size: 10,\n type: 'time',\n dt: 'time',\n pattern: /^\\s*([0-2]?[0-9]:[0-5][0-9](:[0-5][0-9])?)\\s*$/\n },\n\n [ns.ui('IntegerField').uri]: {\n size: 12,\n style: 'text-align: right;',\n dt: 'integer',\n pattern: /^\\s*-?[0-9]+\\s*$/\n },\n\n [ns.ui('DecimalField').uri]: {\n size: 12,\n style: 'text-align: right;',\n dt: 'decimal',\n pattern: /^\\s*-?[0-9]*(\\.[0-9]*)?\\s*$/\n },\n\n [ns.ui('FloatField').uri]: {\n size: 12,\n style: 'text-align: right;',\n dt: 'float',\n pattern: /^\\s*-?[0-9]*(\\.[0-9]*)?((e|E)-?[0-9]*)?\\s*$/\n },\n\n [ns.ui('SingleLineTextField').uri]: {\n\n },\n [ns.ui('NamedNodeURIField').uri]: {\n namedNode: true\n },\n [ns.ui('TextField').uri]: {\n\n },\n\n [ns.ui('PhoneField').uri]: {\n size: 20,\n defaultInputValue: 'tel:',\n pattern: /^\\+?[\\d-]+[\\d]*$/\n },\n\n [ns.ui('EmailField').uri]: {\n size: 30,\n defaultInputValue: 'mailto:',\n pattern: /^\\s*.*@.*\\..*\\s*$/ // @@ Get the right regexp here\n },\n\n [ns.ui('Group').uri]: {\n style: style.formGroupStyle\n },\n\n /**\n * Non-interactive fields\n */\n [ns.ui('Comment').uri]: {\n element: 'p',\n style: style.commentStyle\n },\n [ns.ui('Heading').uri]: {\n element: 'h3',\n style: style.formHeadingStyle\n }\n}\n"],"mappings":";;;AA6CA,IAAa,IAA2D;EAOrE,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAEC,EAAG,GAAG,WAAW,CAAC,CAAC,MAAM;EACxB,MAAM;EACN,MAAM;EACN,IAAI;EACJ,SAAS;CACX;EAEC,EAAG,GAAG,eAAe,CAAC,CAAC,MAAM;EAC5B,MAAM;EACN,MAAM;EACN,IAAI;EACJ,SAAS;CACX;EAEC,EAAG,GAAG,WAAW,CAAC,CAAC,MAAM;EACxB,MAAM;EACN,MAAM;EACN,IAAI;EACJ,SAAS;CACX;EAEC,EAAG,GAAG,cAAc,CAAC,CAAC,MAAM;EAC3B,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAEC,EAAG,GAAG,cAAc,CAAC,CAAC,MAAM;EAC3B,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAEC,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAEC,EAAG,GAAG,qBAAqB,CAAC,CAAC,MAAM,CAEpC;EACC,EAAG,GAAG,mBAAmB,CAAC,CAAC,MAAM,EAChC,WAAW,GACb;EACC,EAAG,GAAG,WAAW,CAAC,CAAC,MAAM,CAE1B;EAEC,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,mBAAmB;EACnB,SAAS;CACX;EAEC,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,mBAAmB;EACnB,SAAS;CACX;EAEC,EAAG,GAAG,OAAO,CAAC,CAAC,MAAM,EACpB,OAAO,EAAM,eACf;EAKC,EAAG,GAAG,SAAS,CAAC,CAAC,MAAM;EACtB,SAAS;EACT,OAAO,EAAM;CACf;EACC,EAAG,GAAG,SAAS,CAAC,CAAC,MAAM;EACtB,SAAS;EACT,OAAO,EAAM;CACf;AACF"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("../ns.cjs.js");let t=require("rdflib");async function n(e,n){let r=(0,t.sym)(n);return e.holds(void 0,void 0,void 0,r)&&e.removeStatements(e.statementsMatching(void 0,void 0,void 0,r)),await e.fetcher.load(n,{force:!0,clearPreviousData:!0})}function r(t,n){let r=n.map(n=>{let r=t.any(n,e.default.ui(`sequence`)),i=r?Number(r.value):9999;return[Number.isNaN(i)?9999:i,n]});return r.sort((e,t)=>e[0]-t[0]),r.map(e=>e[1])}function i(e,t){let n=e.findTypeURIs(t),r=e.bottomTypeURIs(n),i=[];for(let e in r)i.push(e);return i[0]}function a(n,r){let i=r.split(`#`)[0],a=r.includes(`#`)?r.split(`#`)[1]:null;if(a){let r=(0,t.sym)(i+`#`+a);if(n.holds(r,e.default.rdf(`type`),e.default.ui(`Form`)))return r}return n.each(null,e.default.rdf(`type`),e.default.ui(`Form`)).find(e=>e.termType===`NamedNode`)||null}exports.fetchData=n,exports.findForm=a,exports.mostSpecificClassURI=i,exports.sortBySequence=r;
|
|
2
|
+
//# sourceMappingURL=rdfFormsHelper.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdfFormsHelper.cjs.js","names":[],"sources":["../../../src/lib/forms/rdfFormsHelper.ts"],"sourcesContent":["import { sym, LiveStore, parse } from 'rdflib'\nimport type { Term } from 'rdflib/lib/tf-types'\n// eslint-disable-next-line camelcase\nimport type { Quad_Subject, NamedNode } from 'rdflib/lib/tf-types'\nimport ns from '../../lib/ns'\n\nconst baseUri = 'https://solidos.github.io/solid-ui/src/ontology/'\n\nexport function loadDocument (\n store: LiveStore,\n documentSource: string,\n documentName: string,\n documentURI?: string,\n preferRemote = false\n) {\n const finalDocumentUri = documentURI || baseUri + documentName // Full URI to the file\n const document = sym(finalDocumentUri) // rdflib NamedNode for the document\n\n if (store.holds(undefined, undefined, undefined, document)) {\n store.removeStatements(store.statementsMatching(undefined, undefined, undefined, document))\n }\n\n const parseSource = () => {\n return new Promise<void>((resolve, reject) => {\n parse(documentSource, store, finalDocumentUri, 'text/turtle', (err) => {\n if (err) {\n console.error('Parse document error for ', finalDocumentUri, err)\n reject(err)\n } else {\n resolve()\n }\n })\n })\n }\n\n if (preferRemote && documentURI) {\n return store.fetcher.load(documentURI, {\n force: true,\n clearPreviousData: true,\n }).then(() => {}).catch((err) => {\n if (documentSource && documentSource.trim().length > 0) {\n return parseSource()\n }\n throw err\n })\n }\n\n if (documentSource && documentSource.trim().length > 0) {\n return parseSource()\n }\n\n if (documentURI) {\n return store.fetcher.load(documentURI, {\n force: true,\n clearPreviousData: true,\n }).then(() => {})\n }\n\n return Promise.reject(new Error(`No document source or URI for ${documentName}`))\n}\n\nexport async function fetchData (\n store: LiveStore,\n documentURI: string\n) {\n const document = sym(documentURI) // rdflib NamedNode for the document\n\n if (store.holds(undefined, undefined, undefined, document)) {\n store.removeStatements(store.statementsMatching(undefined, undefined, undefined, document))\n }\n\n return await store.fetcher.load(documentURI, {\n force: true,\n clearPreviousData: true,\n })\n}\n\nexport function sortBySequence (\n store: LiveStore,\n list: Term[]\n) {\n const subfields = list.map((p) => {\n const k = store.any(p as any, ns.ui('sequence'))\n const seq = k ? Number((k as { value: string }).value) : 9999\n return [Number.isNaN(seq) ? 9999 : seq, p] as const\n })\n\n subfields.sort((a, b) => a[0] - b[0])\n\n return subfields.map(pair => pair[1])\n}\n\n/**\n * Which class of field is this? Relies on http://www.w3.org/2000/01/rdf-schema#subClassOf and\n * https://linkeddata.github.io/rdflib.js/doc/classes/formula.html#bottomtypeuris\n * to find the most specific RDF type if there are multiple.\n *\n * @param subject a form field, e.g. `namedNode('https://timbl.com/timbl/Public/Test/Forms/individualForm.ttl#fullNameField')`\n * @returns the URI of the most specific known class, e.g. `http://www.w3.org/ns/ui#SingleLineTextField`\n */\n// eslint-disable-next-line camelcase\nexport function mostSpecificClassURI (store: LiveStore, subject: Quad_Subject): string {\n const typeUri = store.findTypeURIs(subject)\n const specificTypes = store.bottomTypeURIs(typeUri) // most specific\n const finalTypes: any[] = []\n for (const t in specificTypes) finalTypes.push(t)\n // if (finalTypes.length > 1) throw \"Didn't expect \"+subject+\" to have multiple bottom types: \"+finalTypes\n return finalTypes[0]\n}\n\n// Find the first ui:Form node in a store, optionally matching a fragment.\n// code based on Jeff Zucker's sol-components: https://github.com/jeff-zucker/sol-components (core/form-utils.js)\nexport function findForm (store: LiveStore, sourceUri: string): NamedNode | null {\n const docUrl = sourceUri.split('#')[0]\n const fragment = sourceUri.includes('#') ? sourceUri.split('#')[1] : null\n if (fragment) {\n const candidate = sym(docUrl + '#' + fragment)\n if (store.holds(candidate, ns.rdf('type'), ns.ui('Form'))) return candidate\n }\n const forms = store.each(null, ns.rdf('type'), ns.ui('Form'))\n const found = forms.find((term) => term.termType === 'NamedNode')\n return found ? (found as NamedNode) : null\n}\n"],"mappings":"wDA6DA,eAAsB,EACpB,EACA,EACA,CACA,IAAM,GAAA,EAAW,EAAA,IAAA,CAAI,CAAW,EAMhC,OAJI,EAAM,MAAM,IAAA,GAAW,IAAA,GAAW,IAAA,GAAW,CAAQ,GACvD,EAAM,iBAAiB,EAAM,mBAAmB,IAAA,GAAW,IAAA,GAAW,IAAA,GAAW,CAAQ,CAAC,EAGrF,MAAM,EAAM,QAAQ,KAAK,EAAa,CAC3C,MAAO,GACP,kBAAmB,EACrB,CAAC,CACH,CAEA,SAAgB,EACd,EACA,EACA,CACA,IAAM,EAAY,EAAK,IAAK,GAAM,CAChC,IAAM,EAAI,EAAM,IAAI,EAAU,EAAA,QAAG,GAAG,UAAU,CAAC,EACzC,EAAM,EAAI,OAAQ,EAAwB,KAAK,EAAI,KACzD,MAAO,CAAC,OAAO,MAAM,CAAG,EAAI,KAAO,EAAK,CAAC,CAC3C,CAAC,EAID,OAFA,EAAU,MAAM,EAAG,IAAM,EAAE,GAAK,EAAE,EAAE,EAE7B,EAAU,IAAI,GAAQ,EAAK,EAAE,CACtC,CAWA,SAAgB,EAAsB,EAAkB,EAA+B,CACrF,IAAM,EAAU,EAAM,aAAa,CAAO,EACpC,EAAgB,EAAM,eAAe,CAAO,EAC5C,EAAoB,CAAC,EAC3B,IAAK,IAAM,KAAK,EAAe,EAAW,KAAK,CAAC,EAEhD,OAAO,EAAW,EACpB,CAIA,SAAgB,EAAU,EAAkB,EAAqC,CAC/E,IAAM,EAAS,EAAU,MAAM,GAAG,CAAC,CAAC,GAC9B,EAAW,EAAU,SAAS,GAAG,EAAI,EAAU,MAAM,GAAG,CAAC,CAAC,GAAK,KACrE,GAAI,EAAU,CACZ,IAAM,GAAA,EAAY,EAAA,IAAA,CAAI,EAAS,IAAM,CAAQ,EAC7C,GAAI,EAAM,MAAM,EAAW,EAAA,QAAG,IAAI,MAAM,EAAG,EAAA,QAAG,GAAG,MAAM,CAAC,EAAG,OAAO,CACpE,CAGA,OAFc,EAAM,KAAK,KAAM,EAAA,QAAG,IAAI,MAAM,EAAG,EAAA,QAAG,GAAG,MAAM,CAC7C,CAAA,CAAM,KAAM,GAAS,EAAK,WAAa,WAC9C,GAA+B,IACxC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { LiveStore } from 'rdflib';
|
|
2
|
+
import { Term, Quad_Subject, NamedNode } from 'rdflib/lib/tf-types';
|
|
3
|
+
export declare function loadDocument(store: LiveStore, documentSource: string, documentName: string, documentURI?: string, preferRemote?: boolean): Promise<void>;
|
|
4
|
+
export declare function fetchData(store: LiveStore, documentURI: string): Promise<Response>;
|
|
5
|
+
export declare function sortBySequence(store: LiveStore, list: Term[]): Term[];
|
|
6
|
+
/**
|
|
7
|
+
* Which class of field is this? Relies on http://www.w3.org/2000/01/rdf-schema#subClassOf and
|
|
8
|
+
* https://linkeddata.github.io/rdflib.js/doc/classes/formula.html#bottomtypeuris
|
|
9
|
+
* to find the most specific RDF type if there are multiple.
|
|
10
|
+
*
|
|
11
|
+
* @param subject a form field, e.g. `namedNode('https://timbl.com/timbl/Public/Test/Forms/individualForm.ttl#fullNameField')`
|
|
12
|
+
* @returns the URI of the most specific known class, e.g. `http://www.w3.org/ns/ui#SingleLineTextField`
|
|
13
|
+
*/
|
|
14
|
+
export declare function mostSpecificClassURI(store: LiveStore, subject: Quad_Subject): string;
|
|
15
|
+
export declare function findForm(store: LiveStore, sourceUri: string): NamedNode | null;
|
|
16
|
+
//# sourceMappingURL=rdfFormsHelper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdfFormsHelper.d.ts","sourceRoot":"","sources":["../../../src/lib/forms/rdfFormsHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,SAAS,EAAS,MAAM,QAAQ,CAAA;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAKlE,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,EACpB,WAAW,CAAC,EAAE,MAAM,EACpB,YAAY,UAAQ,iBA8CrB;AAED,wBAAsB,SAAS,CAC7B,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,MAAM,qBAYpB;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,IAAI,EAAE,UAWb;AAED;;;;;;;GAOG;AAEH,wBAAgB,oBAAoB,CAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,GAAG,MAAM,CAOrF;AAID,wBAAgB,QAAQ,CAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAU/E"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import e from "../ns.esm.js";
|
|
2
|
+
import { sym as t } from "rdflib";
|
|
3
|
+
//#region src/lib/forms/rdfFormsHelper.ts
|
|
4
|
+
async function n(e, n) {
|
|
5
|
+
let r = t(n);
|
|
6
|
+
return e.holds(void 0, void 0, void 0, r) && e.removeStatements(e.statementsMatching(void 0, void 0, void 0, r)), await e.fetcher.load(n, {
|
|
7
|
+
force: !0,
|
|
8
|
+
clearPreviousData: !0
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
function r(t, n) {
|
|
12
|
+
let r = n.map((n) => {
|
|
13
|
+
let r = t.any(n, e.ui("sequence")), i = r ? Number(r.value) : 9999;
|
|
14
|
+
return [Number.isNaN(i) ? 9999 : i, n];
|
|
15
|
+
});
|
|
16
|
+
return r.sort((e, t) => e[0] - t[0]), r.map((e) => e[1]);
|
|
17
|
+
}
|
|
18
|
+
function i(e, t) {
|
|
19
|
+
let n = e.findTypeURIs(t), r = e.bottomTypeURIs(n), i = [];
|
|
20
|
+
for (let e in r) i.push(e);
|
|
21
|
+
return i[0];
|
|
22
|
+
}
|
|
23
|
+
function a(n, r) {
|
|
24
|
+
let i = r.split("#")[0], a = r.includes("#") ? r.split("#")[1] : null;
|
|
25
|
+
if (a) {
|
|
26
|
+
let r = t(i + "#" + a);
|
|
27
|
+
if (n.holds(r, e.rdf("type"), e.ui("Form"))) return r;
|
|
28
|
+
}
|
|
29
|
+
return n.each(null, e.rdf("type"), e.ui("Form")).find((e) => e.termType === "NamedNode") || null;
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { n as fetchData, a as findForm, i as mostSpecificClassURI, r as sortBySequence };
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=rdfFormsHelper.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdfFormsHelper.esm.js","names":[],"sources":["../../../src/lib/forms/rdfFormsHelper.ts"],"sourcesContent":["import { sym, LiveStore, parse } from 'rdflib'\nimport type { Term } from 'rdflib/lib/tf-types'\n// eslint-disable-next-line camelcase\nimport type { Quad_Subject, NamedNode } from 'rdflib/lib/tf-types'\nimport ns from '../../lib/ns'\n\nconst baseUri = 'https://solidos.github.io/solid-ui/src/ontology/'\n\nexport function loadDocument (\n store: LiveStore,\n documentSource: string,\n documentName: string,\n documentURI?: string,\n preferRemote = false\n) {\n const finalDocumentUri = documentURI || baseUri + documentName // Full URI to the file\n const document = sym(finalDocumentUri) // rdflib NamedNode for the document\n\n if (store.holds(undefined, undefined, undefined, document)) {\n store.removeStatements(store.statementsMatching(undefined, undefined, undefined, document))\n }\n\n const parseSource = () => {\n return new Promise<void>((resolve, reject) => {\n parse(documentSource, store, finalDocumentUri, 'text/turtle', (err) => {\n if (err) {\n console.error('Parse document error for ', finalDocumentUri, err)\n reject(err)\n } else {\n resolve()\n }\n })\n })\n }\n\n if (preferRemote && documentURI) {\n return store.fetcher.load(documentURI, {\n force: true,\n clearPreviousData: true,\n }).then(() => {}).catch((err) => {\n if (documentSource && documentSource.trim().length > 0) {\n return parseSource()\n }\n throw err\n })\n }\n\n if (documentSource && documentSource.trim().length > 0) {\n return parseSource()\n }\n\n if (documentURI) {\n return store.fetcher.load(documentURI, {\n force: true,\n clearPreviousData: true,\n }).then(() => {})\n }\n\n return Promise.reject(new Error(`No document source or URI for ${documentName}`))\n}\n\nexport async function fetchData (\n store: LiveStore,\n documentURI: string\n) {\n const document = sym(documentURI) // rdflib NamedNode for the document\n\n if (store.holds(undefined, undefined, undefined, document)) {\n store.removeStatements(store.statementsMatching(undefined, undefined, undefined, document))\n }\n\n return await store.fetcher.load(documentURI, {\n force: true,\n clearPreviousData: true,\n })\n}\n\nexport function sortBySequence (\n store: LiveStore,\n list: Term[]\n) {\n const subfields = list.map((p) => {\n const k = store.any(p as any, ns.ui('sequence'))\n const seq = k ? Number((k as { value: string }).value) : 9999\n return [Number.isNaN(seq) ? 9999 : seq, p] as const\n })\n\n subfields.sort((a, b) => a[0] - b[0])\n\n return subfields.map(pair => pair[1])\n}\n\n/**\n * Which class of field is this? Relies on http://www.w3.org/2000/01/rdf-schema#subClassOf and\n * https://linkeddata.github.io/rdflib.js/doc/classes/formula.html#bottomtypeuris\n * to find the most specific RDF type if there are multiple.\n *\n * @param subject a form field, e.g. `namedNode('https://timbl.com/timbl/Public/Test/Forms/individualForm.ttl#fullNameField')`\n * @returns the URI of the most specific known class, e.g. `http://www.w3.org/ns/ui#SingleLineTextField`\n */\n// eslint-disable-next-line camelcase\nexport function mostSpecificClassURI (store: LiveStore, subject: Quad_Subject): string {\n const typeUri = store.findTypeURIs(subject)\n const specificTypes = store.bottomTypeURIs(typeUri) // most specific\n const finalTypes: any[] = []\n for (const t in specificTypes) finalTypes.push(t)\n // if (finalTypes.length > 1) throw \"Didn't expect \"+subject+\" to have multiple bottom types: \"+finalTypes\n return finalTypes[0]\n}\n\n// Find the first ui:Form node in a store, optionally matching a fragment.\n// code based on Jeff Zucker's sol-components: https://github.com/jeff-zucker/sol-components (core/form-utils.js)\nexport function findForm (store: LiveStore, sourceUri: string): NamedNode | null {\n const docUrl = sourceUri.split('#')[0]\n const fragment = sourceUri.includes('#') ? sourceUri.split('#')[1] : null\n if (fragment) {\n const candidate = sym(docUrl + '#' + fragment)\n if (store.holds(candidate, ns.rdf('type'), ns.ui('Form'))) return candidate\n }\n const forms = store.each(null, ns.rdf('type'), ns.ui('Form'))\n const found = forms.find((term) => term.termType === 'NamedNode')\n return found ? (found as NamedNode) : null\n}\n"],"mappings":";;;AA6DA,eAAsB,EACpB,GACA,GACA;CACA,IAAM,IAAW,EAAI,CAAW;CAMhC,OAJI,EAAM,MAAM,KAAA,GAAW,KAAA,GAAW,KAAA,GAAW,CAAQ,KACvD,EAAM,iBAAiB,EAAM,mBAAmB,KAAA,GAAW,KAAA,GAAW,KAAA,GAAW,CAAQ,CAAC,GAGrF,MAAM,EAAM,QAAQ,KAAK,GAAa;EAC3C,OAAO;EACP,mBAAmB;CACrB,CAAC;AACH;AAEA,SAAgB,EACd,GACA,GACA;CACA,IAAM,IAAY,EAAK,KAAK,MAAM;EAChC,IAAM,IAAI,EAAM,IAAI,GAAU,EAAG,GAAG,UAAU,CAAC,GACzC,IAAM,IAAI,OAAQ,EAAwB,KAAK,IAAI;EACzD,OAAO,CAAC,OAAO,MAAM,CAAG,IAAI,OAAO,GAAK,CAAC;CAC3C,CAAC;CAID,OAFA,EAAU,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,GAE7B,EAAU,KAAI,MAAQ,EAAK,EAAE;AACtC;AAWA,SAAgB,EAAsB,GAAkB,GAA+B;CACrF,IAAM,IAAU,EAAM,aAAa,CAAO,GACpC,IAAgB,EAAM,eAAe,CAAO,GAC5C,IAAoB,CAAC;CAC3B,KAAK,IAAM,KAAK,GAAe,EAAW,KAAK,CAAC;CAEhD,OAAO,EAAW;AACpB;AAIA,SAAgB,EAAU,GAAkB,GAAqC;CAC/E,IAAM,IAAS,EAAU,MAAM,GAAG,CAAC,CAAC,IAC9B,IAAW,EAAU,SAAS,GAAG,IAAI,EAAU,MAAM,GAAG,CAAC,CAAC,KAAK;CACrE,IAAI,GAAU;EACZ,IAAM,IAAY,EAAI,IAAS,MAAM,CAAQ;EAC7C,IAAI,EAAM,MAAM,GAAW,EAAG,IAAI,MAAM,GAAG,EAAG,GAAG,MAAM,CAAC,GAAG,OAAO;CACpE;CAGA,OAFc,EAAM,KAAK,MAAM,EAAG,IAAI,MAAM,GAAG,EAAG,GAAG,MAAM,CAC7C,CAAA,CAAM,MAAM,MAAS,EAAK,aAAa,WAC9C,KAA+B;AACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NoopStore.cjs.js","names":[],"sources":["../../../../src/lib/forms/store/NoopStore.ts"],"sourcesContent":["import { LiveStore } from 'rdflib'\nimport { StoreContext } from './StoreContext'\n\nexport default class NoopStore implements StoreContext {\n get store (): LiveStore {\n throw new Error('Cannot use RDF forms without a store')\n }\n}\n"],"mappings":"AAGA,IAAqB,EAArB,KAAuD,CACrD,IAAI,OAAoB,CACtB,MAAU,MAAM,sCAAsC,CACxD,CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NoopStore.d.ts","sourceRoot":"","sources":["../../../../src/lib/forms/store/NoopStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,CAAC,OAAO,OAAO,SAAU,YAAW,YAAY;IACpD,IAAI,KAAK,IAAK,SAAS,CAEtB;CACF"}
|