solid-ui 5.0.2-3 → 5.0.2-4

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 (185) hide show
  1. package/dist/chunks/{DialogProvider-dagk2fHm.js → DialogProvider-CdesAsw-.js} +5 -6
  2. package/dist/chunks/{DialogProvider-dagk2fHm.js.map → DialogProvider-CdesAsw-.js.map} +1 -1
  3. package/dist/chunks/{ResourceActionsMenu-o-8kWx8z.js → ResourceActionsMenu-Bllpr4M5.js} +15 -16
  4. package/dist/chunks/{ResourceActionsMenu-o-8kWx8z.js.map → ResourceActionsMenu-Bllpr4M5.js.map} +1 -1
  5. package/dist/chunks/{access-control-modal-CWH98HX3.js → access-control-modal-CwmY_Dod.js} +74 -75
  6. package/dist/chunks/{access-control-modal-CWH98HX3.js.map → access-control-modal-CwmY_Dod.js.map} +1 -1
  7. package/dist/chunks/{account-Cocvv0H3.js → account-CoHPKKDu.js} +20 -21
  8. package/dist/chunks/{account-Cocvv0H3.js.map → account-CoHPKKDu.js.map} +1 -1
  9. package/dist/chunks/{auth-Df5uYksz.js → auth-CocCqS1p.js} +18 -19
  10. package/dist/chunks/{auth-Df5uYksz.js.map → auth-CocCqS1p.js.map} +1 -1
  11. package/dist/chunks/{avatar-DeotTinS.js → avatar-sNdKdWVO.js} +10 -11
  12. package/dist/chunks/{avatar-DeotTinS.js.map → avatar-sNdKdWVO.js.map} +1 -1
  13. package/dist/chunks/{button-Dy1aFjqG.js → button-D6qO2idW.js} +10 -11
  14. package/dist/chunks/{button-Dy1aFjqG.js.map → button-D6qO2idW.js.map} +1 -1
  15. package/dist/chunks/{chunk.UEBQI7VV-9M5gO7Ew.js → chunk.UEBQI7VV-lcP-fpUk.js} +12 -9
  16. package/dist/chunks/chunk.UEBQI7VV-lcP-fpUk.js.map +1 -0
  17. package/dist/chunks/{combobox-BL0-8wef.js → combobox-fSTp9qoT.js} +17 -18
  18. package/dist/chunks/{combobox-BL0-8wef.js.map → combobox-fSTp9qoT.js.map} +1 -1
  19. package/dist/chunks/{combobox-option-DjlmXt1O.js → combobox-option-DOtGuKel.js} +7 -8
  20. package/dist/chunks/{combobox-option-DjlmXt1O.js.map → combobox-option-DOtGuKel.js.map} +1 -1
  21. package/dist/chunks/{components-LxiwG5ae.js → components-C8c2Ucm5.js} +201 -190
  22. package/dist/chunks/components-C8c2Ucm5.js.map +1 -0
  23. package/dist/chunks/{context-By_u12WA.js → context-BDrfQ9bN.js} +2 -2
  24. package/dist/chunks/{context-By_u12WA.js.map → context-BDrfQ9bN.js.map} +1 -1
  25. package/dist/chunks/{dialog-CrmftB9c.js → dialog-CgYK767T.js} +15 -16
  26. package/dist/chunks/{dialog-CrmftB9c.js.map → dialog-CgYK767T.js.map} +1 -1
  27. package/dist/chunks/{dialog-content-Cw3xqJ45.js → dialog-content-DjwRH1ci.js} +5 -6
  28. package/dist/chunks/{dialog-content-Cw3xqJ45.js.map → dialog-content-DjwRH1ci.js.map} +1 -1
  29. package/dist/chunks/{dialog-footer-sFQf-2zD.js → dialog-footer-GQWi8lfB.js} +5 -6
  30. package/dist/chunks/{dialog-footer-sFQf-2zD.js.map → dialog-footer-GQWi8lfB.js.map} +1 -1
  31. package/dist/chunks/{dialog-header-xIWIqfZK.js → dialog-header-c3qOMQfb.js} +5 -6
  32. package/dist/chunks/{dialog-header-xIWIqfZK.js.map → dialog-header-c3qOMQfb.js.map} +1 -1
  33. package/dist/chunks/{dialogs-B3tHtjMf.js → dialogs-BmtLjMzg.js} +2 -2
  34. package/dist/chunks/{dialogs-B3tHtjMf.js.map → dialogs-BmtLjMzg.js.map} +1 -1
  35. package/dist/chunks/{dialogs-root-Lh2u-3Cs.js → dialogs-root-BNF3_SA8.js} +8 -9
  36. package/dist/chunks/{dialogs-root-Lh2u-3Cs.js.map → dialogs-root-BNF3_SA8.js.map} +1 -1
  37. package/dist/chunks/{error-state-DnsXVj1z.js → error-state-BD4_Wrkz.js} +10 -11
  38. package/dist/chunks/{error-state-DnsXVj1z.js.map → error-state-BD4_Wrkz.js.map} +1 -1
  39. package/dist/chunks/{file-explorer-header-B6-Q0i6V.js → file-explorer-header-D0TebSYR.js} +33 -34
  40. package/dist/chunks/file-explorer-header-D0TebSYR.js.map +1 -0
  41. package/dist/chunks/{file-explorer-provider-B3gUBkHg.js → file-explorer-provider-DpjC7uds.js} +8 -9
  42. package/dist/chunks/{file-explorer-provider-B3gUBkHg.js.map → file-explorer-provider-DpjC7uds.js.map} +1 -1
  43. package/dist/chunks/{guard-C39y81In.js → guard-BOicu9dt.js} +10 -11
  44. package/dist/chunks/{guard-C39y81In.js.map → guard-BOicu9dt.js.map} +1 -1
  45. package/dist/chunks/{input-Bi6ZBZQw.js → input-Bz3l514j.js} +11 -12
  46. package/dist/chunks/{input-Bi6ZBZQw.js.map → input-Bz3l514j.js.map} +1 -1
  47. package/dist/chunks/{login-button-fo0P8vym.js → login-button-clTw_9tX.js} +9 -10
  48. package/dist/chunks/{login-button-fo0P8vym.js.map → login-button-clTw_9tX.js.map} +1 -1
  49. package/dist/chunks/{logout-button-CF2YFgID.js → logout-button-CP-Pz70O.js} +9 -10
  50. package/dist/chunks/{logout-button-CF2YFgID.js.map → logout-button-CP-Pz70O.js.map} +1 -1
  51. package/dist/chunks/{menu-RumUciM-.js → menu-D0k2fkiE.js} +47 -49
  52. package/dist/chunks/{menu-RumUciM-.js.map → menu-D0k2fkiE.js.map} +1 -1
  53. package/dist/chunks/{menu-item-CVAZyipz.js → menu-item-nfPpH4dN.js} +10 -11
  54. package/dist/chunks/{menu-item-CVAZyipz.js.map → menu-item-nfPpH4dN.js.map} +1 -1
  55. package/dist/chunks/{photo-capture-CAfo7y6-.js → photo-capture-hJaJm4TM.js} +20 -21
  56. package/dist/chunks/photo-capture-hJaJm4TM.js.map +1 -0
  57. package/dist/chunks/{photo-capture-modal-DWmDE_Ws.js → photo-capture-modal-BsHv6wmh.js} +28 -29
  58. package/dist/chunks/{photo-capture-modal-DWmDE_Ws.js.map → photo-capture-modal-BsHv6wmh.js.map} +1 -1
  59. package/dist/chunks/{provide-B5NeVMM_.js → provide-z9U64q4m.js} +2 -2
  60. package/dist/chunks/{provide-B5NeVMM_.js.map → provide-z9U64q4m.js.map} +1 -1
  61. package/dist/chunks/{provider-BbT2duMy.js → provider-Cuv3Kp6G.js} +10 -11
  62. package/dist/chunks/{provider-BbT2duMy.js.map → provider-Cuv3Kp6G.js.map} +1 -1
  63. package/dist/chunks/{rdf-form-CH9bDx98.js → rdf-form-DVmTw3RG.js} +23 -24
  64. package/dist/chunks/{rdf-form-CH9bDx98.js.map → rdf-form-DVmTw3RG.js.map} +1 -1
  65. package/dist/chunks/{rdf-input-C_V0pIS5.js → rdf-input-CRYLK-27.js} +15 -16
  66. package/dist/chunks/{rdf-input-C_V0pIS5.js.map → rdf-input-CRYLK-27.js.map} +1 -1
  67. package/dist/chunks/{select-y1Z6fwmh.js → select-ClPkDkGl.js} +9 -10
  68. package/dist/chunks/{select-y1Z6fwmh.js.map → select-ClPkDkGl.js.map} +1 -1
  69. package/dist/chunks/{select-option-U4ALXL20.js → select-option-DQan7rcB.js} +7 -8
  70. package/dist/chunks/{select-option-U4ALXL20.js.map → select-option-DQan7rcB.js.map} +1 -1
  71. package/dist/chunks/{signup-button-DicFpAjD.js → signup-button-CexdMWj6.js} +9 -10
  72. package/dist/chunks/{signup-button-DicFpAjD.js.map → signup-button-CexdMWj6.js.map} +1 -1
  73. package/dist/chunks/{solid-emblem-CeCXTpve.js → solid-emblem-DwLdkGuO.js} +7 -8
  74. package/dist/chunks/{solid-emblem-CeCXTpve.js.map → solid-emblem-DwLdkGuO.js.map} +1 -1
  75. package/dist/chunks/{src-Bhtor0ZC.js → src-DQgHAH3d.js} +2934 -2926
  76. package/dist/chunks/src-DQgHAH3d.js.map +1 -0
  77. package/dist/components/access-control-modal/AccessControlAddAccess.esm.js.map +1 -1
  78. package/dist/components/access-control-modal/AccessControlErrors.esm.js.map +1 -1
  79. package/dist/components/access-control-modal/AccessControlGeneralAccess.esm.js.map +1 -1
  80. package/dist/components/access-control-modal/AccessControlModal.esm.js.map +1 -1
  81. package/dist/components/access-control-modal/AccessControlSharedAccess.esm.js.map +1 -1
  82. package/dist/components/access-control-modal.js +1 -1
  83. package/dist/components/account/Account.esm.js.map +1 -1
  84. package/dist/components/account.js +1 -1
  85. package/dist/components/avatar.js +1 -1
  86. package/dist/components/button/Button.esm.js.map +1 -1
  87. package/dist/components/button.js +1 -1
  88. package/dist/components/combobox/Combobox.esm.js.map +1 -1
  89. package/dist/components/combobox-option/ComboboxOption.esm.js.map +1 -1
  90. package/dist/components/combobox-option.js +1 -1
  91. package/dist/components/combobox.js +1 -1
  92. package/dist/components/dialog/Dialog.esm.js.map +1 -1
  93. package/dist/components/dialog-content.js +1 -1
  94. package/dist/components/dialog-footer.js +1 -1
  95. package/dist/components/dialog-header.js +1 -1
  96. package/dist/components/dialog-provider/DialogProvider.esm.js.map +1 -1
  97. package/dist/components/dialog-provider.js +1 -1
  98. package/dist/components/dialog.js +1 -1
  99. package/dist/components/dialogs-root/DialogsRoot.esm.js.map +1 -1
  100. package/dist/components/dialogs-root.js +1 -1
  101. package/dist/components/error-state/ErrorState.esm.js.map +1 -1
  102. package/dist/components/error-state.js +1 -1
  103. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js +2 -2
  104. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js.map +1 -1
  105. package/dist/components/file-explorer-header/FileExplorerHeader.d.ts.map +1 -1
  106. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js +20 -19
  107. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js.map +1 -1
  108. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +6 -6
  109. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +1 -1
  110. package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts.map +1 -1
  111. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +24 -23
  112. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js.map +1 -1
  113. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +7 -7
  114. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js.map +1 -1
  115. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts.map +1 -1
  116. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +25 -24
  117. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js.map +1 -1
  118. package/dist/components/file-explorer-header.js +1 -1
  119. package/dist/components/file-explorer-provider/FileExplorerProvider.cjs.js +1 -1
  120. package/dist/components/file-explorer-provider/FileExplorerProvider.cjs.js.map +1 -1
  121. package/dist/components/file-explorer-provider/FileExplorerProvider.d.ts +1 -1
  122. package/dist/components/file-explorer-provider/FileExplorerProvider.d.ts.map +1 -1
  123. package/dist/components/file-explorer-provider/FileExplorerProvider.esm.js +8 -7
  124. package/dist/components/file-explorer-provider/FileExplorerProvider.esm.js.map +1 -1
  125. package/dist/components/file-explorer-provider.js +1 -1
  126. package/dist/components/guard.js +1 -1
  127. package/dist/components/input/Input.esm.js.map +1 -1
  128. package/dist/components/input.js +1 -1
  129. package/dist/components/login-button.js +1 -1
  130. package/dist/components/login-modal/LoginModal.esm.js.map +1 -1
  131. package/dist/components/login-modal.js +1 -1
  132. package/dist/components/logout-button.js +1 -1
  133. package/dist/components/menu/Menu.esm.js.map +1 -1
  134. package/dist/components/menu-item/MenuItem.esm.js.map +1 -1
  135. package/dist/components/menu-item.js +1 -1
  136. package/dist/components/menu.js +1 -1
  137. package/dist/components/photo-capture/PhotoCapture.esm.js.map +1 -1
  138. package/dist/components/photo-capture-modal/PhotoCaptureModal.esm.js.map +1 -1
  139. package/dist/components/photo-capture-modal.js +1 -1
  140. package/dist/components/photo-capture.js +1 -1
  141. package/dist/components/provider/Provider.esm.js.map +1 -1
  142. package/dist/components/provider.js +1 -1
  143. package/dist/components/rdf-form/RDFForm.esm.js.map +1 -1
  144. package/dist/components/rdf-form.js +1 -1
  145. package/dist/components/rdf-input/RDFInput.esm.js.map +1 -1
  146. package/dist/components/rdf-input.js +1 -1
  147. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +8 -8
  148. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +1 -1
  149. package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts.map +1 -1
  150. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +18 -17
  151. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js.map +1 -1
  152. package/dist/components/resource-actions-menu.js +1 -1
  153. package/dist/components/select/Select.esm.js.map +1 -1
  154. package/dist/components/select-option/SelectOption.esm.js.map +1 -1
  155. package/dist/components/select-option.js +1 -1
  156. package/dist/components/select.js +1 -1
  157. package/dist/components/signup-button.js +1 -1
  158. package/dist/components/solid-emblem.js +1 -1
  159. package/dist/components.js +30 -30
  160. package/dist/index.cjs.js +1 -1
  161. package/dist/index.esm.js +5 -5
  162. package/dist/index.esm.js.map +1 -1
  163. package/dist/index.js +8 -9
  164. package/dist/lib/file-explorer/index.cjs.js +1 -1
  165. package/dist/lib/file-explorer/index.esm.js +3 -3
  166. package/dist/lib/file-explorer/relevant-panes.cjs.js +1 -1
  167. package/dist/lib/file-explorer/relevant-panes.cjs.js.map +1 -1
  168. package/dist/lib/file-explorer/relevant-panes.d.ts +7 -0
  169. package/dist/lib/file-explorer/relevant-panes.d.ts.map +1 -1
  170. package/dist/lib/file-explorer/relevant-panes.esm.js +14 -5
  171. package/dist/lib/file-explorer/relevant-panes.esm.js.map +1 -1
  172. package/dist/loader.js +8 -9
  173. package/dist/solid-ui.js +28 -28
  174. package/dist/solid-ui.min.js +28 -28
  175. package/dist/solid-ui.min.js.map +1 -1
  176. package/package.json +1 -1
  177. package/dist/chunks/chunk.UEBQI7VV-9M5gO7Ew.js.map +0 -1
  178. package/dist/chunks/components-LxiwG5ae.js.map +0 -1
  179. package/dist/chunks/custom-element-BW8Ua4c7.js +0 -9
  180. package/dist/chunks/custom-element-BW8Ua4c7.js.map +0 -1
  181. package/dist/chunks/decorators-V-B013l9.js +0 -12
  182. package/dist/chunks/decorators-V-B013l9.js.map +0 -1
  183. package/dist/chunks/file-explorer-header-B6-Q0i6V.js.map +0 -1
  184. package/dist/chunks/photo-capture-CAfo7y6-.js.map +0 -1
  185. package/dist/chunks/src-Bhtor0ZC.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.esm.js","names":["customElement","WebComponent","html","property","query","state","styles","_classDecs","_Menu","_Menu2","_A","WeakMap","_B","_C","_D","_ref","_placementDecs","type","String","reflect","_distanceDecs","Number","_dropdownDecs","_itemsDecs","_Menu3","Menu","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_placement","_init_distance","_init_dropdown","_init_items","_defineProperty","MutationObserver","syncItems","_classPrivateFieldGet","placement","v","_classPrivateFieldSet","distance","dropdown","items","connectedCallback","observer","observe","childList","disconnectedCallback","disconnect","render","onWaSelect","map","item","onItemClick","slot","Array","from","children","filter","child","getAttribute","index","slotName","setAttribute","event","waItem","currentTarget","stopPropagation","disabled","selectedEvent","dispatchSelectEvent","defaultPrevented","open","detail","preventDefault","querySelector","click","CustomEvent","bubbles","composed","cancelable","dispatchEvent","e","c","_initClass","_applyDecs","_Class","_identity","default","customElement","styles","customElement$1","WebComponent","Menu_styles_default","_Class","_Menu3","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_placementDecs","_init_placement","_distanceDecs","_init_distance","_dropdownDecs","_init_dropdown","_itemsDecs","_init_items","_Menu2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","_Menu","property","query","state","args","item","items","child","slotName","index","waItem","event"],"sources":["../../../src/components/menu/Menu.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html } from 'lit'\nimport { property, query, state } from 'lit/decorators.js'\nimport type WaDropdown from '@awesome.me/webawesome/dist/components/dropdown/dropdown.js'\nimport type WaDropdownItem from '@awesome.me/webawesome/dist/components/dropdown-item/dropdown-item.js'\nimport type { WaDropdownSelectEvent } from '@awesome.me/webawesome'\n\nimport '@awesome.me/webawesome/dist/components/dropdown/dropdown.js'\nimport '@awesome.me/webawesome/dist/components/dropdown-item/dropdown-item.js'\n\nimport styles from './Menu.styles.css'\n\n@customElement('solid-ui-menu')\nexport default class Menu extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor placement: WaDropdown['placement'] = 'bottom-start';\n\n @property({ type: Number, reflect: true })\n accessor distance: number = 5;\n\n @query('wa-dropdown')\n private accessor dropdown: WaDropdown | null = null;\n\n @state()\n private accessor items: { slot: string; }[] = []\n\n private observer: MutationObserver = new MutationObserver(() => this.syncItems())\n\n connectedCallback () {\n super.connectedCallback()\n\n this.syncItems()\n this.observer.observe(this, { childList: true })\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.observer.disconnect()\n }\n\n protected render () {\n return html`\n <wa-dropdown\n placement=${this.placement}\n distance=${this.distance}\n @wa-select=${this.onWaSelect}\n >\n <slot name=\"trigger\" slot=\"trigger\"></slot>\n\n ${this.items.map(\n (item) =>\n html`<wa-dropdown-item @click=${this.onItemClick}>\n <slot name=${item.slot}></slot>\n </wa-dropdown-item>`\n )}\n </wa-dropdown>\n `\n }\n\n private syncItems (): void {\n // Exclude only the trigger element; include all other children\n // regardless of whether they already have a slot assigned.\n const items = Array.from(this.children).filter(\n (child) => child.getAttribute('slot') !== 'trigger'\n )\n\n this.items = items.map((item, index) => {\n const slotName = `menu-item-${index}`\n\n if (item.getAttribute('slot') !== slotName) {\n item.setAttribute('slot', slotName)\n }\n\n return { slot: slotName }\n })\n }\n\n private onItemClick (event: Event) {\n const waItem = event.currentTarget as WaDropdownItem\n\n event.stopPropagation()\n\n if (waItem.disabled) {\n return\n }\n\n const selectedEvent = this.dispatchSelectEvent(waItem)\n\n if (selectedEvent.defaultPrevented || !this.dropdown) {\n return\n }\n\n this.dropdown.open = false\n }\n\n private onWaSelect (event: WaDropdownSelectEvent) {\n const selectedEvent = this.dispatchSelectEvent(event.detail.item)\n\n if (selectedEvent.defaultPrevented) {\n event.preventDefault()\n\n return\n }\n\n const slotName = event.detail.item.children[0].getAttribute('name')\n const item = this.querySelector<{ click?: () => void } & Element>(`[slot=\"${slotName}\"]`)\n\n item?.click?.()\n }\n\n private dispatchSelectEvent (waItem: WaDropdownItem) {\n const slotName = waItem.children[0].getAttribute('name')\n const item = this.querySelector(`[slot=\"${slotName}\"]`)\n const event = new CustomEvent('solid-ui-select', {\n bubbles: true,\n composed: true,\n cancelable: true,\n })\n\n item?.dispatchEvent(event)\n\n return event\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Menu.esm.js","names":["customElement","WebComponent","html","property","query","state","styles","_classDecs","_Menu","_Menu2","_A","WeakMap","_B","_C","_D","_ref","_placementDecs","type","String","reflect","_distanceDecs","Number","_dropdownDecs","_itemsDecs","_Menu3","Menu","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_placement","_init_distance","_init_dropdown","_init_items","_defineProperty","MutationObserver","syncItems","_classPrivateFieldGet","placement","v","_classPrivateFieldSet","distance","dropdown","items","connectedCallback","observer","observe","childList","disconnectedCallback","disconnect","render","onWaSelect","map","item","onItemClick","slot","Array","from","children","filter","child","getAttribute","index","slotName","setAttribute","event","waItem","currentTarget","stopPropagation","disabled","selectedEvent","dispatchSelectEvent","defaultPrevented","open","detail","preventDefault","querySelector","click","CustomEvent","bubbles","composed","cancelable","dispatchEvent","e","c","_initClass","_applyDecs","_Class","_identity","default","styles","WebComponent","Menu_styles_default","_Class","_Menu3","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_placementDecs","_init_placement","_distanceDecs","_init_distance","_dropdownDecs","_init_dropdown","_itemsDecs","_init_items","_Menu2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","customElement","_Menu","property","query","state","args","item","items","child","slotName","index","waItem","event"],"sources":["../../../src/components/menu/Menu.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html } from 'lit'\nimport { property, query, state } from 'lit/decorators.js'\nimport type WaDropdown from '@awesome.me/webawesome/dist/components/dropdown/dropdown.js'\nimport type WaDropdownItem from '@awesome.me/webawesome/dist/components/dropdown-item/dropdown-item.js'\nimport type { WaDropdownSelectEvent } from '@awesome.me/webawesome'\n\nimport '@awesome.me/webawesome/dist/components/dropdown/dropdown.js'\nimport '@awesome.me/webawesome/dist/components/dropdown-item/dropdown-item.js'\n\nimport styles from './Menu.styles.css'\n\n@customElement('solid-ui-menu')\nexport default class Menu extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor placement: WaDropdown['placement'] = 'bottom-start';\n\n @property({ type: Number, reflect: true })\n accessor distance: number = 5;\n\n @query('wa-dropdown')\n private accessor dropdown: WaDropdown | null = null;\n\n @state()\n private accessor items: { slot: string; }[] = []\n\n private observer: MutationObserver = new MutationObserver(() => this.syncItems())\n\n connectedCallback () {\n super.connectedCallback()\n\n this.syncItems()\n this.observer.observe(this, { childList: true })\n }\n\n disconnectedCallback () {\n super.disconnectedCallback()\n\n this.observer.disconnect()\n }\n\n protected render () {\n return html`\n <wa-dropdown\n placement=${this.placement}\n distance=${this.distance}\n @wa-select=${this.onWaSelect}\n >\n <slot name=\"trigger\" slot=\"trigger\"></slot>\n\n ${this.items.map(\n (item) =>\n html`<wa-dropdown-item @click=${this.onItemClick}>\n <slot name=${item.slot}></slot>\n </wa-dropdown-item>`\n )}\n </wa-dropdown>\n `\n }\n\n private syncItems (): void {\n // Exclude only the trigger element; include all other children\n // regardless of whether they already have a slot assigned.\n const items = Array.from(this.children).filter(\n (child) => child.getAttribute('slot') !== 'trigger'\n )\n\n this.items = items.map((item, index) => {\n const slotName = `menu-item-${index}`\n\n if (item.getAttribute('slot') !== slotName) {\n item.setAttribute('slot', slotName)\n }\n\n return { slot: slotName }\n })\n }\n\n private onItemClick (event: Event) {\n const waItem = event.currentTarget as WaDropdownItem\n\n event.stopPropagation()\n\n if (waItem.disabled) {\n return\n }\n\n const selectedEvent = this.dispatchSelectEvent(waItem)\n\n if (selectedEvent.defaultPrevented || !this.dropdown) {\n return\n }\n\n this.dropdown.open = false\n }\n\n private onWaSelect (event: WaDropdownSelectEvent) {\n const selectedEvent = this.dispatchSelectEvent(event.detail.item)\n\n if (selectedEvent.defaultPrevented) {\n event.preventDefault()\n\n return\n }\n\n const slotName = event.detail.item.children[0].getAttribute('name')\n const item = this.querySelector<{ click?: () => void } & Element>(`[slot=\"${slotName}\"]`)\n\n item?.click?.()\n }\n\n private dispatchSelectEvent (waItem: WaDropdownItem) {\n const slotName = waItem.children[0].getAttribute('name')\n const item = this.querySelector(`[slot=\"${slotName}\"]`)\n const event = new CustomEvent('solid-ui-select', {\n bubbles: true,\n composed: true,\n cancelable: true,\n })\n\n item?.dispatchEvent(event)\n\n return event\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.esm.js","names":["customElement","WebComponent","property","query","html","styles","_classDecs","_MenuItem","_MenuItem2","_A","WeakMap","_B","_C","_ref","_hrefDecs","type","String","reflect","_selectedDecs","Boolean","_anchorDecs","_MenuItem3","MenuItem","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_href","_init_selected","_init_anchor","_classPrivateFieldGet","href","v","_classPrivateFieldSet","selected","anchor","render","click","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","customElement","styles","customElement$1","WebComponent","MenuItem_styles_default","_Class","_MenuItem3","_A","_B","_C","_initProto","_initClass","_classDecs","_hrefDecs","_init_href","_selectedDecs","_init_selected","_anchorDecs","_init_anchor","_MenuItem2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","_MenuItem","property","query","args"],"sources":["../../../src/components/menu-item/MenuItem.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { property, query } from 'lit/decorators.js'\nimport { html } from 'lit'\n\nimport styles from './MenuItem.styles.css'\n\n@customElement('solid-ui-menu-item')\nexport default class MenuItem extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor href: string | undefined\n\n @property({ type: Boolean, reflect: true })\n accessor selected: boolean = false\n\n @query('a')\n private accessor anchor: HTMLAnchorElement | null = null\n\n render () {\n if (this.href) {\n return html`\n <a href=\"${this.href}\" target=\"_blank\" rel=\"noopener noreferrer\" ?data-selected=${this.selected}>\n <slot name=\"left-icon\"></slot>\n <slot></slot>\n <slot name=\"right-icon\"></slot>\n </a>\n `\n }\n\n return html`\n <div ?data-selected=${this.selected}>\n <slot name=\"left-icon\"></slot>\n <slot></slot>\n <slot name=\"right-icon\"></slot>\n </div>\n `\n }\n\n click () {\n this.anchor?.click()\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAI0CM,IAAA,CAEzCN,EAAc,oBAAoB,CAAC;AAAA,IAAAO;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,kBAAA,IAAAF,QAAA,GAAAG,KAAAC,IAIjCZ,EAAS;CAAEa,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACC,IAGzChB,EAAS;CAAEa,MAAMI;CAASF,SAAS;AAAK,CAAC,GAACG,IAG1CjB,EAAM,GAAG,GAAC,SAAAkB,IAVb,cACsCpB,EAAa;CAAAsB,YAAA,GAAAC,GAAA;EAOfC,AAPe,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAhB,IAAAiB,EAAA,IAAA,GAAAC,EAAA,IAAA,EAAA,GAAAF,EAAA,MAAAd,GAAAiB,EAAA,MAOpB,EAAK,CAAA,GAAAH,EAAA,MAAAb,GAAAiB,EAAA,MAGkB,IAAI,CAAA;CAAA;CAAA,KAAAhB,KAAA;EAAA,OAAAiB,EAAArB,GAAA,IAAA;CAAA;CAAA,IAN/CsB,KAAIC,GAAA;EAAAC,EAAAxB,GAAA,MAAAuB,CAAA;CAAA;CAAA,IAGJE,WAAQ;EAAA,OAAAJ,EAAAnB,GAAA,IAAA;CAAA;CAAA,IAARuB,SAAQF,GAAA;EAAAC,EAAAtB,GAAA,MAAAqB,CAAA;CAAA;CAAA,IAGAG,SAAM;EAAA,OAAAL,EAAAlB,GAAA,IAAA;CAAA;CAAA,IAANuB,OAAMH,GAAA;EAAAC,EAAArB,GAAA,MAAAoB,CAAA;CAAA;CAEvBI,SAAU;EAWR,OAVI,KAAKL,OACA3B,CAAI;mBACE,KAAK2B,KAAI,6DAA8D,KAAKG,SAAQ;;;;;UAQ5F9B,CAAI;8BACe,KAAK8B,SAAQ;;;;;;CAMzC;CAEAG,QAAS;EACP,KAAKF,QAAQE,MAAM;CACrB;AACF,GAAC,CAAAC,GAAA,CAAAX,GAAAC,GAAAC,GAAAH,IAAAa,GAAA,CAAAhC,GAAAiC,MAAAC,EAAApB,GAAA;CAAA;EAAAP;EAAA;EAAA;CAAA;CAAA;EAAAI;EAAA;EAAA;CAAA;CAAA;EAAAE;EAAA;EAAA;CAAA;AAAA,GAAAd,GAAA,GAAA,KAAA,GAnCqCL,CAAY,GAAAoB,IAAAqB,IAAA,cAAAC,EAAA;CAAApB,cAAA;EAAA,MAAAhB,CAAA,GAAAqC,EAAA,MAAA,UAChCvC,CAAM,GAAAmC,EAAA;CAAA;AAAA,GAAAI,EAAAF,GAAAlC,GAAA,KAAA,CAAA,GAAAkC,GAAA"}
1
+ {"version":3,"file":"MenuItem.esm.js","names":["customElement","WebComponent","property","query","html","styles","_classDecs","_MenuItem","_MenuItem2","_A","WeakMap","_B","_C","_ref","_hrefDecs","type","String","reflect","_selectedDecs","Boolean","_anchorDecs","_MenuItem3","MenuItem","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_href","_init_selected","_init_anchor","_classPrivateFieldGet","href","v","_classPrivateFieldSet","selected","anchor","render","click","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","styles","WebComponent","MenuItem_styles_default","_Class","_MenuItem3","_A","_B","_C","_initProto","_initClass","_classDecs","_hrefDecs","_init_href","_selectedDecs","_init_selected","_anchorDecs","_init_anchor","_MenuItem2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","customElement","_MenuItem","property","query","args"],"sources":["../../../src/components/menu-item/MenuItem.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { property, query } from 'lit/decorators.js'\nimport { html } from 'lit'\n\nimport styles from './MenuItem.styles.css'\n\n@customElement('solid-ui-menu-item')\nexport default class MenuItem extends WebComponent {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor href: string | undefined\n\n @property({ type: Boolean, reflect: true })\n accessor selected: boolean = false\n\n @query('a')\n private accessor anchor: HTMLAnchorElement | null = null\n\n render () {\n if (this.href) {\n return html`\n <a href=\"${this.href}\" target=\"_blank\" rel=\"noopener noreferrer\" ?data-selected=${this.selected}>\n <slot name=\"left-icon\"></slot>\n <slot></slot>\n <slot name=\"right-icon\"></slot>\n </a>\n `\n }\n\n return html`\n <div ?data-selected=${this.selected}>\n <slot name=\"left-icon\"></slot>\n <slot></slot>\n <slot name=\"right-icon\"></slot>\n </div>\n `\n }\n\n click () {\n this.anchor?.click()\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAI0CM,IAAA,CAEzCN,EAAc,oBAAoB,CAAC;AAAA,IAAAO;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,kBAAA,IAAAF,QAAA,GAAAG,KAAAC,IAIjCZ,EAAS;CAAEa,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACC,IAGzChB,EAAS;CAAEa,MAAMI;CAASF,SAAS;AAAK,CAAC,GAACG,IAG1CjB,EAAM,GAAG,GAAC,SAAAkB,IAVb,cACsCpB,EAAa;CAAAsB,YAAA,GAAAC,GAAA;EAOfC,AAPe,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAhB,IAAAiB,EAAA,IAAA,GAAAC,EAAA,IAAA,EAAA,GAAAF,EAAA,MAAAd,GAAAiB,EAAA,MAOpB,EAAK,CAAA,GAAAH,EAAA,MAAAb,GAAAiB,EAAA,MAGkB,IAAI,CAAA;CAAA;CAAA,KAAAhB,KAAA;EAAA,OAAAiB,EAAArB,GAAA,IAAA;CAAA;CAAA,IAN/CsB,KAAIC,GAAA;EAAAC,EAAAxB,GAAA,MAAAuB,CAAA;CAAA;CAAA,IAGJE,WAAQ;EAAA,OAAAJ,EAAAnB,GAAA,IAAA;CAAA;CAAA,IAARuB,SAAQF,GAAA;EAAAC,EAAAtB,GAAA,MAAAqB,CAAA;CAAA;CAAA,IAGAG,SAAM;EAAA,OAAAL,EAAAlB,GAAA,IAAA;CAAA;CAAA,IAANuB,OAAMH,GAAA;EAAAC,EAAArB,GAAA,MAAAoB,CAAA;CAAA;CAEvBI,SAAU;EAWR,OAVI,KAAKL,OACA3B,CAAI;mBACE,KAAK2B,KAAI,6DAA8D,KAAKG,SAAQ;;;;;UAQ5F9B,CAAI;8BACe,KAAK8B,SAAQ;;;;;;CAMzC;CAEAG,QAAS;EACP,KAAKF,QAAQE,MAAM;CACrB;AACF,GAAC,CAAAC,GAAA,CAAAX,GAAAC,GAAAC,GAAAH,IAAAa,GAAA,CAAAhC,GAAAiC,MAAAC,EAAApB,GAAA;CAAA;EAAAP;EAAA;EAAA;CAAA;CAAA;EAAAI;EAAA;EAAA;CAAA;CAAA;EAAAE;EAAA;EAAA;CAAA;AAAA,GAAAd,GAAA,GAAA,KAAA,GAnCqCL,CAAY,GAAAoB,IAAAqB,IAAA,cAAAC,EAAA;CAAApB,cAAA;EAAA,MAAAhB,CAAA,GAAAqC,EAAA,MAAA,UAChCvC,CAAM,GAAAmC,EAAA;CAAA;AAAA,GAAAI,EAAAF,GAAAlC,GAAA,KAAA,CAAA,GAAAkC,GAAA"}
@@ -1 +1 @@
1
- export { n as MenuItem, t as default } from "../chunks/menu-item-CVAZyipz.js";
1
+ export { n as MenuItem, t as default } from "../chunks/menu-item-nfPpH4dN.js";
@@ -1 +1 @@
1
- export { n as Menu, t as default } from "../chunks/menu-RumUciM-.js";
1
+ export { n as Menu, t as default } from "../chunks/menu-D0k2fkiE.js";
@@ -1 +1 @@
1
- {"version":3,"file":"PhotoCapture.esm.js","names":["html","property","customElement","FormControlComponent","showDialog","PhotoCaptureModal","_classDecs","_PhotoCapture","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_ref","_labelDecs","type","String","reflect","_headingDecs","_captureLabelDecs","attribute","_confirmLabelDecs","_retakeLabelDecs","_cancelLabelDecs","_facingModeDecs","_constraintsDecs","_captureFormatDecs","_captureQualityDecs","Number","_showCancelButtonDecs","Boolean","_fileNamePrefixDecs","_mediaConstraintsDecs","PhotoCapture","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_label","_init_heading","_init_captureLabel","_init_confirmLabel","_init_retakeLabel","_init_cancelLabel","_init_facingMode","_init_constraints","_init_captureFormat","_init_captureQuality","undefined","_init_showCancelButton","_init_fileNamePrefix","_init_mediaConstraints","_defineProperty","_classPrivateFieldGet","label","v","_classPrivateFieldSet","heading","captureLabel","confirmLabel","retakeLabel","cancelLabel","facingMode","constraints","captureFormat","captureQuality","showCancelButton","fileNamePrefix","mediaConstraints","render","onClick","disabled","props","name","onClose","value","controlTrait","setValue","_PhotoCapture2","e","c","_initClass","_applyDecs","default","customElement","PhotoCaptureModal","customElement$1","FormControlComponent","photo_capture_modal_default","_PhotoCapture2","_initProto","_initClass","_classDecs","_labelDecs","_init_label","_headingDecs","_init_heading","_captureLabelDecs","_init_captureLabel","_confirmLabelDecs","_init_confirmLabel","_retakeLabelDecs","_init_retakeLabel","_cancelLabelDecs","_init_cancelLabel","_facingModeDecs","_init_facingMode","_constraintsDecs","_init_constraints","_captureFormatDecs","_init_captureFormat","_captureQualityDecs","_init_captureQuality","_showCancelButtonDecs","_init_showCancelButton","_fileNamePrefixDecs","_init_fileNamePrefix","_mediaConstraintsDecs","_init_mediaConstraints","_ref","_defineProperty","_toPropertyKey","r","t","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_PhotoCapture","_A","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","property","args","value"],"sources":["../../../src/components/photo-capture/PhotoCapture.ts"],"sourcesContent":["import { html } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { customElement, FormControlComponent } from '@/lib/components'\nimport { showDialog } from '@/lib/dialogs'\n\nimport PhotoCaptureModal from '@/components/photo-capture-modal'\n\n@customElement('solid-ui-photo-capture')\nexport default class PhotoCapture extends FormControlComponent<File> {\n @property({ type: String, reflect: true })\n accessor label = 'Take Photo'\n\n @property({ type: String, reflect: true })\n accessor heading = 'Take a photo'\n\n @property({ type: String, attribute: 'capture-label', reflect: true })\n accessor captureLabel = 'Take Photo'\n\n @property({ type: String, attribute: 'confirm-label', reflect: true })\n accessor confirmLabel = 'Use Photo'\n\n @property({ type: String, attribute: 'retake-label', reflect: true })\n accessor retakeLabel = 'Retake'\n\n @property({ type: String, attribute: 'cancel-label', reflect: true })\n accessor cancelLabel = 'Cancel'\n\n @property({ type: String, attribute: 'facing-mode', reflect: true })\n accessor facingMode = 'user'\n\n @property({ type: String, reflect: true })\n accessor constraints = ''\n\n @property({ type: String, attribute: 'capture-format', reflect: true })\n accessor captureFormat = 'image/png'\n\n @property({ type: Number, attribute: 'capture-quality' })\n accessor captureQuality: number | undefined = undefined\n\n @property({ type: Boolean, attribute: 'show-cancel-button', reflect: true })\n accessor showCancelButton = true\n\n @property({ type: String, attribute: 'file-name-prefix', reflect: true })\n accessor fileNamePrefix = ''\n\n @property({ attribute: false })\n accessor mediaConstraints: MediaStreamConstraints | undefined = undefined\n\n protected controlElement = null\n\n protected render () {\n return html`\n <slot name=\"trigger\" @click=${this.onClick}>\n <solid-ui-button ?disabled=\"${this.disabled}\">${this.label}</solid-ui-button>\n </slot>\n `\n }\n\n private onClick () {\n showDialog(PhotoCaptureModal, {\n props: {\n name: this.name,\n heading: this.heading,\n captureLabel: this.captureLabel,\n confirmLabel: this.confirmLabel,\n retakeLabel: this.retakeLabel,\n cancelLabel: this.cancelLabel,\n fileNamePrefix: this.fileNamePrefix,\n mediaConstraints: this.mediaConstraints,\n constraints: this.constraints,\n captureFormat: this.captureFormat,\n captureQuality: this.captureQuality,\n showCancelButton: this.showCancelButton,\n facingMode: this.facingMode,\n },\n onClose: value => this.controlTrait.setValue(value ?? null)\n })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKgEM,IAAA,CAE/DJ,EAAc,wBAAwB,CAAC;AAAA,IAAAK,IAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,kBAAA,IAAAF,QAAA,GAAAG,kBAAA,IAAAH,QAAA,GAAAI,kBAAA,IAAAJ,QAAA,GAAAK,kBAAA,IAAAL,QAAA,GAAAM,kBAAA,IAAAN,QAAA,GAAAO,kBAAA,IAAAP,QAAA,GAAAQ,kBAAA,IAAAR,QAAA,GAAAS,kBAAA,IAAAT,QAAA,GAAAU,kBAAA,IAAAV,QAAA,GAAAW,kBAAA,IAAAX,QAAA,GAAAY,kBAAA,IAAAZ,QAAA;AAAAa,KAAAC,IAErCtB,EAAS;CAAEuB,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACC,IAGzC1B,EAAS;CAAEuB,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACE,IAGzC3B,EAAS;CAAEuB,MAAMC;CAAQI,WAAW;CAAiBH,SAAS;AAAK,CAAC,GAACI,IAGrE7B,EAAS;CAAEuB,MAAMC;CAAQI,WAAW;CAAiBH,SAAS;AAAK,CAAC,GAACK,IAGrE9B,EAAS;CAAEuB,MAAMC;CAAQI,WAAW;CAAgBH,SAAS;AAAK,CAAC,GAACM,IAGpE/B,EAAS;CAAEuB,MAAMC;CAAQI,WAAW;CAAgBH,SAAS;AAAK,CAAC,GAACO,IAGpEhC,EAAS;CAAEuB,MAAMC;CAAQI,WAAW;CAAeH,SAAS;AAAK,CAAC,GAACQ,IAGnEjC,EAAS;CAAEuB,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACS,IAGzClC,EAAS;CAAEuB,MAAMC;CAAQI,WAAW;CAAkBH,SAAS;AAAK,CAAC,GAACU,IAGtEnC,EAAS;CAAEuB,MAAMa;CAAQR,WAAW;AAAkB,CAAC,GAACS,IAGxDrC,EAAS;CAAEuB,MAAMe;CAASV,WAAW;CAAsBH,SAAS;AAAK,CAAC,GAACc,IAG3EvC,EAAS;CAAEuB,MAAMC;CAAQI,WAAW;CAAoBH,SAAS;AAAK,CAAC,GAACe,IAGxExC,EAAS,EAAE4B,WAAW,GAAM,CAAC,GAAC,UAiChC0D,IAAA7C,cAtEyCvC,EAA2B;CAAAwC,YAAA,GAAAC,GAAA;EAsCMiB,AAtCN,MAAA,GAAAjB,CAAA,GAAAC,EAAA,MAAArC,IAAAsC,EAAA,IAAA,GAAAC,EAAA,MAElD,YAAY,EAAA,GAAAF,EAAA,MAAAnC,GAAAsC,EAAA,MAGV,cAAc,CAAA,GAAAH,EAAA,MAAAlC,GAAAsC,EAAA,MAGT,YAAY,CAAA,GAAAJ,EAAA,MAAAjC,GAAAsC,EAAA,MAGZ,WAAW,CAAA,GAAAL,EAAA,MAAAhC,GAAAsC,EAAA,MAGZ,QAAQ,CAAA,GAAAN,EAAA,MAAA/B,GAAAsC,EAAA,MAGR,QAAQ,CAAA,GAAAP,EAAA,MAAA9B,GAAAsC,EAAA,MAGT,MAAM,CAAA,GAAAR,EAAA,MAAA7B,GAAAsC,EAAA,MAGL,EAAE,CAAA,GAAAT,EAAA,MAAA5B,GAAAsC,EAAA,MAGA,WAAW,CAAA,GAAAV,EAAA,MAAA3B,GAAAsC,EAAA,MAGUC,KAAAA,CAAS,CAAA,GAAAZ,EAAA,MAAA1B,GAAAuC,EAAA,MAG3B,EAAI,CAAA,GAAAb,EAAA,MAAAzB,GAAAuC,EAAA,MAGN,EAAE,CAAA,GAAAd,EAAA,MAAAxB,GAAAuC,EAAA,MAGoCH,KAAAA,CAAS,CAAA,GAAAI,GAAA,MAAA,kBAE9C,IAAI;CAAA;CAAA,KAAAvC,KAAA;EAAA,OAAAwC,EAAAtD,GAAA,IAAA;CAAA;CAAA,IAtCtBuD,MAAKC,GAAA;EAAAC,EAAAzD,GAAA,MAAAwD,CAAA;CAAA;CAAA,IAGLE,UAAO;EAAA,OAAAJ,EAAApD,GAAA,IAAA;CAAA;CAAA,IAAPwD,QAAOF,GAAA;EAAAC,EAAAvD,GAAA,MAAAsD,CAAA;CAAA;CAAA,IAGPG,eAAY;EAAA,OAAAL,EAAAnD,GAAA,IAAA;CAAA;CAAA,IAAZwD,aAAYH,GAAA;EAAAC,EAAAtD,GAAA,MAAAqD,CAAA;CAAA;CAAA,IAGZI,eAAY;EAAA,OAAAN,EAAAlD,GAAA,IAAA;CAAA;CAAA,IAAZwD,aAAYJ,GAAA;EAAAC,EAAArD,GAAA,MAAAoD,CAAA;CAAA;CAAA,IAGZK,cAAW;EAAA,OAAAP,EAAAjD,GAAA,IAAA;CAAA;CAAA,IAAXwD,YAAWL,GAAA;EAAAC,EAAApD,GAAA,MAAAmD,CAAA;CAAA;CAAA,IAGXM,cAAW;EAAA,OAAAR,EAAAhD,GAAA,IAAA;CAAA;CAAA,IAAXwD,YAAWN,GAAA;EAAAC,EAAAnD,GAAA,MAAAkD,CAAA;CAAA;CAAA,IAGXO,aAAU;EAAA,OAAAT,EAAA/C,GAAA,IAAA;CAAA;CAAA,IAAVwD,WAAUP,GAAA;EAAAC,EAAAlD,GAAA,MAAAiD,CAAA;CAAA;CAAA,IAGVQ,cAAW;EAAA,OAAAV,EAAA9C,GAAA,IAAA;CAAA;CAAA,IAAXwD,YAAWR,GAAA;EAAAC,EAAAjD,GAAA,MAAAgD,CAAA;CAAA;CAAA,IAGXS,gBAAa;EAAA,OAAAX,EAAA7C,GAAA,IAAA;CAAA;CAAA,IAAbwD,cAAaT,GAAA;EAAAC,EAAAhD,GAAA,MAAA+C,CAAA;CAAA;CAAA,IAGbU,iBAAc;EAAA,OAAAZ,EAAA5C,GAAA,IAAA;CAAA;CAAA,IAAdwD,eAAcV,GAAA;EAAAC,EAAA/C,GAAA,MAAA8C,CAAA;CAAA;CAAA,IAGdW,mBAAgB;EAAA,OAAAb,EAAA3C,GAAA,IAAA;CAAA;CAAA,IAAhBwD,iBAAgBX,GAAA;EAAAC,EAAA9C,GAAA,MAAA6C,CAAA;CAAA;CAAA,IAGhBY,iBAAc;EAAA,OAAAd,EAAA1C,GAAA,IAAA;CAAA;CAAA,IAAdwD,eAAcZ,GAAA;EAAAC,EAAA7C,GAAA,MAAA4C,CAAA;CAAA;CAAA,IAGda,mBAAgB;EAAA,OAAAf,EAAAzC,GAAA,IAAA;CAAA;CAAA,IAAhBwD,iBAAgBb,GAAA;EAAAC,EAAA5C,GAAA,MAAA2C,CAAA;CAAA;CAIfc,SAAU;EAClB,OAAO9E,CAAI;sCACuB,KAAK+E,QAAO;0CACR,KAAKC,SAAQ,IAAK,KAAKjB,MAAK;;;CAGpE;CAEQgB,UAAW;EACjB3E,EAAWC,GAAmB;GAC5B4E,OAAO;IACLC,MAAM,KAAKA;IACXhB,SAAS,KAAKA;IACdC,cAAc,KAAKA;IACnBC,cAAc,KAAKA;IACnBC,aAAa,KAAKA;IAClBC,aAAa,KAAKA;IAClBM,gBAAgB,KAAKA;IACrBC,kBAAkB,KAAKA;IACvBL,aAAa,KAAKA;IAClBC,eAAe,KAAKA;IACpBC,gBAAgB,KAAKA;IACrBC,kBAAkB,KAAKA;IACvBJ,YAAY,KAAKA;GACnB;GACAY,UAASC,MAAS,KAAKC,aAAaC,SAASF,KAAS,IAAI;EAC5D,CAAC;CACH;AACF,GAAC,CAAAI,GAAA,CAAAzC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAE,GAAAC,GAAAC,GAAAd,IAAA2C,GAAA,CAAAlF,IAAAmF,MAAAC,GAAAJ,GAAA;CAAA;EAAAhE;EAAA;EAAA;CAAA;CAAA;EAAAI;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;CAAA;EAAAE;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;CAAA;EAAAE;EAAA;EAAA;CAAA;CAAA;EAAAE;EAAA;EAAA;CAAA;CAAA;EAAAC;EAAA;EAAA;CAAA;AAAA,GAAAnC,GAAA,GAAA,KAAA,GAtEyCH,CAAoB,GAAAuF,EAAA"}
1
+ {"version":3,"file":"PhotoCapture.esm.js","names":["html","property","customElement","FormControlComponent","showDialog","PhotoCaptureModal","_classDecs","_PhotoCapture","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_ref","_labelDecs","type","String","reflect","_headingDecs","_captureLabelDecs","attribute","_confirmLabelDecs","_retakeLabelDecs","_cancelLabelDecs","_facingModeDecs","_constraintsDecs","_captureFormatDecs","_captureQualityDecs","Number","_showCancelButtonDecs","Boolean","_fileNamePrefixDecs","_mediaConstraintsDecs","PhotoCapture","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_label","_init_heading","_init_captureLabel","_init_confirmLabel","_init_retakeLabel","_init_cancelLabel","_init_facingMode","_init_constraints","_init_captureFormat","_init_captureQuality","undefined","_init_showCancelButton","_init_fileNamePrefix","_init_mediaConstraints","_defineProperty","_classPrivateFieldGet","label","v","_classPrivateFieldSet","heading","captureLabel","confirmLabel","retakeLabel","cancelLabel","facingMode","constraints","captureFormat","captureQuality","showCancelButton","fileNamePrefix","mediaConstraints","render","onClick","disabled","props","name","onClose","value","controlTrait","setValue","_PhotoCapture2","e","c","_initClass","_applyDecs","default","PhotoCaptureModal","FormControlComponent","photo_capture_modal_default","_PhotoCapture2","_initProto","_initClass","_classDecs","_labelDecs","_init_label","_headingDecs","_init_heading","_captureLabelDecs","_init_captureLabel","_confirmLabelDecs","_init_confirmLabel","_retakeLabelDecs","_init_retakeLabel","_cancelLabelDecs","_init_cancelLabel","_facingModeDecs","_init_facingMode","_constraintsDecs","_init_constraints","_captureFormatDecs","_init_captureFormat","_captureQualityDecs","_init_captureQuality","_showCancelButtonDecs","_init_showCancelButton","_fileNamePrefixDecs","_init_fileNamePrefix","_mediaConstraintsDecs","_init_mediaConstraints","_ref","_defineProperty","_toPropertyKey","r","t","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","customElement","_PhotoCapture","_A","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","property","args","value"],"sources":["../../../src/components/photo-capture/PhotoCapture.ts"],"sourcesContent":["import { html } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { customElement, FormControlComponent } from '@/lib/components'\nimport { showDialog } from '@/lib/dialogs'\n\nimport PhotoCaptureModal from '@/components/photo-capture-modal'\n\n@customElement('solid-ui-photo-capture')\nexport default class PhotoCapture extends FormControlComponent<File> {\n @property({ type: String, reflect: true })\n accessor label = 'Take Photo'\n\n @property({ type: String, reflect: true })\n accessor heading = 'Take a photo'\n\n @property({ type: String, attribute: 'capture-label', reflect: true })\n accessor captureLabel = 'Take Photo'\n\n @property({ type: String, attribute: 'confirm-label', reflect: true })\n accessor confirmLabel = 'Use Photo'\n\n @property({ type: String, attribute: 'retake-label', reflect: true })\n accessor retakeLabel = 'Retake'\n\n @property({ type: String, attribute: 'cancel-label', reflect: true })\n accessor cancelLabel = 'Cancel'\n\n @property({ type: String, attribute: 'facing-mode', reflect: true })\n accessor facingMode = 'user'\n\n @property({ type: String, reflect: true })\n accessor constraints = ''\n\n @property({ type: String, attribute: 'capture-format', reflect: true })\n accessor captureFormat = 'image/png'\n\n @property({ type: Number, attribute: 'capture-quality' })\n accessor captureQuality: number | undefined = undefined\n\n @property({ type: Boolean, attribute: 'show-cancel-button', reflect: true })\n accessor showCancelButton = true\n\n @property({ type: String, attribute: 'file-name-prefix', reflect: true })\n accessor fileNamePrefix = ''\n\n @property({ attribute: false })\n accessor mediaConstraints: MediaStreamConstraints | undefined = undefined\n\n protected controlElement = null\n\n protected render () {\n return html`\n <slot name=\"trigger\" @click=${this.onClick}>\n <solid-ui-button ?disabled=\"${this.disabled}\">${this.label}</solid-ui-button>\n </slot>\n `\n }\n\n private onClick () {\n showDialog(PhotoCaptureModal, {\n props: {\n name: this.name,\n heading: this.heading,\n captureLabel: this.captureLabel,\n confirmLabel: this.confirmLabel,\n retakeLabel: this.retakeLabel,\n cancelLabel: this.cancelLabel,\n fileNamePrefix: this.fileNamePrefix,\n mediaConstraints: this.mediaConstraints,\n constraints: this.constraints,\n captureFormat: this.captureFormat,\n captureQuality: this.captureQuality,\n showCancelButton: this.showCancelButton,\n facingMode: this.facingMode,\n },\n onClose: value => this.controlTrait.setValue(value ?? null)\n })\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PhotoCaptureModal.esm.js","names":["customElement","DialogComponent","html","nothing","property","state","styles","_classDecs","_PhotoCaptureModal","_PhotoCaptureModal2","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_ref","_nameDecs","type","String","reflect","_headingDecs","_captureLabelDecs","_confirmLabelDecs","_retakeLabelDecs","_cancelLabelDecs","attribute","_fileNamePrefixDecs","_mediaConstraintsDecs","_constraintsDecs","_captureFormatDecs","_captureQualityDecs","Number","_showCancelButtonDecs","Boolean","_facingModeDecs","_errorMessageDecs","_previewUrlDecs","_startingPreviewDecs","_valueDecs","_PhotoCaptureModal3","PhotoCaptureModal","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_name","_init_heading","_init_captureLabel","_init_confirmLabel","_init_retakeLabel","_init_cancelLabel","_init_fileNamePrefix","_init_mediaConstraints","undefined","_init_constraints","_init_captureFormat","_init_captureQuality","_init_showCancelButton","_init_facingMode","_init_errorMessage","_init_previewUrl","_init_startingPreview","_init_value","_defineProperty","_classPrivateFieldGet","name","v","_classPrivateFieldSet","heading","captureLabel","confirmLabel","retakeLabel","cancelLabel","fileNamePrefix","mediaConstraints","constraints","captureFormat","captureQuality","showCancelButton","facingMode","errorMessage","previewUrl","startingPreview","value","disconnectedCallback","stopStream","revokePreviewUrl","willUpdate","changed","has","normalizedValue","File","syncPreviewFromValue","updated","stream","queuePreviewStart","video","shadowRoot","querySelector","srcObject","render","renderViewport","renderStatus","close","onRetake","onConfirm","onCapture","contents","clearValue","width","videoWidth","clientWidth","height","videoHeight","clientHeight","canvas","document","createElement","context","getContext","drawImage","blob","Promise","resolve","toBlob","createFileFromBlob","contentType","extension","fileExtensionForMimeType","safePrefix","trim","Date","now","mimeType","startPreview","catch","getTracks","forEach","track","stop","file","URL","createObjectURL","revokeObjectURL","navigator","mediaDevices","getUserMedia","resolveMediaConstraints","requestUpdate","updateComplete","play","error","message","JSON","parse","Error","ideal","e","c","_initClass","_applyDecs","_Class","_identity","default","customElement","styles","customElement$1","DialogComponent","PhotoCaptureModal_styles_default","_Class","_PhotoCaptureModal3","_A","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_initProto","_initClass","_classDecs","_nameDecs","_init_name","_headingDecs","_init_heading","_captureLabelDecs","_init_captureLabel","_confirmLabelDecs","_init_confirmLabel","_retakeLabelDecs","_init_retakeLabel","_cancelLabelDecs","_init_cancelLabel","_fileNamePrefixDecs","_init_fileNamePrefix","_mediaConstraintsDecs","_init_mediaConstraints","_constraintsDecs","_init_constraints","_captureFormatDecs","_init_captureFormat","_captureQualityDecs","_init_captureQuality","_showCancelButtonDecs","_init_showCancelButton","_facingModeDecs","_init_facingMode","_errorMessageDecs","_init_errorMessage","_previewUrlDecs","_init_previewUrl","_startingPreviewDecs","_init_startingPreview","_valueDecs","_init_value","_PhotoCaptureModal2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","_PhotoCaptureModal","property","state","args","changed","normalizedValue","video","nothing","contents","width","height","canvas","context","blob","resolve","contentType","extension","safePrefix","mimeType","track","file","stream","error"],"sources":["../../../src/components/photo-capture-modal/PhotoCaptureModal.ts"],"sourcesContent":["import { customElement, DialogComponent } from '@/lib/components'\nimport { html, PropertyValues, nothing } from 'lit'\nimport { property, state } from 'lit/decorators.js'\n\nimport '@/components/button'\nimport '@/components/dialog'\nimport '@/components/dialog-content'\nimport '@/components/dialog-footer'\n\nimport styles from './PhotoCaptureModal.styles.css'\n\n@customElement('solid-ui-photo-capture-modal')\nexport default class PhotoCaptureModal extends DialogComponent<File> {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor name = ''\n\n @property({ type: String, reflect: true })\n accessor heading = 'Take a photo'\n\n @property({ type: String, reflect: true })\n accessor captureLabel = 'Take Photo'\n\n @property({ type: String, reflect: true })\n accessor confirmLabel = 'Use Photo'\n\n @property({ type: String, reflect: true })\n accessor retakeLabel = 'Retake'\n\n @property({ type: String, attribute: 'cancel-label', reflect: true })\n accessor cancelLabel = 'Cancel'\n\n @property({ type: String, attribute: 'file-name-prefix', reflect: true })\n accessor fileNamePrefix = ''\n\n @property({ attribute: false })\n accessor mediaConstraints: MediaStreamConstraints | undefined = undefined\n\n @property({ type: String, reflect: true })\n accessor constraints = ''\n\n @property({ type: String, attribute: 'capture-format', reflect: true })\n accessor captureFormat = 'image/png'\n\n @property({ type: Number, attribute: 'capture-quality' })\n accessor captureQuality: number | undefined = undefined\n\n @property({ type: Boolean, attribute: 'show-cancel-button', reflect: true })\n accessor showCancelButton = true\n\n @property({ type: String, attribute: 'facing-mode', reflect: true })\n accessor facingMode = 'user'\n\n @state()\n accessor errorMessage = ''\n\n @state()\n accessor previewUrl = ''\n\n @state()\n accessor startingPreview = false\n\n @state()\n accessor value: File | null = null\n\n private stream: MediaStream | null = null\n\n disconnectedCallback () {\n this.stopStream()\n this.revokePreviewUrl()\n super.disconnectedCallback()\n }\n\n protected willUpdate (changed: PropertyValues<this>) {\n super.willUpdate(changed)\n\n if (changed.has('value')) {\n const normalizedValue = this.value instanceof File ? this.value : null\n\n if (normalizedValue !== this.value) {\n this.value = normalizedValue\n\n return\n }\n\n this.syncPreviewFromValue(normalizedValue)\n }\n }\n\n protected updated (changed: PropertyValues<this>) {\n if (\n !this.value &&\n !this.stream &&\n !this.startingPreview &&\n (changed.has('previewUrl') || changed.has('value'))\n ) {\n this.queuePreviewStart()\n }\n\n if (this.stream) {\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (video && video.srcObject !== this.stream) {\n video.srcObject = this.stream\n }\n }\n }\n\n protected render () {\n return html`\n <solid-ui-dialog title=${this.heading}>\n <solid-ui-dialog-content>\n ${this.renderViewport()}\n ${this.renderStatus()}\n </solid-ui-dialog-content>\n <solid-ui-dialog-footer>\n ${this.showCancelButton\n ? html`<solid-ui-button variant=\"secondary\" @click=${() => this.close()}>${this.cancelLabel}</solid-ui-button>`\n : nothing\n }\n\n ${this.value\n ? html`\n <solid-ui-button @click=${this.onRetake}>${this.retakeLabel}</solid-ui-button>\n <solid-ui-button @click=${this.onConfirm}>${this.confirmLabel}</solid-ui-button>\n `\n : html`\n <solid-ui-button\n ?disabled=${this.startingPreview || !this.stream}\n @click=${this.onCapture}\n >\n ${this.captureLabel}\n </solid-ui-button>\n `\n }\n </solid-ui-dialog-footer>\n </solid-ui-dialog>\n `\n }\n\n private renderViewport () {\n const contents = this.previewUrl\n ? html`<img src=\"${this.previewUrl}\" alt=\"Captured photo preview\" />`\n : html`<video autoplay playsinline muted></video>`\n\n return html`<div class=\"viewport\">${contents}</div>`\n }\n\n private renderStatus () {\n if (this.errorMessage) {\n return html`<div class=\"status error\">${this.errorMessage}</div>`\n }\n\n if (this.startingPreview) {\n return html`<div class=\"status\">Opening camera…</div>`\n }\n\n if (!this.value) {\n return html`<div class=\"status\">Preview the camera and take a photo when ready.</div>`\n }\n\n return html`<div class=\"status\">Review the photo before confirming it.</div>`\n }\n\n private onRetake () {\n this.clearValue()\n this.queuePreviewStart()\n }\n\n private onConfirm () {\n if (!this.value) {\n return\n }\n\n this.close(this.value)\n }\n\n private async onCapture () {\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (!video) {\n return\n }\n\n const width = video.videoWidth || video.clientWidth || 640\n const height = video.videoHeight || video.clientHeight || 480\n const canvas = document.createElement('canvas')\n canvas.width = width\n canvas.height = height\n\n const context = canvas.getContext('2d')\n\n if (!context) {\n this.errorMessage = 'Unable to capture a photo in this browser'\n\n return\n }\n\n context.drawImage(video, 0, 0, width, height)\n\n const blob = await new Promise<Blob | null>(resolve => {\n canvas.toBlob(resolve, this.captureFormat, this.captureQuality)\n })\n\n if (!blob) {\n this.errorMessage = 'Unable to create an image from the current camera frame'\n\n return\n }\n\n this.value = this.createFileFromBlob(blob)\n this.errorMessage = ''\n }\n\n private createFileFromBlob (blob: Blob): File {\n const contentType = blob.type || this.captureFormat\n const extension = this.fileExtensionForMimeType(contentType)\n const safePrefix = (this.fileNamePrefix || this.name || 'photo').trim() || 'photo'\n\n return new File([blob], `${safePrefix}-${Date.now()}.${extension}`, { type: contentType })\n }\n\n private fileExtensionForMimeType (mimeType: string): string {\n switch (mimeType) {\n case 'image/jpeg':\n return 'jpg'\n case 'image/webp':\n return 'webp'\n case 'image/gif':\n return 'gif'\n default:\n return 'png'\n }\n }\n\n private queuePreviewStart () {\n this.startPreview().catch(() => undefined)\n }\n\n private stopStream () {\n if (!this.stream) {\n return\n }\n\n this.stream.getTracks().forEach(track => track.stop())\n this.stream = null\n\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (video) {\n video.srcObject = null\n }\n }\n\n private syncPreviewFromValue (file: File | null) {\n this.revokePreviewUrl()\n\n if (!file) {\n return\n }\n\n this.stopStream()\n this.previewUrl = URL.createObjectURL(file)\n }\n\n private clearValue () {\n this.value = null\n this.errorMessage = ''\n }\n\n private revokePreviewUrl () {\n if (this.previewUrl) {\n URL.revokeObjectURL(this.previewUrl)\n }\n\n this.previewUrl = ''\n }\n\n private async startPreview () {\n if (this.value || this.startingPreview) {\n return\n }\n\n if (!navigator.mediaDevices?.getUserMedia) {\n this.errorMessage = 'Camera access is not available in this browser'\n\n return\n }\n\n this.startingPreview = true\n this.errorMessage = ''\n\n try {\n const stream = await navigator.mediaDevices.getUserMedia(this.resolveMediaConstraints())\n\n this.stream = stream\n this.requestUpdate()\n\n await this.updateComplete\n\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (video) {\n video.srcObject = stream\n\n await video.play?.().catch(() => undefined)\n }\n } catch (error) {\n this.errorMessage = (error as Error)?.message || 'Unable to start the camera preview'\n } finally {\n this.startingPreview = false\n }\n }\n\n private resolveMediaConstraints (): MediaStreamConstraints {\n if (this.mediaConstraints) {\n return this.mediaConstraints\n }\n\n if (this.constraints) {\n try {\n return JSON.parse(this.constraints) as MediaStreamConstraints\n } catch (error) {\n throw new Error(`Invalid constraints JSON: ${(error as Error).message}`)\n }\n }\n\n return {\n video: this.facingMode\n ? { facingMode: { ideal: this.facingMode } }\n : true\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"PhotoCaptureModal.esm.js","names":["customElement","DialogComponent","html","nothing","property","state","styles","_classDecs","_PhotoCaptureModal","_PhotoCaptureModal2","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_ref","_nameDecs","type","String","reflect","_headingDecs","_captureLabelDecs","_confirmLabelDecs","_retakeLabelDecs","_cancelLabelDecs","attribute","_fileNamePrefixDecs","_mediaConstraintsDecs","_constraintsDecs","_captureFormatDecs","_captureQualityDecs","Number","_showCancelButtonDecs","Boolean","_facingModeDecs","_errorMessageDecs","_previewUrlDecs","_startingPreviewDecs","_valueDecs","_PhotoCaptureModal3","PhotoCaptureModal","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_name","_init_heading","_init_captureLabel","_init_confirmLabel","_init_retakeLabel","_init_cancelLabel","_init_fileNamePrefix","_init_mediaConstraints","undefined","_init_constraints","_init_captureFormat","_init_captureQuality","_init_showCancelButton","_init_facingMode","_init_errorMessage","_init_previewUrl","_init_startingPreview","_init_value","_defineProperty","_classPrivateFieldGet","name","v","_classPrivateFieldSet","heading","captureLabel","confirmLabel","retakeLabel","cancelLabel","fileNamePrefix","mediaConstraints","constraints","captureFormat","captureQuality","showCancelButton","facingMode","errorMessage","previewUrl","startingPreview","value","disconnectedCallback","stopStream","revokePreviewUrl","willUpdate","changed","has","normalizedValue","File","syncPreviewFromValue","updated","stream","queuePreviewStart","video","shadowRoot","querySelector","srcObject","render","renderViewport","renderStatus","close","onRetake","onConfirm","onCapture","contents","clearValue","width","videoWidth","clientWidth","height","videoHeight","clientHeight","canvas","document","createElement","context","getContext","drawImage","blob","Promise","resolve","toBlob","createFileFromBlob","contentType","extension","fileExtensionForMimeType","safePrefix","trim","Date","now","mimeType","startPreview","catch","getTracks","forEach","track","stop","file","URL","createObjectURL","revokeObjectURL","navigator","mediaDevices","getUserMedia","resolveMediaConstraints","requestUpdate","updateComplete","play","error","message","JSON","parse","Error","ideal","e","c","_initClass","_applyDecs","_Class","_identity","default","styles","DialogComponent","PhotoCaptureModal_styles_default","_Class","_PhotoCaptureModal3","_A","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_initProto","_initClass","_classDecs","_nameDecs","_init_name","_headingDecs","_init_heading","_captureLabelDecs","_init_captureLabel","_confirmLabelDecs","_init_confirmLabel","_retakeLabelDecs","_init_retakeLabel","_cancelLabelDecs","_init_cancelLabel","_fileNamePrefixDecs","_init_fileNamePrefix","_mediaConstraintsDecs","_init_mediaConstraints","_constraintsDecs","_init_constraints","_captureFormatDecs","_init_captureFormat","_captureQualityDecs","_init_captureQuality","_showCancelButtonDecs","_init_showCancelButton","_facingModeDecs","_init_facingMode","_errorMessageDecs","_init_errorMessage","_previewUrlDecs","_init_previewUrl","_startingPreviewDecs","_init_startingPreview","_valueDecs","_init_value","_PhotoCaptureModal2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","customElement","_PhotoCaptureModal","property","state","args","changed","normalizedValue","video","nothing","contents","width","height","canvas","context","blob","resolve","contentType","extension","safePrefix","mimeType","track","file","stream","error"],"sources":["../../../src/components/photo-capture-modal/PhotoCaptureModal.ts"],"sourcesContent":["import { customElement, DialogComponent } from '@/lib/components'\nimport { html, PropertyValues, nothing } from 'lit'\nimport { property, state } from 'lit/decorators.js'\n\nimport '@/components/button'\nimport '@/components/dialog'\nimport '@/components/dialog-content'\nimport '@/components/dialog-footer'\n\nimport styles from './PhotoCaptureModal.styles.css'\n\n@customElement('solid-ui-photo-capture-modal')\nexport default class PhotoCaptureModal extends DialogComponent<File> {\n static styles = styles\n\n @property({ type: String, reflect: true })\n accessor name = ''\n\n @property({ type: String, reflect: true })\n accessor heading = 'Take a photo'\n\n @property({ type: String, reflect: true })\n accessor captureLabel = 'Take Photo'\n\n @property({ type: String, reflect: true })\n accessor confirmLabel = 'Use Photo'\n\n @property({ type: String, reflect: true })\n accessor retakeLabel = 'Retake'\n\n @property({ type: String, attribute: 'cancel-label', reflect: true })\n accessor cancelLabel = 'Cancel'\n\n @property({ type: String, attribute: 'file-name-prefix', reflect: true })\n accessor fileNamePrefix = ''\n\n @property({ attribute: false })\n accessor mediaConstraints: MediaStreamConstraints | undefined = undefined\n\n @property({ type: String, reflect: true })\n accessor constraints = ''\n\n @property({ type: String, attribute: 'capture-format', reflect: true })\n accessor captureFormat = 'image/png'\n\n @property({ type: Number, attribute: 'capture-quality' })\n accessor captureQuality: number | undefined = undefined\n\n @property({ type: Boolean, attribute: 'show-cancel-button', reflect: true })\n accessor showCancelButton = true\n\n @property({ type: String, attribute: 'facing-mode', reflect: true })\n accessor facingMode = 'user'\n\n @state()\n accessor errorMessage = ''\n\n @state()\n accessor previewUrl = ''\n\n @state()\n accessor startingPreview = false\n\n @state()\n accessor value: File | null = null\n\n private stream: MediaStream | null = null\n\n disconnectedCallback () {\n this.stopStream()\n this.revokePreviewUrl()\n super.disconnectedCallback()\n }\n\n protected willUpdate (changed: PropertyValues<this>) {\n super.willUpdate(changed)\n\n if (changed.has('value')) {\n const normalizedValue = this.value instanceof File ? this.value : null\n\n if (normalizedValue !== this.value) {\n this.value = normalizedValue\n\n return\n }\n\n this.syncPreviewFromValue(normalizedValue)\n }\n }\n\n protected updated (changed: PropertyValues<this>) {\n if (\n !this.value &&\n !this.stream &&\n !this.startingPreview &&\n (changed.has('previewUrl') || changed.has('value'))\n ) {\n this.queuePreviewStart()\n }\n\n if (this.stream) {\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (video && video.srcObject !== this.stream) {\n video.srcObject = this.stream\n }\n }\n }\n\n protected render () {\n return html`\n <solid-ui-dialog title=${this.heading}>\n <solid-ui-dialog-content>\n ${this.renderViewport()}\n ${this.renderStatus()}\n </solid-ui-dialog-content>\n <solid-ui-dialog-footer>\n ${this.showCancelButton\n ? html`<solid-ui-button variant=\"secondary\" @click=${() => this.close()}>${this.cancelLabel}</solid-ui-button>`\n : nothing\n }\n\n ${this.value\n ? html`\n <solid-ui-button @click=${this.onRetake}>${this.retakeLabel}</solid-ui-button>\n <solid-ui-button @click=${this.onConfirm}>${this.confirmLabel}</solid-ui-button>\n `\n : html`\n <solid-ui-button\n ?disabled=${this.startingPreview || !this.stream}\n @click=${this.onCapture}\n >\n ${this.captureLabel}\n </solid-ui-button>\n `\n }\n </solid-ui-dialog-footer>\n </solid-ui-dialog>\n `\n }\n\n private renderViewport () {\n const contents = this.previewUrl\n ? html`<img src=\"${this.previewUrl}\" alt=\"Captured photo preview\" />`\n : html`<video autoplay playsinline muted></video>`\n\n return html`<div class=\"viewport\">${contents}</div>`\n }\n\n private renderStatus () {\n if (this.errorMessage) {\n return html`<div class=\"status error\">${this.errorMessage}</div>`\n }\n\n if (this.startingPreview) {\n return html`<div class=\"status\">Opening camera…</div>`\n }\n\n if (!this.value) {\n return html`<div class=\"status\">Preview the camera and take a photo when ready.</div>`\n }\n\n return html`<div class=\"status\">Review the photo before confirming it.</div>`\n }\n\n private onRetake () {\n this.clearValue()\n this.queuePreviewStart()\n }\n\n private onConfirm () {\n if (!this.value) {\n return\n }\n\n this.close(this.value)\n }\n\n private async onCapture () {\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (!video) {\n return\n }\n\n const width = video.videoWidth || video.clientWidth || 640\n const height = video.videoHeight || video.clientHeight || 480\n const canvas = document.createElement('canvas')\n canvas.width = width\n canvas.height = height\n\n const context = canvas.getContext('2d')\n\n if (!context) {\n this.errorMessage = 'Unable to capture a photo in this browser'\n\n return\n }\n\n context.drawImage(video, 0, 0, width, height)\n\n const blob = await new Promise<Blob | null>(resolve => {\n canvas.toBlob(resolve, this.captureFormat, this.captureQuality)\n })\n\n if (!blob) {\n this.errorMessage = 'Unable to create an image from the current camera frame'\n\n return\n }\n\n this.value = this.createFileFromBlob(blob)\n this.errorMessage = ''\n }\n\n private createFileFromBlob (blob: Blob): File {\n const contentType = blob.type || this.captureFormat\n const extension = this.fileExtensionForMimeType(contentType)\n const safePrefix = (this.fileNamePrefix || this.name || 'photo').trim() || 'photo'\n\n return new File([blob], `${safePrefix}-${Date.now()}.${extension}`, { type: contentType })\n }\n\n private fileExtensionForMimeType (mimeType: string): string {\n switch (mimeType) {\n case 'image/jpeg':\n return 'jpg'\n case 'image/webp':\n return 'webp'\n case 'image/gif':\n return 'gif'\n default:\n return 'png'\n }\n }\n\n private queuePreviewStart () {\n this.startPreview().catch(() => undefined)\n }\n\n private stopStream () {\n if (!this.stream) {\n return\n }\n\n this.stream.getTracks().forEach(track => track.stop())\n this.stream = null\n\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (video) {\n video.srcObject = null\n }\n }\n\n private syncPreviewFromValue (file: File | null) {\n this.revokePreviewUrl()\n\n if (!file) {\n return\n }\n\n this.stopStream()\n this.previewUrl = URL.createObjectURL(file)\n }\n\n private clearValue () {\n this.value = null\n this.errorMessage = ''\n }\n\n private revokePreviewUrl () {\n if (this.previewUrl) {\n URL.revokeObjectURL(this.previewUrl)\n }\n\n this.previewUrl = ''\n }\n\n private async startPreview () {\n if (this.value || this.startingPreview) {\n return\n }\n\n if (!navigator.mediaDevices?.getUserMedia) {\n this.errorMessage = 'Camera access is not available in this browser'\n\n return\n }\n\n this.startingPreview = true\n this.errorMessage = ''\n\n try {\n const stream = await navigator.mediaDevices.getUserMedia(this.resolveMediaConstraints())\n\n this.stream = stream\n this.requestUpdate()\n\n await this.updateComplete\n\n const video = this.shadowRoot?.querySelector<HTMLVideoElement>('video')\n\n if (video) {\n video.srcObject = stream\n\n await video.play?.().catch(() => undefined)\n }\n } catch (error) {\n this.errorMessage = (error as Error)?.message || 'Unable to start the camera preview'\n } finally {\n this.startingPreview = false\n }\n }\n\n private resolveMediaConstraints (): MediaStreamConstraints {\n if (this.mediaConstraints) {\n return this.mediaConstraints\n }\n\n if (this.constraints) {\n try {\n return JSON.parse(this.constraints) as MediaStreamConstraints\n } catch (error) {\n throw new Error(`Invalid constraints JSON: ${(error as Error).message}`)\n }\n }\n\n return {\n video: this.facingMode\n ? { facingMode: { ideal: this.facingMode } }\n : true\n }\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- export { n as PhotoCaptureModal, t as default } from "../chunks/photo-capture-modal-DWmDE_Ws.js";
1
+ export { n as PhotoCaptureModal, t as default } from "../chunks/photo-capture-modal-BsHv6wmh.js";
@@ -1 +1 @@
1
- export { n as PhotoCapture, t as default } from "../chunks/photo-capture-CAfo7y6-.js";
1
+ export { n as PhotoCapture, t as default } from "../chunks/photo-capture-hJaJm4TM.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.esm.js","names":["customElement","WebComponent","provide","html","property","authContext","SolidAuth","DEFAULT_SIGNUP_URL","_classDecs","_Provider","_A","WeakMap","_B","_ref","_signupUrlDecs","type","String","reflect","_authDecs","context","Provider","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_signupUrl","_init_auth","_classPrivateFieldGet","signupUrl","v","_classPrivateFieldSet","auth","connectedCallback","initialize","willUpdate","changedProperties","has","render","_Provider2","e","c","_initClass","_applyDecs","default","customElement","customElement$1","WebComponent","SolidAuth","_Provider2","_initProto","_initClass","_classDecs","_signupUrlDecs","_init_signupUrl","_authDecs","_init_auth","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","E","I","O","k","F","l","f","N","_checkInRHS","_toPropertyKey","_toPrimitive","t","e","_Provider","_A","_B","property","provide","authContext","args","changedProperties"],"sources":["../../../src/components/provider/Provider.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { provide } from '@lit/context'\nimport { html, type PropertyValues } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { authContext } from '@/lib/auth'\nimport { SolidAuth, DEFAULT_SIGNUP_URL } from '@/lib/auth'\n\nimport '@/components/dialogs-root'\n\n@customElement('solid-ui-provider')\nexport default class Provider extends WebComponent {\n @property({ type: String, reflect: true })\n accessor signupUrl: string | undefined\n\n @provide({ context: authContext })\n private accessor auth = new SolidAuth()\n\n async connectedCallback () {\n super.connectedCallback()\n\n await this.auth.initialize()\n }\n\n protected willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n\n if (changedProperties.has('signupUrl')) {\n this.auth.signupUrl = this.signupUrl ?? DEFAULT_SIGNUP_URL\n }\n }\n\n protected render () {\n return html`\n <slot></slot>\n <solid-ui-dialogs-root></solid-ui-dialogs-root>\n `\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOkCQ,IAAA,CAEjCR,EAAc,mBAAmB,CAAC;AAAA,IAAAS,GAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA;AAAAE,KAAAC,IAEhCV,EAAS;CAAEW,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACC,IAGzChB,EAAQ,EAAEiB,SAASd,EAAY,CAAC,GAAC,cAuBnCiC,IAAAlB,cA3BqCnB,EAAa;CAAAoB,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAb,IAAAc,EAAA,IAAA,GAAAC,EAAA,IAAA,EAAA,GAAAF,EAAA,MAAAX,GAAAc,EAAA,MAKzB,IAAIpB,EAAU,CAAC,CAAA;CAAA;CAAA,KAAAO,KAAA;EAAA,OAAAc,EAAAjB,GAAA,IAAA;CAAA;CAAA,IAH9BkB,UAASC,GAAA;EAAAC,EAAApB,GAAA,MAAAmB,CAAA;CAAA;CAAA,IAGDE,OAAI;EAAA,OAAAJ,EAAAf,GAAA,IAAA;CAAA;CAAA,IAAJmB,KAAIF,GAAA;EAAAC,EAAAlB,GAAA,MAAAiB,CAAA;CAAA;CAErB,MAAMG,oBAAqB;EAGzB,AAFA,MAAMA,kBAAkB,GAExB,MAAM,KAAKD,KAAKE,WAAW;CAC7B;CAEUC,WAAYC,GAAyC;EAG7D,AAFA,MAAMD,WAAWC,CAAiB,GAE9BA,EAAkBC,IAAI,WAAW,MACnC,KAAKL,KAAKH,YAAY,KAAKA,aAAAA;CAE/B;CAEUS,SAAU;EAClB,OAAOlC,CAAI;;;;CAIb;AACF,GAAC,CAAAoC,GAAA,CAAAd,GAAAC,GAAAF,IAAAgB,GAAA,CAAA/B,GAAAgC,MAAAC,EAAAJ,GAAA,CAAA;CAAAxB;CAAA;CAAA;AAAA,GAAA;CAAAI;CAAA;CAAA;AAAA,CAAA,GAAAV,GAAA,GAAA,KAAA,GA3BqCP,CAAY,GAAAwC,EAAA"}
1
+ {"version":3,"file":"Provider.esm.js","names":["customElement","WebComponent","provide","html","property","authContext","SolidAuth","DEFAULT_SIGNUP_URL","_classDecs","_Provider","_A","WeakMap","_B","_ref","_signupUrlDecs","type","String","reflect","_authDecs","context","Provider","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_signupUrl","_init_auth","_classPrivateFieldGet","signupUrl","v","_classPrivateFieldSet","auth","connectedCallback","initialize","willUpdate","changedProperties","has","render","_Provider2","e","c","_initClass","_applyDecs","default","WebComponent","SolidAuth","_Provider2","_initProto","_initClass","_classDecs","_signupUrlDecs","_init_signupUrl","_authDecs","_init_auth","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","E","I","O","k","F","l","f","N","_checkInRHS","_toPropertyKey","_toPrimitive","t","e","customElement","_Provider","_A","_B","property","provide","authContext","args","changedProperties"],"sources":["../../../src/components/provider/Provider.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { provide } from '@lit/context'\nimport { html, type PropertyValues } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { authContext } from '@/lib/auth'\nimport { SolidAuth, DEFAULT_SIGNUP_URL } from '@/lib/auth'\n\nimport '@/components/dialogs-root'\n\n@customElement('solid-ui-provider')\nexport default class Provider extends WebComponent {\n @property({ type: String, reflect: true })\n accessor signupUrl: string | undefined\n\n @provide({ context: authContext })\n private accessor auth = new SolidAuth()\n\n async connectedCallback () {\n super.connectedCallback()\n\n await this.auth.initialize()\n }\n\n protected willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n\n if (changedProperties.has('signupUrl')) {\n this.auth.signupUrl = this.signupUrl ?? DEFAULT_SIGNUP_URL\n }\n }\n\n protected render () {\n return html`\n <slot></slot>\n <solid-ui-dialogs-root></solid-ui-dialogs-root>\n `\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOkCQ,IAAA,CAEjCR,EAAc,mBAAmB,CAAC;AAAA,IAAAS,GAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA;AAAAE,KAAAC,IAEhCV,EAAS;CAAEW,MAAMC;CAAQC,SAAS;AAAK,CAAC,GAACC,IAGzChB,EAAQ,EAAEiB,SAASd,EAAY,CAAC,GAAC,cAuBnCiC,IAAAlB,cA3BqCnB,EAAa;CAAAoB,YAAA,GAAAC,GAAA;EAAAC,AAAA,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAb,IAAAc,EAAA,IAAA,GAAAC,EAAA,IAAA,EAAA,GAAAF,EAAA,MAAAX,GAAAc,EAAA,MAKzB,IAAIpB,EAAU,CAAC,CAAA;CAAA;CAAA,KAAAO,KAAA;EAAA,OAAAc,EAAAjB,GAAA,IAAA;CAAA;CAAA,IAH9BkB,UAASC,GAAA;EAAAC,EAAApB,GAAA,MAAAmB,CAAA;CAAA;CAAA,IAGDE,OAAI;EAAA,OAAAJ,EAAAf,GAAA,IAAA;CAAA;CAAA,IAAJmB,KAAIF,GAAA;EAAAC,EAAAlB,GAAA,MAAAiB,CAAA;CAAA;CAErB,MAAMG,oBAAqB;EAGzB,AAFA,MAAMA,kBAAkB,GAExB,MAAM,KAAKD,KAAKE,WAAW;CAC7B;CAEUC,WAAYC,GAAyC;EAG7D,AAFA,MAAMD,WAAWC,CAAiB,GAE9BA,EAAkBC,IAAI,WAAW,MACnC,KAAKL,KAAKH,YAAY,KAAKA,aAAAA;CAE/B;CAEUS,SAAU;EAClB,OAAOlC,CAAI;;;;CAIb;AACF,GAAC,CAAAoC,GAAA,CAAAd,GAAAC,GAAAF,IAAAgB,GAAA,CAAA/B,GAAAgC,MAAAC,EAAAJ,GAAA,CAAA;CAAAxB;CAAA;CAAA;AAAA,GAAA;CAAAI;CAAA;CAAA;AAAA,CAAA,GAAAV,GAAA,GAAA,KAAA,GA3BqCP,CAAY,GAAAwC,EAAA"}
@@ -1 +1 @@
1
- export { n as Provider, t as default } from "../chunks/provider-BbT2duMy.js";
1
+ export { n as Provider, t as default } from "../chunks/provider-Cuv3Kp6G.js";
@@ -1 +1 @@
1
- {"version":3,"file":"RDFForm.esm.js","names":["property","state","html","consume","customElement","WebComponent","ns","fetchData","findForm","sortBySequence","sym","DEFAULT_STORE","storeContext","urlConverter","fromAttribute","value","URL","toAttribute","hrefFromUrlValue","href","_classDecs","_RDFForm","_A","WeakMap","_B","_C","_D","_E","_F","_G","_ref","_storeContextDecs","context","subscribe","_passedInStoreDecs","attribute","_entireDataIsReadonlyDecs","_loadVersionDecs","_documentsLoadedDecs","_formUrlDecs","converter","_subjectUrlDecs","RDFForm","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_storeContext","_init_passedInStore","_init_entireDataIsReadonly","_init__loadVersion","_init__documentsLoaded","_init_formUrl","_init_subjectUrl","_classPrivateFieldGet","v","_classPrivateFieldSet","passedInStore","currentStore","store","entireDataIsReadonly","_loadVersion","_documentsLoaded","formUrl","subjectUrl","render","updater","editable","undefined","formRoot","Error","formDocument","parts","each","ui","partsBySequence","partItems","flatMap","item","Array","isArray","elements","uiFields","map","types","rdf","typeNode","String","hashIndex","lastIndexOf","fieldValue","slice","part","willUpdate","changedProperties","has","loadDocumentsIfNeeded","error","console","_RDFForm2","e","c","_initClass","_applyDecs","default","customElement","ns","ns_default","customElement$1","WebComponent","_RDFForm2","_initProto","_initClass","_classDecs","_storeContextDecs","_init_storeContext","_passedInStoreDecs","_init_passedInStore","_entireDataIsReadonlyDecs","_init_entireDataIsReadonly","_loadVersionDecs","_init__loadVersion","_documentsLoadedDecs","_init__documentsLoaded","_formUrlDecs","_init_formUrl","_subjectUrlDecs","_init_subjectUrl","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPropertyKey","_toPrimitive","t","e","urlConverter","value","hrefFromUrlValue","_RDFForm","_A","_B","_C","_D","_E","_F","_G","consume","storeContext","property","state","args","DEFAULT_STORE","store","subjectUrl","formRoot","findForm","formDocument","sym","parts","uiFields","sortBySequence","item","typeNode","hashIndex","part","changedProperties","formUrl","fetchData","error"],"sources":["../../../src/components/rdf-form/RDFForm.ts"],"sourcesContent":["import { property, state } from 'lit/decorators.js'\nimport { html } from 'lit/html.js'\nimport type { PropertyValues } from 'lit'\nimport { consume } from '@lit/context'\nimport { customElement, WebComponent } from '@/lib/components'\nimport ns from '../../lib/ns'\nimport { fetchData, findForm, sortBySequence } from '../../lib/forms/rdfFormsHelper'\nimport { sym, LiveStore } from 'rdflib'\nimport '@/components/rdf-input'\nimport { DEFAULT_STORE, storeContext, StoreContext } from '@/lib/forms/store/StoreContext'\n\nconst urlConverter = {\n fromAttribute (value: string | null): URL | null {\n if (!value) return null\n\n try {\n return new URL(value)\n } catch {\n return null\n }\n },\n toAttribute (value: URL | null) {\n if (!value) return null\n return value\n }\n}\n\nconst hrefFromUrlValue = (value: URL | null): string =>\n value?.href ?? ''\n\n@customElement('solid-ui-rdf-form')\nexport default class RDFForm extends WebComponent {\n @consume({ context: storeContext, subscribe: true })\n private accessor storeContext: StoreContext = DEFAULT_STORE\n\n @property({ attribute: false })\n accessor passedInStore: LiveStore | null = null\n\n private get currentStore (): LiveStore {\n return this.passedInStore ?? this.storeContext.store\n }\n\n @state()\n private accessor entireDataIsReadonly: boolean = true // to protect data, we default to not editable\n\n @state()\n private accessor _loadVersion = 0\n\n @state()\n private accessor _documentsLoaded = false\n\n @property({ converter: urlConverter })\n accessor formUrl: URL | null = null\n\n @property({ converter: urlConverter })\n accessor subjectUrl: URL | null = null\n\n render () {\n if (!this._documentsLoaded) {\n return html``\n }\n\n const store = this.currentStore\n\n const subjectUrl = hrefFromUrlValue(this.subjectUrl)\n if (subjectUrl && store.updater?.editable(subjectUrl) !== undefined && store.updater?.editable(subjectUrl) !== false) {\n this.entireDataIsReadonly = false\n }\n\n const formRoot = findForm(this.currentStore, hrefFromUrlValue(this.formUrl)) // If there are more 'a ui:Form' elements in a form file\n if (!formRoot) throw new Error('No ui:Form found in ' + hrefFromUrlValue(this.formUrl))\n\n const formDocument = sym(hrefFromUrlValue(this.formUrl)) // rdflib NamedNode for the document\n const parts = store.each(formRoot, ns.ui('parts'), null, formDocument)\n const partsBySequence = sortBySequence(store, parts)\n const partItems = (partsBySequence || []).flatMap(item => {\n if (item && typeof item === 'object' && 'elements' in item && Array.isArray((item as any).elements)) {\n return (item as any).elements\n }\n return [item]\n })\n const uiFields = partItems.map(item => {\n const types = store.each(item as any, ns.rdf('type'), null, formDocument)\n const typeNode = types[0]\n const value = typeNode ? ((typeNode as any).value || String(typeNode)) : ((item as any).value || String(item))\n const hashIndex = value.lastIndexOf('#')\n return {\n value: item,\n fieldValue: hashIndex >= 0 ? value.slice(hashIndex + 1) : value\n }\n })\n\n return html`\n <form>\n ${uiFields.map(part => {\n switch (part.fieldValue) {\n case 'PhoneField':\n case 'EmailField':\n case 'ColorField':\n case 'DateField':\n case 'DateTimeField':\n case 'TimeField':\n case 'NumericField':\n case 'IntegerField':\n case 'DecimalField':\n case 'FloatField':\n case 'TextField':\n case 'SingleLineTextField':\n case 'NamedNodeURIField': {\n return html` <solid-ui-rdf-input \n .formSubject=${sym(part.value)} \n .dataSubject=${sym(subjectUrl)}\n .storeVersion=${this._loadVersion}\n .readonly=${this.entireDataIsReadonly}\n ></solid-ui-rdf-input>\n <br>`\n }\n case 'MultiLineTextField':\n return html`<input .rdf=${part}></input>`\n case 'BooleanField':\n return html`<input .rdf=${part}></input>`\n case 'TristateField':\n return html`<input .rdf=${part}></input>`\n case 'Classifier':\n return html`<input .rdf=${part}></input>`\n case 'Choice':\n return html`<input .rdf=${part}></input>`\n case 'Multiple':\n return html`<input .rdf=${part}></input>`\n case 'Options':\n return html`<input .rdf=${part}></input>`\n case 'AutocompleteField':\n return html`<input .rdf=${part}></input>`\n case 'Comment':\n case 'Heading':\n return html`<input .rdf=${part}></input>`\n default:\n return html`<div>Unknown part type: ${part}</div>`\n }\n })}\n </form>\n `\n }\n\n protected override willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n if (changedProperties.has('formUrl') ||\n changedProperties.has('subjectUrl') ||\n changedProperties.has('passedInStore')\n ) {\n this.loadDocumentsIfNeeded()\n }\n }\n\n private async loadDocumentsIfNeeded () {\n const store = this.currentStore\n const formUrl = hrefFromUrlValue(this.formUrl)\n const subjectUrl = hrefFromUrlValue(this.subjectUrl)\n\n if (!formUrl || !subjectUrl) return\n\n try {\n await fetchData(store, formUrl)\n await fetchData(store, subjectUrl)\n this._loadVersion += 1\n this._documentsLoaded = true\n } catch (error) {\n console.error('Failed to load RDF documents', error)\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"RDFForm.esm.js","names":["property","state","html","consume","customElement","WebComponent","ns","fetchData","findForm","sortBySequence","sym","DEFAULT_STORE","storeContext","urlConverter","fromAttribute","value","URL","toAttribute","hrefFromUrlValue","href","_classDecs","_RDFForm","_A","WeakMap","_B","_C","_D","_E","_F","_G","_ref","_storeContextDecs","context","subscribe","_passedInStoreDecs","attribute","_entireDataIsReadonlyDecs","_loadVersionDecs","_documentsLoadedDecs","_formUrlDecs","converter","_subjectUrlDecs","RDFForm","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_storeContext","_init_passedInStore","_init_entireDataIsReadonly","_init__loadVersion","_init__documentsLoaded","_init_formUrl","_init_subjectUrl","_classPrivateFieldGet","v","_classPrivateFieldSet","passedInStore","currentStore","store","entireDataIsReadonly","_loadVersion","_documentsLoaded","formUrl","subjectUrl","render","updater","editable","undefined","formRoot","Error","formDocument","parts","each","ui","partsBySequence","partItems","flatMap","item","Array","isArray","elements","uiFields","map","types","rdf","typeNode","String","hashIndex","lastIndexOf","fieldValue","slice","part","willUpdate","changedProperties","has","loadDocumentsIfNeeded","error","console","_RDFForm2","e","c","_initClass","_applyDecs","default","ns","ns_default","WebComponent","_RDFForm2","_initProto","_initClass","_classDecs","_storeContextDecs","_init_storeContext","_passedInStoreDecs","_init_passedInStore","_entireDataIsReadonlyDecs","_init_entireDataIsReadonly","_loadVersionDecs","_init__loadVersion","_documentsLoadedDecs","_init__documentsLoaded","_formUrlDecs","_init_formUrl","_subjectUrlDecs","_init_subjectUrl","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPropertyKey","_toPrimitive","t","e","urlConverter","value","hrefFromUrlValue","customElement","_RDFForm","_A","_B","_C","_D","_E","_F","_G","consume","storeContext","property","state","args","DEFAULT_STORE","store","subjectUrl","formRoot","findForm","formDocument","sym","parts","uiFields","sortBySequence","item","typeNode","hashIndex","part","changedProperties","formUrl","fetchData","error"],"sources":["../../../src/components/rdf-form/RDFForm.ts"],"sourcesContent":["import { property, state } from 'lit/decorators.js'\nimport { html } from 'lit/html.js'\nimport type { PropertyValues } from 'lit'\nimport { consume } from '@lit/context'\nimport { customElement, WebComponent } from '@/lib/components'\nimport ns from '../../lib/ns'\nimport { fetchData, findForm, sortBySequence } from '../../lib/forms/rdfFormsHelper'\nimport { sym, LiveStore } from 'rdflib'\nimport '@/components/rdf-input'\nimport { DEFAULT_STORE, storeContext, StoreContext } from '@/lib/forms/store/StoreContext'\n\nconst urlConverter = {\n fromAttribute (value: string | null): URL | null {\n if (!value) return null\n\n try {\n return new URL(value)\n } catch {\n return null\n }\n },\n toAttribute (value: URL | null) {\n if (!value) return null\n return value\n }\n}\n\nconst hrefFromUrlValue = (value: URL | null): string =>\n value?.href ?? ''\n\n@customElement('solid-ui-rdf-form')\nexport default class RDFForm extends WebComponent {\n @consume({ context: storeContext, subscribe: true })\n private accessor storeContext: StoreContext = DEFAULT_STORE\n\n @property({ attribute: false })\n accessor passedInStore: LiveStore | null = null\n\n private get currentStore (): LiveStore {\n return this.passedInStore ?? this.storeContext.store\n }\n\n @state()\n private accessor entireDataIsReadonly: boolean = true // to protect data, we default to not editable\n\n @state()\n private accessor _loadVersion = 0\n\n @state()\n private accessor _documentsLoaded = false\n\n @property({ converter: urlConverter })\n accessor formUrl: URL | null = null\n\n @property({ converter: urlConverter })\n accessor subjectUrl: URL | null = null\n\n render () {\n if (!this._documentsLoaded) {\n return html``\n }\n\n const store = this.currentStore\n\n const subjectUrl = hrefFromUrlValue(this.subjectUrl)\n if (subjectUrl && store.updater?.editable(subjectUrl) !== undefined && store.updater?.editable(subjectUrl) !== false) {\n this.entireDataIsReadonly = false\n }\n\n const formRoot = findForm(this.currentStore, hrefFromUrlValue(this.formUrl)) // If there are more 'a ui:Form' elements in a form file\n if (!formRoot) throw new Error('No ui:Form found in ' + hrefFromUrlValue(this.formUrl))\n\n const formDocument = sym(hrefFromUrlValue(this.formUrl)) // rdflib NamedNode for the document\n const parts = store.each(formRoot, ns.ui('parts'), null, formDocument)\n const partsBySequence = sortBySequence(store, parts)\n const partItems = (partsBySequence || []).flatMap(item => {\n if (item && typeof item === 'object' && 'elements' in item && Array.isArray((item as any).elements)) {\n return (item as any).elements\n }\n return [item]\n })\n const uiFields = partItems.map(item => {\n const types = store.each(item as any, ns.rdf('type'), null, formDocument)\n const typeNode = types[0]\n const value = typeNode ? ((typeNode as any).value || String(typeNode)) : ((item as any).value || String(item))\n const hashIndex = value.lastIndexOf('#')\n return {\n value: item,\n fieldValue: hashIndex >= 0 ? value.slice(hashIndex + 1) : value\n }\n })\n\n return html`\n <form>\n ${uiFields.map(part => {\n switch (part.fieldValue) {\n case 'PhoneField':\n case 'EmailField':\n case 'ColorField':\n case 'DateField':\n case 'DateTimeField':\n case 'TimeField':\n case 'NumericField':\n case 'IntegerField':\n case 'DecimalField':\n case 'FloatField':\n case 'TextField':\n case 'SingleLineTextField':\n case 'NamedNodeURIField': {\n return html` <solid-ui-rdf-input \n .formSubject=${sym(part.value)} \n .dataSubject=${sym(subjectUrl)}\n .storeVersion=${this._loadVersion}\n .readonly=${this.entireDataIsReadonly}\n ></solid-ui-rdf-input>\n <br>`\n }\n case 'MultiLineTextField':\n return html`<input .rdf=${part}></input>`\n case 'BooleanField':\n return html`<input .rdf=${part}></input>`\n case 'TristateField':\n return html`<input .rdf=${part}></input>`\n case 'Classifier':\n return html`<input .rdf=${part}></input>`\n case 'Choice':\n return html`<input .rdf=${part}></input>`\n case 'Multiple':\n return html`<input .rdf=${part}></input>`\n case 'Options':\n return html`<input .rdf=${part}></input>`\n case 'AutocompleteField':\n return html`<input .rdf=${part}></input>`\n case 'Comment':\n case 'Heading':\n return html`<input .rdf=${part}></input>`\n default:\n return html`<div>Unknown part type: ${part}</div>`\n }\n })}\n </form>\n `\n }\n\n protected override willUpdate (changedProperties: PropertyValues<this>) {\n super.willUpdate(changedProperties)\n if (changedProperties.has('formUrl') ||\n changedProperties.has('subjectUrl') ||\n changedProperties.has('passedInStore')\n ) {\n this.loadDocumentsIfNeeded()\n }\n }\n\n private async loadDocumentsIfNeeded () {\n const store = this.currentStore\n const formUrl = hrefFromUrlValue(this.formUrl)\n const subjectUrl = hrefFromUrlValue(this.subjectUrl)\n\n if (!formUrl || !subjectUrl) return\n\n try {\n await fetchData(store, formUrl)\n await fetchData(store, subjectUrl)\n this._loadVersion += 1\n this._documentsLoaded = true\n } catch (error) {\n console.error('Failed to load RDF documents', error)\n }\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- export { n as RDFForm, t as default } from "../chunks/rdf-form-CH9bDx98.js";
1
+ export { n as RDFForm, t as default } from "../chunks/rdf-form-DVmTw3RG.js";
@@ -1 +1 @@
1
- {"version":3,"file":"RDFInput.esm.js","names":["property","state","html","ns","customElement","generateId","WebComponent","Literal","st","label","mostSpecificClassURI","fieldParams","fieldTypeParams","DEFAULT_STORE","storeContext","consume","_classDecs","_RDFInput","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_storeContextDecs","context","subscribe","_formSubjectDecs","attribute","type","Object","_dataSubjectDecs","_storeVersionDecs","Number","_localInputValueDecs","_readonlyDecs","Boolean","reflect","RDFInput","_classPrivateFieldGet","v","_classPrivateFieldSet","formSubject","dataSubject","storeVersion","localInputValue","readonly","constructor","_classPrivateFieldInitSpec","_initProto","_init_storeContext","_init_formSubject","_init_dataSubject","_init_storeVersion","_init_localInputValue","_defineProperty","_init_readonly","id","render","formDocument","getDocument","uiPropertyTerm","getFormProperty","ui","inputLabel","getInputLabel","getReadOnly","fieldType","store","undefined","params","inputType","selectedTerm","getSelectedTerm","placeholder","defaultInputValue","inputValue","_updateInFlight","_pendingUpdateValue","termToInputValue","updateData","subject","doc","graph","any","formFieldSubject","uiLabel","propertyLabel","value","anyJS","defaultTerm","inputTerm","term","decodeURIComponent","String","stripped","replace","e","newValue","target","runPendingUpdate","dataDocument","updater","editable","toDeleteSt","statementsMatching","toInsertSt","objectFromNewValue","namedNode","sym","encodeURIComponent","dt","trim","xsd","map","statement","predicate","why","length","updateMany","err","console","error","_RDFInput2","c","_initClass","_applyDecs","default","customElement","ns","fieldTypeParams","ns_default","customElement$1","WebComponent","_RDFInput2","_initProto","_initClass","_classDecs","_storeContextDecs","_init_storeContext","_formSubjectDecs","_init_formSubject","_dataSubjectDecs","_init_dataSubject","_storeVersionDecs","_init_storeVersion","_localInputValueDecs","_init_localInputValue","_readonlyDecs","_init_readonly","_ref","_defineProperty","_toPropertyKey","r","t","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_RDFInput","_A","_B","_C","_D","_E","_F","consume","storeContext","property","state","DEFAULT_STORE","generateId","formDocument","uiPropertyTerm","inputLabel","readonly","fieldType","mostSpecificClassURI","params","fieldParams","inputType","selectedTerm","placeholder","inputValue","subject","graph","formFieldSubject","uiLabel","propertyLabel","label","defaultTerm","dataSubject","term","newValue","dataDocument","toDeleteSt","toInsertSt","objectFromNewValue","Literal","st","statement","err"],"sources":["../../../src/components/rdf-input/RDFInput.ts"],"sourcesContent":["import { property, state } from 'lit/decorators.js'\nimport { html } from 'lit/html.js'\nimport ns from '../../lib/ns'\nimport { customElement, generateId, WebComponent } from '@/lib/components'\nimport { Literal, NamedNode, st } from 'rdflib'\nimport { label } from '../../utils'\nimport { mostSpecificClassURI } from '../../lib/forms/rdfFormsHelper'\nimport { FieldParamsObject, fieldParams as fieldTypeParams, InputType } from '../../lib/forms/fieldParams'\nimport { DEFAULT_STORE, storeContext, StoreContext } from '@/lib/forms/store/StoreContext'\nimport { consume } from '@lit/context'\nimport '@/components/input'\n\n@customElement('solid-ui-rdf-input')\nexport default class RDFInput extends WebComponent {\n // example RDF Turtle format source:\n // :nameField a ui:SingleLineTextField ;\n // ui:property vcard:fn;\n // ui:label \"name\" .\n\n // formSubject describes the field metadata\n // dataSubject points to the data resource containing the value\n\n @consume({ context: storeContext, subscribe: true })\n private accessor storeContext: StoreContext = DEFAULT_STORE\n\n @property({ attribute: false, type: Object })\n accessor formSubject: NamedNode | null = null\n\n @property({ attribute: false, type: Object })\n accessor dataSubject: NamedNode | null = null\n\n @property({ type: Number })\n accessor storeVersion = 0\n\n @state()\n private accessor localInputValue: string | null = null\n\n private _updateInFlight = false\n private _pendingUpdateValue: string | null = null\n\n @property({ type: Boolean, reflect: true })\n accessor readonly: boolean = true // to protect data, we default to not editable\n\n constructor () {\n super()\n\n this.id = generateId()\n }\n\n render () {\n const formDocument = this.getDocument(this.formSubject)\n\n // for building the HTML input element\n const uiPropertyTerm = this.getFormProperty(this.formSubject, ns.ui('property'), formDocument)\n const inputLabel = this.getInputLabel(this.formSubject, uiPropertyTerm, formDocument)\n const readonly = this.getReadOnly(this.readonly, this.formSubject, formDocument)\n\n const fieldType = this.formSubject ? mostSpecificClassURI(this.storeContext.store, this.formSubject) : undefined\n const params = fieldType ? fieldTypeParams[fieldType] ?? {} : {}\n const inputType: InputType = params.type ?? 'text'\n\n // for populating the HTML input element\n const selectedTerm = this.getSelectedTerm(this.dataSubject, uiPropertyTerm, this.formSubject, params)\n const placeholder = readonly ? '' : this.defaultInputValue(params)\n const inputValue = this._updateInFlight || this._pendingUpdateValue !== null\n ? this.localInputValue ?? ''\n : this.termToInputValue(selectedTerm)\n\n return html`\n <solid-ui-input\n label=\"${inputLabel}\"\n name=\"name-${this.id}\"\n .value=${inputValue}\n .placeholder=${placeholder}\n type=\"${inputType}\"\n ?readonly=${readonly}\n @input=${this.updateData}\n ></solid-ui-input>`\n }\n\n private getDocument (subject: NamedNode | null | undefined) {\n return subject?.doc ? subject.doc() : undefined\n }\n\n private getFormProperty (subject: NamedNode | null | undefined, property: NamedNode, graph?: any): NamedNode | undefined {\n if (!subject) return undefined\n return this.storeContext.store.any(subject, property, null, graph) as NamedNode | undefined\n }\n\n private getInputLabel (formFieldSubject: NamedNode | null | undefined, uiPropertyTerm?: NamedNode, graph?: any): string {\n if (!formFieldSubject) return ''\n const uiLabel = this.storeContext.store.any(formFieldSubject, ns.ui('label'), null, graph)\n const propertyLabel = uiPropertyTerm ? label(uiPropertyTerm, true) : ''\n return uiLabel ? uiLabel.value : propertyLabel\n }\n\n private getReadOnly (readonly: boolean, formFieldSubject?: NamedNode | null, graph?: any): boolean {\n if (formFieldSubject && readonly === false) { // if readonly is false, we can ovverride it if the field is marked as uneditable in the form\n return !!this.storeContext.store.anyJS(formFieldSubject, ns.ui('suppressEmptyUneditable'), null, graph)\n }\n return readonly\n }\n\n private getSelectedTerm (\n dataSubject?: NamedNode | null,\n uiPropertyTerm?: NamedNode,\n formFieldSubject?: NamedNode | null,\n params?: { defaultInputValue?: string }\n ) {\n const defaultTerm = formFieldSubject\n ? this.storeContext.store.any(formFieldSubject, ns.ui('default'))\n : undefined\n\n if (!uiPropertyTerm || !dataSubject) {\n return defaultTerm\n }\n\n const inputTerm = this.storeContext.store.any(dataSubject, uiPropertyTerm)\n return inputTerm || defaultTerm\n }\n\n private termToInputValue (term: any) {\n if (!term || !('value' in term) || !term.value) return ''\n\n try {\n return decodeURIComponent(term.value)\n } catch {\n return String(term.value)\n }\n }\n\n private defaultInputValue (params: { defaultInputValue?: string } = {}) {\n const stripped = params.defaultInputValue ?? ''\n return stripped.replace(/ /g, '')\n }\n\n private async updateData (e: CustomEvent) {\n const newValue = (e.target as HTMLInputElement).value\n this.localInputValue = newValue\n this._pendingUpdateValue = newValue\n\n if (this._updateInFlight) {\n return\n }\n\n await this.runPendingUpdate()\n }\n\n private async runPendingUpdate () {\n if (this._pendingUpdateValue === null) {\n return\n }\n\n const newValue = this._pendingUpdateValue\n this._pendingUpdateValue = null\n this._updateInFlight = true\n\n const uiPropertyTerm = this.getFormProperty(this.formSubject, ns.ui('property'), this.getDocument(this.formSubject))\n if (!uiPropertyTerm || !this.dataSubject) {\n this._updateInFlight = false\n this.localInputValue = ''\n return\n }\n\n const dataDocument = this.getDocument(this.dataSubject)\n if (dataDocument && this.storeContext.store.updater?.editable(dataDocument) === false) {\n this._updateInFlight = false\n return\n }\n\n const toDeleteSt = this.storeContext.store.statementsMatching(this.dataSubject, uiPropertyTerm)\n let toInsertSt: Array<ReturnType<typeof st>> = []\n\n if (newValue) {\n let objectFromNewValue\n const fieldType = this.formSubject ? mostSpecificClassURI(this.storeContext.store, this.formSubject) : undefined\n const params: FieldParamsObject = fieldType ? fieldTypeParams[fieldType] ?? {} : {}\n if (params.namedNode) {\n objectFromNewValue = this.storeContext.store.sym(newValue)\n } else if (params.defaultInputValue) {\n objectFromNewValue = encodeURIComponent(newValue.replace(/ /g, ''))\n objectFromNewValue = this.storeContext.store.sym(params.defaultInputValue + objectFromNewValue)\n } else {\n if (params.dt) {\n objectFromNewValue = new Literal(\n newValue.trim(),\n undefined,\n ns.xsd(params.dt)\n )\n } else {\n objectFromNewValue = new Literal(newValue)\n }\n }\n toInsertSt = toDeleteSt.map((statement) => st(statement.subject, statement.predicate, objectFromNewValue, statement.why))\n if (toInsertSt.length === 0) {\n toInsertSt = [st(this.dataSubject, uiPropertyTerm, objectFromNewValue, this.getDocument(this.dataSubject))]\n }\n }\n\n try {\n await this.storeContext.store.updater.updateMany(toDeleteSt, toInsertSt as any)\n this.storeVersion += 1\n } catch (err) {\n console.error('RDFInput update failed', err)\n } finally {\n this._updateInFlight = false\n }\n\n if (this._pendingUpdateValue !== null) {\n await this.runPendingUpdate()\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"RDFInput.esm.js","names":["property","state","html","ns","customElement","generateId","WebComponent","Literal","st","label","mostSpecificClassURI","fieldParams","fieldTypeParams","DEFAULT_STORE","storeContext","consume","_classDecs","_RDFInput","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_storeContextDecs","context","subscribe","_formSubjectDecs","attribute","type","Object","_dataSubjectDecs","_storeVersionDecs","Number","_localInputValueDecs","_readonlyDecs","Boolean","reflect","RDFInput","_classPrivateFieldGet","v","_classPrivateFieldSet","formSubject","dataSubject","storeVersion","localInputValue","readonly","constructor","_classPrivateFieldInitSpec","_initProto","_init_storeContext","_init_formSubject","_init_dataSubject","_init_storeVersion","_init_localInputValue","_defineProperty","_init_readonly","id","render","formDocument","getDocument","uiPropertyTerm","getFormProperty","ui","inputLabel","getInputLabel","getReadOnly","fieldType","store","undefined","params","inputType","selectedTerm","getSelectedTerm","placeholder","defaultInputValue","inputValue","_updateInFlight","_pendingUpdateValue","termToInputValue","updateData","subject","doc","graph","any","formFieldSubject","uiLabel","propertyLabel","value","anyJS","defaultTerm","inputTerm","term","decodeURIComponent","String","stripped","replace","e","newValue","target","runPendingUpdate","dataDocument","updater","editable","toDeleteSt","statementsMatching","toInsertSt","objectFromNewValue","namedNode","sym","encodeURIComponent","dt","trim","xsd","map","statement","predicate","why","length","updateMany","err","console","error","_RDFInput2","c","_initClass","_applyDecs","default","ns","fieldTypeParams","ns_default","WebComponent","_RDFInput2","_initProto","_initClass","_classDecs","_storeContextDecs","_init_storeContext","_formSubjectDecs","_init_formSubject","_dataSubjectDecs","_init_dataSubject","_storeVersionDecs","_init_storeVersion","_localInputValueDecs","_init_localInputValue","_readonlyDecs","_init_readonly","_ref","_defineProperty","_toPropertyKey","r","t","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","_classPrivateFieldGet","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","customElement","_RDFInput","_A","_B","_C","_D","_E","_F","consume","storeContext","property","state","DEFAULT_STORE","generateId","formDocument","uiPropertyTerm","inputLabel","readonly","fieldType","mostSpecificClassURI","params","fieldParams","inputType","selectedTerm","placeholder","inputValue","subject","graph","formFieldSubject","uiLabel","propertyLabel","label","defaultTerm","dataSubject","term","newValue","dataDocument","toDeleteSt","toInsertSt","objectFromNewValue","Literal","st","statement","err"],"sources":["../../../src/components/rdf-input/RDFInput.ts"],"sourcesContent":["import { property, state } from 'lit/decorators.js'\nimport { html } from 'lit/html.js'\nimport ns from '../../lib/ns'\nimport { customElement, generateId, WebComponent } from '@/lib/components'\nimport { Literal, NamedNode, st } from 'rdflib'\nimport { label } from '../../utils'\nimport { mostSpecificClassURI } from '../../lib/forms/rdfFormsHelper'\nimport { FieldParamsObject, fieldParams as fieldTypeParams, InputType } from '../../lib/forms/fieldParams'\nimport { DEFAULT_STORE, storeContext, StoreContext } from '@/lib/forms/store/StoreContext'\nimport { consume } from '@lit/context'\nimport '@/components/input'\n\n@customElement('solid-ui-rdf-input')\nexport default class RDFInput extends WebComponent {\n // example RDF Turtle format source:\n // :nameField a ui:SingleLineTextField ;\n // ui:property vcard:fn;\n // ui:label \"name\" .\n\n // formSubject describes the field metadata\n // dataSubject points to the data resource containing the value\n\n @consume({ context: storeContext, subscribe: true })\n private accessor storeContext: StoreContext = DEFAULT_STORE\n\n @property({ attribute: false, type: Object })\n accessor formSubject: NamedNode | null = null\n\n @property({ attribute: false, type: Object })\n accessor dataSubject: NamedNode | null = null\n\n @property({ type: Number })\n accessor storeVersion = 0\n\n @state()\n private accessor localInputValue: string | null = null\n\n private _updateInFlight = false\n private _pendingUpdateValue: string | null = null\n\n @property({ type: Boolean, reflect: true })\n accessor readonly: boolean = true // to protect data, we default to not editable\n\n constructor () {\n super()\n\n this.id = generateId()\n }\n\n render () {\n const formDocument = this.getDocument(this.formSubject)\n\n // for building the HTML input element\n const uiPropertyTerm = this.getFormProperty(this.formSubject, ns.ui('property'), formDocument)\n const inputLabel = this.getInputLabel(this.formSubject, uiPropertyTerm, formDocument)\n const readonly = this.getReadOnly(this.readonly, this.formSubject, formDocument)\n\n const fieldType = this.formSubject ? mostSpecificClassURI(this.storeContext.store, this.formSubject) : undefined\n const params = fieldType ? fieldTypeParams[fieldType] ?? {} : {}\n const inputType: InputType = params.type ?? 'text'\n\n // for populating the HTML input element\n const selectedTerm = this.getSelectedTerm(this.dataSubject, uiPropertyTerm, this.formSubject, params)\n const placeholder = readonly ? '' : this.defaultInputValue(params)\n const inputValue = this._updateInFlight || this._pendingUpdateValue !== null\n ? this.localInputValue ?? ''\n : this.termToInputValue(selectedTerm)\n\n return html`\n <solid-ui-input\n label=\"${inputLabel}\"\n name=\"name-${this.id}\"\n .value=${inputValue}\n .placeholder=${placeholder}\n type=\"${inputType}\"\n ?readonly=${readonly}\n @input=${this.updateData}\n ></solid-ui-input>`\n }\n\n private getDocument (subject: NamedNode | null | undefined) {\n return subject?.doc ? subject.doc() : undefined\n }\n\n private getFormProperty (subject: NamedNode | null | undefined, property: NamedNode, graph?: any): NamedNode | undefined {\n if (!subject) return undefined\n return this.storeContext.store.any(subject, property, null, graph) as NamedNode | undefined\n }\n\n private getInputLabel (formFieldSubject: NamedNode | null | undefined, uiPropertyTerm?: NamedNode, graph?: any): string {\n if (!formFieldSubject) return ''\n const uiLabel = this.storeContext.store.any(formFieldSubject, ns.ui('label'), null, graph)\n const propertyLabel = uiPropertyTerm ? label(uiPropertyTerm, true) : ''\n return uiLabel ? uiLabel.value : propertyLabel\n }\n\n private getReadOnly (readonly: boolean, formFieldSubject?: NamedNode | null, graph?: any): boolean {\n if (formFieldSubject && readonly === false) { // if readonly is false, we can ovverride it if the field is marked as uneditable in the form\n return !!this.storeContext.store.anyJS(formFieldSubject, ns.ui('suppressEmptyUneditable'), null, graph)\n }\n return readonly\n }\n\n private getSelectedTerm (\n dataSubject?: NamedNode | null,\n uiPropertyTerm?: NamedNode,\n formFieldSubject?: NamedNode | null,\n params?: { defaultInputValue?: string }\n ) {\n const defaultTerm = formFieldSubject\n ? this.storeContext.store.any(formFieldSubject, ns.ui('default'))\n : undefined\n\n if (!uiPropertyTerm || !dataSubject) {\n return defaultTerm\n }\n\n const inputTerm = this.storeContext.store.any(dataSubject, uiPropertyTerm)\n return inputTerm || defaultTerm\n }\n\n private termToInputValue (term: any) {\n if (!term || !('value' in term) || !term.value) return ''\n\n try {\n return decodeURIComponent(term.value)\n } catch {\n return String(term.value)\n }\n }\n\n private defaultInputValue (params: { defaultInputValue?: string } = {}) {\n const stripped = params.defaultInputValue ?? ''\n return stripped.replace(/ /g, '')\n }\n\n private async updateData (e: CustomEvent) {\n const newValue = (e.target as HTMLInputElement).value\n this.localInputValue = newValue\n this._pendingUpdateValue = newValue\n\n if (this._updateInFlight) {\n return\n }\n\n await this.runPendingUpdate()\n }\n\n private async runPendingUpdate () {\n if (this._pendingUpdateValue === null) {\n return\n }\n\n const newValue = this._pendingUpdateValue\n this._pendingUpdateValue = null\n this._updateInFlight = true\n\n const uiPropertyTerm = this.getFormProperty(this.formSubject, ns.ui('property'), this.getDocument(this.formSubject))\n if (!uiPropertyTerm || !this.dataSubject) {\n this._updateInFlight = false\n this.localInputValue = ''\n return\n }\n\n const dataDocument = this.getDocument(this.dataSubject)\n if (dataDocument && this.storeContext.store.updater?.editable(dataDocument) === false) {\n this._updateInFlight = false\n return\n }\n\n const toDeleteSt = this.storeContext.store.statementsMatching(this.dataSubject, uiPropertyTerm)\n let toInsertSt: Array<ReturnType<typeof st>> = []\n\n if (newValue) {\n let objectFromNewValue\n const fieldType = this.formSubject ? mostSpecificClassURI(this.storeContext.store, this.formSubject) : undefined\n const params: FieldParamsObject = fieldType ? fieldTypeParams[fieldType] ?? {} : {}\n if (params.namedNode) {\n objectFromNewValue = this.storeContext.store.sym(newValue)\n } else if (params.defaultInputValue) {\n objectFromNewValue = encodeURIComponent(newValue.replace(/ /g, ''))\n objectFromNewValue = this.storeContext.store.sym(params.defaultInputValue + objectFromNewValue)\n } else {\n if (params.dt) {\n objectFromNewValue = new Literal(\n newValue.trim(),\n undefined,\n ns.xsd(params.dt)\n )\n } else {\n objectFromNewValue = new Literal(newValue)\n }\n }\n toInsertSt = toDeleteSt.map((statement) => st(statement.subject, statement.predicate, objectFromNewValue, statement.why))\n if (toInsertSt.length === 0) {\n toInsertSt = [st(this.dataSubject, uiPropertyTerm, objectFromNewValue, this.getDocument(this.dataSubject))]\n }\n }\n\n try {\n await this.storeContext.store.updater.updateMany(toDeleteSt, toInsertSt as any)\n this.storeVersion += 1\n } catch (err) {\n console.error('RDFInput update failed', err)\n } finally {\n this._updateInFlight = false\n }\n\n if (this._pendingUpdateValue !== null) {\n await this.runPendingUpdate()\n }\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- export { n as RDFInput, t as default } from "../chunks/rdf-input-C_V0pIS5.js";
1
+ export { n as RDFInput, t as default } from "../chunks/rdf-input-CRYLK-27.js";
@@ -1,27 +1,27 @@
1
- const e=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../button/index.cjs.js"),require("../menu-item/index.cjs.js"),require("../menu/index.cjs.js"),require("../../_virtual/~icons/lucide/pencil.cjs.js"),require("../../_virtual/~icons/lucide/ellipsis-vertical.cjs.js");const t=require("../../utils/podUtils.cjs.js");require("../../_virtual/~icons/lucide/user-round-cog.cjs.js"),require("../../_virtual/~icons/lucide/file.cjs.js");const n=require("./ResourceActionsMenu.styles.cjs.js");let r=require("lit"),i=require("lit/decorators.js");var a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j,M,N,P,F,I,L,R,z,B,V;function H(e,t,n){U(e,t),t.set(e,n)}function U(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function W(e,t,n){return e.set(K(e,t),n),n}function G(e,t){return e.get(K(e,t))}function K(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function q(e,t,n){return(t=Y(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function J(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:Z(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||Z(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var T=_[w],E=n?_[w-1]:void 0,D={},O={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,D)};try{if(y)(g=c(T.call(E,C,O),`class decorators`,`return`))&&(C=g);else{var k,A;O.static=u,O.private=d,d?i===2?k=function(e){return h(e),b.value}:(i<4&&(k=o(b,`get`,h)),i!==3&&(A=o(b,`set`,h))):(k=function(e){return e[r]},(i<2||i===4)&&(A=function(e,t){e[r]=t}));var j=O.access={has:d?m.bind():function(e){return r in e}};if(k&&(j.get=k),A&&(j.set=A),C=T.call(E,p?{get:b.get,set:b.set}:b[S],O),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{D.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return Q(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);if(!0===x||x===3&&m!==4||x===4&&m!==3)throw Error(`Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: `+h);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:Y(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function Y(e){var t=X(e,`string`);return typeof t==`symbol`?t:t+``}function X(e,t){if(typeof e!=`object`||!e)return e;var n;if(typeof Symbol<`u`&&(n=e[Symbol.toPrimitive])!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function Z(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function Q(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function ee(e){return e}y=[(0,i.customElement)(`solid-ui-resource-actions-menu`)];var $;new(B=(s=new WeakMap,c=new WeakMap,l=new WeakMap,u=new WeakMap,d=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,h=new WeakMap,g=new WeakMap,V=(b=(0,i.property)({attribute:!1}),S=(0,i.property)({type:String}),w=(0,i.property)({attribute:!1}),E=(0,i.property)({attribute:!1}),O=(0,i.property)({type:Boolean}),A=(0,i.property)({type:Boolean}),M=(0,i.property)({type:Boolean}),P=(0,i.property)({type:Boolean}),I=(0,i.property)({type:Boolean,attribute:`show-access-in-menu`}),R=(0,i.property)({attribute:!1}),`store`),o=class extends e.default{constructor(...e){super(...e),H(this,s,(_(this),x(this))),H(this,c,C(this)),H(this,l,T(this,void 0)),H(this,u,D(this,void 0)),H(this,d,k(this,!1)),H(this,f,j(this,!1)),H(this,p,N(this,!1)),H(this,m,F(this,!1)),H(this,h,L(this,!1)),H(this,g,z(this,[]))}get[V](){return G(s,this)}set store(e){W(s,this,e)}get subjectUri(){return G(c,this)}set subjectUri(e){W(c,this,e)}get handleAccessClick(){return G(l,this)}set handleAccessClick(e){W(l,this,e)}get handleEditingClick(){return G(u,this)}set handleEditingClick(e){W(u,this,e)}get paneSupportsEditing(){return G(d,this)}set paneSupportsEditing(e){W(d,this,e)}get canEdit(){return G(f,this)}set canEdit(e){W(f,this,e)}get canManageAccess(){return G(p,this)}set canManageAccess(e){W(p,this,e)}get isMobile(){return G(m,this)}set isMobile(e){W(m,this,e)}get showAccessInMenu(){return G(h,this)}set showAccessInMenu(e){W(h,this,e)}get menuItems(){return G(g,this)}set menuItems(e){W(g,this,e)}render(){let e=!t.isContainerSubject(this.store,this.subjectUri)&&this.isMobile&&this.paneSupportsEditing&&this.canEdit&&!!this.handleEditingClick,n=this.canManageAccess&&!!this.handleAccessClick&&(this.showAccessInMenu||this.isMobile),i=this.menuItems.filter(e=>typeof e.action==`function`);return r.html`
1
+ const e=require("../../lib/components/decorators.cjs.js"),t=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../button/index.cjs.js"),require("../menu-item/index.cjs.js"),require("../menu/index.cjs.js"),require("../../_virtual/~icons/lucide/pencil.cjs.js"),require("../../_virtual/~icons/lucide/ellipsis-vertical.cjs.js");const n=require("../../utils/podUtils.cjs.js");require("../../_virtual/~icons/lucide/user-round-cog.cjs.js"),require("../../_virtual/~icons/lucide/file.cjs.js");const r=require("./ResourceActionsMenu.styles.cjs.js");let i=require("lit"),a=require("lit/decorators.js");var o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j,M,N,P,F,I,L,R,z,B,V,H;function U(e,t,n){W(e,t),t.set(e,n)}function W(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function G(e,t,n){return e.set(q(e,t),n),n}function K(e,t){return e.get(q(e,t))}function q(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function J(e,t,n){return(t=X(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Y(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:Q(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||Q(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var T=_[w],E=n?_[w-1]:void 0,D={},O={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,D)};try{if(y)(g=c(T.call(E,C,O),`class decorators`,`return`))&&(C=g);else{var k,A;O.static=u,O.private=d,d?i===2?k=function(e){return h(e),b.value}:(i<4&&(k=o(b,`get`,h)),i!==3&&(A=o(b,`set`,h))):(k=function(e){return e[r]},(i<2||i===4)&&(A=function(e,t){e[r]=t}));var j=O.access={has:d?m.bind():function(e){return r in e}};if(k&&(j.get=k),A&&(j.set=A),C=T.call(E,p?{get:b.get,set:b.set}:b[S],O),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{D.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return ee(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);if(!0===x||x===3&&m!==4||x===4&&m!==3)throw Error(`Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: `+h);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:X(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function X(e){var t=Z(e,`string`);return typeof t==`symbol`?t:t+``}function Z(e,t){if(typeof e!=`object`||!e)return e;var n;if(typeof Symbol<`u`&&(n=e[Symbol.toPrimitive])!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function Q(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function ee(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function te(e){return e}b=[e.customElement(`solid-ui-resource-actions-menu`)];var $;new(V=(c=new WeakMap,l=new WeakMap,u=new WeakMap,d=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,h=new WeakMap,g=new WeakMap,_=new WeakMap,H=(x=(0,a.property)({attribute:!1}),C=(0,a.property)({type:String}),T=(0,a.property)({attribute:!1}),D=(0,a.property)({attribute:!1}),k=(0,a.property)({type:Boolean}),j=(0,a.property)({type:Boolean}),N=(0,a.property)({type:Boolean}),F=(0,a.property)({type:Boolean}),L=(0,a.property)({type:Boolean,attribute:`show-access-in-menu`}),z=(0,a.property)({attribute:!1}),`store`),s=class extends t.default{constructor(...e){super(...e),U(this,c,(v(this),S(this))),U(this,l,w(this)),U(this,u,E(this,void 0)),U(this,d,O(this,void 0)),U(this,f,A(this,!1)),U(this,p,M(this,!1)),U(this,m,P(this,!1)),U(this,h,I(this,!1)),U(this,g,R(this,!1)),U(this,_,B(this,[]))}get[H](){return K(c,this)}set store(e){G(c,this,e)}get subjectUri(){return K(l,this)}set subjectUri(e){G(l,this,e)}get handleAccessClick(){return K(u,this)}set handleAccessClick(e){G(u,this,e)}get handleEditingClick(){return K(d,this)}set handleEditingClick(e){G(d,this,e)}get paneSupportsEditing(){return K(f,this)}set paneSupportsEditing(e){G(f,this,e)}get canEdit(){return K(p,this)}set canEdit(e){G(p,this,e)}get canManageAccess(){return K(m,this)}set canManageAccess(e){G(m,this,e)}get isMobile(){return K(h,this)}set isMobile(e){G(h,this,e)}get showAccessInMenu(){return K(g,this)}set showAccessInMenu(e){G(g,this,e)}get menuItems(){return K(_,this)}set menuItems(e){G(_,this,e)}render(){let e=!n.isContainerSubject(this.store,this.subjectUri)&&this.isMobile&&this.paneSupportsEditing&&this.canEdit&&!!this.handleEditingClick,t=this.canManageAccess&&!!this.handleAccessClick&&(this.showAccessInMenu||this.isMobile),r=this.menuItems.filter(e=>typeof e.action==`function`);return i.html`
2
2
  <solid-ui-menu>
3
3
  <solid-ui-button slot="trigger" class="file-explorer-header-more-button" variant="ghost" title="More options">
4
4
  <icon-lucide-ellipsis-vertical slot="icon" class="ellipsisIcon"></icon-lucide-ellipsis-vertical>
5
5
  <span class="sr-only">More options</span>
6
6
  </solid-ui-button>
7
- ${i.map(e=>r.html`
7
+ ${r.map(e=>i.html`
8
8
  <solid-ui-menu-item @solid-ui-select=${t=>e.action(t)}>
9
- ${typeof e.icon==`string`?r.html`<img slot="left-icon" src=${e.icon} alt="">`:e.icon??r.html`<icon-lucide-file slot="left-icon" aria-hidden="true"></icon-lucide-file>`}
9
+ ${typeof e.icon==`string`?i.html`<img slot="left-icon" src=${e.icon} alt="">`:e.icon??i.html`<icon-lucide-file slot="left-icon" aria-hidden="true"></icon-lucide-file>`}
10
10
  ${e.label}
11
11
  </solid-ui-menu-item>
12
12
  `)}
13
- ${e?r.html`
13
+ ${e?i.html`
14
14
  <solid-ui-menu-item @solid-ui-select=${this.handleEditingClick}>
15
15
  <icon-lucide-pencil slot="left-icon"></icon-lucide-pencil>
16
16
  Edit
17
17
  </solid-ui-menu-item>
18
- `:r.nothing}
19
- ${n?r.html`
18
+ `:i.nothing}
19
+ ${t?i.html`
20
20
  <solid-ui-menu-item @solid-ui-select=${this.handleAccessClick}>
21
21
  <icon-lucide-user-round-cog slot="left-icon"></icon-lucide-user-round-cog>
22
22
  Manage Access
23
23
  </solid-ui-menu-item>
24
- `:r.nothing}
24
+ `:i.nothing}
25
25
  </solid-ui-menu>
26
- `}},{e:[x,C,T,D,k,j,N,F,L,z,_],c:[$,v]}=J(o,[[b,1,`store`],[S,1,`subjectUri`],[w,1,`handleAccessClick`],[E,1,`handleEditingClick`],[O,1,`paneSupportsEditing`],[A,1,`canEdit`],[M,1,`canManageAccess`],[P,1,`isMobile`],[I,1,`showAccessInMenu`],[R,1,`menuItems`]],y,0,void 0,e.default),o),a=class extends ee{constructor(){super($),q(this,`styles`,n.default),v()}},q(a,B,void 0),a),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return $}});
26
+ `}},{e:[S,w,E,O,A,M,P,I,R,B,v],c:[$,y]}=Y(s,[[x,1,`store`],[C,1,`subjectUri`],[T,1,`handleAccessClick`],[D,1,`handleEditingClick`],[k,1,`paneSupportsEditing`],[j,1,`canEdit`],[N,1,`canManageAccess`],[F,1,`isMobile`],[L,1,`showAccessInMenu`],[z,1,`menuItems`]],b,0,void 0,t.default),s),o=class extends te{constructor(){super($),J(this,`styles`,r.default),y()}},J(o,V,void 0),o),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return $}});
27
27
  //# sourceMappingURL=ResourceActionsMenu.cjs.js.map