solid-ui 3.1.3-13 → 3.1.3-15

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.
Files changed (362) hide show
  1. package/README.md +0 -14
  2. package/dist/_virtual/_rolldown/runtime.cjs.js +1 -1
  3. package/dist/acl/access-controller.cjs.js.map +1 -1
  4. package/dist/acl/access-groups.cjs.js +1 -1
  5. package/dist/acl/access-groups.cjs.js.map +1 -1
  6. package/dist/acl/access-groups.esm.js +2 -1
  7. package/dist/acl/access-groups.esm.js.map +1 -1
  8. package/dist/acl/acl.cjs.js.map +1 -1
  9. package/dist/acl/acl.esm.js.map +1 -1
  10. package/dist/chat/bookmarks.esm.js +2 -1
  11. package/dist/chat/bookmarks.esm.js.map +1 -1
  12. package/dist/chat/chatLogic.cjs.js +1 -1
  13. package/dist/chat/chatLogic.cjs.js.map +1 -1
  14. package/dist/chat/chatLogic.esm.js +2 -2
  15. package/dist/chat/chatLogic.esm.js.map +1 -1
  16. package/dist/chat/keys.cjs.js +1 -1
  17. package/dist/chat/keys.cjs.js.map +1 -1
  18. package/dist/chat/keys.d.ts +1 -1
  19. package/dist/chat/keys.d.ts.map +1 -1
  20. package/dist/chat/keys.esm.js +5 -2
  21. package/dist/chat/keys.esm.js.map +1 -1
  22. package/dist/chat/signature.cjs.js +1 -1
  23. package/dist/chat/signature.cjs.js.map +1 -1
  24. package/dist/chat/signature.esm.js +2 -1
  25. package/dist/chat/signature.esm.js.map +1 -1
  26. package/dist/chunks/{DialogProvider-B7wEBrVN.js → DialogProvider-0HIHjONx.js} +11 -11
  27. package/dist/chunks/{DialogProvider-B7wEBrVN.js.map → DialogProvider-0HIHjONx.js.map} +1 -1
  28. package/dist/chunks/{account-DeNlj01m.js → account-Ch8h_zTv.js} +20 -21
  29. package/dist/chunks/{account-DeNlj01m.js.map → account-Ch8h_zTv.js.map} +1 -1
  30. package/dist/chunks/{auth-Knq99zZ9.js → auth-D4NUMSzc.js} +98 -72
  31. package/dist/chunks/auth-D4NUMSzc.js.map +1 -0
  32. package/dist/chunks/{avatar-DgO_p94F.js → avatar-BWtz4RlU.js} +7 -8
  33. package/dist/chunks/{avatar-DgO_p94F.js.map → avatar-BWtz4RlU.js.map} +1 -1
  34. package/dist/chunks/{button-Dvkek1tx.js → button-BJyFKOKO.js} +12 -15
  35. package/dist/chunks/{button-Dvkek1tx.js.map → button-BJyFKOKO.js.map} +1 -1
  36. package/dist/chunks/{chunk.7MPIABXH-DNcYOuE8.js → chunk.64OG2H45-BADxAtEI.js} +97 -50
  37. package/dist/chunks/chunk.64OG2H45-BADxAtEI.js.map +1 -0
  38. package/dist/chunks/{combobox-B5j4LoHY.js → combobox-0NWv9K3D.js} +106 -93
  39. package/dist/chunks/combobox-0NWv9K3D.js.map +1 -0
  40. package/dist/chunks/{combobox-option-C5lKAumO.js → combobox-option-B-twy1Zn.js} +6 -7
  41. package/dist/chunks/{combobox-option-C5lKAumO.js.map → combobox-option-B-twy1Zn.js.map} +1 -1
  42. package/dist/chunks/components-DrP7BOrs.js +1281 -0
  43. package/dist/chunks/components-DrP7BOrs.js.map +1 -0
  44. package/dist/chunks/{dialog-DZgm_Tph.js → dialog-CcMVH-Ut.js} +16 -16
  45. package/dist/chunks/{dialog-DZgm_Tph.js.map → dialog-CcMVH-Ut.js.map} +1 -1
  46. package/dist/chunks/{dialog-content-DY-ROHyi.js → dialog-content-DcD_s3hK.js} +2 -3
  47. package/dist/chunks/{dialog-content-DY-ROHyi.js.map → dialog-content-DcD_s3hK.js.map} +1 -1
  48. package/dist/chunks/{dialog-footer-BAZTjZ8J.js → dialog-footer-CHgSH7G5.js} +2 -3
  49. package/dist/chunks/{dialog-footer-BAZTjZ8J.js.map → dialog-footer-CHgSH7G5.js.map} +1 -1
  50. package/dist/chunks/{dialog-header-COzPcK8F.js → dialog-header-BjellR7_.js} +2 -3
  51. package/dist/chunks/{dialog-header-COzPcK8F.js.map → dialog-header-BjellR7_.js.map} +1 -1
  52. package/dist/chunks/{dialogs-DEuwXC46.js → dialogs-CeHuLUo5.js} +2 -2
  53. package/dist/chunks/{dialogs-DEuwXC46.js.map → dialogs-CeHuLUo5.js.map} +1 -1
  54. package/dist/chunks/{dialogs-root-BYp6fIUE.js → dialogs-root-CvsON-m8.js} +5 -6
  55. package/dist/chunks/{dialogs-root-BYp6fIUE.js.map → dialogs-root-CvsON-m8.js.map} +1 -1
  56. package/dist/chunks/{guard-DI4k0FkM.js → guard-BIesxo_f.js} +7 -8
  57. package/dist/chunks/{guard-DI4k0FkM.js.map → guard-BIesxo_f.js.map} +1 -1
  58. package/dist/chunks/{solid-logic.esm-BrMdCG2_.js → index.esm-CyyOkz04.js} +2663 -2745
  59. package/dist/chunks/index.esm-CyyOkz04.js.map +1 -0
  60. package/dist/chunks/{input-CCpEhtqA.js → input-CFDN76Y5.js} +99 -54
  61. package/dist/chunks/input-CFDN76Y5.js.map +1 -0
  62. package/dist/chunks/{jsonld-B61R4iOL.js → jsonld-52q5nY_t.js} +22 -27
  63. package/dist/chunks/{jsonld-B61R4iOL.js.map → jsonld-52q5nY_t.js.map} +1 -1
  64. package/dist/chunks/{login-button-BafqiKef.js → login-button-BhdKFJ-F.js} +8 -9
  65. package/dist/chunks/{login-button-BafqiKef.js.map → login-button-BhdKFJ-F.js.map} +1 -1
  66. package/dist/chunks/{logout-button-D54NF9EW.js → logout-button-ClbKS9ss.js} +8 -9
  67. package/dist/chunks/{logout-button-D54NF9EW.js.map → logout-button-ClbKS9ss.js.map} +1 -1
  68. package/dist/chunks/{menu-DKxtACGA.js → menu-DVgG-el5.js} +39 -35
  69. package/dist/chunks/menu-DVgG-el5.js.map +1 -0
  70. package/dist/chunks/{menu-item-D9BqJtKZ.js → menu-item-Bj3NgLzB.js} +5 -6
  71. package/dist/chunks/{menu-item-D9BqJtKZ.js.map → menu-item-Bj3NgLzB.js.map} +1 -1
  72. package/dist/chunks/{photo-capture-BoZF621r.js → photo-capture-CVKE0SKx.js} +18 -19
  73. package/dist/chunks/{photo-capture-BoZF621r.js.map → photo-capture-CVKE0SKx.js.map} +1 -1
  74. package/dist/chunks/{photo-capture-modal-BLZtHDj1.js → photo-capture-modal-DARmhHUH.js} +26 -26
  75. package/dist/chunks/{photo-capture-modal-BLZtHDj1.js.map → photo-capture-modal-DARmhHUH.js.map} +1 -1
  76. package/dist/chunks/{provider-Btl6Lnki.js → provider-CBSBzOfP.js} +9 -10
  77. package/dist/chunks/{provider-Btl6Lnki.js.map → provider-CBSBzOfP.js.map} +1 -1
  78. package/dist/chunks/rdf-form-BeuzVBOP.js +339 -0
  79. package/dist/chunks/rdf-form-BeuzVBOP.js.map +1 -0
  80. package/dist/chunks/rdf-input-n73oeSkf.js +440 -0
  81. package/dist/chunks/rdf-input-n73oeSkf.js.map +1 -0
  82. package/dist/chunks/{rolldown-runtime-B1bRi_D7.js → rolldown-runtime-Cb76FRpK.js} +2 -2
  83. package/dist/chunks/{select-XkieYvDm.js → select-BuIxSm1A.js} +9 -10
  84. package/dist/chunks/{select-XkieYvDm.js.map → select-BuIxSm1A.js.map} +1 -1
  85. package/dist/chunks/{select-option-DUg4AWzw.js → select-option-Z8qZsCQo.js} +6 -7
  86. package/dist/chunks/{select-option-DUg4AWzw.js.map → select-option-Z8qZsCQo.js.map} +1 -1
  87. package/dist/chunks/{signup-button-D5wS8_gB.js → signup-button-B-AgjjAK.js} +8 -9
  88. package/dist/chunks/{signup-button-D5wS8_gB.js.map → signup-button-B-AgjjAK.js.map} +1 -1
  89. package/dist/chunks/{solid-emblem-XHk-oomv.js → solid-emblem-D4ItOckU.js} +2 -3
  90. package/dist/chunks/{solid-emblem-XHk-oomv.js.map → solid-emblem-D4ItOckU.js.map} +1 -1
  91. package/dist/chunks/{src-CJICzMIV.js → src-B5SL8UtS.js} +2741 -3207
  92. package/dist/chunks/src-B5SL8UtS.js.map +1 -0
  93. package/dist/chunks/style-CjYxsW7j.js +536 -0
  94. package/dist/chunks/style-CjYxsW7j.js.map +1 -0
  95. package/dist/components/account/Account.cjs.js.map +1 -1
  96. package/dist/components/account.js +1 -1
  97. package/dist/components/all.cjs.js +1 -1
  98. package/dist/components/all.esm.js +2 -1
  99. package/dist/components/avatar/Avatar.cjs.js.map +1 -1
  100. package/dist/components/avatar.js +1 -1
  101. package/dist/components/button/Button.cjs.js +1 -1
  102. package/dist/components/button/Button.cjs.js.map +1 -1
  103. package/dist/components/button/Button.esm.js +1 -3
  104. package/dist/components/button/Button.esm.js.map +1 -1
  105. package/dist/components/button.js +1 -1
  106. package/dist/components/combobox/Combobox.cjs.js +2 -2
  107. package/dist/components/combobox/Combobox.cjs.js.map +1 -1
  108. package/dist/components/combobox/Combobox.d.ts +1 -0
  109. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  110. package/dist/components/combobox/Combobox.esm.js +61 -47
  111. package/dist/components/combobox/Combobox.esm.js.map +1 -1
  112. package/dist/components/combobox-option/ComboboxOption.cjs.js.map +1 -1
  113. package/dist/components/combobox-option.js +1 -1
  114. package/dist/components/combobox.js +1 -1
  115. package/dist/components/dialog/Dialog.cjs.js +4 -4
  116. package/dist/components/dialog/Dialog.cjs.js.map +1 -1
  117. package/dist/components/dialog/Dialog.esm.js +5 -4
  118. package/dist/components/dialog/Dialog.esm.js.map +1 -1
  119. package/dist/components/dialog-content.js +1 -1
  120. package/dist/components/dialog-footer.js +1 -1
  121. package/dist/components/dialog-header.js +1 -1
  122. package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
  123. package/dist/components/dialog-provider.js +1 -1
  124. package/dist/components/dialog.js +1 -1
  125. package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
  126. package/dist/components/dialogs-root.js +1 -1
  127. package/dist/components/guard/Guard.cjs.js.map +1 -1
  128. package/dist/components/guard.js +1 -1
  129. package/dist/components/input/Input.cjs.js +3 -2
  130. package/dist/components/input/Input.cjs.js.map +1 -1
  131. package/dist/components/input/Input.d.ts +3 -0
  132. package/dist/components/input/Input.d.ts.map +1 -1
  133. package/dist/components/input/Input.esm.js +99 -53
  134. package/dist/components/input/Input.esm.js.map +1 -1
  135. package/dist/components/input/Input.styles.cjs.js +1 -1
  136. package/dist/components/input/Input.styles.cjs.js.map +1 -1
  137. package/dist/components/input/Input.styles.esm.js +1 -1
  138. package/dist/components/input/Input.styles.esm.js.map +1 -1
  139. package/dist/components/input.js +1 -1
  140. package/dist/components/login-button/LoginButton.cjs.js.map +1 -1
  141. package/dist/components/login-button.js +1 -1
  142. package/dist/components/login-modal/LoginModal.cjs.js.map +1 -1
  143. package/dist/components/login-modal.js +1 -1
  144. package/dist/components/logout-button/LogoutButton.cjs.js.map +1 -1
  145. package/dist/components/logout-button.js +1 -1
  146. package/dist/components/menu/Menu.cjs.js +1 -1
  147. package/dist/components/menu/Menu.cjs.js.map +1 -1
  148. package/dist/components/menu/Menu.d.ts.map +1 -1
  149. package/dist/components/menu/Menu.esm.js +1 -1
  150. package/dist/components/menu/Menu.esm.js.map +1 -1
  151. package/dist/components/menu/Menu.test.d.ts +1 -0
  152. package/dist/components/menu/Menu.test.d.ts.map +1 -0
  153. package/dist/components/menu-item/MenuItem.cjs.js.map +1 -1
  154. package/dist/components/menu-item.js +1 -1
  155. package/dist/components/menu.js +1 -1
  156. package/dist/components/photo-capture/PhotoCapture.cjs.js.map +1 -1
  157. package/dist/components/photo-capture-modal/PhotoCaptureModal.cjs.js +1 -1
  158. package/dist/components/photo-capture-modal/PhotoCaptureModal.cjs.js.map +1 -1
  159. package/dist/components/photo-capture-modal/PhotoCaptureModal.esm.js +2 -1
  160. package/dist/components/photo-capture-modal/PhotoCaptureModal.esm.js.map +1 -1
  161. package/dist/components/photo-capture-modal.js +1 -1
  162. package/dist/components/photo-capture.js +1 -1
  163. package/dist/components/provider/Provider.cjs.js.map +1 -1
  164. package/dist/components/provider.js +1 -1
  165. package/dist/components/rdf-form/RDFForm.cjs.js +12 -0
  166. package/dist/components/rdf-form/RDFForm.cjs.js.map +1 -0
  167. package/dist/components/rdf-form/RDFForm.d.ts +17 -0
  168. package/dist/components/rdf-form/RDFForm.d.ts.map +1 -0
  169. package/dist/components/rdf-form/RDFForm.esm.js +344 -0
  170. package/dist/components/rdf-form/RDFForm.esm.js.map +1 -0
  171. package/dist/components/rdf-form/RDForm.stories.d.ts +20 -0
  172. package/dist/components/rdf-form/RDForm.stories.d.ts.map +1 -0
  173. package/dist/components/rdf-form/index.cjs.js +2 -0
  174. package/dist/components/rdf-form/index.cjs.js.map +1 -0
  175. package/dist/components/rdf-form/index.d.ts +4 -0
  176. package/dist/components/rdf-form/index.d.ts.map +1 -0
  177. package/dist/components/rdf-form/index.esm.js +7 -0
  178. package/dist/components/rdf-form/index.esm.js.map +1 -0
  179. package/dist/components/rdf-form.js +2 -0
  180. package/dist/components/rdf-input/RDFInput.cjs.js +11 -0
  181. package/dist/components/rdf-input/RDFInput.cjs.js.map +1 -0
  182. package/dist/components/rdf-input/RDFInput.d.ts +24 -0
  183. package/dist/components/rdf-input/RDFInput.d.ts.map +1 -0
  184. package/dist/components/rdf-input/RDFInput.esm.js +349 -0
  185. package/dist/components/rdf-input/RDFInput.esm.js.map +1 -0
  186. package/dist/components/rdf-input/index.cjs.js +2 -0
  187. package/dist/components/rdf-input/index.cjs.js.map +1 -0
  188. package/dist/components/rdf-input/index.d.ts +4 -0
  189. package/dist/components/rdf-input/index.d.ts.map +1 -0
  190. package/dist/components/rdf-input/index.esm.js +7 -0
  191. package/dist/components/rdf-input/index.esm.js.map +1 -0
  192. package/dist/components/rdf-input.js +2 -0
  193. package/dist/components/select/Select.cjs.js.map +1 -1
  194. package/dist/components/select-option/SelectOption.cjs.js.map +1 -1
  195. package/dist/components/select-option.js +1 -1
  196. package/dist/components/select.js +1 -1
  197. package/dist/components/signup-button/SignupButton.cjs.js.map +1 -1
  198. package/dist/components/signup-button.js +1 -1
  199. package/dist/components/solid-emblem.js +1 -1
  200. package/dist/components.js +26 -25
  201. package/dist/index.cjs.js +1 -1
  202. package/dist/index.cjs.js.map +1 -1
  203. package/dist/index.d.ts +1 -0
  204. package/dist/index.d.ts.map +1 -1
  205. package/dist/index.esm.js +3 -2
  206. package/dist/index.esm.js.map +1 -1
  207. package/dist/index.js +8 -7
  208. package/dist/lib/auth/SolidAuth.cjs.js +1 -1
  209. package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
  210. package/dist/lib/auth/SolidAuth.esm.js +3 -1
  211. package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
  212. package/dist/lib/auth/context.cjs.js.map +1 -1
  213. package/dist/lib/components/dialog-component/DialogComponent.cjs.js.map +1 -1
  214. package/dist/lib/components/form-control-component/FormControlComponent.cjs.js.map +1 -1
  215. package/dist/lib/components/web-component/WebComponent.cjs.js +1 -1
  216. package/dist/lib/components/web-component/WebComponent.cjs.js.map +1 -1
  217. package/dist/lib/components/web-component/WebComponent.esm.js +2 -1
  218. package/dist/lib/components/web-component/WebComponent.esm.js.map +1 -1
  219. package/dist/lib/dialogs/context.cjs.js.map +1 -1
  220. package/dist/lib/file-explorer/context.cjs.js +2 -0
  221. package/dist/lib/file-explorer/context.cjs.js.map +1 -0
  222. package/dist/lib/file-explorer/context.d.ts +22 -0
  223. package/dist/lib/file-explorer/context.d.ts.map +1 -0
  224. package/dist/lib/file-explorer/context.esm.js +7 -0
  225. package/dist/lib/file-explorer/context.esm.js.map +1 -0
  226. package/dist/lib/forms/fieldParams.cjs.js +2 -0
  227. package/dist/lib/forms/fieldParams.cjs.js.map +1 -0
  228. package/dist/lib/forms/fieldParams.d.ts +21 -0
  229. package/dist/lib/forms/fieldParams.d.ts.map +1 -0
  230. package/dist/lib/forms/fieldParams.esm.js +74 -0
  231. package/dist/lib/forms/fieldParams.esm.js.map +1 -0
  232. package/dist/lib/forms/rdfFormsHelper.cjs.js +2 -0
  233. package/dist/lib/forms/rdfFormsHelper.cjs.js.map +1 -0
  234. package/dist/lib/forms/rdfFormsHelper.d.ts +16 -0
  235. package/dist/lib/forms/rdfFormsHelper.d.ts.map +1 -0
  236. package/dist/lib/forms/rdfFormsHelper.esm.js +34 -0
  237. package/dist/lib/forms/rdfFormsHelper.esm.js.map +1 -0
  238. package/dist/lib/forms/store/NoopStore.cjs.js +2 -0
  239. package/dist/lib/forms/store/NoopStore.cjs.js.map +1 -0
  240. package/dist/lib/forms/store/NoopStore.d.ts +6 -0
  241. package/dist/lib/forms/store/NoopStore.d.ts.map +1 -0
  242. package/dist/lib/forms/store/NoopStore.esm.js +10 -0
  243. package/dist/lib/forms/store/NoopStore.esm.js.map +1 -0
  244. package/dist/lib/forms/store/StoreContext.cjs.js +2 -0
  245. package/dist/lib/forms/store/StoreContext.cjs.js.map +1 -0
  246. package/dist/lib/forms/store/StoreContext.d.ts +10 -0
  247. package/dist/lib/forms/store/StoreContext.d.ts.map +1 -0
  248. package/dist/lib/forms/store/StoreContext.esm.js +8 -0
  249. package/dist/lib/forms/store/StoreContext.esm.js.map +1 -0
  250. package/dist/lib/ns.cjs.js.map +1 -1
  251. package/dist/lib/pad.cjs.js +1 -1
  252. package/dist/lib/pad.cjs.js.map +1 -1
  253. package/dist/lib/pad.esm.js +6 -5
  254. package/dist/lib/pad.esm.js.map +1 -1
  255. package/dist/lib/participation.cjs.js +1 -1
  256. package/dist/lib/participation.cjs.js.map +1 -1
  257. package/dist/lib/participation.esm.js +4 -2
  258. package/dist/lib/participation.esm.js.map +1 -1
  259. package/dist/lib/preferences.cjs.js +1 -1
  260. package/dist/lib/preferences.cjs.js.map +1 -1
  261. package/dist/lib/preferences.esm.js +9 -7
  262. package/dist/lib/preferences.esm.js.map +1 -1
  263. package/dist/lib/table.cjs.js +2 -2
  264. package/dist/lib/table.cjs.js.map +1 -1
  265. package/dist/lib/table.esm.js +2 -2
  266. package/dist/lib/table.esm.js.map +1 -1
  267. package/dist/loader.js +8 -7
  268. package/dist/login/login.cjs.js.map +1 -1
  269. package/dist/media/media-capture.esm.js +2 -1
  270. package/dist/media/media-capture.esm.js.map +1 -1
  271. package/dist/solid-ui.js +107 -156
  272. package/dist/solid-ui.min.js +107 -156
  273. package/dist/solid-ui.min.js.map +1 -1
  274. package/dist/storybook/components/StorybookProvider.d.ts +1 -0
  275. package/dist/storybook/components/StorybookProvider.d.ts.map +1 -1
  276. package/dist/storybook/store/StorybookStore.d.ts +6 -0
  277. package/dist/storybook/store/StorybookStore.d.ts.map +1 -0
  278. package/dist/utils/headerFooterHelpers.cjs.js +1 -1
  279. package/dist/utils/headerFooterHelpers.cjs.js.map +1 -1
  280. package/dist/utils/headerFooterHelpers.esm.js +2 -1
  281. package/dist/utils/headerFooterHelpers.esm.js.map +1 -1
  282. package/dist/utils/index.cjs.js +1 -1
  283. package/dist/utils/index.cjs.js.map +1 -1
  284. package/dist/utils/index.esm.js +1 -1
  285. package/dist/utils/index.esm.js.map +1 -1
  286. package/dist/utils/keyHelpers/accessData.cjs.js +1 -1
  287. package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
  288. package/dist/utils/keyHelpers/accessData.d.ts +3 -3
  289. package/dist/utils/keyHelpers/accessData.d.ts.map +1 -1
  290. package/dist/utils/keyHelpers/accessData.esm.js +2 -1
  291. package/dist/utils/keyHelpers/accessData.esm.js.map +1 -1
  292. package/dist/utils/keyHelpers/otherHelpers.d.ts +1 -1
  293. package/dist/utils/keyHelpers/otherHelpers.d.ts.map +1 -1
  294. package/dist/widgets/buttons.cjs.js +2 -2
  295. package/dist/widgets/buttons.cjs.js.map +1 -1
  296. package/dist/widgets/buttons.esm.js +10 -5
  297. package/dist/widgets/buttons.esm.js.map +1 -1
  298. package/dist/widgets/dragAndDrop.cjs.js +1 -1
  299. package/dist/widgets/dragAndDrop.cjs.js.map +1 -1
  300. package/dist/widgets/dragAndDrop.esm.js +1 -1
  301. package/dist/widgets/dragAndDrop.esm.js.map +1 -1
  302. package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js +25 -18
  303. package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js.map +1 -1
  304. package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
  305. package/dist/widgets/forms/autocomplete/publicData.cjs.js +1 -1
  306. package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
  307. package/dist/widgets/forms/autocomplete/publicData.d.ts +3 -3
  308. package/dist/widgets/forms/autocomplete/publicData.d.ts.map +1 -1
  309. package/dist/widgets/forms/autocomplete/publicData.esm.js +6 -4
  310. package/dist/widgets/forms/autocomplete/publicData.esm.js.map +1 -1
  311. package/dist/widgets/forms/basic.cjs.js +1 -1
  312. package/dist/widgets/forms/basic.cjs.js.map +1 -1
  313. package/dist/widgets/forms/basic.esm.js +27 -25
  314. package/dist/widgets/forms/basic.esm.js.map +1 -1
  315. package/dist/widgets/forms/formStyle.cjs.js +1 -1
  316. package/dist/widgets/forms/formStyle.cjs.js.map +1 -1
  317. package/dist/widgets/forms/formStyle.esm.js +4 -4
  318. package/dist/widgets/forms/formStyle.esm.js.map +1 -1
  319. package/dist/widgets/forms.cjs.js +2 -2
  320. package/dist/widgets/forms.cjs.js.map +1 -1
  321. package/dist/widgets/forms.esm.js +10 -8
  322. package/dist/widgets/forms.esm.js.map +1 -1
  323. package/dist/widgets/multiSelect.cjs.js +1 -1
  324. package/dist/widgets/multiSelect.cjs.js.map +1 -1
  325. package/dist/widgets/multiSelect.esm.js +2 -1
  326. package/dist/widgets/multiSelect.esm.js.map +1 -1
  327. package/dist/widgets/peoplePicker.cjs.js.map +1 -1
  328. package/package.json +4 -3
  329. package/dist/chunks/auth-Knq99zZ9.js.map +0 -1
  330. package/dist/chunks/chunk.7MPIABXH-DNcYOuE8.js.map +0 -1
  331. package/dist/chunks/combobox-B5j4LoHY.js.map +0 -1
  332. package/dist/chunks/components-BD458q30.js +0 -758
  333. package/dist/chunks/components-BD458q30.js.map +0 -1
  334. package/dist/chunks/footer-BLSjn5ur.js +0 -144
  335. package/dist/chunks/footer-BLSjn5ur.js.map +0 -1
  336. package/dist/chunks/headerFooterHelpers-CPd5d20q.js +0 -52
  337. package/dist/chunks/headerFooterHelpers-CPd5d20q.js.map +0 -1
  338. package/dist/chunks/input-CCpEhtqA.js.map +0 -1
  339. package/dist/chunks/lit-C4H1jI4q.js +0 -527
  340. package/dist/chunks/lit-C4H1jI4q.js.map +0 -1
  341. package/dist/chunks/menu-DKxtACGA.js.map +0 -1
  342. package/dist/chunks/solid-logic.esm-BrMdCG2_.js.map +0 -1
  343. package/dist/chunks/src-CJICzMIV.js.map +0 -1
  344. package/dist/components/footer/index.cjs.js +0 -1
  345. package/dist/components/footer/index.d.ts +0 -2
  346. package/dist/components/footer/index.d.ts.map +0 -1
  347. package/dist/components/footer/index.esm.js +0 -3
  348. package/dist/components/footer.js +0 -2
  349. package/dist/v2/components/layout/footer/Footer.cjs.js +0 -73
  350. package/dist/v2/components/layout/footer/Footer.cjs.js.map +0 -1
  351. package/dist/v2/components/layout/footer/Footer.d.ts +0 -60
  352. package/dist/v2/components/layout/footer/Footer.d.ts.map +0 -1
  353. package/dist/v2/components/layout/footer/Footer.esm.js +0 -143
  354. package/dist/v2/components/layout/footer/Footer.esm.js.map +0 -1
  355. package/dist/v2/components/layout/footer/Footer.test.d.ts +0 -1
  356. package/dist/v2/components/layout/footer/Footer.test.d.ts.map +0 -1
  357. package/dist/v2/components/layout/footer/index.cjs.js +0 -2
  358. package/dist/v2/components/layout/footer/index.cjs.js.map +0 -1
  359. package/dist/v2/components/layout/footer/index.d.ts +0 -3
  360. package/dist/v2/components/layout/footer/index.d.ts.map +0 -1
  361. package/dist/v2/components/layout/footer/index.esm.js +0 -8
  362. package/dist/v2/components/layout/footer/index.esm.js.map +0 -1
@@ -0,0 +1,440 @@
1
+ import { I as e, S as t, m as n, x as r } from "./index.esm-CyyOkz04.js";
2
+ import { t as i, u as a } from "./style-CjYxsW7j.js";
3
+ import { b as o, g as s, i as c, o as l, r as u, u as d, x as f, y as p } from "./components-DrP7BOrs.js";
4
+ import "./input-CFDN76Y5.js";
5
+ //#region src/lib/forms/rdfFormsHelper.ts
6
+ async function m(e, t) {
7
+ let n = r(t);
8
+ return e.holds(void 0, void 0, void 0, n) && e.removeStatements(e.statementsMatching(void 0, void 0, void 0, n)), await e.fetcher.load(t, {
9
+ force: !0,
10
+ clearPreviousData: !0
11
+ });
12
+ }
13
+ function h(e, t) {
14
+ let r = t.map((t) => {
15
+ let r = e.any(t, n.ui("sequence")), i = r ? Number(r.value) : 9999;
16
+ return [Number.isNaN(i) ? 9999 : i, t];
17
+ });
18
+ return r.sort((e, t) => e[0] - t[0]), r.map((e) => e[1]);
19
+ }
20
+ function g(e, t) {
21
+ let n = e.findTypeURIs(t), r = e.bottomTypeURIs(n), i = [];
22
+ for (let e in r) i.push(e);
23
+ return i[0];
24
+ }
25
+ function _(e, t) {
26
+ let i = t.split("#")[0], a = t.includes("#") ? t.split("#")[1] : null;
27
+ if (a) {
28
+ let t = r(i + "#" + a);
29
+ if (e.holds(t, n.rdf("type"), n.ui("Form"))) return t;
30
+ }
31
+ return e.each(null, n.rdf("type"), n.ui("Form")).find((e) => e.termType === "NamedNode") || null;
32
+ }
33
+ //#endregion
34
+ //#region src/lib/forms/fieldParams.ts
35
+ var v = {
36
+ [n.ui("ColorField").uri]: {
37
+ size: 9,
38
+ type: "color",
39
+ style: "height: 3em;",
40
+ dt: "color",
41
+ 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*$/
42
+ },
43
+ [n.ui("DateField").uri]: {
44
+ size: 20,
45
+ type: "date",
46
+ dt: "date",
47
+ pattern: /^\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?Z?\s*$/
48
+ },
49
+ [n.ui("DateTimeField").uri]: {
50
+ size: 20,
51
+ type: "datetime-local",
52
+ dt: "dateTime",
53
+ 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*$/
54
+ },
55
+ [n.ui("TimeField").uri]: {
56
+ size: 10,
57
+ type: "time",
58
+ dt: "time",
59
+ pattern: /^\s*([0-2]?[0-9]:[0-5][0-9](:[0-5][0-9])?)\s*$/
60
+ },
61
+ [n.ui("IntegerField").uri]: {
62
+ size: 12,
63
+ style: "text-align: right;",
64
+ dt: "integer",
65
+ pattern: /^\s*-?[0-9]+\s*$/
66
+ },
67
+ [n.ui("DecimalField").uri]: {
68
+ size: 12,
69
+ style: "text-align: right;",
70
+ dt: "decimal",
71
+ pattern: /^\s*-?[0-9]*(\.[0-9]*)?\s*$/
72
+ },
73
+ [n.ui("FloatField").uri]: {
74
+ size: 12,
75
+ style: "text-align: right;",
76
+ dt: "float",
77
+ pattern: /^\s*-?[0-9]*(\.[0-9]*)?((e|E)-?[0-9]*)?\s*$/
78
+ },
79
+ [n.ui("SingleLineTextField").uri]: {},
80
+ [n.ui("NamedNodeURIField").uri]: { namedNode: !0 },
81
+ [n.ui("TextField").uri]: {},
82
+ [n.ui("PhoneField").uri]: {
83
+ size: 20,
84
+ defaultInputValue: "tel:",
85
+ pattern: /^\+?[\d-]+[\d]*$/
86
+ },
87
+ [n.ui("EmailField").uri]: {
88
+ size: 30,
89
+ defaultInputValue: "mailto:",
90
+ pattern: /^\s*.*@.*\..*\s*$/
91
+ },
92
+ [n.ui("Group").uri]: { style: i.formGroupStyle },
93
+ [n.ui("Comment").uri]: {
94
+ element: "p",
95
+ style: i.commentStyle
96
+ },
97
+ [n.ui("Heading").uri]: {
98
+ element: "h3",
99
+ style: i.formHeadingStyle
100
+ }
101
+ }, y = new class {
102
+ get store() {
103
+ throw Error("Cannot use RDF forms without a store");
104
+ }
105
+ }(), b = f(Symbol("storeContext")), x, S, C, w, T, E, D, O, k, A, j, M, N, P, F, I, L;
106
+ function R(e, t, n) {
107
+ return (t = G(t)) in e ? Object.defineProperty(e, t, {
108
+ value: n,
109
+ enumerable: !0,
110
+ configurable: !0,
111
+ writable: !0
112
+ }) : e[t] = n, e;
113
+ }
114
+ function z(e, t, n) {
115
+ B(e, t), t.set(e, n);
116
+ }
117
+ function B(e, t) {
118
+ if (t.has(e)) throw TypeError("Cannot initialize the same private elements twice on an object");
119
+ }
120
+ function V(e, t, n) {
121
+ return e.set(U(e, t), n), n;
122
+ }
123
+ function H(e, t) {
124
+ return e.get(U(e, t));
125
+ }
126
+ function U(e, t, n) {
127
+ if (typeof e == "function" ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
128
+ throw TypeError("Private element is not present on this object");
129
+ }
130
+ function W(e, t, n, r, i, a) {
131
+ function o(e, t, n) {
132
+ return function(r, i) {
133
+ return n && n(r), e[t].call(r, i);
134
+ };
135
+ }
136
+ function s(e, t) {
137
+ for (var n = 0; n < e.length; n++) e[n].call(t);
138
+ return t;
139
+ }
140
+ function c(e, t, n, r) {
141
+ if (typeof e != "function" && (r || e !== void 0)) throw TypeError(t + " must " + (n || "be") + " a function" + (r ? "" : " or undefined"));
142
+ return e;
143
+ }
144
+ function l(e, t, n, r, i, a, s, l, u, d, f, p, m) {
145
+ function h(e) {
146
+ if (!m(e)) throw TypeError("Attempted to access private element on non-instance");
147
+ }
148
+ var g, _ = t[0], v = t[3], y = !l;
149
+ if (!y) {
150
+ n || Array.isArray(_) || (_ = [_]);
151
+ var b = {}, x = [], S = i === 3 ? "get" : i === 4 || p ? "set" : "value";
152
+ d ? (f || p ? b = {
153
+ get: K(function() {
154
+ return v(this);
155
+ }, r, "get"),
156
+ set: function(e) {
157
+ t[4](this, e);
158
+ }
159
+ } : b[S] = v, f || K(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
160
+ }
161
+ for (var C = e, w = _.length - 1; w >= 0; w -= n ? 2 : 1) {
162
+ var T = _[w], E = n ? _[w - 1] : void 0, D = {}, O = {
163
+ kind: [
164
+ "field",
165
+ "accessor",
166
+ "method",
167
+ "getter",
168
+ "setter",
169
+ "class"
170
+ ][i],
171
+ name: r,
172
+ metadata: a,
173
+ addInitializer: function(e, t) {
174
+ if (e.v) throw Error("attempted to call addInitializer after decoration was finished");
175
+ c(t, "An initializer", "be", !0), s.push(t);
176
+ }.bind(null, D)
177
+ };
178
+ try {
179
+ if (y) (g = c(T.call(E, C, O), "class decorators", "return")) && (C = g);
180
+ else {
181
+ var k, A;
182
+ O.static = u, O.private = d, d ? i === 2 ? k = function(e) {
183
+ return h(e), b.value;
184
+ } : (i < 4 && (k = o(b, "get", h)), i !== 3 && (A = o(b, "set", h))) : (k = function(e) {
185
+ return e[r];
186
+ }, (i < 2 || i === 4) && (A = function(e, t) {
187
+ e[r] = t;
188
+ }));
189
+ var j = O.access = { has: d ? m.bind() : function(e) {
190
+ return r in e;
191
+ } };
192
+ if (k && (j.get = k), A && (j.set = A), C = T.call(E, p ? {
193
+ get: b.get,
194
+ set: b.set
195
+ } : b[S], O), p) {
196
+ if (typeof C == "object" && C) (g = c(C.get, "accessor.get")) && (b.get = g), (g = c(C.set, "accessor.set")) && (b.set = g), (g = c(C.init, "accessor.init")) && x.push(g);
197
+ else if (C !== void 0) throw TypeError("accessor decorators must return an object with get, set, or init properties or void 0");
198
+ } else c(C, (f ? "field" : "method") + " decorators", "return") && (f ? x.push(C) : b[S] = C);
199
+ }
200
+ } finally {
201
+ D.v = !0;
202
+ }
203
+ }
204
+ return (f || p) && l.push(function(e, t) {
205
+ for (var n = x.length - 1; n >= 0; n--) t = x[n].call(e, t);
206
+ return t;
207
+ }), f || y || (d ? p ? l.push(o(b, "get"), o(b, "set")) : l.push(i === 2 ? b[S] : o.call.bind(b[S])) : Object.defineProperty(e, r, b)), C;
208
+ }
209
+ function u(e, t) {
210
+ return Object.defineProperty(e, Symbol.metadata || Symbol.for("Symbol.metadata"), {
211
+ configurable: !0,
212
+ enumerable: !0,
213
+ value: t
214
+ });
215
+ }
216
+ if (arguments.length >= 6) var d = a[Symbol.metadata || Symbol.for("Symbol.metadata")];
217
+ var f = Object.create(d ?? null), p = function(e, t, n, r) {
218
+ var i, a, o = [], c = function(t) {
219
+ return te(t) === e;
220
+ }, u = /* @__PURE__ */ new Map();
221
+ function d(e) {
222
+ e && o.push(s.bind(null, e));
223
+ }
224
+ for (var f = 0; f < t.length; f++) {
225
+ var p = t[f];
226
+ if (Array.isArray(p)) {
227
+ var m = p[1], h = p[2], g = p.length > 3, _ = 16 & m, v = !!(8 & m), y = (m &= 7) == 0, b = h + "/" + v;
228
+ if (!y && !g) {
229
+ var x = u.get(b);
230
+ if (!0 === x || x === 3 && m !== 4 || x === 4 && m !== 3) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h);
231
+ u.set(b, !(m > 2) || m);
232
+ }
233
+ l(v ? e : e.prototype, p, _, g ? "#" + h : G(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
234
+ }
235
+ }
236
+ return d(i), d(a), o;
237
+ }(e, t, i, f);
238
+ return n.length || u(e, f), {
239
+ e: p,
240
+ get c() {
241
+ var t = [];
242
+ return n.length && [u(l(e, [n], r, e.name, 5, f, t), f), s.bind(null, t, e)];
243
+ }
244
+ };
245
+ }
246
+ function G(e) {
247
+ var t = ee(e, "string");
248
+ return typeof t == "symbol" ? t : t + "";
249
+ }
250
+ function ee(e, t) {
251
+ if (typeof e != "object" || !e) return e;
252
+ var n = e[Symbol.toPrimitive];
253
+ if (n !== void 0) {
254
+ var r = n.call(e, t || "default");
255
+ if (typeof r != "object") return r;
256
+ throw TypeError("@@toPrimitive must return a primitive value.");
257
+ }
258
+ return (t === "string" ? String : Number)(e);
259
+ }
260
+ function K(e, t, n) {
261
+ typeof t == "symbol" && (t = (t = t.description) ? "[" + t + "]" : "");
262
+ try {
263
+ Object.defineProperty(e, "name", {
264
+ configurable: !0,
265
+ value: n ? n + " " + t : t
266
+ });
267
+ } catch {}
268
+ return e;
269
+ }
270
+ function te(e) {
271
+ if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (e === null ? "null" : typeof e));
272
+ return e;
273
+ }
274
+ w = [s("solid-ui-rdf-input")];
275
+ var q, J = /*#__PURE__*/ new WeakMap(), Y = /*#__PURE__*/ new WeakMap(), X = /*#__PURE__*/ new WeakMap(), Z = /*#__PURE__*/ new WeakMap(), Q = /*#__PURE__*/ new WeakMap(), $ = /*#__PURE__*/ new WeakMap();
276
+ L = (T = o({
277
+ context: b,
278
+ subscribe: !0
279
+ }), D = c({
280
+ attribute: !1,
281
+ type: Object
282
+ }), k = c({
283
+ attribute: !1,
284
+ type: Object
285
+ }), j = c({ type: Number }), N = u(), F = c({
286
+ type: Boolean,
287
+ reflect: !0
288
+ }), "storeContext"), x = class extends l {
289
+ get [L]() {
290
+ return H(J, this);
291
+ }
292
+ set storeContext(e) {
293
+ V(J, this, e);
294
+ }
295
+ get formSubject() {
296
+ return H(Y, this);
297
+ }
298
+ set formSubject(e) {
299
+ V(Y, this, e);
300
+ }
301
+ get dataSubject() {
302
+ return H(X, this);
303
+ }
304
+ set dataSubject(e) {
305
+ V(X, this, e);
306
+ }
307
+ get storeVersion() {
308
+ return H(Z, this);
309
+ }
310
+ set storeVersion(e) {
311
+ V(Z, this, e);
312
+ }
313
+ get localInputValue() {
314
+ return H(Q, this);
315
+ }
316
+ set localInputValue(e) {
317
+ V(Q, this, e);
318
+ }
319
+ get readonly() {
320
+ return H($, this);
321
+ }
322
+ set readonly(e) {
323
+ V($, this, e);
324
+ }
325
+ constructor() {
326
+ super(), z(this, J, (S(this), E(this, y))), z(this, Y, O(this, null)), z(this, X, A(this, null)), z(this, Z, M(this, 0)), z(this, Q, P(this, null)), R(this, "_updateInFlight", !1), R(this, "_pendingUpdateValue", null), z(this, $, I(this, !0)), this.id = p();
327
+ }
328
+ render() {
329
+ let e = this.getDocument(this.formSubject), t = this.getFormProperty(this.formSubject, n.ui("property"), e), r = this.getInputLabel(this.formSubject, t, e), i = this.getReadOnly(this.readonly, this.formSubject, e), a = this.formSubject ? g(this.storeContext.store, this.formSubject) : void 0, o = a ? v[a] ?? {} : {}, s = o.type ?? "text", c = this.getSelectedTerm(this.dataSubject, t, this.formSubject, o), l = i ? "" : this.defaultInputValue(o), u = this._updateInFlight || this._pendingUpdateValue !== null ? this.localInputValue ?? "" : this.termToInputValue(c);
330
+ return d`
331
+ <solid-ui-input
332
+ label="${r}"
333
+ name="name-${this.id}"
334
+ .value=${u}
335
+ .placeholder=${l}
336
+ type="${s}"
337
+ ?readonly=${i}
338
+ @input=${this.updateData}
339
+ ></solid-ui-input>`;
340
+ }
341
+ getDocument(e) {
342
+ return e?.doc ? e.doc() : void 0;
343
+ }
344
+ getFormProperty(e, t, n) {
345
+ if (e) return this.storeContext.store.any(e, t, null, n);
346
+ }
347
+ getInputLabel(e, t, r) {
348
+ if (!e) return "";
349
+ let i = this.storeContext.store.any(e, n.ui("label"), null, r), o = t ? a(t, !0) : "";
350
+ return i ? i.value : o;
351
+ }
352
+ getReadOnly(e, t, r) {
353
+ return t && e === !1 ? !!this.storeContext.store.anyJS(t, n.ui("suppressEmptyUneditable"), null, r) : e;
354
+ }
355
+ getSelectedTerm(e, t, r, i) {
356
+ let a = r ? this.storeContext.store.any(r, n.ui("default")) : void 0;
357
+ return !t || !e ? a : this.storeContext.store.any(e, t) || a;
358
+ }
359
+ termToInputValue(e) {
360
+ if (!e || !("value" in e) || !e.value) return "";
361
+ try {
362
+ return decodeURIComponent(e.value);
363
+ } catch {
364
+ return String(e.value);
365
+ }
366
+ }
367
+ defaultInputValue(e = {}) {
368
+ return (e.defaultInputValue ?? "").replace(/ /g, "");
369
+ }
370
+ async updateData(e) {
371
+ let t = e.target.value;
372
+ this.localInputValue = t, this._pendingUpdateValue = t, !this._updateInFlight && await this.runPendingUpdate();
373
+ }
374
+ async runPendingUpdate() {
375
+ if (this._pendingUpdateValue === null) return;
376
+ let r = this._pendingUpdateValue;
377
+ this._pendingUpdateValue = null, this._updateInFlight = !0;
378
+ let i = this.getFormProperty(this.formSubject, n.ui("property"), this.getDocument(this.formSubject));
379
+ if (!i || !this.dataSubject) {
380
+ this._updateInFlight = !1, this.localInputValue = "";
381
+ return;
382
+ }
383
+ let a = this.getDocument(this.dataSubject);
384
+ if (a && this.storeContext.store.updater?.editable(a) === !1) {
385
+ this._updateInFlight = !1;
386
+ return;
387
+ }
388
+ let o = this.storeContext.store.statementsMatching(this.dataSubject, i), s = [];
389
+ if (r) {
390
+ let a, c = this.formSubject ? g(this.storeContext.store, this.formSubject) : void 0, l = c ? v[c] ?? {} : {};
391
+ l.namedNode ? a = this.storeContext.store.sym(r) : l.defaultInputValue ? (a = encodeURIComponent(r.replace(/ /g, "")), a = this.storeContext.store.sym(l.defaultInputValue + a)) : a = l.dt ? new e(r.trim(), void 0, n.xsd(l.dt)) : new e(r), s = o.map((e) => t(e.subject, e.predicate, a, e.why)), s.length === 0 && (s = [t(this.dataSubject, i, a, this.getDocument(this.dataSubject))]);
392
+ }
393
+ try {
394
+ await this.storeContext.store.updater.updateMany(o, s), this.storeVersion += 1;
395
+ } catch (e) {
396
+ console.error("RDFInput update failed", e);
397
+ } finally {
398
+ this._updateInFlight = !1;
399
+ }
400
+ this._pendingUpdateValue !== null && await this.runPendingUpdate();
401
+ }
402
+ }, {e: [E, O, A, M, P, I, S], c: [q, C]} = W(x, [
403
+ [
404
+ T,
405
+ 1,
406
+ "storeContext"
407
+ ],
408
+ [
409
+ D,
410
+ 1,
411
+ "formSubject"
412
+ ],
413
+ [
414
+ k,
415
+ 1,
416
+ "dataSubject"
417
+ ],
418
+ [
419
+ j,
420
+ 1,
421
+ "storeVersion"
422
+ ],
423
+ [
424
+ N,
425
+ 1,
426
+ "localInputValue"
427
+ ],
428
+ [
429
+ F,
430
+ 1,
431
+ "readonly"
432
+ ]
433
+ ], w, 0, void 0, l), C();
434
+ //#endregion
435
+ //#region src/components/rdf-input/index.ts
436
+ var ne = q;
437
+ //#endregion
438
+ export { m as a, b as i, q as n, _ as o, y as r, h as s, ne as t };
439
+
440
+ //# sourceMappingURL=rdf-input-n73oeSkf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rdf-input-n73oeSkf.js","names":["sym","parse","ns","baseUri","loadDocument","store","documentSource","documentName","documentURI","preferRemote","finalDocumentUri","document","holds","undefined","removeStatements","statementsMatching","parseSource","Promise","resolve","reject","err","console","error","fetcher","load","force","clearPreviousData","then","catch","trim","length","Error","fetchData","sortBySequence","list","subfields","map","p","k","any","ui","seq","Number","value","isNaN","sort","a","b","pair","mostSpecificClassURI","subject","typeUri","findTypeURIs","specificTypes","bottomTypeURIs","finalTypes","t","push","findForm","sourceUri","docUrl","split","fragment","includes","candidate","rdf","forms","each","found","find","term","termType","ns","style","fieldParams","ui","uri","size","type","dt","pattern","namedNode","defaultInputValue","formGroupStyle","element","commentStyle","formHeadingStyle","NoopStore","store","Error","createContext","NoopStore","DEFAULT_STORE","storeContext","Symbol","property","state","html","ns","customElement","generateId","WebComponent","Literal","st","label","mostSpecificClassURI","fieldParams","fieldTypeParams","DEFAULT_STORE","storeContext","consume","_classDecs","_RDFInput","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_storeContextDecs","context","subscribe","_formSubjectDecs","attribute","type","Object","_dataSubjectDecs","_storeVersionDecs","Number","_localInputValueDecs","_readonlyDecs","Boolean","reflect","RDFInput","_classPrivateFieldGet","v","_classPrivateFieldSet","formSubject","dataSubject","storeVersion","localInputValue","readonly","constructor","_classPrivateFieldInitSpec","_initProto","_init_storeContext","_init_formSubject","_init_dataSubject","_init_storeVersion","_init_localInputValue","_defineProperty","_init_readonly","id","render","formDocument","getDocument","uiPropertyTerm","getFormProperty","ui","inputLabel","getInputLabel","getReadOnly","fieldType","store","undefined","params","inputType","selectedTerm","getSelectedTerm","placeholder","defaultInputValue","inputValue","_updateInFlight","_pendingUpdateValue","termToInputValue","updateData","subject","doc","graph","any","formFieldSubject","uiLabel","propertyLabel","value","anyJS","defaultTerm","inputTerm","term","decodeURIComponent","String","stripped","replace","e","newValue","target","runPendingUpdate","dataDocument","updater","editable","toDeleteSt","statementsMatching","toInsertSt","objectFromNewValue","namedNode","sym","encodeURIComponent","dt","trim","xsd","map","statement","predicate","why","length","updateMany","err","console","error","_RDFInput2","c","_initClass","_applyDecs","default","RDFInput"],"sources":["../../src/lib/forms/rdfFormsHelper.ts","../../src/lib/forms/fieldParams.ts","../../src/lib/forms/store/NoopStore.ts","../../src/lib/forms/store/StoreContext.ts","../../src/components/rdf-input/RDFInput.ts","../../src/components/rdf-input/index.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","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","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","import { createContext } from '@lit/context'\nimport { LiveStore } from 'rdflib'\nimport NoopStore from './NoopStore'\n\nexport interface StoreContext {\n store: LiveStore\n}\n\nexport const DEFAULT_STORE = new NoopStore()\nexport const storeContext = createContext<StoreContext>(Symbol('storeContext'))\n","import { property, state } from 'lit/decorators.js'\nimport { html } from 'lit/html.js'\nimport ns from '../../lib/ns'\nimport { customElement, generateId, WebComponent } from '@/lib/components'\nimport { Literal, NamedNode, st } from 'rdflib'\nimport { label } from '../../utils'\nimport { mostSpecificClassURI } from '../../lib/forms/rdfFormsHelper'\nimport { FieldParamsObject, fieldParams as fieldTypeParams, InputType } from '../../lib/forms/fieldParams'\nimport { DEFAULT_STORE, storeContext, StoreContext } from '@/lib/forms/store/StoreContext'\nimport { consume } from '@lit/context'\nimport '@/components/input'\n\n@customElement('solid-ui-rdf-input')\nexport default class RDFInput extends WebComponent {\n // example RDF Turtle format source:\n // :nameField a ui:SingleLineTextField ;\n // ui:property vcard:fn;\n // ui:label \"name\" .\n\n // formSubject describes the field metadata\n // dataSubject points to the data resource containing the value\n\n @consume({ context: storeContext, subscribe: true })\n private accessor storeContext: StoreContext = DEFAULT_STORE\n\n @property({ attribute: false, type: Object })\n accessor formSubject: NamedNode | null = null\n\n @property({ attribute: false, type: Object })\n accessor dataSubject: NamedNode | null = null\n\n @property({ type: Number })\n accessor storeVersion = 0\n\n @state()\n private accessor localInputValue: string | null = null\n\n private _updateInFlight = false\n private _pendingUpdateValue: string | null = null\n\n @property({ type: Boolean, reflect: true })\n accessor readonly: boolean = true // to protect data, we default to not editable\n\n constructor () {\n super()\n\n this.id = generateId()\n }\n\n render () {\n const formDocument = this.getDocument(this.formSubject)\n\n // for building the HTML input element\n const uiPropertyTerm = this.getFormProperty(this.formSubject, ns.ui('property'), formDocument)\n const inputLabel = this.getInputLabel(this.formSubject, uiPropertyTerm, formDocument)\n const readonly = this.getReadOnly(this.readonly, this.formSubject, formDocument)\n\n const fieldType = this.formSubject ? mostSpecificClassURI(this.storeContext.store, this.formSubject) : undefined\n const params = fieldType ? fieldTypeParams[fieldType] ?? {} : {}\n const inputType: InputType = params.type ?? 'text'\n\n // for populating the HTML input element\n const selectedTerm = this.getSelectedTerm(this.dataSubject, uiPropertyTerm, this.formSubject, params)\n const placeholder = readonly ? '' : this.defaultInputValue(params)\n const inputValue = this._updateInFlight || this._pendingUpdateValue !== null\n ? this.localInputValue ?? ''\n : this.termToInputValue(selectedTerm)\n\n return html`\n <solid-ui-input\n label=\"${inputLabel}\"\n name=\"name-${this.id}\"\n .value=${inputValue}\n .placeholder=${placeholder}\n type=\"${inputType}\"\n ?readonly=${readonly}\n @input=${this.updateData}\n ></solid-ui-input>`\n }\n\n private getDocument (subject: NamedNode | null | undefined) {\n return subject?.doc ? subject.doc() : undefined\n }\n\n private getFormProperty (subject: NamedNode | null | undefined, property: NamedNode, graph?: any): NamedNode | undefined {\n if (!subject) return undefined\n return this.storeContext.store.any(subject, property, null, graph) as NamedNode | undefined\n }\n\n private getInputLabel (formFieldSubject: NamedNode | null | undefined, uiPropertyTerm?: NamedNode, graph?: any): string {\n if (!formFieldSubject) return ''\n const uiLabel = this.storeContext.store.any(formFieldSubject, ns.ui('label'), null, graph)\n const propertyLabel = uiPropertyTerm ? label(uiPropertyTerm, true) : ''\n return uiLabel ? uiLabel.value : propertyLabel\n }\n\n private getReadOnly (readonly: boolean, formFieldSubject?: NamedNode | null, graph?: any): boolean {\n if (formFieldSubject && readonly === false) { // if readonly is false, we can ovverride it if the field is marked as uneditable in the form\n return !!this.storeContext.store.anyJS(formFieldSubject, ns.ui('suppressEmptyUneditable'), null, graph)\n }\n return readonly\n }\n\n private getSelectedTerm (\n dataSubject?: NamedNode | null,\n uiPropertyTerm?: NamedNode,\n formFieldSubject?: NamedNode | null,\n params?: { defaultInputValue?: string }\n ) {\n const defaultTerm = formFieldSubject\n ? this.storeContext.store.any(formFieldSubject, ns.ui('default'))\n : undefined\n\n if (!uiPropertyTerm || !dataSubject) {\n return defaultTerm\n }\n\n const inputTerm = this.storeContext.store.any(dataSubject, uiPropertyTerm)\n return inputTerm || defaultTerm\n }\n\n private termToInputValue (term: any) {\n if (!term || !('value' in term) || !term.value) return ''\n\n try {\n return decodeURIComponent(term.value)\n } catch {\n return String(term.value)\n }\n }\n\n private defaultInputValue (params: { defaultInputValue?: string } = {}) {\n const stripped = params.defaultInputValue ?? ''\n return stripped.replace(/ /g, '')\n }\n\n private async updateData (e: CustomEvent) {\n const newValue = (e.target as HTMLInputElement).value\n this.localInputValue = newValue\n this._pendingUpdateValue = newValue\n\n if (this._updateInFlight) {\n return\n }\n\n await this.runPendingUpdate()\n }\n\n private async runPendingUpdate () {\n if (this._pendingUpdateValue === null) {\n return\n }\n\n const newValue = this._pendingUpdateValue\n this._pendingUpdateValue = null\n this._updateInFlight = true\n\n const uiPropertyTerm = this.getFormProperty(this.formSubject, ns.ui('property'), this.getDocument(this.formSubject))\n if (!uiPropertyTerm || !this.dataSubject) {\n this._updateInFlight = false\n this.localInputValue = ''\n return\n }\n\n const dataDocument = this.getDocument(this.dataSubject)\n if (dataDocument && this.storeContext.store.updater?.editable(dataDocument) === false) {\n this._updateInFlight = false\n return\n }\n\n const toDeleteSt = this.storeContext.store.statementsMatching(this.dataSubject, uiPropertyTerm)\n let toInsertSt: Array<ReturnType<typeof st>> = []\n\n if (newValue) {\n let objectFromNewValue\n const fieldType = this.formSubject ? mostSpecificClassURI(this.storeContext.store, this.formSubject) : undefined\n const params: FieldParamsObject = fieldType ? fieldTypeParams[fieldType] ?? {} : {}\n if (params.namedNode) {\n objectFromNewValue = this.storeContext.store.sym(newValue)\n } else if (params.defaultInputValue) {\n objectFromNewValue = encodeURIComponent(newValue.replace(/ /g, ''))\n objectFromNewValue = this.storeContext.store.sym(params.defaultInputValue + objectFromNewValue)\n } else {\n if (params.dt) {\n objectFromNewValue = new Literal(\n newValue.trim(),\n undefined,\n ns.xsd(params.dt)\n )\n } else {\n objectFromNewValue = new Literal(newValue)\n }\n }\n toInsertSt = toDeleteSt.map((statement) => st(statement.subject, statement.predicate, objectFromNewValue, statement.why))\n if (toInsertSt.length === 0) {\n toInsertSt = [st(this.dataSubject, uiPropertyTerm, objectFromNewValue, this.getDocument(this.dataSubject))]\n }\n }\n\n try {\n await this.storeContext.store.updater.updateMany(toDeleteSt, toInsertSt as any)\n this.storeVersion += 1\n } catch (err) {\n console.error('RDFInput update failed', err)\n } finally {\n this._updateInFlight = false\n }\n\n if (this._pendingUpdateValue !== null) {\n await this.runPendingUpdate()\n }\n }\n}\n","import RDFInput from './RDFInput'\n\nexport { RDFInput }\nexport default RDFInput\n"],"mappings":"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"}
@@ -19,9 +19,9 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
19
19
  enumerable: !(s = n(i, d)) || s.enumerable
20
20
  });
21
21
  return e;
22
- }, u = (n, r, a) => (a = n == null ? {} : e(i(n)), l(r || !n || !n.__esModule ? t(a, "default", {
22
+ }, u = (n, r, o) => (o = n == null ? {} : e(i(n)), l(r || !n || !n.__esModule || !a.call(n, "default") ? t(o, "default", {
23
23
  value: n,
24
24
  enumerable: !0
25
- }) : a, n)), d = (e) => a.call(e, "module.exports") ? e["module.exports"] : l(t({}, "__esModule", { value: !0 }), e);
25
+ }) : o, n)), d = (e) => a.call(e, "module.exports") ? e["module.exports"] : l(t({}, "__esModule", { value: !0 }), e);
26
26
  //#endregion
27
27
  export { u as a, d as i, o as n, c as r, s as t };
@@ -1,5 +1,4 @@
1
- import { i as e, l as t, r as n, t as r } from "./components-BD458q30.js";
2
- import { c as i, i as a, n as o } from "./lit-C4H1jI4q.js";
1
+ import { c as e, g as t, i as n, p as r, r as i, t as a, u as o } from "./components-DrP7BOrs.js";
3
2
  import { t as s } from "./query-BYu9q8lA.js";
4
3
  import "./chevron-down-ujxRg3MD.js";
5
4
  //#region src/lib/values.ts
@@ -8,7 +7,7 @@ function c(e) {
8
7
  }
9
8
  //#endregion
10
9
  //#region src/components/select/Select.styles.css
11
- var l = i`:host{flex-direction:column;align-items:flex-start;gap:5px;display:inline-flex;& label{color:var(--solid-ui-color-gray-600);font-size:var(--solid-ui-font-size-sm);font-weight:400}& .input-wrapper{width:100%;position:relative;& select{appearance:none;border:1px solid var(--solid-ui-color-gray-400);width:100%;color:var(--solid-ui-color-gray-700);font-size:inherit;cursor:pointer;background:#fff;border-radius:5px;padding:10px 40px 10px 10px}& icon-lucide-chevron-down{color:var(--solid-ui-color-gray-500);width:var(--solid-ui-font-size-lg);height:var(--solid-ui-font-size-lg);pointer-events:none;position:absolute;top:50%;right:15px;transform:translateY(-50%)}}}`, u, d, f, p, m, h, g, _, v, y, b, x, S, C;
10
+ var l = r`:host{flex-direction:column;align-items:flex-start;gap:5px;display:inline-flex;& label{color:var(--solid-ui-color-gray-600);font-size:var(--solid-ui-font-size-sm);font-weight:400}& .input-wrapper{width:100%;position:relative;& select{appearance:none;border:1px solid var(--solid-ui-color-gray-400);width:100%;color:var(--solid-ui-color-gray-700);font-size:inherit;cursor:pointer;background:#fff;border-radius:5px;padding:10px 40px 10px 10px}& icon-lucide-chevron-down{color:var(--solid-ui-color-gray-500);width:var(--solid-ui-font-size-lg);height:var(--solid-ui-font-size-lg);pointer-events:none;position:absolute;top:50%;right:15px;transform:translateY(-50%)}}}`, u, d, f, p, m, h, g, _, v, y, b, x, S, C;
12
11
  function w(e, t, n) {
13
12
  T(e, t), t.set(e, n);
14
13
  }
@@ -182,7 +181,7 @@ function F(e) {
182
181
  }
183
182
  g = [t("solid-ui-select")];
184
183
  var I;
185
- new (S = (f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), C = (_ = e({ type: Array }), v = s("select"), b = n(), "options"), d = class extends r {
184
+ new (S = (f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), C = (_ = n({ type: Array }), v = s("select"), b = i(), "options"), d = class extends a {
186
185
  constructor(...e) {
187
186
  super(...e), w(this, f, (m(this), y(this, null))), w(this, p, x(this, null));
188
187
  }
@@ -210,8 +209,8 @@ new (S = (f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), C =
210
209
  E(p, this, e);
211
210
  }
212
211
  render() {
213
- let e = this.options.some((e) => c(e.value)) ? o : a`<option disabled value="" ?selected=${!this.value}>Select an option</option>`;
214
- return a`
212
+ let t = this.options.some((e) => c(e.value)) ? e : o`<option disabled value="" ?selected=${!this.value}>Select an option</option>`;
213
+ return o`
215
214
  ${this.controlTrait.renderLabel()}
216
215
 
217
216
  <div class="input-wrapper">
@@ -221,8 +220,8 @@ new (S = (f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), C =
221
220
  ?required=${this.required}
222
221
  @change=${this.onChange}
223
222
  >
224
- ${e}
225
- ${this.options.map((e) => a`<option
223
+ ${t}
224
+ ${this.options.map((e) => o`<option
226
225
  .value=${e.value}
227
226
  ?selected=${e.value === this.value}
228
227
  >
@@ -257,7 +256,7 @@ new (S = (f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), C =
257
256
  1,
258
257
  "_options"
259
258
  ]
260
- ], g, 0, void 0, r), d), u = class extends F {
259
+ ], g, 0, void 0, a), d), u = class extends F {
261
260
  constructor() {
262
261
  super(I), k(this, "styles", l), h();
263
262
  }
@@ -268,4 +267,4 @@ var L = I;
268
267
  //#endregion
269
268
  export { I as n, L as t };
270
269
 
271
- //# sourceMappingURL=select-XkieYvDm.js.map
270
+ //# sourceMappingURL=select-BuIxSm1A.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"select-XkieYvDm.js","names":["isEmptyValue","value","undefined","customElement","FormControlComponent","html","nothing","property","query","state","isEmptyValue","styles","_classDecs","_Select","_Select2","_A","WeakMap","_B","_ref","_optionsDecs","type","Array","_controlElementDecs","_optionsDecs2","_Select3","Select","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_controlElement","_init__options","value","_options","options","querySelectorAll","from","map","option","label","textContent","controlElement","_classPrivateFieldGet","v","_classPrivateFieldSet","render","defaultOption","some","controlTrait","renderLabel","controlId","name","required","onChange","find","setValue","dispatchEvent","CustomEvent","bubbles","composed","detail","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","Select"],"sources":["../../src/lib/values.ts","../../src/components/select/Select.styles.css","../../src/components/select/Select.ts","../../src/components/select/index.ts"],"sourcesContent":["export function isEmptyValue (value: unknown): boolean {\n return value === null || value === undefined || value === ''\n}\n",":host {\n display: inline-flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 5px;\n\n label {\n color: var(--solid-ui-color-gray-600);\n font-size: var(--solid-ui-font-size-sm);\n font-weight: 400;\n }\n\n .input-wrapper {\n position: relative;\n width: 100%;\n\n select {\n appearance: none;\n border: 1px solid var(--solid-ui-color-gray-400);\n border-radius: 5px;\n padding: 10px;\n padding-right: 40px;\n width: 100%;\n background: white;\n color: var(--solid-ui-color-gray-700);\n font-size: inherit;\n cursor: pointer;\n }\n\n icon-lucide-chevron-down {\n position: absolute;\n right: 15px;\n top: 50%;\n transform: translateY(-50%);\n color: var(--solid-ui-color-gray-500);\n width: var(--solid-ui-font-size-lg);\n height: var(--solid-ui-font-size-lg);\n pointer-events: none;\n }\n }\n}\n","import { customElement, FormControlComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { property, query, state } from 'lit/decorators.js'\nimport { isEmptyValue } from '@/lib/values'\nimport type SelectOption from '@/components/select-option/SelectOption'\n\nimport '~icons/lucide/chevron-down'\n\nimport styles from './Select.styles.css'\n\nexport type SelectOptionData = {\n value: unknown;\n label: string;\n}\n\nexport type SelectChangeEvent = CustomEvent<{ option: SelectOptionData }>\n\n@customElement('solid-ui-select')\nexport default class Select extends FormControlComponent {\n static styles = styles\n\n @property({ type: Array })\n set options (value: SelectOptionData[] | null) {\n this._options = value\n }\n\n get options (): SelectOptionData[] {\n if (this._options) {\n return this._options\n }\n\n const options = this.querySelectorAll<SelectOption>(\n 'solid-ui-select-option'\n )\n\n return Array.from(options).map((option) => ({\n value: option.value,\n label: option.textContent,\n }))\n }\n\n @query('select')\n protected accessor controlElement: HTMLSelectElement | null = null;\n\n @state()\n private accessor _options: SelectOptionData[] | null = null\n\n protected render () {\n const defaultOption = this.options.some(option => isEmptyValue(option.value))\n ? nothing\n : html`<option disabled value=\"\" ?selected=${!this.value}>Select an option</option>`\n\n return html`\n ${this.controlTrait.renderLabel()}\n\n <div class=\"input-wrapper\">\n <select\n id=\"${this.controlTrait.controlId}\"\n name=${this.name}\n ?required=${this.required}\n @change=${this.onChange}\n >\n ${defaultOption}\n ${this.options.map(\n (option) =>\n html`<option\n .value=${option.value}\n ?selected=${option.value === this.value}\n >\n ${option.label}\n </option>`\n )}\n </select>\n <icon-lucide-chevron-down></icon-lucide-chevron-down>\n </div>\n `\n }\n\n private onChange () {\n const value = this.controlElement?.value ?? null\n const option = this.options.find((option) => option.value === value)\n\n this.controlTrait.setValue(value)\n this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true, detail: { option } }))\n }\n}\n","import Select from './Select'\n\nexport * from './Select'\nexport { Select }\nexport default Select\n"],"mappings":"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"}
1
+ {"version":3,"file":"select-BuIxSm1A.js","names":["isEmptyValue","value","undefined","customElement","FormControlComponent","html","nothing","property","query","state","isEmptyValue","styles","_classDecs","_Select","_Select2","_A","WeakMap","_B","_ref","_optionsDecs","type","Array","_controlElementDecs","_optionsDecs2","_Select3","Select","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_controlElement","_init__options","value","_options","options","querySelectorAll","from","map","option","label","textContent","controlElement","_classPrivateFieldGet","v","_classPrivateFieldSet","render","defaultOption","some","controlTrait","renderLabel","controlId","name","required","onChange","find","setValue","dispatchEvent","CustomEvent","bubbles","composed","detail","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","Select"],"sources":["../../src/lib/values.ts","../../src/components/select/Select.styles.css","../../src/components/select/Select.ts","../../src/components/select/index.ts"],"sourcesContent":["export function isEmptyValue (value: unknown): boolean {\n return value === null || value === undefined || value === ''\n}\n",":host {\n display: inline-flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 5px;\n\n label {\n color: var(--solid-ui-color-gray-600);\n font-size: var(--solid-ui-font-size-sm);\n font-weight: 400;\n }\n\n .input-wrapper {\n position: relative;\n width: 100%;\n\n select {\n appearance: none;\n border: 1px solid var(--solid-ui-color-gray-400);\n border-radius: 5px;\n padding: 10px;\n padding-right: 40px;\n width: 100%;\n background: white;\n color: var(--solid-ui-color-gray-700);\n font-size: inherit;\n cursor: pointer;\n }\n\n icon-lucide-chevron-down {\n position: absolute;\n right: 15px;\n top: 50%;\n transform: translateY(-50%);\n color: var(--solid-ui-color-gray-500);\n width: var(--solid-ui-font-size-lg);\n height: var(--solid-ui-font-size-lg);\n pointer-events: none;\n }\n }\n}\n","import { customElement, FormControlComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { property, query, state } from 'lit/decorators.js'\nimport { isEmptyValue } from '@/lib/values'\nimport type SelectOption from '@/components/select-option/SelectOption'\n\nimport '~icons/lucide/chevron-down'\n\nimport styles from './Select.styles.css'\n\nexport type SelectOptionData = {\n value: unknown;\n label: string;\n}\n\nexport type SelectChangeEvent = CustomEvent<{ option: SelectOptionData }>\n\n@customElement('solid-ui-select')\nexport default class Select extends FormControlComponent {\n static styles = styles\n\n @property({ type: Array })\n set options (value: SelectOptionData[] | null) {\n this._options = value\n }\n\n get options (): SelectOptionData[] {\n if (this._options) {\n return this._options\n }\n\n const options = this.querySelectorAll<SelectOption>(\n 'solid-ui-select-option'\n )\n\n return Array.from(options).map((option) => ({\n value: option.value,\n label: option.textContent,\n }))\n }\n\n @query('select')\n protected accessor controlElement: HTMLSelectElement | null = null;\n\n @state()\n private accessor _options: SelectOptionData[] | null = null\n\n protected render () {\n const defaultOption = this.options.some(option => isEmptyValue(option.value))\n ? nothing\n : html`<option disabled value=\"\" ?selected=${!this.value}>Select an option</option>`\n\n return html`\n ${this.controlTrait.renderLabel()}\n\n <div class=\"input-wrapper\">\n <select\n id=\"${this.controlTrait.controlId}\"\n name=${this.name}\n ?required=${this.required}\n @change=${this.onChange}\n >\n ${defaultOption}\n ${this.options.map(\n (option) =>\n html`<option\n .value=${option.value}\n ?selected=${option.value === this.value}\n >\n ${option.label}\n </option>`\n )}\n </select>\n <icon-lucide-chevron-down></icon-lucide-chevron-down>\n </div>\n `\n }\n\n private onChange () {\n const value = this.controlElement?.value ?? null\n const option = this.options.find((option) => option.value === value)\n\n this.controlTrait.setValue(value)\n this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true, detail: { option } }))\n }\n}\n","import Select from './Select'\n\nexport * from './Select'\nexport { Select }\nexport default Select\n"],"mappings":";;;;AAAA,SAAgBA,EAAcC,GAAyB;CACrD,OAAOA,KAAU,QAA+BA,MAAU;AAC5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEMwCW,IAAA,CASvCT,EAAc,iBAAiB,CAAC;AAAA,IAAAU;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,KAAAC,IAI9BZ,EAAS,EAAEa,MAAMC,MAAM,CAAC,GAACC,IAoBzBd,EAAM,QAAQ,GAACe,IAGfd,EAAM,GAAC,YAAAe,IA3BV,cACoCpB,EAAqB;CAAAsB,YAAA,GAAAC,GAAA;EAwBWC,AAxBX,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAb,IAAAc,EAAA,IAAA,GAAAC,EAAA,MAwBO,IAAI,EAAA,GAAAF,EAAA,MAAAX,GAAAc,EAAA,MAGX,IAAI,CAAA;CAAA;CAxB3D,KAAAb,GACac,GAAkC;EAC7C,KAAKC,WAAWD;CAClB;CAEA,IAAIE,UAA+B;EACjC,IAAI,KAAKD,UACP,OAAO,KAAKA;EAGd,IAAMC,IAAU,KAAKC,iBACnB,wBACF;EAEA,OAAOd,MAAMe,KAAKF,CAAO,CAAC,CAACG,KAAKC,OAAY;GAC1CN,OAAOM,EAAON;GACdO,OAAOD,EAAOE;EAChB,EAAE;CACJ;CAAC,IAGkBC,iBAAc;EAAA,OAAAC,EAAA3B,GAAA,IAAA;CAAA;CAAA,IAAd0B,eAAcE,GAAA;EAAAC,EAAA7B,GAAA,MAAA4B,CAAA;CAAA;CAAA,IAGhBV,WAAQ;EAAA,OAAAS,EAAAzB,GAAA,IAAA;CAAA;CAAA,IAARgB,SAAQU,GAAA;EAAAC,EAAA3B,GAAA,MAAA0B,CAAA;CAAA;CAEfE,SAAU;EAClB,IAAMC,IAAgB,KAAKZ,QAAQa,MAAKT,MAAU5B,EAAa4B,EAAON,KAAK,CAAC,IACxE1B,IACAD,CAAI,uCAAuC,CAAC,KAAK2B,MAAK;EAE1D,OAAO3B,CAAI;QACP,KAAK2C,aAAaC,YAAY,EAAC;;;;gBAIvB,KAAKD,aAAaE,UAAS;iBAC1B,KAAKC,KAAI;sBACJ,KAAKC,SAAQ;oBACf,KAAKC,SAAQ;;YAErBP,EAAa;YACb,KAAKZ,QAAQG,KACZC,MACCjC,CAAI;yBACOiC,EAAON,MAAK;4BACTM,EAAON,UAAU,KAAKA,MAAK;;kBAErCM,EAAOC,MAAK;wBAEpB,EAAC;;;;;CAKT;CAEQc,WAAY;EAClB,IAAMrB,IAAQ,KAAKS,gBAAgBT,SAAS,MACtCM,IAAS,KAAKJ,QAAQoB,MAAMhB,MAAWA,EAAON,UAAUA,CAAK;EAGnE,AADA,KAAKgB,aAAaO,SAASvB,CAAK,GAChC,KAAKwB,cAAc,IAAIC,YAAY,UAAU;GAAEC,SAAS;GAAMC,UAAU;GAAMC,QAAQ,EAAEtB,UAAO;EAAE,CAAC,CAAC;CACrG;AACF,GAAC,CAAAuB,GAAA,CAAA/B,GAAAC,GAAAF,IAAAiC,GAAA,CAAAjD,GAAAkD,MAAAC,EAAAxC,GAAA;CAAA;EAAAL;EAAA;EAAA;CAAA;CAAA;EAAAG;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;AAAA,GAAAX,GAAA,GAAA,KAAA,GAnEmCR,CAAoB,GAAAoB,IAAAyC,IAAA,cAAAC,EAAA;CAAAxC,cAAA;EAAA,MAAAb,CAAA,GAAAsD,EAAA,MAAA,UACtCxD,CAAM,GAAAoD,EAAA;CAAA;AAAA,GAAAI,EAAAF,GAAAnD,GAAA,KAAA,CAAA,GAAAmD,GAAA;;;ACfxB,IAAA,IAAeI"}
@@ -1,5 +1,4 @@
1
- import { i as e, l as t, o as n } from "./components-BD458q30.js";
2
- import { i as r, n as i } from "./lit-C4H1jI4q.js";
1
+ import { c as e, g as t, i as n, o as r, u as i } from "./components-DrP7BOrs.js";
3
2
  //#region src/components/select-option/SelectOption.ts
4
3
  var a, o, s, c, l, u, d;
5
4
  function f(e, t, n) {
@@ -164,10 +163,10 @@ function x(e) {
164
163
  }
165
164
  c = [t("solid-ui-select-option")];
166
165
  var S, C = /*#__PURE__*/ new WeakMap();
167
- d = (l = e({
166
+ d = (l = n({
168
167
  type: String,
169
168
  reflect: !0
170
- }), "value"), a = class extends n {
169
+ }), "value"), a = class extends r {
171
170
  constructor(...e) {
172
171
  super(...e), f(this, C, (o(this), u(this, "")));
173
172
  }
@@ -178,17 +177,17 @@ d = (l = e({
178
177
  m(C, this, e);
179
178
  }
180
179
  render() {
181
- return r`${i}`;
180
+ return i`${e}`;
182
181
  }
183
182
  }, {e: [u, o], c: [S, s]} = _(a, [[
184
183
  l,
185
184
  1,
186
185
  "value"
187
- ]], c, 0, void 0, n), s();
186
+ ]], c, 0, void 0, r), s();
188
187
  //#endregion
189
188
  //#region src/components/select-option/index.ts
190
189
  var w = S;
191
190
  //#endregion
192
191
  export { S as n, w as t };
193
192
 
194
- //# sourceMappingURL=select-option-DUg4AWzw.js.map
193
+ //# sourceMappingURL=select-option-Z8qZsCQo.js.map