solid-ui 5.0.0-2 → 5.0.1

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 (417) hide show
  1. package/dist/_virtual/~icons/app/solid-emblem.cjs.js.map +1 -1
  2. package/dist/_virtual/~icons/app/solid-emblem.esm.js.map +1 -1
  3. package/dist/_virtual/~icons/lucide/chevron-down.cjs.js.map +1 -1
  4. package/dist/_virtual/~icons/lucide/chevron-down.esm.js.map +1 -1
  5. package/dist/_virtual/~icons/lucide/circle-user.cjs.js.map +1 -1
  6. package/dist/_virtual/~icons/lucide/circle-user.esm.js.map +1 -1
  7. package/dist/_virtual/~icons/lucide/log-in.cjs.js.map +1 -1
  8. package/dist/_virtual/~icons/lucide/log-in.esm.js.map +1 -1
  9. package/dist/_virtual/~icons/lucide/log-out.cjs.js.map +1 -1
  10. package/dist/_virtual/~icons/lucide/log-out.esm.js.map +1 -1
  11. package/dist/_virtual/~icons/lucide/user.cjs.js.map +1 -1
  12. package/dist/_virtual/~icons/lucide/user.esm.js.map +1 -1
  13. package/dist/_virtual/~icons/lucide/x.cjs.js.map +1 -1
  14. package/dist/_virtual/~icons/lucide/x.esm.js.map +1 -1
  15. package/dist/_virtual/~icons/svg-spinners/180-ring.cjs.js.map +1 -1
  16. package/dist/_virtual/~icons/svg-spinners/180-ring.esm.js.map +1 -1
  17. package/dist/_virtual/~icons/svg-spinners/3-dots-fade.cjs.js.map +1 -1
  18. package/dist/_virtual/~icons/svg-spinners/3-dots-fade.esm.js.map +1 -1
  19. package/dist/acl/access-controller.cjs.js.map +1 -1
  20. package/dist/acl/access-controller.esm.js.map +1 -1
  21. package/dist/acl/access-groups.cjs.js.map +1 -1
  22. package/dist/acl/access-groups.esm.js.map +1 -1
  23. package/dist/acl/acl-control.cjs.js.map +1 -1
  24. package/dist/acl/acl-control.esm.js.map +1 -1
  25. package/dist/acl/acl.cjs.js.map +1 -1
  26. package/dist/acl/acl.esm.js.map +1 -1
  27. package/dist/acl/add-agent-buttons.cjs.js.map +1 -1
  28. package/dist/acl/add-agent-buttons.esm.js.map +1 -1
  29. package/dist/acl/index.cjs.js.map +1 -1
  30. package/dist/acl/index.esm.js.map +1 -1
  31. package/dist/chat/bookmarks.cjs.js.map +1 -1
  32. package/dist/chat/bookmarks.esm.js.map +1 -1
  33. package/dist/chat/chatLogic.cjs.js.map +1 -1
  34. package/dist/chat/chatLogic.esm.js.map +1 -1
  35. package/dist/chat/dateFolder.cjs.js.map +1 -1
  36. package/dist/chat/dateFolder.esm.js.map +1 -1
  37. package/dist/chat/infinite.cjs.js.map +1 -1
  38. package/dist/chat/infinite.esm.js.map +1 -1
  39. package/dist/chat/keys.cjs.js.map +1 -1
  40. package/dist/chat/keys.esm.js.map +1 -1
  41. package/dist/chat/message.cjs.js.map +1 -1
  42. package/dist/chat/message.esm.js.map +1 -1
  43. package/dist/chat/messageTools.cjs.js.map +1 -1
  44. package/dist/chat/messageTools.esm.js.map +1 -1
  45. package/dist/chat/signature.cjs.js.map +1 -1
  46. package/dist/chat/signature.esm.js.map +1 -1
  47. package/dist/chunks/DialogProvider-BFllJFfq.js.map +1 -1
  48. package/dist/chunks/{account-C4JpDQFa.js → account-BawgTPEQ.js} +7 -7
  49. package/dist/chunks/account-BawgTPEQ.js.map +1 -0
  50. package/dist/chunks/{auth-DfCfMOuM.js → auth-DrN7Ex4E.js} +2 -2
  51. package/dist/chunks/auth-DrN7Ex4E.js.map +1 -0
  52. package/dist/chunks/{avatar-C677VD9J.js → avatar-CoxEa3ul.js} +2 -2
  53. package/dist/chunks/avatar-CoxEa3ul.js.map +1 -0
  54. package/dist/chunks/button-CnmrOsEf.js.map +1 -1
  55. package/dist/chunks/chevron-down-ujxRg3MD.js.map +1 -1
  56. package/dist/chunks/{chunk.KB3IOPVF-Ckx3HIiR.js → chunk.UEBQI7VV-1WRlPl6u.js} +12 -2
  57. package/dist/chunks/chunk.UEBQI7VV-1WRlPl6u.js.map +1 -0
  58. package/dist/chunks/{combobox-BZ9n8wQw.js → combobox-B0TqOl9L.js} +2 -2
  59. package/dist/chunks/combobox-B0TqOl9L.js.map +1 -0
  60. package/dist/chunks/combobox-option-BcXpUnWu.js.map +1 -1
  61. package/dist/chunks/components-BHoVP7zE.js.map +1 -1
  62. package/dist/chunks/dialog-D9Ellvjx.js.map +1 -1
  63. package/dist/chunks/dialog-content-B2FmmQvH.js.map +1 -1
  64. package/dist/chunks/dialog-footer-CxjoqQJF.js.map +1 -1
  65. package/dist/chunks/dialog-header-0dobhr5C.js.map +1 -1
  66. package/dist/chunks/dialogs-D2n-R0lI.js.map +1 -1
  67. package/dist/chunks/dialogs-root-ngPW2Q6K.js.map +1 -1
  68. package/dist/chunks/{guard-DcrczXhs.js → guard-BtHmPAJt.js} +2 -2
  69. package/dist/chunks/guard-BtHmPAJt.js.map +1 -0
  70. package/dist/chunks/index.esm-AZPmKqjU.js.map +1 -1
  71. package/dist/chunks/input-BIhn_8nf.js.map +1 -1
  72. package/dist/chunks/jsonld-CDR2WyN_.js.map +1 -1
  73. package/dist/chunks/{login-button-CRQbpCob.js → login-button-DAzbhvKk.js} +2 -2
  74. package/dist/chunks/login-button-DAzbhvKk.js.map +1 -0
  75. package/dist/chunks/{logout-button-H-ckaICm.js → logout-button-lGJtt7lq.js} +2 -2
  76. package/dist/chunks/logout-button-lGJtt7lq.js.map +1 -0
  77. package/dist/chunks/{menu-DhnJDuBz.js → menu-BLZREG4_.js} +5 -4
  78. package/dist/chunks/menu-BLZREG4_.js.map +1 -0
  79. package/dist/chunks/menu-item-BdCkmJol.js.map +1 -1
  80. package/dist/chunks/photo-capture-Bvixtxsq.js.map +1 -1
  81. package/dist/chunks/photo-capture-modal-BhmL3kYD.js.map +1 -1
  82. package/dist/chunks/{provider-v6Wz9BOu.js → provider-D5r57fK1.js} +2 -2
  83. package/dist/chunks/provider-D5r57fK1.js.map +1 -0
  84. package/dist/chunks/query-BYu9q8lA.js.map +1 -1
  85. package/dist/chunks/rdf-form-B2zTR8Qv.js.map +1 -1
  86. package/dist/chunks/rdf-input-DeDhyQ3p.js.map +1 -1
  87. package/dist/chunks/select-BcC-ICqO.js.map +1 -1
  88. package/dist/chunks/select-option-B0uXcj2O.js.map +1 -1
  89. package/dist/chunks/show-dialog-eEW5yRBv.js.map +1 -1
  90. package/dist/chunks/{signup-button-Cy6FwVhE.js → signup-button-DnPnUTTm.js} +2 -2
  91. package/dist/chunks/signup-button-DnPnUTTm.js.map +1 -0
  92. package/dist/chunks/solid-emblem-CcQOqRX0.js.map +1 -1
  93. package/dist/chunks/{src-Ca8thhHS.js → src-BWY65mD0.js} +915 -891
  94. package/dist/chunks/src-BWY65mD0.js.map +1 -0
  95. package/dist/chunks/style-Dpwrc8CC.js.map +1 -1
  96. package/dist/components/account/Account.cjs.js.map +1 -1
  97. package/dist/components/account/Account.esm.js.map +1 -1
  98. package/dist/components/account/Account.styles.cjs.js.map +1 -1
  99. package/dist/components/account/Account.styles.esm.js.map +1 -1
  100. package/dist/components/account/index.cjs.js.map +1 -1
  101. package/dist/components/account/index.esm.js.map +1 -1
  102. package/dist/components/account.js +1 -1
  103. package/dist/components/avatar/Avatar.cjs.js.map +1 -1
  104. package/dist/components/avatar/Avatar.esm.js.map +1 -1
  105. package/dist/components/avatar/Avatar.styles.cjs.js.map +1 -1
  106. package/dist/components/avatar/Avatar.styles.esm.js.map +1 -1
  107. package/dist/components/avatar/index.cjs.js.map +1 -1
  108. package/dist/components/avatar/index.esm.js.map +1 -1
  109. package/dist/components/avatar.js +1 -1
  110. package/dist/components/button/Button.cjs.js.map +1 -1
  111. package/dist/components/button/Button.esm.js.map +1 -1
  112. package/dist/components/button/Button.styles.cjs.js.map +1 -1
  113. package/dist/components/button/Button.styles.esm.js.map +1 -1
  114. package/dist/components/button/index.cjs.js.map +1 -1
  115. package/dist/components/button/index.esm.js.map +1 -1
  116. package/dist/components/combobox/Combobox.cjs.js.map +1 -1
  117. package/dist/components/combobox/Combobox.esm.js.map +1 -1
  118. package/dist/components/combobox/Combobox.styles.cjs.js.map +1 -1
  119. package/dist/components/combobox/Combobox.styles.esm.js.map +1 -1
  120. package/dist/components/combobox/index.cjs.js.map +1 -1
  121. package/dist/components/combobox/index.esm.js.map +1 -1
  122. package/dist/components/combobox-option/ComboboxOption.cjs.js.map +1 -1
  123. package/dist/components/combobox-option/ComboboxOption.esm.js.map +1 -1
  124. package/dist/components/combobox-option/index.cjs.js.map +1 -1
  125. package/dist/components/combobox-option/index.esm.js.map +1 -1
  126. package/dist/components/combobox.js +1 -1
  127. package/dist/components/dialog/Dialog.cjs.js.map +1 -1
  128. package/dist/components/dialog/Dialog.esm.js.map +1 -1
  129. package/dist/components/dialog/Dialog.styles.cjs.js.map +1 -1
  130. package/dist/components/dialog/Dialog.styles.esm.js.map +1 -1
  131. package/dist/components/dialog/index.cjs.js.map +1 -1
  132. package/dist/components/dialog/index.esm.js.map +1 -1
  133. package/dist/components/dialog-content/DialogContent.cjs.js.map +1 -1
  134. package/dist/components/dialog-content/DialogContent.esm.js.map +1 -1
  135. package/dist/components/dialog-content/DialogContent.styles.cjs.js.map +1 -1
  136. package/dist/components/dialog-content/DialogContent.styles.esm.js.map +1 -1
  137. package/dist/components/dialog-content/index.cjs.js.map +1 -1
  138. package/dist/components/dialog-content/index.esm.js.map +1 -1
  139. package/dist/components/dialog-footer/DialogFooter.cjs.js.map +1 -1
  140. package/dist/components/dialog-footer/DialogFooter.esm.js.map +1 -1
  141. package/dist/components/dialog-footer/DialogFooter.styles.cjs.js.map +1 -1
  142. package/dist/components/dialog-footer/DialogFooter.styles.esm.js.map +1 -1
  143. package/dist/components/dialog-footer/index.cjs.js.map +1 -1
  144. package/dist/components/dialog-footer/index.esm.js.map +1 -1
  145. package/dist/components/dialog-header/DialogHeader.cjs.js.map +1 -1
  146. package/dist/components/dialog-header/DialogHeader.esm.js.map +1 -1
  147. package/dist/components/dialog-header/DialogHeader.styles.cjs.js.map +1 -1
  148. package/dist/components/dialog-header/DialogHeader.styles.esm.js.map +1 -1
  149. package/dist/components/dialog-header/index.cjs.js.map +1 -1
  150. package/dist/components/dialog-header/index.esm.js.map +1 -1
  151. package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
  152. package/dist/components/dialog-provider/DialogProvider.esm.js.map +1 -1
  153. package/dist/components/dialog-provider/index.cjs.js.map +1 -1
  154. package/dist/components/dialog-provider/index.esm.js.map +1 -1
  155. package/dist/components/dialog-provider.js.map +1 -1
  156. package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
  157. package/dist/components/dialogs-root/DialogsRoot.esm.js.map +1 -1
  158. package/dist/components/dialogs-root/index.cjs.js.map +1 -1
  159. package/dist/components/dialogs-root/index.esm.js.map +1 -1
  160. package/dist/components/guard/Guard.cjs.js.map +1 -1
  161. package/dist/components/guard/Guard.esm.js.map +1 -1
  162. package/dist/components/guard/index.cjs.js.map +1 -1
  163. package/dist/components/guard/index.esm.js.map +1 -1
  164. package/dist/components/guard.js +1 -1
  165. package/dist/components/input/Input.cjs.js.map +1 -1
  166. package/dist/components/input/Input.esm.js.map +1 -1
  167. package/dist/components/input/Input.styles.cjs.js.map +1 -1
  168. package/dist/components/input/Input.styles.esm.js.map +1 -1
  169. package/dist/components/input/index.cjs.js.map +1 -1
  170. package/dist/components/input/index.esm.js.map +1 -1
  171. package/dist/components/login-button/LoginButton.cjs.js.map +1 -1
  172. package/dist/components/login-button/LoginButton.esm.js.map +1 -1
  173. package/dist/components/login-button/index.cjs.js.map +1 -1
  174. package/dist/components/login-button/index.esm.js.map +1 -1
  175. package/dist/components/login-button.js +1 -1
  176. package/dist/components/login-modal/LoginModal.cjs.js.map +1 -1
  177. package/dist/components/login-modal/LoginModal.esm.js.map +1 -1
  178. package/dist/components/login-modal/LoginModal.styles.cjs.js.map +1 -1
  179. package/dist/components/login-modal/LoginModal.styles.esm.js.map +1 -1
  180. package/dist/components/login-modal/index.cjs.js.map +1 -1
  181. package/dist/components/login-modal/index.esm.js.map +1 -1
  182. package/dist/components/login-modal.js +1 -1
  183. package/dist/components/logout-button/LogoutButton.cjs.js.map +1 -1
  184. package/dist/components/logout-button/LogoutButton.esm.js.map +1 -1
  185. package/dist/components/logout-button/index.cjs.js.map +1 -1
  186. package/dist/components/logout-button/index.esm.js.map +1 -1
  187. package/dist/components/logout-button.js +1 -1
  188. package/dist/components/menu/Menu.cjs.js.map +1 -1
  189. package/dist/components/menu/Menu.esm.js.map +1 -1
  190. package/dist/components/menu/Menu.styles.cjs.js.map +1 -1
  191. package/dist/components/menu/Menu.styles.esm.js.map +1 -1
  192. package/dist/components/menu/index.cjs.js.map +1 -1
  193. package/dist/components/menu/index.esm.js.map +1 -1
  194. package/dist/components/menu-item/MenuItem.cjs.js.map +1 -1
  195. package/dist/components/menu-item/MenuItem.esm.js.map +1 -1
  196. package/dist/components/menu-item/MenuItem.styles.cjs.js.map +1 -1
  197. package/dist/components/menu-item/MenuItem.styles.esm.js.map +1 -1
  198. package/dist/components/menu-item/index.cjs.js.map +1 -1
  199. package/dist/components/menu-item/index.esm.js.map +1 -1
  200. package/dist/components/menu.js +1 -1
  201. package/dist/components/photo-capture/PhotoCapture.cjs.js.map +1 -1
  202. package/dist/components/photo-capture/PhotoCapture.esm.js.map +1 -1
  203. package/dist/components/photo-capture/index.cjs.js.map +1 -1
  204. package/dist/components/photo-capture/index.esm.js.map +1 -1
  205. package/dist/components/photo-capture-modal/PhotoCaptureModal.cjs.js.map +1 -1
  206. package/dist/components/photo-capture-modal/PhotoCaptureModal.esm.js.map +1 -1
  207. package/dist/components/photo-capture-modal/PhotoCaptureModal.styles.cjs.js.map +1 -1
  208. package/dist/components/photo-capture-modal/PhotoCaptureModal.styles.esm.js.map +1 -1
  209. package/dist/components/photo-capture-modal/index.cjs.js.map +1 -1
  210. package/dist/components/photo-capture-modal/index.esm.js.map +1 -1
  211. package/dist/components/provider/Provider.cjs.js.map +1 -1
  212. package/dist/components/provider/Provider.esm.js.map +1 -1
  213. package/dist/components/provider/index.cjs.js.map +1 -1
  214. package/dist/components/provider/index.esm.js.map +1 -1
  215. package/dist/components/provider.js +1 -1
  216. package/dist/components/rdf-form/RDFForm.cjs.js.map +1 -1
  217. package/dist/components/rdf-form/RDFForm.esm.js.map +1 -1
  218. package/dist/components/rdf-form/index.cjs.js.map +1 -1
  219. package/dist/components/rdf-form/index.esm.js.map +1 -1
  220. package/dist/components/rdf-input/RDFInput.cjs.js.map +1 -1
  221. package/dist/components/rdf-input/RDFInput.esm.js.map +1 -1
  222. package/dist/components/rdf-input/index.cjs.js.map +1 -1
  223. package/dist/components/rdf-input/index.esm.js.map +1 -1
  224. package/dist/components/select/Select.cjs.js.map +1 -1
  225. package/dist/components/select/Select.esm.js.map +1 -1
  226. package/dist/components/select/Select.styles.cjs.js.map +1 -1
  227. package/dist/components/select/Select.styles.esm.js.map +1 -1
  228. package/dist/components/select/index.cjs.js.map +1 -1
  229. package/dist/components/select/index.esm.js.map +1 -1
  230. package/dist/components/select-option/SelectOption.cjs.js.map +1 -1
  231. package/dist/components/select-option/SelectOption.esm.js.map +1 -1
  232. package/dist/components/select-option/index.cjs.js.map +1 -1
  233. package/dist/components/select-option/index.esm.js.map +1 -1
  234. package/dist/components/signup-button/SignupButton.cjs.js.map +1 -1
  235. package/dist/components/signup-button/SignupButton.esm.js.map +1 -1
  236. package/dist/components/signup-button/index.cjs.js.map +1 -1
  237. package/dist/components/signup-button/index.esm.js.map +1 -1
  238. package/dist/components/signup-button.js +1 -1
  239. package/dist/components/solid-emblem/SolidEmblem.cjs.js.map +1 -1
  240. package/dist/components/solid-emblem/SolidEmblem.esm.js.map +1 -1
  241. package/dist/components/solid-emblem/SolidEmblem.styles.cjs.js.map +1 -1
  242. package/dist/components/solid-emblem/SolidEmblem.styles.esm.js.map +1 -1
  243. package/dist/components/solid-emblem/index.cjs.js.map +1 -1
  244. package/dist/components/solid-emblem/index.esm.js.map +1 -1
  245. package/dist/components.js +10 -10
  246. package/dist/create/create.cjs.js.map +1 -1
  247. package/dist/create/create.esm.js.map +1 -1
  248. package/dist/create/index.cjs.js.map +1 -1
  249. package/dist/create/index.esm.js.map +1 -1
  250. package/dist/create/types.cjs.js.map +1 -1
  251. package/dist/create/types.esm.js.map +1 -1
  252. package/dist/footer/index.cjs.js.map +1 -1
  253. package/dist/footer/index.esm.js.map +1 -1
  254. package/dist/header/empty-profile.cjs.js.map +1 -1
  255. package/dist/header/empty-profile.esm.js.map +1 -1
  256. package/dist/header/index.cjs.js.map +1 -1
  257. package/dist/header/index.esm.js.map +1 -1
  258. package/dist/index.cjs.js.map +1 -1
  259. package/dist/index.esm.js.map +1 -1
  260. package/dist/index.js +2 -2
  261. package/dist/lib/auth/Account.cjs.js.map +1 -1
  262. package/dist/lib/auth/Account.esm.js.map +1 -1
  263. package/dist/lib/auth/NoopAuth.cjs.js.map +1 -1
  264. package/dist/lib/auth/NoopAuth.esm.js.map +1 -1
  265. package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
  266. package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
  267. package/dist/lib/auth/context.cjs.js.map +1 -1
  268. package/dist/lib/auth/context.esm.js.map +1 -1
  269. package/dist/lib/code-editor/CodeEditor.cjs.js.map +1 -1
  270. package/dist/lib/code-editor/CodeEditor.esm.js.map +1 -1
  271. package/dist/lib/components/decorators.cjs.js.map +1 -1
  272. package/dist/lib/components/decorators.esm.js.map +1 -1
  273. package/dist/lib/components/dialog-component/DialogComponent.cjs.js.map +1 -1
  274. package/dist/lib/components/dialog-component/DialogComponent.esm.js.map +1 -1
  275. package/dist/lib/components/form-control-component/FormControlComponent.cjs.js.map +1 -1
  276. package/dist/lib/components/form-control-component/FormControlComponent.esm.js.map +1 -1
  277. package/dist/lib/components/ids.cjs.js.map +1 -1
  278. package/dist/lib/components/ids.esm.js.map +1 -1
  279. package/dist/lib/components/traits/DialogTrait.cjs.js.map +1 -1
  280. package/dist/lib/components/traits/DialogTrait.esm.js.map +1 -1
  281. package/dist/lib/components/traits/FormControlTrait.cjs.js.map +1 -1
  282. package/dist/lib/components/traits/FormControlTrait.esm.js.map +1 -1
  283. package/dist/lib/components/web-component/WebComponent.cjs.js.map +1 -1
  284. package/dist/lib/components/web-component/WebComponent.esm.js.map +1 -1
  285. package/dist/lib/components/web-component/WebComponent.styles.cjs.js.map +1 -1
  286. package/dist/lib/components/web-component/WebComponent.styles.esm.js.map +1 -1
  287. package/dist/lib/debug.cjs.js.map +1 -1
  288. package/dist/lib/debug.esm.js.map +1 -1
  289. package/dist/lib/dialogs/Dialog.cjs.js.map +1 -1
  290. package/dist/lib/dialogs/Dialog.esm.js.map +1 -1
  291. package/dist/lib/dialogs/context.cjs.js.map +1 -1
  292. package/dist/lib/dialogs/context.esm.js.map +1 -1
  293. package/dist/lib/dialogs/events/close-dialog.cjs.js.map +1 -1
  294. package/dist/lib/dialogs/events/close-dialog.esm.js.map +1 -1
  295. package/dist/lib/dialogs/events/show-dialog.cjs.js.map +1 -1
  296. package/dist/lib/dialogs/events/show-dialog.esm.js.map +1 -1
  297. package/dist/lib/dialogs/helpers.cjs.js.map +1 -1
  298. package/dist/lib/dialogs/helpers.esm.js.map +1 -1
  299. package/dist/lib/file-explorer/context.cjs.js.map +1 -1
  300. package/dist/lib/file-explorer/context.esm.js.map +1 -1
  301. package/dist/lib/forms/fieldParams.cjs.js.map +1 -1
  302. package/dist/lib/forms/fieldParams.esm.js.map +1 -1
  303. package/dist/lib/forms/rdfFormsHelper.cjs.js.map +1 -1
  304. package/dist/lib/forms/rdfFormsHelper.esm.js.map +1 -1
  305. package/dist/lib/forms/store/NoopStore.cjs.js.map +1 -1
  306. package/dist/lib/forms/store/NoopStore.esm.js.map +1 -1
  307. package/dist/lib/forms/store/StoreContext.cjs.js.map +1 -1
  308. package/dist/lib/forms/store/StoreContext.esm.js.map +1 -1
  309. package/dist/lib/iconBase.cjs.js.map +1 -1
  310. package/dist/lib/iconBase.esm.js.map +1 -1
  311. package/dist/lib/log.cjs.js.map +1 -1
  312. package/dist/lib/log.esm.js.map +1 -1
  313. package/dist/lib/messageArea.cjs.js.map +1 -1
  314. package/dist/lib/messageArea.esm.js.map +1 -1
  315. package/dist/lib/newperson.cjs.js.map +1 -1
  316. package/dist/lib/newperson.esm.js.map +1 -1
  317. package/dist/lib/ns.cjs.js.map +1 -1
  318. package/dist/lib/ns.esm.js.map +1 -1
  319. package/dist/lib/pad.cjs.js.map +1 -1
  320. package/dist/lib/pad.esm.js.map +1 -1
  321. package/dist/lib/participation.cjs.js.map +1 -1
  322. package/dist/lib/participation.esm.js.map +1 -1
  323. package/dist/lib/preferences.cjs.js.map +1 -1
  324. package/dist/lib/preferences.esm.js.map +1 -1
  325. package/dist/lib/style.cjs.js.map +1 -1
  326. package/dist/lib/style.esm.js.map +1 -1
  327. package/dist/lib/styleConstants.cjs.js.map +1 -1
  328. package/dist/lib/styleConstants.esm.js.map +1 -1
  329. package/dist/lib/style_multiSelect.cjs.js.map +1 -1
  330. package/dist/lib/style_multiSelect.esm.js.map +1 -1
  331. package/dist/lib/table.cjs.js.map +1 -1
  332. package/dist/lib/table.esm.js.map +1 -1
  333. package/dist/lib/tabs.cjs.js.map +1 -1
  334. package/dist/lib/tabs.esm.js.map +1 -1
  335. package/dist/lib/timing.cjs.js.map +1 -1
  336. package/dist/lib/timing.esm.js.map +1 -1
  337. package/dist/lib/values.cjs.js.map +1 -1
  338. package/dist/lib/values.esm.js.map +1 -1
  339. package/dist/loader.js +2 -2
  340. package/dist/login/login.cjs.js.map +1 -1
  341. package/dist/login/login.esm.js.map +1 -1
  342. package/dist/matrix/index.cjs.js.map +1 -1
  343. package/dist/matrix/index.esm.js.map +1 -1
  344. package/dist/matrix/matrix.cjs.js.map +1 -1
  345. package/dist/matrix/matrix.esm.js.map +1 -1
  346. package/dist/media/index.cjs.js.map +1 -1
  347. package/dist/media/index.esm.js.map +1 -1
  348. package/dist/media/media-capture.cjs.js.map +1 -1
  349. package/dist/media/media-capture.esm.js.map +1 -1
  350. package/dist/signup/config-default.cjs.js.map +1 -1
  351. package/dist/signup/config-default.esm.js.map +1 -1
  352. package/dist/signup/signup.cjs.js.map +1 -1
  353. package/dist/signup/signup.esm.js.map +1 -1
  354. package/dist/solid-ui.js +20 -20
  355. package/dist/solid-ui.min.js +20 -20
  356. package/dist/solid-ui.min.js.map +1 -1
  357. package/dist/utils/headerFooterHelpers.cjs.js.map +1 -1
  358. package/dist/utils/headerFooterHelpers.esm.js.map +1 -1
  359. package/dist/utils/index.cjs.js.map +1 -1
  360. package/dist/utils/index.esm.js.map +1 -1
  361. package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
  362. package/dist/utils/keyHelpers/accessData.esm.js.map +1 -1
  363. package/dist/utils/keyHelpers/acl.cjs.js.map +1 -1
  364. package/dist/utils/keyHelpers/acl.esm.js.map +1 -1
  365. package/dist/utils/keyHelpers/otherHelpers.cjs.js.map +1 -1
  366. package/dist/utils/keyHelpers/otherHelpers.esm.js.map +1 -1
  367. package/dist/utils/label.cjs.js.map +1 -1
  368. package/dist/utils/label.esm.js.map +1 -1
  369. package/dist/widgets/buttons/iconLinks.cjs.js.map +1 -1
  370. package/dist/widgets/buttons/iconLinks.esm.js.map +1 -1
  371. package/dist/widgets/buttons.cjs.js.map +1 -1
  372. package/dist/widgets/buttons.esm.js.map +1 -1
  373. package/dist/widgets/dragAndDrop.cjs.js.map +1 -1
  374. package/dist/widgets/dragAndDrop.esm.js.map +1 -1
  375. package/dist/widgets/error.cjs.js.map +1 -1
  376. package/dist/widgets/error.esm.js.map +1 -1
  377. package/dist/widgets/forms/autocomplete/autocompleteBar.cjs.js.map +1 -1
  378. package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js.map +1 -1
  379. package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
  380. package/dist/widgets/forms/autocomplete/autocompleteField.esm.js.map +1 -1
  381. package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js.map +1 -1
  382. package/dist/widgets/forms/autocomplete/autocompletePicker.esm.js.map +1 -1
  383. package/dist/widgets/forms/autocomplete/language.cjs.js.map +1 -1
  384. package/dist/widgets/forms/autocomplete/language.esm.js.map +1 -1
  385. package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
  386. package/dist/widgets/forms/autocomplete/publicData.esm.js.map +1 -1
  387. package/dist/widgets/forms/basic.cjs.js.map +1 -1
  388. package/dist/widgets/forms/basic.esm.js.map +1 -1
  389. package/dist/widgets/forms/fieldFunction.cjs.js.map +1 -1
  390. package/dist/widgets/forms/fieldFunction.esm.js.map +1 -1
  391. package/dist/widgets/forms/fieldParams.cjs.js.map +1 -1
  392. package/dist/widgets/forms/fieldParams.esm.js.map +1 -1
  393. package/dist/widgets/forms/formStyle.cjs.js.map +1 -1
  394. package/dist/widgets/forms/formStyle.esm.js.map +1 -1
  395. package/dist/widgets/forms.cjs.js.map +1 -1
  396. package/dist/widgets/forms.esm.js.map +1 -1
  397. package/dist/widgets/index.cjs.js.map +1 -1
  398. package/dist/widgets/index.esm.js.map +1 -1
  399. package/dist/widgets/multiSelect.cjs.js.map +1 -1
  400. package/dist/widgets/multiSelect.esm.js.map +1 -1
  401. package/dist/widgets/peoplePicker.cjs.js.map +1 -1
  402. package/dist/widgets/peoplePicker.esm.js.map +1 -1
  403. package/dist/widgets/widgetHelpers.cjs.js.map +1 -1
  404. package/dist/widgets/widgetHelpers.esm.js.map +1 -1
  405. package/package.json +3 -3
  406. package/dist/chunks/account-C4JpDQFa.js.map +0 -1
  407. package/dist/chunks/auth-DfCfMOuM.js.map +0 -1
  408. package/dist/chunks/avatar-C677VD9J.js.map +0 -1
  409. package/dist/chunks/chunk.KB3IOPVF-Ckx3HIiR.js.map +0 -1
  410. package/dist/chunks/combobox-BZ9n8wQw.js.map +0 -1
  411. package/dist/chunks/guard-DcrczXhs.js.map +0 -1
  412. package/dist/chunks/login-button-CRQbpCob.js.map +0 -1
  413. package/dist/chunks/logout-button-H-ckaICm.js.map +0 -1
  414. package/dist/chunks/menu-DhnJDuBz.js.map +0 -1
  415. package/dist/chunks/provider-v6Wz9BOu.js.map +0 -1
  416. package/dist/chunks/signup-button-Cy6FwVhE.js.map +0 -1
  417. package/dist/chunks/src-Ca8thhHS.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ids.cjs.js","names":["generateId","Math","random","toString","substring"],"sources":["../../../src/lib/components/ids.ts"],"sourcesContent":["export function generateId () {\n return Math.random().toString(36).substring(2, 15)\n}\n"],"mappings":"AAAA,SAAgBA,GAAc,CAC5B,OAAOC,KAAKC,OAAO,CAAC,CAACC,SAAS,EAAE,CAAC,CAACC,UAAU,EAAG,EAAE,CACnD"}
1
+ {"version":3,"file":"ids.cjs.js","names":["generateId","Math","random","toString","substring","generateId"],"sources":["../../../src/lib/components/ids.ts"],"sourcesContent":["export function generateId () {\n return Math.random().toString(36).substring(2, 15)\n}\n"],"mappings":"AAAA,SAAgBA,GAAc,CAC5B,OAAOC,KAAKC,OAAO,CAAC,CAACC,SAAS,EAAE,CAAC,CAACC,UAAU,EAAG,EAAE,CACnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"ids.esm.js","names":["generateId","Math","random","toString","substring"],"sources":["../../../src/lib/components/ids.ts"],"sourcesContent":["export function generateId () {\n return Math.random().toString(36).substring(2, 15)\n}\n"],"mappings":";AAAA,SAAgBA,IAAc;CAC5B,OAAOC,KAAKC,OAAO,CAAC,CAACC,SAAS,EAAE,CAAC,CAACC,UAAU,GAAG,EAAE;AACnD"}
1
+ {"version":3,"file":"ids.esm.js","names":["generateId","Math","random","toString","substring","generateId"],"sources":["../../../src/lib/components/ids.ts"],"sourcesContent":["export function generateId () {\n return Math.random().toString(36).substring(2, 15)\n}\n"],"mappings":";AAAA,SAAgBA,IAAc;CAC5B,OAAOC,KAAKC,OAAO,CAAC,CAACC,SAAS,EAAE,CAAC,CAACC,UAAU,GAAG,EAAE;AACnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"DialogTrait.cjs.js","names":["CloseDialogEvent","DialogTrait","constructor","target","config","_defineProperty","close","data","window","dispatchEvent","getContext","id"],"sources":["../../../../src/lib/components/traits/DialogTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { CloseDialogEvent } from '@/lib/dialogs/events/close-dialog'\nimport type { DialogContext } from '@/lib/dialogs/context'\nimport type { GetDialogResult } from '@/lib/dialogs/helpers'\n\nimport { WebComponentTrait } from './WebComponentTrait'\n\nexport interface DialogTraitConfig {\n getContext: () => DialogContext\n}\n\nexport default class DialogTrait<T> implements WebComponentTrait {\n public target: WebComponent\n private config: DialogTraitConfig\n\n constructor (target: WebComponent, config: DialogTraitConfig) {\n this.target = target\n this.config = config\n }\n\n close (data?: GetDialogResult<T, T>) {\n window.dispatchEvent(new CloseDialogEvent(this.config.getContext().id, data))\n }\n}\n"],"mappings":"4fAWA,IAAqBC,EAArB,KAAiE,CAI/DC,YAAaC,EAAsBC,EAA2B,CAAAC,EAAA,KAAA,SAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,SAAA,IAAA,EAAA,EAC5D,KAAKF,OAASA,EACd,KAAKC,OAASA,CAChB,CAEAE,MAAOC,EAA8B,CACnCC,OAAOC,cAAc,IAAIT,EAAAA,iBAAiB,KAAKI,OAAOM,WAAW,CAAC,CAACC,GAAIJ,CAAI,CAAC,CAC9E,CACF"}
1
+ {"version":3,"file":"DialogTrait.cjs.js","names":["CloseDialogEvent","DialogTrait","constructor","target","config","_defineProperty","close","data","window","dispatchEvent","getContext","id","CloseDialogEvent","require_close_dialog","_defineProperty","_toPropertyKey","r","t","i","_toPrimitive","e","DialogTrait","target","config","data"],"sources":["../../../../src/lib/components/traits/DialogTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { CloseDialogEvent } from '@/lib/dialogs/events/close-dialog'\nimport type { DialogContext } from '@/lib/dialogs/context'\nimport type { GetDialogResult } from '@/lib/dialogs/helpers'\n\nimport { WebComponentTrait } from './WebComponentTrait'\n\nexport interface DialogTraitConfig {\n getContext: () => DialogContext\n}\n\nexport default class DialogTrait<T> implements WebComponentTrait {\n public target: WebComponent\n private config: DialogTraitConfig\n\n constructor (target: WebComponent, config: DialogTraitConfig) {\n this.target = target\n this.config = config\n }\n\n close (data?: GetDialogResult<T, T>) {\n window.dispatchEvent(new CloseDialogEvent(this.config.getContext().id, data))\n }\n}\n"],"mappings":"4fAWA,IAAqBC,EAArB,KAAiE,CAI/DC,YAAaC,EAAsBC,EAA2B,CAAAC,EAAA,KAAA,SAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,SAAA,IAAA,EAAA,EAC5D,KAAKF,OAASA,EACd,KAAKC,OAASA,CAChB,CAEAE,MAAOC,EAA8B,CACnCC,OAAOC,cAAc,IAAIT,EAAAA,iBAAiB,KAAKI,OAAOM,WAAW,CAAC,CAACC,GAAIJ,CAAI,CAAC,CAC9E,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"DialogTrait.esm.js","names":["CloseDialogEvent","DialogTrait","constructor","target","config","_defineProperty","close","data","window","dispatchEvent","getContext","id"],"sources":["../../../../src/lib/components/traits/DialogTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { CloseDialogEvent } from '@/lib/dialogs/events/close-dialog'\nimport type { DialogContext } from '@/lib/dialogs/context'\nimport type { GetDialogResult } from '@/lib/dialogs/helpers'\n\nimport { WebComponentTrait } from './WebComponentTrait'\n\nexport interface DialogTraitConfig {\n getContext: () => DialogContext\n}\n\nexport default class DialogTrait<T> implements WebComponentTrait {\n public target: WebComponent\n private config: DialogTraitConfig\n\n constructor (target: WebComponent, config: DialogTraitConfig) {\n this.target = target\n this.config = config\n }\n\n close (data?: GetDialogResult<T, T>) {\n window.dispatchEvent(new CloseDialogEvent(this.config.getContext().id, data))\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAqBC,IAArB,MAAiE;CAI/DC,YAAaC,GAAsBC,GAA2B;EAE5D,AAF4DC,EAAA,MAAA,UAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,UAAA,KAAA,CAAA,GAC5D,KAAKF,SAASA,GACd,KAAKC,SAASA;CAChB;CAEAE,MAAOC,GAA8B;EACnCC,OAAOC,cAAc,IAAIT,EAAiB,KAAKI,OAAOM,WAAW,CAAC,CAACC,IAAIJ,CAAI,CAAC;CAC9E;AACF"}
1
+ {"version":3,"file":"DialogTrait.esm.js","names":["CloseDialogEvent","DialogTrait","constructor","target","config","_defineProperty","close","data","window","dispatchEvent","getContext","id","_defineProperty","_toPropertyKey","r","t","i","_toPrimitive","e","DialogTrait","target","config","CloseDialogEvent","data"],"sources":["../../../../src/lib/components/traits/DialogTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { CloseDialogEvent } from '@/lib/dialogs/events/close-dialog'\nimport type { DialogContext } from '@/lib/dialogs/context'\nimport type { GetDialogResult } from '@/lib/dialogs/helpers'\n\nimport { WebComponentTrait } from './WebComponentTrait'\n\nexport interface DialogTraitConfig {\n getContext: () => DialogContext\n}\n\nexport default class DialogTrait<T> implements WebComponentTrait {\n public target: WebComponent\n private config: DialogTraitConfig\n\n constructor (target: WebComponent, config: DialogTraitConfig) {\n this.target = target\n this.config = config\n }\n\n close (data?: GetDialogResult<T, T>) {\n window.dispatchEvent(new CloseDialogEvent(this.config.getContext().id, data))\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAqBC,IAArB,MAAiE;CAI/DC,YAAaC,GAAsBC,GAA2B;EAE5D,AAF4DC,EAAA,MAAA,UAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,UAAA,KAAA,CAAA,GAC5D,KAAKF,SAASA,GACd,KAAKC,SAASA;CAChB;CAEAE,MAAOC,GAA8B;EACnCC,OAAOC,cAAc,IAAIT,EAAiB,KAAKI,OAAOM,WAAW,CAAC,CAACC,IAAIJ,CAAI,CAAC;CAC9E;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormControlTrait.cjs.js","names":["html","nothing","generateId","FormControlTrait","constructor","target","config","_defineProperty","controlId","labelId","firstUpdated","getInternals","setFormValue","value","updateValidity","updated","changedProperties","has","formResetCallback","renderLabel","label","onInput","setValue","getControlElement","onSubmit","form","requestSubmit","dispatchEvent","InputEvent","bubbles","composed","internals","required","setValidity","valueMissing","undefined"],"sources":["../../../../src/lib/components/traits/FormControlTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\n\nimport { generateId } from '@/lib/components'\n\nimport type { WebComponentTrait } from './WebComponentTrait'\n\nexport type FormControlValue = string | File | FormData | null\n\nexport type FormControlTraitTarget = WebComponent & {\n name: string;\n label: string;\n required: boolean;\n disabled: boolean;\n value: FormControlValue;\n}\n\nexport interface FormControlTraitConfig {\n getControlElement(): HTMLInputElement | HTMLSelectElement | null\n getInternals(): ElementInternals\n}\n\nexport default class FormControlTrait implements WebComponentTrait {\n public controlId: string\n public labelId: string\n public target: FormControlTraitTarget\n private config: FormControlTraitConfig\n\n constructor (target: FormControlTraitTarget, config: FormControlTraitConfig) {\n this.config = config\n this.controlId = `control-${generateId()}`\n this.labelId = `label-${this.controlId}`\n this.target = target\n }\n\n firstUpdated () {\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.updateValidity()\n }\n\n updated (changedProperties: Map<PropertyKey, unknown>) {\n if (changedProperties.has('value') || changedProperties.has('required')) {\n this.updateValidity()\n }\n }\n\n formResetCallback () {\n this.target.value = ''\n this.config.getInternals().setFormValue('')\n this.updateValidity()\n }\n\n renderLabel () {\n return this.target.label\n ? html`<label id=\"${this.labelId}\" for=\"${this.controlId}\">${this.target.label}</label>`\n : nothing\n }\n\n onInput () {\n this.setValue(this.config.getControlElement()?.value ?? null)\n }\n\n onSubmit () {\n this.config.getInternals().form?.requestSubmit()\n }\n\n setValue (value: FormControlValue) {\n this.target.value = value\n\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.target.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }))\n }\n\n private updateValidity () {\n const internals = this.config.getInternals()\n\n if (this.target.required && (this.target.value ?? '') === '') {\n internals.setValidity(\n { valueMissing: true },\n 'Please fill out this field.',\n this.config.getControlElement() ?? undefined\n )\n } else {\n internals.setValidity({})\n }\n }\n}\n"],"mappings":"ihBAsBA,IAAqBG,EAArB,KAAmE,CAMjEC,YAAaC,EAAgCC,EAAgC,CAAAC,EAAA,KAAA,YAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,UAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,SAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,SAAA,IAAA,EAAA,EAC3E,KAAKD,OAASA,EACd,KAAKE,UAAY,WAAWN,EAAAA,WAAW,IACvC,KAAKO,QAAU,SAAS,KAAKD,YAC7B,KAAKH,OAASA,CAChB,CAEAK,cAAgB,CACd,KAAKJ,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,OAAS,EAAE,EAC/D,KAAKC,eAAe,CACtB,CAEAC,QAASC,EAA8C,EACjDA,EAAkBC,IAAI,OAAO,GAAKD,EAAkBC,IAAI,UAAU,IACpE,KAAKH,eAAe,CAExB,CAEAI,mBAAqB,CACnB,KAAKb,OAAOQ,MAAQ,GACpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,EAAE,EAC1C,KAAKE,eAAe,CACtB,CAEAK,aAAe,CACb,OAAO,KAAKd,OAAOe,MACfpB,EAAAA,IAAI,cAAc,KAAKS,QAAO,SAAU,KAAKD,UAAS,IAAK,KAAKH,OAAOe,MAAK,UAC5EnB,EAAAA,OACN,CAEAoB,SAAW,CACT,KAAKC,SAAS,KAAKhB,OAAOiB,kBAAkB,CAAC,EAAEV,OAAS,IAAI,CAC9D,CAEAW,UAAY,CACV,KAAKlB,OAAOK,aAAa,CAAC,CAACc,MAAMC,cAAc,CACjD,CAEAJ,SAAUT,EAAyB,CACjC,KAAKR,OAAOQ,MAAQA,EAEpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,OAAS,EAAE,EAC/D,KAAKR,OAAOsB,cAAc,IAAIC,WAAW,QAAS,CAAEC,QAAS,GAAMC,SAAU,EAAK,CAAC,CAAC,CACtF,CAEQhB,gBAAkB,CACxB,IAAMiB,EAAY,KAAKzB,OAAOK,aAAa,EAEvC,KAAKN,OAAO2B,WAAa,KAAK3B,OAAOQ,OAAS,MAAQ,GACxDkB,EAAUE,YACR,CAAEC,aAAc,EAAK,EACrB,8BACA,KAAK5B,OAAOiB,kBAAkB,GAAKY,IAAAA,EACrC,EAEAJ,EAAUE,YAAY,CAAC,CAAC,CAE5B,CACF"}
1
+ {"version":3,"file":"FormControlTrait.cjs.js","names":["html","nothing","generateId","FormControlTrait","constructor","target","config","_defineProperty","controlId","labelId","firstUpdated","getInternals","setFormValue","value","updateValidity","updated","changedProperties","has","formResetCallback","renderLabel","label","onInput","setValue","getControlElement","onSubmit","form","requestSubmit","dispatchEvent","InputEvent","bubbles","composed","internals","required","setValidity","valueMissing","undefined","generateId","nothing","require_ids","lit","_defineProperty","_toPropertyKey","r","t","i","_toPrimitive","e","FormControlTrait","config","target","changedProperties","value","internals"],"sources":["../../../../src/lib/components/traits/FormControlTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\n\nimport { generateId } from '@/lib/components'\n\nimport type { WebComponentTrait } from './WebComponentTrait'\n\nexport type FormControlValue = string | File | FormData | null\n\nexport type FormControlTraitTarget = WebComponent & {\n name: string;\n label: string;\n required: boolean;\n disabled: boolean;\n value: FormControlValue;\n}\n\nexport interface FormControlTraitConfig {\n getControlElement(): HTMLInputElement | HTMLSelectElement | null\n getInternals(): ElementInternals\n}\n\nexport default class FormControlTrait implements WebComponentTrait {\n public controlId: string\n public labelId: string\n public target: FormControlTraitTarget\n private config: FormControlTraitConfig\n\n constructor (target: FormControlTraitTarget, config: FormControlTraitConfig) {\n this.config = config\n this.controlId = `control-${generateId()}`\n this.labelId = `label-${this.controlId}`\n this.target = target\n }\n\n firstUpdated () {\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.updateValidity()\n }\n\n updated (changedProperties: Map<PropertyKey, unknown>) {\n if (changedProperties.has('value') || changedProperties.has('required')) {\n this.updateValidity()\n }\n }\n\n formResetCallback () {\n this.target.value = ''\n this.config.getInternals().setFormValue('')\n this.updateValidity()\n }\n\n renderLabel () {\n return this.target.label\n ? html`<label id=\"${this.labelId}\" for=\"${this.controlId}\">${this.target.label}</label>`\n : nothing\n }\n\n onInput () {\n this.setValue(this.config.getControlElement()?.value ?? null)\n }\n\n onSubmit () {\n this.config.getInternals().form?.requestSubmit()\n }\n\n setValue (value: FormControlValue) {\n this.target.value = value\n\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.target.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }))\n }\n\n private updateValidity () {\n const internals = this.config.getInternals()\n\n if (this.target.required && (this.target.value ?? '') === '') {\n internals.setValidity(\n { valueMissing: true },\n 'Please fill out this field.',\n this.config.getControlElement() ?? undefined\n )\n } else {\n internals.setValidity({})\n }\n }\n}\n"],"mappings":"ihBAsBA,IAAqBG,EAArB,KAAmE,CAMjEC,YAAaC,EAAgCC,EAAgC,CAAAC,EAAA,KAAA,YAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,UAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,SAAA,IAAA,EAAA,EAAAA,EAAA,KAAA,SAAA,IAAA,EAAA,EAC3E,KAAKD,OAASA,EACd,KAAKE,UAAY,WAAWN,EAAAA,WAAW,IACvC,KAAKO,QAAU,SAAS,KAAKD,YAC7B,KAAKH,OAASA,CAChB,CAEAK,cAAgB,CACd,KAAKJ,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,OAAS,EAAE,EAC/D,KAAKC,eAAe,CACtB,CAEAC,QAASC,EAA8C,EACjDA,EAAkBC,IAAI,OAAO,GAAKD,EAAkBC,IAAI,UAAU,IACpE,KAAKH,eAAe,CAExB,CAEAI,mBAAqB,CACnB,KAAKb,OAAOQ,MAAQ,GACpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,EAAE,EAC1C,KAAKE,eAAe,CACtB,CAEAK,aAAe,CACb,OAAO,KAAKd,OAAOe,MACfpB,EAAAA,IAAI,cAAc,KAAKS,QAAO,SAAU,KAAKD,UAAS,IAAK,KAAKH,OAAOe,MAAK,UAC5EnB,EAAAA,OACN,CAEAoB,SAAW,CACT,KAAKC,SAAS,KAAKhB,OAAOiB,kBAAkB,CAAC,EAAEV,OAAS,IAAI,CAC9D,CAEAW,UAAY,CACV,KAAKlB,OAAOK,aAAa,CAAC,CAACc,MAAMC,cAAc,CACjD,CAEAJ,SAAUT,EAAyB,CACjC,KAAKR,OAAOQ,MAAQA,EAEpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,OAAS,EAAE,EAC/D,KAAKR,OAAOsB,cAAc,IAAIC,WAAW,QAAS,CAAEC,QAAS,GAAMC,SAAU,EAAK,CAAC,CAAC,CACtF,CAEQhB,gBAAkB,CACxB,IAAMiB,EAAY,KAAKzB,OAAOK,aAAa,EAEvC,KAAKN,OAAO2B,WAAa,KAAK3B,OAAOQ,OAAS,MAAQ,GACxDkB,EAAUE,YACR,CAAEC,aAAc,EAAK,EACrB,8BACA,KAAK5B,OAAOiB,kBAAkB,GAAKY,IAAAA,EACrC,EAEAJ,EAAUE,YAAY,CAAC,CAAC,CAE5B,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormControlTrait.esm.js","names":["html","nothing","generateId","FormControlTrait","constructor","target","config","_defineProperty","controlId","labelId","firstUpdated","getInternals","setFormValue","value","updateValidity","updated","changedProperties","has","formResetCallback","renderLabel","label","onInput","setValue","getControlElement","onSubmit","form","requestSubmit","dispatchEvent","InputEvent","bubbles","composed","internals","required","setValidity","valueMissing","undefined"],"sources":["../../../../src/lib/components/traits/FormControlTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\n\nimport { generateId } from '@/lib/components'\n\nimport type { WebComponentTrait } from './WebComponentTrait'\n\nexport type FormControlValue = string | File | FormData | null\n\nexport type FormControlTraitTarget = WebComponent & {\n name: string;\n label: string;\n required: boolean;\n disabled: boolean;\n value: FormControlValue;\n}\n\nexport interface FormControlTraitConfig {\n getControlElement(): HTMLInputElement | HTMLSelectElement | null\n getInternals(): ElementInternals\n}\n\nexport default class FormControlTrait implements WebComponentTrait {\n public controlId: string\n public labelId: string\n public target: FormControlTraitTarget\n private config: FormControlTraitConfig\n\n constructor (target: FormControlTraitTarget, config: FormControlTraitConfig) {\n this.config = config\n this.controlId = `control-${generateId()}`\n this.labelId = `label-${this.controlId}`\n this.target = target\n }\n\n firstUpdated () {\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.updateValidity()\n }\n\n updated (changedProperties: Map<PropertyKey, unknown>) {\n if (changedProperties.has('value') || changedProperties.has('required')) {\n this.updateValidity()\n }\n }\n\n formResetCallback () {\n this.target.value = ''\n this.config.getInternals().setFormValue('')\n this.updateValidity()\n }\n\n renderLabel () {\n return this.target.label\n ? html`<label id=\"${this.labelId}\" for=\"${this.controlId}\">${this.target.label}</label>`\n : nothing\n }\n\n onInput () {\n this.setValue(this.config.getControlElement()?.value ?? null)\n }\n\n onSubmit () {\n this.config.getInternals().form?.requestSubmit()\n }\n\n setValue (value: FormControlValue) {\n this.target.value = value\n\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.target.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }))\n }\n\n private updateValidity () {\n const internals = this.config.getInternals()\n\n if (this.target.required && (this.target.value ?? '') === '') {\n internals.setValidity(\n { valueMissing: true },\n 'Please fill out this field.',\n this.config.getControlElement() ?? undefined\n )\n } else {\n internals.setValidity({})\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAqBG,IAArB,MAAmE;CAMjEC,YAAaC,GAAgCC,GAAgC;EAI3E,AAJ2EC,EAAA,MAAA,aAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,WAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,UAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,UAAA,KAAA,CAAA,GAC3E,KAAKD,SAASA,GACd,KAAKE,YAAY,WAAWN,EAAW,KACvC,KAAKO,UAAU,SAAS,KAAKD,aAC7B,KAAKH,SAASA;CAChB;CAEAK,eAAgB;EAEd,AADA,KAAKJ,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,SAAS,EAAE,GAC/D,KAAKC,eAAe;CACtB;CAEAC,QAASC,GAA8C;EACrD,CAAIA,EAAkBC,IAAI,OAAO,KAAKD,EAAkBC,IAAI,UAAU,MACpE,KAAKH,eAAe;CAExB;CAEAI,oBAAqB;EAGnB,AAFA,KAAKb,OAAOQ,QAAQ,IACpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,EAAE,GAC1C,KAAKE,eAAe;CACtB;CAEAK,cAAe;EACb,OAAO,KAAKd,OAAOe,QACfpB,CAAI,cAAc,KAAKS,QAAO,SAAU,KAAKD,UAAS,IAAK,KAAKH,OAAOe,MAAK,YAC5EnB;CACN;CAEAoB,UAAW;EACT,KAAKC,SAAS,KAAKhB,OAAOiB,kBAAkB,CAAC,EAAEV,SAAS,IAAI;CAC9D;CAEAW,WAAY;EACV,KAAKlB,OAAOK,aAAa,CAAC,CAACc,MAAMC,cAAc;CACjD;CAEAJ,SAAUT,GAAyB;EAIjC,AAHA,KAAKR,OAAOQ,QAAQA,GAEpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,SAAS,EAAE,GAC/D,KAAKR,OAAOsB,cAAc,IAAIC,WAAW,SAAS;GAAEC,SAAS;GAAMC,UAAU;EAAK,CAAC,CAAC;CACtF;CAEQhB,iBAAkB;EACxB,IAAMiB,IAAY,KAAKzB,OAAOK,aAAa;EAE3C,AAAI,KAAKN,OAAO2B,aAAa,KAAK3B,OAAOQ,SAAS,QAAQ,KACxDkB,EAAUE,YACR,EAAEC,cAAc,GAAK,GACrB,+BACA,KAAK5B,OAAOiB,kBAAkB,KAAKY,KAAAA,CACrC,IAEAJ,EAAUE,YAAY,CAAC,CAAC;CAE5B;AACF"}
1
+ {"version":3,"file":"FormControlTrait.esm.js","names":["html","nothing","generateId","FormControlTrait","constructor","target","config","_defineProperty","controlId","labelId","firstUpdated","getInternals","setFormValue","value","updateValidity","updated","changedProperties","has","formResetCallback","renderLabel","label","onInput","setValue","getControlElement","onSubmit","form","requestSubmit","dispatchEvent","InputEvent","bubbles","composed","internals","required","setValidity","valueMissing","undefined","_defineProperty","_toPropertyKey","r","t","i","_toPrimitive","e","FormControlTrait","config","generateId","target","changedProperties","nothing","value","internals"],"sources":["../../../../src/lib/components/traits/FormControlTrait.ts"],"sourcesContent":["import { WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\n\nimport { generateId } from '@/lib/components'\n\nimport type { WebComponentTrait } from './WebComponentTrait'\n\nexport type FormControlValue = string | File | FormData | null\n\nexport type FormControlTraitTarget = WebComponent & {\n name: string;\n label: string;\n required: boolean;\n disabled: boolean;\n value: FormControlValue;\n}\n\nexport interface FormControlTraitConfig {\n getControlElement(): HTMLInputElement | HTMLSelectElement | null\n getInternals(): ElementInternals\n}\n\nexport default class FormControlTrait implements WebComponentTrait {\n public controlId: string\n public labelId: string\n public target: FormControlTraitTarget\n private config: FormControlTraitConfig\n\n constructor (target: FormControlTraitTarget, config: FormControlTraitConfig) {\n this.config = config\n this.controlId = `control-${generateId()}`\n this.labelId = `label-${this.controlId}`\n this.target = target\n }\n\n firstUpdated () {\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.updateValidity()\n }\n\n updated (changedProperties: Map<PropertyKey, unknown>) {\n if (changedProperties.has('value') || changedProperties.has('required')) {\n this.updateValidity()\n }\n }\n\n formResetCallback () {\n this.target.value = ''\n this.config.getInternals().setFormValue('')\n this.updateValidity()\n }\n\n renderLabel () {\n return this.target.label\n ? html`<label id=\"${this.labelId}\" for=\"${this.controlId}\">${this.target.label}</label>`\n : nothing\n }\n\n onInput () {\n this.setValue(this.config.getControlElement()?.value ?? null)\n }\n\n onSubmit () {\n this.config.getInternals().form?.requestSubmit()\n }\n\n setValue (value: FormControlValue) {\n this.target.value = value\n\n this.config.getInternals().setFormValue(this.target.value ?? '')\n this.target.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }))\n }\n\n private updateValidity () {\n const internals = this.config.getInternals()\n\n if (this.target.required && (this.target.value ?? '') === '') {\n internals.setValidity(\n { valueMissing: true },\n 'Please fill out this field.',\n this.config.getControlElement() ?? undefined\n )\n } else {\n internals.setValidity({})\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAqBG,IAArB,MAAmE;CAMjEC,YAAaC,GAAgCC,GAAgC;EAI3E,AAJ2EC,EAAA,MAAA,aAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,WAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,UAAA,KAAA,CAAA,GAAAA,EAAA,MAAA,UAAA,KAAA,CAAA,GAC3E,KAAKD,SAASA,GACd,KAAKE,YAAY,WAAWN,EAAW,KACvC,KAAKO,UAAU,SAAS,KAAKD,aAC7B,KAAKH,SAASA;CAChB;CAEAK,eAAgB;EAEd,AADA,KAAKJ,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,SAAS,EAAE,GAC/D,KAAKC,eAAe;CACtB;CAEAC,QAASC,GAA8C;EACrD,CAAIA,EAAkBC,IAAI,OAAO,KAAKD,EAAkBC,IAAI,UAAU,MACpE,KAAKH,eAAe;CAExB;CAEAI,oBAAqB;EAGnB,AAFA,KAAKb,OAAOQ,QAAQ,IACpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,EAAE,GAC1C,KAAKE,eAAe;CACtB;CAEAK,cAAe;EACb,OAAO,KAAKd,OAAOe,QACfpB,CAAI,cAAc,KAAKS,QAAO,SAAU,KAAKD,UAAS,IAAK,KAAKH,OAAOe,MAAK,YAC5EnB;CACN;CAEAoB,UAAW;EACT,KAAKC,SAAS,KAAKhB,OAAOiB,kBAAkB,CAAC,EAAEV,SAAS,IAAI;CAC9D;CAEAW,WAAY;EACV,KAAKlB,OAAOK,aAAa,CAAC,CAACc,MAAMC,cAAc;CACjD;CAEAJ,SAAUT,GAAyB;EAIjC,AAHA,KAAKR,OAAOQ,QAAQA,GAEpB,KAAKP,OAAOK,aAAa,CAAC,CAACC,aAAa,KAAKP,OAAOQ,SAAS,EAAE,GAC/D,KAAKR,OAAOsB,cAAc,IAAIC,WAAW,SAAS;GAAEC,SAAS;GAAMC,UAAU;EAAK,CAAC,CAAC;CACtF;CAEQhB,iBAAkB;EACxB,IAAMiB,IAAY,KAAKzB,OAAOK,aAAa;EAE3C,AAAI,KAAKN,OAAO2B,aAAa,KAAK3B,OAAOQ,SAAS,QAAQ,KACxDkB,EAAUE,YACR,EAAEC,cAAc,GAAK,GACrB,+BACA,KAAK5B,OAAOiB,kBAAkB,KAAKY,KAAAA,CACrC,IAEAJ,EAAUE,YAAY,CAAC,CAAC;CAE5B;AACF"}
@@ -1 +1 @@
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
+ {"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","LitElement","styles","require_WebComponent_styles","lit","_defineProperty","_toPropertyKey","r","t","i","_toPrimitive","e","metadataMarker","WebComponent","args","elementStyles","componentStyles","type","listener","trait","changedProperties","states","state","condition","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,OAE7B,GAAKA,EAIL,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 +1 @@
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
+ {"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","styles","WebComponent_styles_default","_defineProperty","_toPropertyKey","r","t","i","_toPrimitive","e","metadataMarker","WebComponent","LitElement","args","elementStyles","componentStyles","type","listener","trait","changedProperties","states","state","condition","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;EAE7B,IAAKA,GAIL,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 +1 @@
1
- {"version":3,"file":"WebComponent.styles.cjs.js","names":[],"sources":[],"mappings":""}
1
+ {"version":3,"file":"WebComponent.styles.cjs.js","names":["WebComponent_styles_default"],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"WebComponent.styles.esm.js","names":[],"sources":[],"mappings":""}
1
+ {"version":3,"file":"WebComponent.styles.esm.js","names":["WebComponent_styles_default"],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"debug.cjs.js","names":[],"sources":["../../src/lib/debug.ts"],"sourcesContent":["export function log (...args: any[]) {\n console.log(...args)\n}\n\nexport function warn (...args: any[]) {\n console.warn(...args)\n}\n\nexport function error (...args: any[]) {\n console.error(...args)\n}\n\nexport function trace (...args: any[]) {\n console.trace(...args)\n}\n"],"mappings":"AAAA,SAAgB,EAAK,GAAG,EAAa,CACnC,QAAQ,IAAI,GAAG,CAAI,CACrB,CAEA,SAAgB,EAAM,GAAG,EAAa,CACpC,QAAQ,KAAK,GAAG,CAAI,CACtB,CAEA,SAAgB,EAAO,GAAG,EAAa,CACrC,QAAQ,MAAM,GAAG,CAAI,CACvB,CAEA,SAAgB,EAAO,GAAG,EAAa,CACrC,QAAQ,MAAM,GAAG,CAAI,CACvB"}
1
+ {"version":3,"file":"debug.cjs.js","names":["log","args","warn","error","trace"],"sources":["../../src/lib/debug.ts"],"sourcesContent":["export function log (...args: any[]) {\n console.log(...args)\n}\n\nexport function warn (...args: any[]) {\n console.warn(...args)\n}\n\nexport function error (...args: any[]) {\n console.error(...args)\n}\n\nexport function trace (...args: any[]) {\n console.trace(...args)\n}\n"],"mappings":"AAAA,SAAgBA,EAAK,GAAGC,EAAa,CACnC,QAAQ,IAAI,GAAGA,CAAI,CACrB,CAEA,SAAgBC,EAAM,GAAGD,EAAa,CACpC,QAAQ,KAAK,GAAGA,CAAI,CACtB,CAEA,SAAgBE,EAAO,GAAGF,EAAa,CACrC,QAAQ,MAAM,GAAGA,CAAI,CACvB,CAEA,SAAgBG,EAAO,GAAGH,EAAa,CACrC,QAAQ,MAAM,GAAGA,CAAI,CACvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"debug.esm.js","names":[],"sources":["../../src/lib/debug.ts"],"sourcesContent":["export function log (...args: any[]) {\n console.log(...args)\n}\n\nexport function warn (...args: any[]) {\n console.warn(...args)\n}\n\nexport function error (...args: any[]) {\n console.error(...args)\n}\n\nexport function trace (...args: any[]) {\n console.trace(...args)\n}\n"],"mappings":";AAAA,SAAgB,EAAK,GAAG,GAAa;CACnC,QAAQ,IAAI,GAAG,CAAI;AACrB;AAEA,SAAgB,EAAM,GAAG,GAAa;CACpC,QAAQ,KAAK,GAAG,CAAI;AACtB;AAEA,SAAgB,EAAO,GAAG,GAAa;CACrC,QAAQ,MAAM,GAAG,CAAI;AACvB;AAEA,SAAgB,EAAO,GAAG,GAAa;CACrC,QAAQ,MAAM,GAAG,CAAI;AACvB"}
1
+ {"version":3,"file":"debug.esm.js","names":["log","args","warn","error","trace"],"sources":["../../src/lib/debug.ts"],"sourcesContent":["export function log (...args: any[]) {\n console.log(...args)\n}\n\nexport function warn (...args: any[]) {\n console.warn(...args)\n}\n\nexport function error (...args: any[]) {\n console.error(...args)\n}\n\nexport function trace (...args: any[]) {\n console.trace(...args)\n}\n"],"mappings":";AAAA,SAAgBA,EAAK,GAAGC,GAAa;CACnC,QAAQ,IAAI,GAAGA,CAAI;AACrB;AAEA,SAAgBC,EAAM,GAAGD,GAAa;CACpC,QAAQ,KAAK,GAAGA,CAAI;AACtB;AAEA,SAAgBE,EAAO,GAAGF,GAAa;CACrC,QAAQ,MAAM,GAAGA,CAAI;AACvB;AAEA,SAAgBG,EAAO,GAAGH,GAAa;CACrC,QAAQ,MAAM,GAAGA,CAAI;AACvB"}
@@ -1 +1 @@
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
+ {"version":3,"file":"Dialog.cjs.js","names":["generateId","require_ids","Dialog","config","element","data"],"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,IAAqBE,EAArB,KAA4B,CAC1B,GACA,QACA,OAEA,YAAa,EAAsB,EAAuB,CAAC,EAAG,CAC5D,KAAK,GAAKF,EAAAA,WAAW,EACrB,KAAK,OAASG,EACd,KAAK,QAAUC,CACjB,CAEA,OAAQ,EAAgB,CACtB,KAAK,OAAO,UAAUC,CAAI,CAC5B,CACF"}
@@ -1 +1 @@
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
+ {"version":3,"file":"Dialog.esm.js","names":["Dialog","generateId","config","element","data"],"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,IAAqBA,IAArB,MAA4B;CAC1B;CACA;CACA;CAEA,YAAa,GAAsB,IAAuB,CAAC,GAAG;EAG5D,AAFA,KAAK,KAAKC,EAAW,GACrB,KAAK,SAASC,GACd,KAAK,UAAUC;CACjB;CAEA,OAAQ,GAAgB;EACtB,KAAK,OAAO,UAAUC,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,EAAgB,EAAA,cAAA,CAA6B,OAAO,QAAQ,CAAC"}
1
+ {"version":3,"file":"context.cjs.js","names":["generateId","createContext","require_ids","_lit_context","DEFAULT_DIALOG_CONTEXT","dialogContext"],"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,IAAaI,EAAyB,CAAE,GAAI,QAAQJ,EAAAA,WAAW,GAAI,EACtDK,GAAA,EAAgBJ,EAAAA,cAAAA,CAA6B,OAAO,QAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.esm.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":";;;AAOA,IAAa,IAAyB,EAAE,IAAI,QAAQ,EAAW,IAAI,GACtD,IAAgB,EAA6B,OAAO,QAAQ,CAAC"}
1
+ {"version":3,"file":"context.esm.js","names":["DEFAULT_DIALOG_CONTEXT","generateId","dialogContext","createContext"],"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":";;;AAOA,IAAaA,IAAyB,EAAE,IAAI,QAAQC,EAAW,IAAI,GACtDC,IAAgBC,EAA6B,OAAO,QAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"close-dialog.cjs.js","names":[],"sources":["../../../../src/lib/dialogs/events/close-dialog.ts"],"sourcesContent":["const EVENT_NAME = 'solid-ui:close-dialog' as const\n\nexport class CloseDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public id: string, public data?: unknown) {\n super(CloseDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: CloseDialogEvent\n }\n}\n"],"mappings":"AAAA,IAAM,EAAa,wBAEN,EAAb,MAAa,UAAyB,KAAM,CAGtB,GAAmB,KAFvC,OAAgB,UAAY,EAE5B,YAAa,EAAmB,EAAuB,CACrD,MAAM,EAAiB,UAAW,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,EADjD,KAAA,GAAA,EAAmB,KAAA,KAAA,CAEvC,CACF"}
1
+ {"version":3,"file":"close-dialog.cjs.js","names":["EVENT_NAME","CloseDialogEvent","id","data"],"sources":["../../../../src/lib/dialogs/events/close-dialog.ts"],"sourcesContent":["const EVENT_NAME = 'solid-ui:close-dialog' as const\n\nexport class CloseDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public id: string, public data?: unknown) {\n super(CloseDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: CloseDialogEvent\n }\n}\n"],"mappings":"AAAA,IAAMA,EAAa,wBAENC,EAAb,MAAaA,UAAyB,KAAM,CAGtB,GAAmB,KAFvC,OAAgB,UAAYD,EAE5B,YAAa,EAAmB,EAAuB,CACrD,MAAMC,EAAiB,UAAW,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,EADjD,KAAA,GAAAC,EAAmB,KAAA,KAAAC,CAEvC,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"close-dialog.esm.js","names":[],"sources":["../../../../src/lib/dialogs/events/close-dialog.ts"],"sourcesContent":["const EVENT_NAME = 'solid-ui:close-dialog' as const\n\nexport class CloseDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public id: string, public data?: unknown) {\n super(CloseDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: CloseDialogEvent\n }\n}\n"],"mappings":";AAAA,IAAM,IAAa,yBAEN,IAAb,MAAa,UAAyB,MAAM;CAGtB;CAAmB;CAFvC,OAAgB,YAAY;CAE5B,YAAa,GAAmB,GAAuB;EAAhB,AACrC,MAAM,EAAiB,WAAW;GAAE,SAAS;GAAM,UAAU;EAAK,CAAC,GADjD,KAAA,KAAA,GAAmB,KAAA,OAAA;CAEvC;AACF"}
1
+ {"version":3,"file":"close-dialog.esm.js","names":["EVENT_NAME","CloseDialogEvent","id","data"],"sources":["../../../../src/lib/dialogs/events/close-dialog.ts"],"sourcesContent":["const EVENT_NAME = 'solid-ui:close-dialog' as const\n\nexport class CloseDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public id: string, public data?: unknown) {\n super(CloseDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: CloseDialogEvent\n }\n}\n"],"mappings":";AAAA,IAAMA,IAAa,yBAENC,IAAb,MAAaA,UAAyB,MAAM;CAGtB;CAAmB;CAFvC,OAAgB,YAAYD;CAE5B,YAAa,GAAmB,GAAuB;EAAhB,AACrC,MAAMC,EAAiB,WAAW;GAAE,SAAS;GAAM,UAAU;EAAK,CAAC,GADjD,KAAA,KAAAC,GAAmB,KAAA,OAAAC;CAEvC;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"show-dialog.cjs.js","names":[],"sources":["../../../../src/lib/dialogs/events/show-dialog.ts"],"sourcesContent":["import Dialog from '../Dialog'\n\nconst EVENT_NAME = 'solid-ui:show-dialog' as const\n\nexport class ShowDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public dialog: Dialog) {\n super(ShowDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: ShowDialogEvent\n }\n}\n"],"mappings":"AAEA,IAAM,EAAa,uBAEN,EAAb,MAAa,UAAwB,KAAM,CAGrB,OAFpB,OAAgB,UAAY,EAE5B,YAAa,EAAuB,CAClC,MAAM,EAAgB,UAAW,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,EADhD,KAAA,OAAA,CAEpB,CACF"}
1
+ {"version":3,"file":"show-dialog.cjs.js","names":["EVENT_NAME","ShowDialogEvent","dialog"],"sources":["../../../../src/lib/dialogs/events/show-dialog.ts"],"sourcesContent":["import Dialog from '../Dialog'\n\nconst EVENT_NAME = 'solid-ui:show-dialog' as const\n\nexport class ShowDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public dialog: Dialog) {\n super(ShowDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: ShowDialogEvent\n }\n}\n"],"mappings":"AAEA,IAAMA,EAAa,uBAENC,EAAb,MAAaA,UAAwB,KAAM,CAGrB,OAFpB,OAAgB,UAAYD,EAE5B,YAAa,EAAuB,CAClC,MAAMC,EAAgB,UAAW,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,EADhD,KAAA,OAAAC,CAEpB,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"show-dialog.esm.js","names":[],"sources":["../../../../src/lib/dialogs/events/show-dialog.ts"],"sourcesContent":["import Dialog from '../Dialog'\n\nconst EVENT_NAME = 'solid-ui:show-dialog' as const\n\nexport class ShowDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public dialog: Dialog) {\n super(ShowDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: ShowDialogEvent\n }\n}\n"],"mappings":";AAEA,IAAM,IAAa,wBAEN,IAAb,MAAa,UAAwB,MAAM;CAGrB;CAFpB,OAAgB,YAAY;CAE5B,YAAa,GAAuB;EAAhB,AAClB,MAAM,EAAgB,WAAW;GAAE,SAAS;GAAM,UAAU;EAAK,CAAC,GADhD,KAAA,SAAA;CAEpB;AACF"}
1
+ {"version":3,"file":"show-dialog.esm.js","names":["EVENT_NAME","ShowDialogEvent","dialog"],"sources":["../../../../src/lib/dialogs/events/show-dialog.ts"],"sourcesContent":["import Dialog from '../Dialog'\n\nconst EVENT_NAME = 'solid-ui:show-dialog' as const\n\nexport class ShowDialogEvent extends Event {\n static readonly eventName = EVENT_NAME\n\n constructor (public dialog: Dialog) {\n super(ShowDialogEvent.eventName, { bubbles: true, composed: true })\n }\n}\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n [EVENT_NAME]: ShowDialogEvent\n }\n}\n"],"mappings":";AAEA,IAAMA,IAAa,wBAENC,IAAb,MAAaA,UAAwB,MAAM;CAGrB;CAFpB,OAAgB,YAAYD;CAE5B,YAAa,GAAuB;EAAhB,AAClB,MAAMC,EAAgB,WAAW;GAAE,SAAS;GAAM,UAAU;EAAK,CAAC,GADhD,KAAA,SAAAC;CAEpB;AACF"}
@@ -1 +1 @@
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
+ {"version":3,"file":"helpers.cjs.js","names":["Dialog","ShowDialogEvent","require_Dialog","require_show_dialog","showDialog","element","DialogComponent","config","dialog"],"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,SAAgBI,EACd,EACA,EACG,CACH,IAAMC,EAAU,IAAIC,EAEpB,OAAO,OAAOD,EAASE,GAAQ,KAAK,EAEpC,IAAMC,EAAS,IAAIR,EAAAA,QAAOK,EAASE,CAAM,EAIzC,OAFA,SAAS,cAAc,IAAIN,EAAAA,gBAAgBO,CAAM,CAAC,EAE3CA,EAAO,OAChB"}
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"helpers.esm.js","names":["Dialog","showDialog","element","DialogComponent","config","dialog","ShowDialogEvent"],"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,SAAgBC,EACd,GACA,GACG;CACH,IAAMC,IAAU,IAAIC,EAAgB;CAEpC,OAAO,OAAOD,GAASE,GAAQ,KAAK;CAEpC,IAAMC,IAAS,IAAIL,EAAOE,GAASE,CAAM;CAIzC,OAFA,SAAS,cAAc,IAAIE,EAAgBD,CAAM,CAAC,GAE3CA,EAAO;AAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.cjs.js","names":[],"sources":["../../../src/lib/file-explorer/context.ts"],"sourcesContent":["import { createContext } from '@lit/context'\nimport { LiveStore } from 'rdflib'\nimport type { NamedNode } from 'rdflib'\nimport type { PaneDefinition } from 'pane-registry'\n\nexport interface FileExplorerEdit {\n onEdit?: () => void\n isDirty?: boolean\n updateDirtyState?: (dirty: boolean) => void\n}\n\nexport interface FileExplorerContext {\n store: LiveStore | undefined\n subjectUri: string | undefined\n pane?: PaneDefinition\n soloPane?: boolean\n\n onBack?: () => void\n openPane?: (subject: NamedNode, paneName: string) => void\n handleAccessClick?: () => void\n\n paneSupportsEditing?: boolean\n edit?: FileExplorerEdit\n}\n\nexport const fileExplorerContext = createContext<FileExplorerContext>(Symbol('file-explorer'))\n"],"mappings":"AAyBA,IAAa,GAAA,wBAAsB,CAAA,CAAA,cAAA,CAAmC,OAAO,eAAe,CAAC"}
1
+ {"version":3,"file":"context.cjs.js","names":["createContext","fileExplorerContext"],"sources":["../../../src/lib/file-explorer/context.ts"],"sourcesContent":["import { createContext } from '@lit/context'\nimport { LiveStore } from 'rdflib'\nimport type { NamedNode } from 'rdflib'\nimport type { PaneDefinition } from 'pane-registry'\n\nexport interface FileExplorerEdit {\n onEdit?: () => void\n isDirty?: boolean\n updateDirtyState?: (dirty: boolean) => void\n}\n\nexport interface FileExplorerContext {\n store: LiveStore | undefined\n subjectUri: string | undefined\n pane?: PaneDefinition\n soloPane?: boolean\n\n onBack?: () => void\n openPane?: (subject: NamedNode, paneName: string) => void\n handleAccessClick?: () => void\n\n paneSupportsEditing?: boolean\n edit?: FileExplorerEdit\n}\n\nexport const fileExplorerContext = createContext<FileExplorerContext>(Symbol('file-explorer'))\n"],"mappings":"AAyBA,IAAaC,GAAA,wBAAsBD,CAAAA,CAAAA,cAAAA,CAAmC,OAAO,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.esm.js","names":[],"sources":["../../../src/lib/file-explorer/context.ts"],"sourcesContent":["import { createContext } from '@lit/context'\nimport { LiveStore } from 'rdflib'\nimport type { NamedNode } from 'rdflib'\nimport type { PaneDefinition } from 'pane-registry'\n\nexport interface FileExplorerEdit {\n onEdit?: () => void\n isDirty?: boolean\n updateDirtyState?: (dirty: boolean) => void\n}\n\nexport interface FileExplorerContext {\n store: LiveStore | undefined\n subjectUri: string | undefined\n pane?: PaneDefinition\n soloPane?: boolean\n\n onBack?: () => void\n openPane?: (subject: NamedNode, paneName: string) => void\n handleAccessClick?: () => void\n\n paneSupportsEditing?: boolean\n edit?: FileExplorerEdit\n}\n\nexport const fileExplorerContext = createContext<FileExplorerContext>(Symbol('file-explorer'))\n"],"mappings":";;AAyBA,IAAa,IAAsB,EAAmC,OAAO,eAAe,CAAC"}
1
+ {"version":3,"file":"context.esm.js","names":["fileExplorerContext","createContext"],"sources":["../../../src/lib/file-explorer/context.ts"],"sourcesContent":["import { createContext } from '@lit/context'\nimport { LiveStore } from 'rdflib'\nimport type { NamedNode } from 'rdflib'\nimport type { PaneDefinition } from 'pane-registry'\n\nexport interface FileExplorerEdit {\n onEdit?: () => void\n isDirty?: boolean\n updateDirtyState?: (dirty: boolean) => void\n}\n\nexport interface FileExplorerContext {\n store: LiveStore | undefined\n subjectUri: string | undefined\n pane?: PaneDefinition\n soloPane?: boolean\n\n onBack?: () => void\n openPane?: (subject: NamedNode, paneName: string) => void\n handleAccessClick?: () => void\n\n paneSupportsEditing?: boolean\n edit?: FileExplorerEdit\n}\n\nexport const fileExplorerContext = createContext<FileExplorerContext>(Symbol('file-explorer'))\n"],"mappings":";;AAyBA,IAAaA,IAAsBC,EAAmC,OAAO,eAAe,CAAC"}
@@ -1 +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"}
1
+ {"version":3,"file":"fieldParams.cjs.js","names":["ns","style","require_ns","require_style","fieldParams"],"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,IAAaI,EAA2D,EAOrEJ,EAAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,EACN,KAAM,QACN,MAAO,eACP,GAAI,QACJ,QAAS,8EACX,GAECA,EAAAA,QAAG,GAAG,WAAW,CAAC,CAAC,KAAM,CACxB,KAAM,GACN,KAAM,OACN,GAAI,OACJ,QAAS,2DACX,GAECA,EAAAA,QAAG,GAAG,eAAe,CAAC,CAAC,KAAM,CAC5B,KAAM,GACN,KAAM,iBACN,GAAI,WACJ,QAAS,kGACX,GAECA,EAAAA,QAAG,GAAG,WAAW,CAAC,CAAC,KAAM,CACxB,KAAM,GACN,KAAM,OACN,GAAI,OACJ,QAAS,gDACX,GAECA,EAAAA,QAAG,GAAG,cAAc,CAAC,CAAC,KAAM,CAC3B,KAAM,GACN,MAAO,qBACP,GAAI,UACJ,QAAS,kBACX,GAECA,EAAAA,QAAG,GAAG,cAAc,CAAC,CAAC,KAAM,CAC3B,KAAM,GACN,MAAO,qBACP,GAAI,UACJ,QAAS,6BACX,GAECA,EAAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,GACN,MAAO,qBACP,GAAI,QACJ,QAAS,6CACX,GAECA,EAAAA,QAAG,GAAG,qBAAqB,CAAC,CAAC,KAAM,CAEpC,GACCA,EAAAA,QAAG,GAAG,mBAAmB,CAAC,CAAC,KAAM,CAChC,UAAW,EACb,GACCA,EAAAA,QAAG,GAAG,WAAW,CAAC,CAAC,KAAM,CAE1B,GAECA,EAAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,GACN,kBAAmB,OACnB,QAAS,kBACX,GAECA,EAAAA,QAAG,GAAG,YAAY,CAAC,CAAC,KAAM,CACzB,KAAM,GACN,kBAAmB,UACnB,QAAS,mBACX,GAECA,EAAAA,QAAG,GAAG,OAAO,CAAC,CAAC,KAAM,CACpB,MAAOC,EAAAA,MAAM,cACf,GAKCD,EAAAA,QAAG,GAAG,SAAS,CAAC,CAAC,KAAM,CACtB,QAAS,IACT,MAAOC,EAAAA,MAAM,YACf,GACCD,EAAAA,QAAG,GAAG,SAAS,CAAC,CAAC,KAAM,CACtB,QAAS,KACT,MAAOC,EAAAA,MAAM,gBACf,CACF"}
@@ -1 +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"}
1
+ {"version":3,"file":"fieldParams.esm.js","names":["ns","ns_default","fieldParams","style"],"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,IAAaE,IAA2D;EAOrEF,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAECA,EAAG,GAAG,WAAW,CAAC,CAAC,MAAM;EACxB,MAAM;EACN,MAAM;EACN,IAAI;EACJ,SAAS;CACX;EAECA,EAAG,GAAG,eAAe,CAAC,CAAC,MAAM;EAC5B,MAAM;EACN,MAAM;EACN,IAAI;EACJ,SAAS;CACX;EAECA,EAAG,GAAG,WAAW,CAAC,CAAC,MAAM;EACxB,MAAM;EACN,MAAM;EACN,IAAI;EACJ,SAAS;CACX;EAECA,EAAG,GAAG,cAAc,CAAC,CAAC,MAAM;EAC3B,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAECA,EAAG,GAAG,cAAc,CAAC,CAAC,MAAM;EAC3B,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAECA,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,OAAO;EACP,IAAI;EACJ,SAAS;CACX;EAECA,EAAG,GAAG,qBAAqB,CAAC,CAAC,MAAM,CAEpC;EACCA,EAAG,GAAG,mBAAmB,CAAC,CAAC,MAAM,EAChC,WAAW,GACb;EACCA,EAAG,GAAG,WAAW,CAAC,CAAC,MAAM,CAE1B;EAECA,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,mBAAmB;EACnB,SAAS;CACX;EAECA,EAAG,GAAG,YAAY,CAAC,CAAC,MAAM;EACzB,MAAM;EACN,mBAAmB;EACnB,SAAS;CACX;EAECA,EAAG,GAAG,OAAO,CAAC,CAAC,MAAM,EACpB,OAAOG,EAAM,eACf;EAKCH,EAAG,GAAG,SAAS,CAAC,CAAC,MAAM;EACtB,SAAS;EACT,OAAOG,EAAM;CACf;EACCH,EAAG,GAAG,SAAS,CAAC,CAAC,MAAM;EACtB,SAAS;EACT,OAAOG,EAAM;CACf;AACF"}
@@ -1 +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"}
1
+ {"version":3,"file":"rdfFormsHelper.cjs.js","names":["sym","ns","require_ns","rdflib","fetchData","document","documentURI","store","sortBySequence","subfields","list","k","p","seq","a","b","pair","mostSpecificClassURI","typeUri","subject","specificTypes","finalTypes","t","findForm","docUrl","sourceUri","fragment","candidate","term"],"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,eAAsBI,EACpB,EACA,EACA,CACA,IAAMC,GAAA,EAAWL,EAAAA,IAAAA,CAAIM,CAAW,EAMhC,OAJIC,EAAM,MAAM,IAAA,GAAW,IAAA,GAAW,IAAA,GAAWF,CAAQ,GACvDE,EAAM,iBAAiBA,EAAM,mBAAmB,IAAA,GAAW,IAAA,GAAW,IAAA,GAAWF,CAAQ,CAAC,EAGrF,MAAME,EAAM,QAAQ,KAAKD,EAAa,CAC3C,MAAO,GACP,kBAAmB,EACrB,CAAC,CACH,CAEA,SAAgBE,EACd,EACA,EACA,CACA,IAAMC,EAAYC,EAAK,IAAK,GAAM,CAChC,IAAMC,EAAIJ,EAAM,IAAIK,EAAUX,EAAAA,QAAG,GAAG,UAAU,CAAC,EACzCY,EAAMF,EAAI,OAAQA,EAAwB,KAAK,EAAI,KACzD,MAAO,CAAC,OAAO,MAAME,CAAG,EAAI,KAAOA,EAAKD,CAAC,CAC3C,CAAC,EAID,OAFAH,EAAU,MAAM,EAAG,IAAMK,EAAE,GAAKC,EAAE,EAAE,EAE7BN,EAAU,IAAI,GAAQO,EAAK,EAAE,CACtC,CAWA,SAAgBC,EAAsB,EAAkB,EAA+B,CACrF,IAAMC,EAAUX,EAAM,aAAaY,CAAO,EACpCC,EAAgBb,EAAM,eAAeW,CAAO,EAC5CG,EAAoB,CAAC,EAC3B,IAAK,IAAMC,KAAKF,EAAeC,EAAW,KAAKC,CAAC,EAEhD,OAAOD,EAAW,EACpB,CAIA,SAAgBE,EAAU,EAAkB,EAAqC,CAC/E,IAAMC,EAASC,EAAU,MAAM,GAAG,CAAC,CAAC,GAC9BC,EAAWD,EAAU,SAAS,GAAG,EAAIA,EAAU,MAAM,GAAG,CAAC,CAAC,GAAK,KACrE,GAAIC,EAAU,CACZ,IAAMC,GAAA,EAAY3B,EAAAA,IAAAA,CAAIwB,EAAS,IAAME,CAAQ,EAC7C,GAAInB,EAAM,MAAMoB,EAAW1B,EAAAA,QAAG,IAAI,MAAM,EAAGA,EAAAA,QAAG,GAAG,MAAM,CAAC,EAAG,OAAO0B,CACpE,CAGA,OAFcpB,EAAM,KAAK,KAAMN,EAAAA,QAAG,IAAI,MAAM,EAAGA,EAAAA,QAAG,GAAG,MAAM,CAC7C,CAAA,CAAM,KAAM,GAAS2B,EAAK,WAAa,WAC9C,GAA+B,IACxC"}
@@ -1 +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"}
1
+ {"version":3,"file":"rdfFormsHelper.esm.js","names":["ns","ns_default","fetchData","document","sym","documentURI","store","sortBySequence","subfields","list","k","p","seq","a","b","pair","mostSpecificClassURI","typeUri","subject","specificTypes","finalTypes","t","findForm","docUrl","sourceUri","fragment","candidate","term"],"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,eAAsBE,EACpB,GACA,GACA;CACA,IAAMC,IAAWC,EAAIC,CAAW;CAMhC,OAJIC,EAAM,MAAM,KAAA,GAAW,KAAA,GAAW,KAAA,GAAWH,CAAQ,KACvDG,EAAM,iBAAiBA,EAAM,mBAAmB,KAAA,GAAW,KAAA,GAAW,KAAA,GAAWH,CAAQ,CAAC,GAGrF,MAAMG,EAAM,QAAQ,KAAKD,GAAa;EAC3C,OAAO;EACP,mBAAmB;CACrB,CAAC;AACH;AAEA,SAAgBE,EACd,GACA,GACA;CACA,IAAMC,IAAYC,EAAK,KAAK,MAAM;EAChC,IAAMC,IAAIJ,EAAM,IAAIK,GAAUX,EAAG,GAAG,UAAU,CAAC,GACzCY,IAAMF,IAAI,OAAQA,EAAwB,KAAK,IAAI;EACzD,OAAO,CAAC,OAAO,MAAME,CAAG,IAAI,OAAOA,GAAKD,CAAC;CAC3C,CAAC;CAID,OAFAH,EAAU,MAAM,GAAG,MAAMK,EAAE,KAAKC,EAAE,EAAE,GAE7BN,EAAU,KAAI,MAAQO,EAAK,EAAE;AACtC;AAWA,SAAgBC,EAAsB,GAAkB,GAA+B;CACrF,IAAMC,IAAUX,EAAM,aAAaY,CAAO,GACpCC,IAAgBb,EAAM,eAAeW,CAAO,GAC5CG,IAAoB,CAAC;CAC3B,KAAK,IAAMC,KAAKF,GAAe,EAAW,KAAKE,CAAC;CAEhD,OAAOD,EAAW;AACpB;AAIA,SAAgBE,EAAU,GAAkB,GAAqC;CAC/E,IAAMC,IAASC,EAAU,MAAM,GAAG,CAAC,CAAC,IAC9BC,IAAWD,EAAU,SAAS,GAAG,IAAIA,EAAU,MAAM,GAAG,CAAC,CAAC,KAAK;CACrE,IAAIC,GAAU;EACZ,IAAMC,IAAYtB,EAAImB,IAAS,MAAME,CAAQ;EAC7C,IAAInB,EAAM,MAAMoB,GAAW1B,EAAG,IAAI,MAAM,GAAGA,EAAG,GAAG,MAAM,CAAC,GAAG,OAAO0B;CACpE;CAGA,OAFcpB,EAAM,KAAK,MAAMN,EAAG,IAAI,MAAM,GAAGA,EAAG,GAAG,MAAM,CAC7C,CAAA,CAAM,MAAM,MAAS2B,EAAK,aAAa,WAC9C,KAA+B;AACxC"}
@@ -1 +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"}
1
+ {"version":3,"file":"NoopStore.cjs.js","names":["NoopStore"],"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,IAAqBA,EAArB,KAAuD,CACrD,IAAI,OAAoB,CACtB,MAAU,MAAM,sCAAsC,CACxD,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"NoopStore.esm.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,IAArB,MAAuD;CACrD,IAAI,QAAoB;EACtB,MAAU,MAAM,sCAAsC;CACxD;AACF"}
1
+ {"version":3,"file":"NoopStore.esm.js","names":["NoopStore"],"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,IAAqBA,IAArB,MAAuD;CACrD,IAAI,QAAoB;EACtB,MAAU,MAAM,sCAAsC;CACxD;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"StoreContext.cjs.js","names":[],"sources":["../../../../src/lib/forms/store/StoreContext.ts"],"sourcesContent":["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"],"mappings":"oEAQA,IAAa,EAAgB,IAAI,EAAA,QACpB,GAAA,EAAe,EAAA,cAAA,CAA4B,OAAO,cAAc,CAAC"}
1
+ {"version":3,"file":"StoreContext.cjs.js","names":["NoopStore","createContext","require_NoopStore","_lit_context","DEFAULT_STORE","storeContext"],"sources":["../../../../src/lib/forms/store/StoreContext.ts"],"sourcesContent":["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"],"mappings":"oEAQA,IAAaI,EAAgB,IAAIJ,EAAAA,QACpBK,GAAA,EAAeJ,EAAAA,cAAAA,CAA4B,OAAO,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"StoreContext.esm.js","names":[],"sources":["../../../../src/lib/forms/store/StoreContext.ts"],"sourcesContent":["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"],"mappings":";;;AAQA,IAAa,IAAgB,IAAI,EAAU,GAC9B,IAAe,EAA4B,OAAO,cAAc,CAAC"}
1
+ {"version":3,"file":"StoreContext.esm.js","names":["NoopStore","DEFAULT_STORE","storeContext","createContext"],"sources":["../../../../src/lib/forms/store/StoreContext.ts"],"sourcesContent":["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"],"mappings":";;;AAQA,IAAaC,IAAgB,IAAID,EAAU,GAC9BE,IAAeC,EAA4B,OAAO,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"iconBase.cjs.js","names":[],"sources":["../../src/lib/iconBase.ts"],"sourcesContent":["// Works in FF extension - what about browserify??\n// 2021-04-08 Convert to TS\n\n/* The Firefox case is left for historical record, as we don't currenly\n * have a FF extension for mashlib, but we could. This is sthepoint to\n * hack the place it can find its icons internally\n *\n * The $SolidTestEnvironment is important and is used for\n * example when testing on localhost to specify a place the icons be found\n * in your test set up.\n *\n * You can also use it if you want to just run a mashlib whhich takes its\n * icons seved by other than github.\n */\n\nimport { log } from './debug'\n\ndeclare let $SolidTestEnvironment\n\n// Do not export. Always us this module to find the icons, as they vary\nconst iconsOnGithub = 'https://solidos.github.io/solid-ui/src' // changed org 2022-05\n\nexport const icons = typeof module !== 'undefined' && (module as any).scriptURI // Firefox extension\n ? {\n iconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) + '/icons/',\n originalIconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) +\n '/originalIcons/'\n }\n : typeof $SolidTestEnvironment !== 'undefined' && $SolidTestEnvironment.iconBase // Test environemnt\n ? {\n iconBase: $SolidTestEnvironment.iconBase,\n originalIconBase: $SolidTestEnvironment.originalIconBase\n }\n : {\n // Normal case:\n iconBase: iconsOnGithub + '/icons/',\n originalIconBase: iconsOnGithub + '/originalIcons/'\n }\n\nlog(' icons.iconBase is set to : ' + icons.iconBase)\n\n// allow tests etc named-import this directly from this module\nexport const iconBase = icons.iconBase\nexport const originalIconBase = icons.originalIconBase\n"],"mappings":"kCAoBA,IAAM,EAAgB,yCAET,EAAQ,OAAO,OAAW,KAAgB,OAAe,UAClE,CACE,SACG,OAAe,UAAU,MAAM,EAAI,OAAe,UAAU,YAAY,GAAG,CAAC,EAAI,UACnF,iBACG,OAAe,UAAU,MAAM,EAAI,OAAe,UAAU,YAAY,GAAG,CAAC,EAC7E,iBACJ,EACA,OAAO,sBAA0B,KAAe,sBAAsB,SACpE,CACE,SAAU,sBAAsB,SAChC,iBAAkB,sBAAsB,gBAC1C,EACA,CAEE,SAAU,EAAgB,UAC1B,iBAAkB,EAAgB,iBACpC,EAEN,EAAA,IAAI,iCAAmC,EAAM,QAAQ,EAGrD,IAAa,EAAW,EAAM,SACjB,EAAmB,EAAM"}
1
+ {"version":3,"file":"iconBase.cjs.js","names":["log","require_debug","iconsOnGithub","icons","iconBase","originalIconBase"],"sources":["../../src/lib/iconBase.ts"],"sourcesContent":["// Works in FF extension - what about browserify??\n// 2021-04-08 Convert to TS\n\n/* The Firefox case is left for historical record, as we don't currenly\n * have a FF extension for mashlib, but we could. This is sthepoint to\n * hack the place it can find its icons internally\n *\n * The $SolidTestEnvironment is important and is used for\n * example when testing on localhost to specify a place the icons be found\n * in your test set up.\n *\n * You can also use it if you want to just run a mashlib whhich takes its\n * icons seved by other than github.\n */\n\nimport { log } from './debug'\n\ndeclare let $SolidTestEnvironment\n\n// Do not export. Always us this module to find the icons, as they vary\nconst iconsOnGithub = 'https://solidos.github.io/solid-ui/src' // changed org 2022-05\n\nexport const icons = typeof module !== 'undefined' && (module as any).scriptURI // Firefox extension\n ? {\n iconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) + '/icons/',\n originalIconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) +\n '/originalIcons/'\n }\n : typeof $SolidTestEnvironment !== 'undefined' && $SolidTestEnvironment.iconBase // Test environemnt\n ? {\n iconBase: $SolidTestEnvironment.iconBase,\n originalIconBase: $SolidTestEnvironment.originalIconBase\n }\n : {\n // Normal case:\n iconBase: iconsOnGithub + '/icons/',\n originalIconBase: iconsOnGithub + '/originalIcons/'\n }\n\nlog(' icons.iconBase is set to : ' + icons.iconBase)\n\n// allow tests etc named-import this directly from this module\nexport const iconBase = icons.iconBase\nexport const originalIconBase = icons.originalIconBase\n"],"mappings":"kCAoBA,IAAME,EAAgB,yCAETC,EAAQ,OAAO,OAAW,KAAgB,OAAe,UAClE,CACE,SACG,OAAe,UAAU,MAAM,EAAI,OAAe,UAAU,YAAY,GAAG,CAAC,EAAI,UACnF,iBACG,OAAe,UAAU,MAAM,EAAI,OAAe,UAAU,YAAY,GAAG,CAAC,EAC7E,iBACJ,EACA,OAAO,sBAA0B,KAAe,sBAAsB,SACpE,CACE,SAAU,sBAAsB,SAChC,iBAAkB,sBAAsB,gBAC1C,EACA,CAEE,SAAUD,EAAgB,UAC1B,iBAAkBA,EAAgB,iBACpC,EAENF,EAAAA,IAAI,iCAAmCG,EAAM,QAAQ,EAGrD,IAAaC,EAAWD,EAAM,SACjBE,EAAmBF,EAAM"}
@@ -1 +1 @@
1
- {"version":3,"file":"iconBase.esm.js","names":[],"sources":["../../src/lib/iconBase.ts"],"sourcesContent":["// Works in FF extension - what about browserify??\n// 2021-04-08 Convert to TS\n\n/* The Firefox case is left for historical record, as we don't currenly\n * have a FF extension for mashlib, but we could. This is sthepoint to\n * hack the place it can find its icons internally\n *\n * The $SolidTestEnvironment is important and is used for\n * example when testing on localhost to specify a place the icons be found\n * in your test set up.\n *\n * You can also use it if you want to just run a mashlib whhich takes its\n * icons seved by other than github.\n */\n\nimport { log } from './debug'\n\ndeclare let $SolidTestEnvironment\n\n// Do not export. Always us this module to find the icons, as they vary\nconst iconsOnGithub = 'https://solidos.github.io/solid-ui/src' // changed org 2022-05\n\nexport const icons = typeof module !== 'undefined' && (module as any).scriptURI // Firefox extension\n ? {\n iconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) + '/icons/',\n originalIconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) +\n '/originalIcons/'\n }\n : typeof $SolidTestEnvironment !== 'undefined' && $SolidTestEnvironment.iconBase // Test environemnt\n ? {\n iconBase: $SolidTestEnvironment.iconBase,\n originalIconBase: $SolidTestEnvironment.originalIconBase\n }\n : {\n // Normal case:\n iconBase: iconsOnGithub + '/icons/',\n originalIconBase: iconsOnGithub + '/originalIcons/'\n }\n\nlog(' icons.iconBase is set to : ' + icons.iconBase)\n\n// allow tests etc named-import this directly from this module\nexport const iconBase = icons.iconBase\nexport const originalIconBase = icons.originalIconBase\n"],"mappings":";;AAoBA,IAAM,IAAgB,0CAET,IAAQ,OAAO,SAAW,OAAgB,OAAe,YAClE;CACE,UACG,OAAe,UAAU,MAAM,GAAI,OAAe,UAAU,YAAY,GAAG,CAAC,IAAI;CACnF,kBACG,OAAe,UAAU,MAAM,GAAI,OAAe,UAAU,YAAY,GAAG,CAAC,IAC7E;AACJ,IACA,OAAO,wBAA0B,OAAe,sBAAsB,WACpE;CACE,UAAU,sBAAsB;CAChC,kBAAkB,sBAAsB;AAC1C,IACA;CAEE,UAAU,IAAgB;CAC1B,kBAAkB,IAAgB;AACpC;AAEN,EAAI,mCAAmC,EAAM,QAAQ;AAGrD,IAAa,IAAW,EAAM,UACjB,IAAmB,EAAM"}
1
+ {"version":3,"file":"iconBase.esm.js","names":["iconsOnGithub","icons","log","iconBase","originalIconBase"],"sources":["../../src/lib/iconBase.ts"],"sourcesContent":["// Works in FF extension - what about browserify??\n// 2021-04-08 Convert to TS\n\n/* The Firefox case is left for historical record, as we don't currenly\n * have a FF extension for mashlib, but we could. This is sthepoint to\n * hack the place it can find its icons internally\n *\n * The $SolidTestEnvironment is important and is used for\n * example when testing on localhost to specify a place the icons be found\n * in your test set up.\n *\n * You can also use it if you want to just run a mashlib whhich takes its\n * icons seved by other than github.\n */\n\nimport { log } from './debug'\n\ndeclare let $SolidTestEnvironment\n\n// Do not export. Always us this module to find the icons, as they vary\nconst iconsOnGithub = 'https://solidos.github.io/solid-ui/src' // changed org 2022-05\n\nexport const icons = typeof module !== 'undefined' && (module as any).scriptURI // Firefox extension\n ? {\n iconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) + '/icons/',\n originalIconBase:\n (module as any).scriptURI.slice(0, (module as any).scriptURI.lastIndexOf('/')) +\n '/originalIcons/'\n }\n : typeof $SolidTestEnvironment !== 'undefined' && $SolidTestEnvironment.iconBase // Test environemnt\n ? {\n iconBase: $SolidTestEnvironment.iconBase,\n originalIconBase: $SolidTestEnvironment.originalIconBase\n }\n : {\n // Normal case:\n iconBase: iconsOnGithub + '/icons/',\n originalIconBase: iconsOnGithub + '/originalIcons/'\n }\n\nlog(' icons.iconBase is set to : ' + icons.iconBase)\n\n// allow tests etc named-import this directly from this module\nexport const iconBase = icons.iconBase\nexport const originalIconBase = icons.originalIconBase\n"],"mappings":";;AAoBA,IAAMA,IAAgB,0CAETC,IAAQ,OAAO,SAAW,OAAgB,OAAe,YAClE;CACE,UACG,OAAe,UAAU,MAAM,GAAI,OAAe,UAAU,YAAY,GAAG,CAAC,IAAI;CACnF,kBACG,OAAe,UAAU,MAAM,GAAI,OAAe,UAAU,YAAY,GAAG,CAAC,IAC7E;AACJ,IACA,OAAO,wBAA0B,OAAe,sBAAsB,WACpE;CACE,UAAU,sBAAsB;CAChC,kBAAkB,sBAAsB;AAC1C,IACA;CAEE,UAAUD,IAAgB;CAC1B,kBAAkBA,IAAgB;AACpC;AAENE,EAAI,mCAAmCD,EAAM,QAAQ;AAGrD,IAAaE,IAAWF,EAAM,UACjBG,IAAmBH,EAAM"}
@@ -1 +1 @@
1
- {"version":3,"file":"log.cjs.js","names":[],"sources":["../../src/lib/log.ts"],"sourcesContent":["// /////////////////////// Logging\n//\n// bitmask levels\n// const TNONE = 0\n/** @internal */\nconst TERROR = 1\n/** @internal */\nconst TWARN = 2\n/** @internal */\nconst TMESG = 4\n/** @internal */\nconst TSUCCESS = 8\n/** @internal */\nconst TINFO = 16\n/** @internal */\nconst TDEBUG = 32\n/** @internal */\nconst TALL = 63\n\n/** @internal */\nexport enum LogLevel {\n Error = TERROR,\n Warning = TWARN,\n Message = TMESG,\n Success = TSUCCESS,\n Info = TINFO,\n Debug = TDEBUG,\n All = TALL\n}\n\n/** @internal */\nlet _level: number = TERROR + TWARN + TMESG\n/** @internal */\nlet _ascending: boolean = false\n/** @internal */\nlet _dom: HTMLDocument = document // must be able to override for tests\n/** @internal */\nlet _window: Window = window // must be able to override for tests\n\n/** @internal */\nfunction log (str: string, type: number = TMESG, typestr: string = 'mesg') {\n if (!(_level & type)) return // bitmask\n\n if (typeof _dom !== 'undefined') {\n const logArea = _dom.getElementById('status')\n if (!logArea) return\n\n const addendum = _dom.createElement('span')\n addendum.setAttribute('class', typestr)\n const now = new Date()\n addendum.innerHTML = `${now.getHours()}:${now.getMinutes()}:${now.getSeconds()} [${typestr}] ${escapeForXML(str)}<br/>`\n if (_ascending) {\n logArea.insertBefore(addendum, logArea.firstChild)\n } else {\n logArea.appendChild(addendum)\n }\n } else if (typeof console !== 'undefined') {\n console.log(str)\n }\n}\n\n/**\n * Adds a message to the element with id \"status\". The messages are prepended with\n * time and type of message, in this case [mesg].\n */\nexport function msg (message: string) {\n log(message)\n}\n\n/**\n * Adds a warning message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [warn].\n */\nexport function warn (message: string): void {\n log(message, TWARN, 'warn')\n}\n\n/**\n * Adds a debugging message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [dbug].\n */\nexport function debug (message: string): void {\n log(message, TDEBUG, 'dbug')\n}\n\n/**\n * Adds a info message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [info].\n */\nexport function info (message: string): void {\n log(message, TINFO, 'info')\n}\n\n/**\n * Adds a error to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [eror].\n */\nexport function error (message: string): void {\n log(message, TERROR, 'eror')\n}\n\n/**\n * Adds a success message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [good].\n */\nexport function success (message: string): void {\n log(message, TSUCCESS, 'good')\n}\n\n/**\n * Uses the global alert to send an alert. If global alert is not available, it\n * will output the message using the method [[warning]]s.\n */\nexport function alert (message: string): void {\n if (_window && typeof _window.alert !== 'undefined') {\n _window.alert(message)\n } else {\n warn(message)\n }\n}\n\n/**\n * Will clear the content of the element with id \"status\".\n */\nexport function clear (): void {\n const logArea = _dom?.getElementById('status')\n if (!logArea) return\n logArea.innerHTML = ''\n}\n\n/**\n * Lets you configure which types of messages will be shown. The module uses\n * [bitmask](https://en.wikipedia.org/wiki/Mask_(computing)) to filter which\n * types of messages should be shown. E.g. if you only want warning messages\n * to be shown, pass 2 to the function, if you want warning and success to be\n * shown, pass 10 (2+8). By passing the sum of all, 63, you'll show all\n * types of messages.\n *\n * - Error: 1\n * - Warning: 2\n * - Message: 4\n * - Success: 8\n * - Info: 16\n * - Debug: 32\n */\nexport function setLevel (level: number): void {\n _level = TALL\n debug('Log level is now ' + level)\n _level = level\n}\n\n/**\n * Will dump the current HTML using the [[debug]] method.\n */\nexport function dumpHTML (): void {\n if (!_dom) return\n const level = _level\n _level = TALL\n debug(_dom?.body?.innerHTML || '')\n _level = level\n}\n\n/**\n * Will start prepending messages the list of log messages.\n */\nexport function logAscending () {\n _ascending = true\n}\n\n/**\n * Will start appending messages the list of log messages. (This is default\n * behavior.)\n */\nexport function logDescending () {\n _ascending = false\n}\n\n/** @internal */\nexport function escapeForXML (str: string): string {\n // can be replaced with function utils module when migrating\n return str\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n}\n\n/** @internal */\nexport function setInternals (window, document) {\n _window = window\n _dom = document\n}\n"],"mappings":"6RAKM,EAAS,EAET,EAAQ,EAER,EAAQ,EAER,EAAW,EAEX,EAAQ,GAER,EAAS,GAET,EAAO,GAGD,EAAL,SAAA,EAAA,OACL,GAAA,EAAA,MAAQ,GAAA,QACR,EAAA,EAAA,QAAU,GAAA,UACV,EAAA,EAAA,QAAU,GAAA,UACV,EAAA,EAAA,QAAU,GAAA,UACV,EAAA,EAAA,KAAO,GAAA,OACP,EAAA,EAAA,MAAQ,GAAA,QACR,EAAA,EAAA,IAAM,GAAA,OACR,EAAA,CAAA,CAAA,EAGI,EAAiB,EAEjB,EAAsB,GAEtB,EAAqB,SAErB,EAAkB,OAGtB,SAAS,EAAK,EAAa,EAAe,EAAO,EAAkB,OAAQ,CACnE,KAAS,EAEf,IAAW,IAAS,OAAa,CAC/B,IAAM,EAAU,EAAK,eAAe,QAAQ,EAC5C,GAAI,CAAC,EAAS,OAEd,IAAM,EAAW,EAAK,cAAc,MAAM,EAC1C,EAAS,aAAa,QAAS,CAAO,EACtC,IAAM,EAAM,IAAI,KAChB,EAAS,UAAY,GAAG,EAAI,SAAS,EAAE,GAAG,EAAI,WAAW,EAAE,GAAG,EAAI,WAAW,EAAE,IAAI,EAAQ,IAAI,EAAa,CAAG,EAAE,OAC7G,EACF,EAAQ,aAAa,EAAU,EAAQ,UAAU,EAEjD,EAAQ,YAAY,CAAQ,CAEhC,MAAW,OAAO,QAAY,KAC5B,QAAQ,IAAI,CAAG,CAAA,CAEnB,CAMA,SAAgB,EAAK,EAAiB,CACpC,EAAI,CAAO,CACb,CAMA,SAAgB,EAAM,EAAuB,CAC3C,EAAI,EAAS,EAAO,MAAM,CAC5B,CAMA,SAAgB,EAAO,EAAuB,CAC5C,EAAI,EAAS,EAAQ,MAAM,CAC7B,CAMA,SAAgB,EAAM,EAAuB,CAC3C,EAAI,EAAS,EAAO,MAAM,CAC5B,CAMA,SAAgB,EAAO,EAAuB,CAC5C,EAAI,EAAS,EAAQ,MAAM,CAC7B,CAMA,SAAgB,EAAS,EAAuB,CAC9C,EAAI,EAAS,EAAU,MAAM,CAC/B,CAMA,SAAgB,EAAO,EAAuB,CACxC,GAAkB,EAAQ,QAAU,OACtC,EAAQ,MAAM,CAAO,EAErB,EAAK,CAAO,CAEhB,CAKA,SAAgB,GAAe,CAC7B,IAAM,EAAU,GAAM,eAAe,QAAQ,EACxC,IACL,EAAQ,UAAY,GACtB,CAiBA,SAAgB,EAAU,EAAqB,CAC7C,EAAS,EACT,EAAM,oBAAsB,CAAK,EACjC,EAAS,CACX,CAKA,SAAgB,GAAkB,CAChC,GAAI,CAAC,EAAM,OACX,IAAM,EAAQ,EACd,EAAS,EACT,EAAM,GAAM,MAAM,WAAa,EAAE,EACjC,EAAS,CACX,CAKA,SAAgB,GAAgB,CAC9B,EAAa,EACf,CAMA,SAAgB,GAAiB,CAC/B,EAAa,EACf,CAGA,SAAgB,EAAc,EAAqB,CAEjD,OAAO,EACJ,QAAQ,KAAM,OAAO,CAAC,CACtB,QAAQ,KAAM,MAAM,CAAC,CACrB,QAAQ,KAAM,MAAM,CACzB,CAGA,SAAgB,EAAc,EAAQ,EAAU,CAC9C,EAAU,EACV,EAAO,CACT"}
1
+ {"version":3,"file":"log.cjs.js","names":["log_exports","LogLevel","alert","clear","debug","dumpHTML","error","escapeForXML","info","logAscending","logDescending","msg","setInternals","setLevel","success","warn","TERROR","TWARN","TMESG","TSUCCESS","TINFO","TDEBUG","TALL","\"Error\"","\"Warning\"","\"Message\"","\"Success\"","\"Info\"","\"Debug\"","\"All\"","_level","_ascending","_dom","_window","log","type","logArea","addendum","typestr","now","str","message","level","window","document"],"sources":["../../src/lib/log.ts"],"sourcesContent":["// /////////////////////// Logging\n//\n// bitmask levels\n// const TNONE = 0\n/** @internal */\nconst TERROR = 1\n/** @internal */\nconst TWARN = 2\n/** @internal */\nconst TMESG = 4\n/** @internal */\nconst TSUCCESS = 8\n/** @internal */\nconst TINFO = 16\n/** @internal */\nconst TDEBUG = 32\n/** @internal */\nconst TALL = 63\n\n/** @internal */\nexport enum LogLevel {\n Error = TERROR,\n Warning = TWARN,\n Message = TMESG,\n Success = TSUCCESS,\n Info = TINFO,\n Debug = TDEBUG,\n All = TALL\n}\n\n/** @internal */\nlet _level: number = TERROR + TWARN + TMESG\n/** @internal */\nlet _ascending: boolean = false\n/** @internal */\nlet _dom: HTMLDocument = document // must be able to override for tests\n/** @internal */\nlet _window: Window = window // must be able to override for tests\n\n/** @internal */\nfunction log (str: string, type: number = TMESG, typestr: string = 'mesg') {\n if (!(_level & type)) return // bitmask\n\n if (typeof _dom !== 'undefined') {\n const logArea = _dom.getElementById('status')\n if (!logArea) return\n\n const addendum = _dom.createElement('span')\n addendum.setAttribute('class', typestr)\n const now = new Date()\n addendum.innerHTML = `${now.getHours()}:${now.getMinutes()}:${now.getSeconds()} [${typestr}] ${escapeForXML(str)}<br/>`\n if (_ascending) {\n logArea.insertBefore(addendum, logArea.firstChild)\n } else {\n logArea.appendChild(addendum)\n }\n } else if (typeof console !== 'undefined') {\n console.log(str)\n }\n}\n\n/**\n * Adds a message to the element with id \"status\". The messages are prepended with\n * time and type of message, in this case [mesg].\n */\nexport function msg (message: string) {\n log(message)\n}\n\n/**\n * Adds a warning message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [warn].\n */\nexport function warn (message: string): void {\n log(message, TWARN, 'warn')\n}\n\n/**\n * Adds a debugging message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [dbug].\n */\nexport function debug (message: string): void {\n log(message, TDEBUG, 'dbug')\n}\n\n/**\n * Adds a info message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [info].\n */\nexport function info (message: string): void {\n log(message, TINFO, 'info')\n}\n\n/**\n * Adds a error to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [eror].\n */\nexport function error (message: string): void {\n log(message, TERROR, 'eror')\n}\n\n/**\n * Adds a success message to the element with id \"status\". The messages are\n * prepended with time and type of message, in this case [good].\n */\nexport function success (message: string): void {\n log(message, TSUCCESS, 'good')\n}\n\n/**\n * Uses the global alert to send an alert. If global alert is not available, it\n * will output the message using the method [[warning]]s.\n */\nexport function alert (message: string): void {\n if (_window && typeof _window.alert !== 'undefined') {\n _window.alert(message)\n } else {\n warn(message)\n }\n}\n\n/**\n * Will clear the content of the element with id \"status\".\n */\nexport function clear (): void {\n const logArea = _dom?.getElementById('status')\n if (!logArea) return\n logArea.innerHTML = ''\n}\n\n/**\n * Lets you configure which types of messages will be shown. The module uses\n * [bitmask](https://en.wikipedia.org/wiki/Mask_(computing)) to filter which\n * types of messages should be shown. E.g. if you only want warning messages\n * to be shown, pass 2 to the function, if you want warning and success to be\n * shown, pass 10 (2+8). By passing the sum of all, 63, you'll show all\n * types of messages.\n *\n * - Error: 1\n * - Warning: 2\n * - Message: 4\n * - Success: 8\n * - Info: 16\n * - Debug: 32\n */\nexport function setLevel (level: number): void {\n _level = TALL\n debug('Log level is now ' + level)\n _level = level\n}\n\n/**\n * Will dump the current HTML using the [[debug]] method.\n */\nexport function dumpHTML (): void {\n if (!_dom) return\n const level = _level\n _level = TALL\n debug(_dom?.body?.innerHTML || '')\n _level = level\n}\n\n/**\n * Will start prepending messages the list of log messages.\n */\nexport function logAscending () {\n _ascending = true\n}\n\n/**\n * Will start appending messages the list of log messages. (This is default\n * behavior.)\n */\nexport function logDescending () {\n _ascending = false\n}\n\n/** @internal */\nexport function escapeForXML (str: string): string {\n // can be replaced with function utils module when migrating\n return str\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n}\n\n/** @internal */\nexport function setInternals (window, document) {\n _window = window\n _dom = document\n}\n"],"mappings":"6RAKMgB,EAAS,EAETC,EAAQ,EAERC,EAAQ,EAERC,EAAW,EAEXC,EAAQ,GAERC,EAAS,GAETC,EAAO,GAGDrB,EAAL,SAAA,EAAA,OACL,GAAA,EAAAsB,MAAQP,GAAA,QACR,EAAA,EAAAQ,QAAUP,GAAA,UACV,EAAA,EAAAQ,QAAUP,GAAA,UACV,EAAA,EAAAQ,QAAUP,GAAA,UACV,EAAA,EAAAQ,KAAOP,GAAA,OACP,EAAA,EAAAQ,MAAQP,GAAA,QACR,EAAA,EAAAQ,IAAMP,GAAA,OACR,EAAA,CAAA,CAAA,EAGIQ,EAAiB,EAEjBC,EAAsB,GAEtBC,EAAqB,SAErBC,EAAkB,OAGtB,SAASC,EAAK,EAAa,EAAehB,EAAO,EAAkB,OAAQ,CACzE,GAAMY,EAASK,EAEf,IAAWH,IAAS,OAAa,CAC/B,IAAMI,EAAUJ,EAAK,eAAe,QAAQ,EAC5C,GAAI,CAACI,EAAS,OAEd,IAAMC,EAAWL,EAAK,cAAc,MAAM,EAC1CK,EAAS,aAAa,QAASC,CAAO,EACtC,IAAMC,EAAM,IAAI,KAChB,EAAS,UAAY,GAAGA,EAAI,SAAS,EAAE,GAAGA,EAAI,WAAW,EAAE,GAAGA,EAAI,WAAW,EAAE,IAAID,EAAQ,IAAI/B,EAAaiC,CAAG,EAAE,OAC7GT,EACFK,EAAQ,aAAaC,EAAUD,EAAQ,UAAU,EAEjDA,EAAQ,YAAYC,CAAQ,CAEhC,MAAW,OAAO,QAAY,KAC5B,QAAQ,IAAIG,CAAG,CAAA,CAEnB,CAMA,SAAgB7B,EAAK,EAAiB,CACpCuB,EAAIO,CAAO,CACb,CAMA,SAAgB1B,EAAM,EAAuB,CAC3CmB,EAAIO,EAASxB,EAAO,MAAM,CAC5B,CAMA,SAAgBb,EAAO,EAAuB,CAC5C8B,EAAIO,EAASpB,EAAQ,MAAM,CAC7B,CAMA,SAAgBb,EAAM,EAAuB,CAC3C0B,EAAIO,EAASrB,EAAO,MAAM,CAC5B,CAMA,SAAgBd,EAAO,EAAuB,CAC5C4B,EAAIO,EAASzB,EAAQ,MAAM,CAC7B,CAMA,SAAgBF,EAAS,EAAuB,CAC9CoB,EAAIO,EAAStB,EAAU,MAAM,CAC/B,CAMA,SAAgBjB,EAAO,EAAuB,CACxC+B,GAAkBA,EAAQ,QAAU,OACtCA,EAAQ,MAAMQ,CAAO,EAErB1B,EAAK0B,CAAO,CAEhB,CAKA,SAAgBtC,GAAe,CAC7B,IAAMiC,EAAUJ,GAAM,eAAe,QAAQ,EACxCI,IACL,EAAQ,UAAY,GACtB,CAiBA,SAAgBvB,EAAU,EAAqB,CAC7C,EAASS,EACTlB,EAAM,oBAAsBsC,CAAK,EACjC,EAASA,CACX,CAKA,SAAgBrC,GAAkB,CAChC,GAAI,CAAC2B,EAAM,OACX,IAAMU,EAAQZ,EACd,EAASR,EACTlB,EAAM4B,GAAM,MAAM,WAAa,EAAE,EACjC,EAASU,CACX,CAKA,SAAgBjC,GAAgB,CAC9B,EAAa,EACf,CAMA,SAAgBC,GAAiB,CAC/B,EAAa,EACf,CAGA,SAAgBH,EAAc,EAAqB,CAEjD,OAAOiC,EACJ,QAAQ,KAAM,OAAO,CAAC,CACtB,QAAQ,KAAM,MAAM,CAAC,CACrB,QAAQ,KAAM,MAAM,CACzB,CAGA,SAAgB5B,EAAc,EAAQ,EAAU,CAC9C,EAAU+B,EACV,EAAOC,CACT"}