@pod-os/elements 0.26.0 → 0.26.1-rc.2988a4e.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (491) hide show
  1. package/dist/cjs/elements.cjs.js +1 -1
  2. package/dist/cjs/ion-badge_5.cjs.entry.js +1 -1
  3. package/dist/cjs/ion-icon_31.cjs.entry.js +341 -471
  4. package/dist/cjs/ion-icon_31.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ion-searchbar.cjs.entry.js +430 -0
  6. package/dist/cjs/ion-searchbar.cjs.entry.js.map +1 -0
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/pos-app-generic.cjs.entry.js +1 -1
  9. package/dist/cjs/pos-app-ldp-container.cjs.entry.js +1 -1
  10. package/dist/cjs/pos-app-rdf-document.cjs.entry.js +1 -1
  11. package/dist/collection/apps/pos-app-browser/pos-app-browser.css +8 -15
  12. package/dist/collection/apps/pos-app-browser/pos-app-browser.js +12 -3
  13. package/dist/collection/apps/pos-app-browser/pos-app-browser.js.map +1 -1
  14. package/dist/collection/apps/pos-app-dashboard/pos-getting-started/pos-getting-started.css +12 -0
  15. package/dist/collection/apps/pos-app-dashboard/pos-getting-started/pos-getting-started.js +19 -1
  16. package/dist/collection/apps/pos-app-dashboard/pos-getting-started/pos-getting-started.js.map +1 -1
  17. package/dist/collection/apps/pos-app-generic/pos-app-generic.js +1 -1
  18. package/dist/collection/apps/pos-app-ldp-container/pos-app-ldp-container.js +1 -1
  19. package/dist/collection/apps/pos-app-rdf-document/pos-app-rdf-document.js +1 -1
  20. package/dist/collection/apps/pos-app-settings/pos-app-settings.js +1 -1
  21. package/dist/collection/apps/pos-app-settings/pos-setting-offline-cache/pos-setting-offline-cache.js +1 -1
  22. package/dist/collection/collection-manifest.json +2 -1
  23. package/dist/collection/components/pos-add-new-thing/pos-add-new-thing.css +2 -2
  24. package/dist/collection/components/pos-add-new-thing/pos-add-new-thing.js +1 -1
  25. package/dist/collection/components/pos-app/pos-app.js +1 -1
  26. package/dist/collection/components/pos-dialog/pos-dialog.js +1 -1
  27. package/dist/collection/components/pos-error-toast/pos-error-toast.js +1 -1
  28. package/dist/collection/components/pos-literals/pos-literals.js +1 -1
  29. package/dist/collection/components/pos-login/pos-login.js +33 -2
  30. package/dist/collection/components/pos-login/pos-login.js.map +1 -1
  31. package/dist/collection/components/pos-login-form/pos-login-form.js +1 -1
  32. package/dist/collection/components/pos-make-findable/pos-make-findable.css +7 -4
  33. package/dist/collection/components/pos-navigation/__test/typeToSearch.js +12 -0
  34. package/dist/collection/components/pos-navigation/__test/typeToSearch.js.map +1 -0
  35. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.css +38 -0
  36. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.js +105 -0
  37. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.js.map +1 -0
  38. package/dist/collection/components/pos-navigation/pos-navigation.css +115 -0
  39. package/dist/collection/components/{pos-navigation-bar/pos-navigation-bar.js → pos-navigation/pos-navigation.js} +75 -18
  40. package/dist/collection/components/pos-navigation/pos-navigation.js.map +1 -0
  41. package/dist/collection/components/pos-new-thing-form/pos-new-thing-form.js +1 -1
  42. package/dist/collection/components/pos-rich-link/pos-rich-link.css +1 -1
  43. package/dist/collection/components/pos-rich-link/pos-rich-link.js +2 -2
  44. package/dist/collection/components/pos-router/pos-router.css +1 -1
  45. package/dist/collection/components/pos-router/pos-router.js +1 -1
  46. package/dist/collection/components/pos-select-term/pos-select-term.js +1 -1
  47. package/dist/components/Subject.js +700 -0
  48. package/dist/components/Subject.js.map +1 -0
  49. package/dist/components/ion-searchbar.js +475 -1
  50. package/dist/components/ion-searchbar.js.map +1 -1
  51. package/dist/components/pos-add-new-thing2.js +2 -2
  52. package/dist/components/pos-add-new-thing2.js.map +1 -1
  53. package/dist/components/pos-app-browser.js +49 -40
  54. package/dist/components/pos-app-browser.js.map +1 -1
  55. package/dist/components/pos-app-generic.js +1 -1
  56. package/dist/components/pos-app-ldp-container.js +1 -1
  57. package/dist/components/pos-app-rdf-document.js +1 -1
  58. package/dist/components/pos-app-settings2.js +1 -1
  59. package/dist/components/pos-app2.js +2 -698
  60. package/dist/components/pos-app2.js.map +1 -1
  61. package/dist/components/pos-dialog2.js +1 -1
  62. package/dist/components/pos-error-toast2.js +1 -1
  63. package/dist/components/pos-getting-started2.js +4 -3
  64. package/dist/components/pos-getting-started2.js.map +1 -1
  65. package/dist/components/pos-literals2.js +1 -1
  66. package/dist/components/pos-login-form2.js +1 -1
  67. package/dist/components/pos-login2.js +19 -3
  68. package/dist/components/pos-login2.js.map +1 -1
  69. package/dist/components/pos-make-findable2.js +1 -1
  70. package/dist/components/pos-make-findable2.js.map +1 -1
  71. package/dist/components/pos-navigation-bar2.js +24 -109
  72. package/dist/components/pos-navigation-bar2.js.map +1 -1
  73. package/dist/components/pos-navigation.d.ts +11 -0
  74. package/dist/components/pos-navigation.js +8 -0
  75. package/dist/components/pos-navigation.js.map +1 -0
  76. package/dist/components/pos-navigation2.js +394 -0
  77. package/dist/components/pos-navigation2.js.map +1 -0
  78. package/dist/components/pos-new-thing-form2.js +1 -1
  79. package/dist/components/pos-rich-link2.js +3 -3
  80. package/dist/components/pos-rich-link2.js.map +1 -1
  81. package/dist/components/pos-router2.js +2 -2
  82. package/dist/components/pos-router2.js.map +1 -1
  83. package/dist/components/pos-select-term2.js +1 -1
  84. package/dist/components/pos-setting-offline-cache2.js +1 -1
  85. package/dist/elements/elements.esm.js +1 -1
  86. package/dist/elements/elements.esm.js.map +1 -1
  87. package/dist/elements/{p-a6c03ce8.js → p-01adc2b7.js} +2 -2
  88. package/dist/elements/p-0802c77b.entry.js +20 -0
  89. package/dist/elements/p-0802c77b.entry.js.map +1 -0
  90. package/dist/elements/{p-7190d53c.entry.js → p-09ff1516.entry.js} +2 -2
  91. package/dist/elements/{p-307d1531.js → p-0a6631d5.js} +2 -2
  92. package/dist/elements/{p-c698ab8e.entry.js → p-0b3d14ec.entry.js} +3 -3
  93. package/dist/elements/{p-d8818bb3.entry.js → p-0d4f129d.entry.js} +2 -2
  94. package/dist/elements/p-104fee38.entry.js +2 -0
  95. package/dist/elements/{p-6cc9961e.entry.js → p-11466af2.entry.js} +2 -2
  96. package/dist/elements/{p-3e6ffc13.entry.js → p-11845ff3.entry.js} +2 -2
  97. package/dist/elements/p-13b1d6fe.entry.js +2 -0
  98. package/dist/elements/{p-d358565a.entry.js.map → p-13b1d6fe.entry.js.map} +1 -1
  99. package/dist/elements/p-14bf4c7a.entry.js +2 -0
  100. package/dist/elements/{p-66a58eb0.entry.js.map → p-14bf4c7a.entry.js.map} +1 -1
  101. package/dist/elements/{p-a507d627.entry.js → p-151d1ec8.entry.js} +2 -2
  102. package/dist/elements/{p-8e1c68eb.entry.js → p-178b3852.entry.js} +2 -2
  103. package/dist/elements/{p-89aef852.js → p-1930ffd5.js} +2 -2
  104. package/dist/elements/{p-aa7d93f1.entry.js → p-1a1222a3.entry.js} +2 -2
  105. package/dist/elements/{p-4dd65d40.entry.js → p-1e05efd7.entry.js} +2 -2
  106. package/dist/elements/{p-f50c3045.entry.js → p-1faf2d02.entry.js} +2 -2
  107. package/dist/elements/{p-a421bbe5.entry.js → p-21e90439.entry.js} +2 -2
  108. package/dist/elements/p-220cce23.entry.js +2 -0
  109. package/dist/{components/searchbar.js.map → elements/p-220cce23.entry.js.map} +1 -1
  110. package/dist/elements/{p-552a9992.entry.js → p-22c21319.entry.js} +2 -2
  111. package/dist/elements/{p-66973c59.entry.js → p-24d93ddd.entry.js} +2 -2
  112. package/dist/elements/p-2551eb06.entry.js +2 -0
  113. package/dist/elements/{p-bca341ba.entry.js.map → p-2551eb06.entry.js.map} +1 -1
  114. package/dist/elements/p-258f2385.entry.js +2 -0
  115. package/dist/elements/{p-72a9cbdc.entry.js → p-27bd8113.entry.js} +2 -2
  116. package/dist/elements/{p-c350af00.entry.js → p-2948d57b.entry.js} +2 -2
  117. package/dist/elements/p-2cda3231.entry.js +2 -0
  118. package/dist/elements/{p-41bb9792.entry.js → p-2cdaf88b.entry.js} +2 -2
  119. package/dist/elements/{p-fa0be1d8.entry.js → p-2e08ee3a.entry.js} +2 -2
  120. package/dist/elements/{p-239442f9.entry.js → p-2e0c20e7.entry.js} +2 -2
  121. package/dist/elements/p-2ec92ff9.entry.js +2 -0
  122. package/dist/elements/p-2f3623f1.entry.js +2 -0
  123. package/dist/elements/{p-c01a4a79.entry.js.map → p-2f3623f1.entry.js.map} +1 -1
  124. package/dist/elements/{p-8e8881a8.entry.js → p-30834f34.entry.js} +2 -2
  125. package/dist/elements/p-30cd90ec.js +6 -0
  126. package/dist/elements/{p-ae984107.entry.js → p-3585f786.entry.js} +2 -2
  127. package/dist/elements/{p-d08312dd.entry.js → p-35f84573.entry.js} +2 -2
  128. package/dist/elements/p-3e130681.entry.js +2 -0
  129. package/dist/elements/{p-bdea20c4.entry.js.map → p-3e130681.entry.js.map} +1 -1
  130. package/dist/elements/{p-ffa8c481.entry.js → p-3f02cc92.entry.js} +2 -2
  131. package/dist/elements/{p-71ee259b.js → p-3f316fc4.js} +2 -2
  132. package/dist/elements/{p-bc675b21.entry.js → p-3f3b74e6.entry.js} +2 -2
  133. package/dist/elements/p-40a2d567.entry.js +2 -0
  134. package/dist/elements/{p-e78cf007.entry.js → p-4dc7c524.entry.js} +2 -2
  135. package/dist/elements/{p-c191e6df.js → p-4e8c31fa.js} +8 -8
  136. package/dist/elements/{p-a45b1964.entry.js → p-5051d2a6.entry.js} +2 -2
  137. package/dist/elements/{p-e0de7c6a.entry.js → p-5a061ddb.entry.js} +2 -2
  138. package/dist/elements/{p-061819d1.js → p-5a8e7149.js} +3 -3
  139. package/dist/elements/p-5bf4c45a.js +5 -0
  140. package/dist/elements/{p-b9dcf3b2.js → p-5e8a3893.js} +2 -2
  141. package/dist/elements/{p-300ec095.entry.js → p-602861f4.entry.js} +3 -3
  142. package/dist/elements/{p-4a370bdc.entry.js → p-627d5e73.entry.js} +2 -2
  143. package/dist/elements/{p-406df11a.entry.js → p-648dac6c.entry.js} +2 -2
  144. package/dist/elements/{p-07d2bd5a.entry.js → p-650db824.entry.js} +2 -2
  145. package/dist/elements/{p-cb550d04.entry.js → p-682dd0f9.entry.js} +2 -2
  146. package/dist/elements/{p-59ec8b76.entry.js → p-689a5c54.entry.js} +3 -3
  147. package/dist/elements/{p-d6394ee4.entry.js → p-6a701de0.entry.js} +2 -2
  148. package/dist/elements/{p-f4035b4a.entry.js → p-6ca9bad7.entry.js} +2 -2
  149. package/dist/elements/{p-25926b66.entry.js → p-6cae9207.entry.js} +2 -2
  150. package/dist/elements/{p-6119b57a.entry.js → p-6e5c902a.entry.js} +2 -2
  151. package/dist/elements/{p-0ddcbecd.entry.js → p-72ba182e.entry.js} +2 -2
  152. package/dist/elements/{p-1b2d32c1.entry.js → p-8619a806.entry.js} +2 -2
  153. package/dist/elements/{p-4383e1bb.entry.js → p-87af433a.entry.js} +2 -2
  154. package/dist/elements/{p-f96384f2.entry.js → p-87eb06bc.entry.js} +2 -2
  155. package/dist/elements/p-8a691722.entry.js +2 -0
  156. package/dist/elements/{p-95161a5d.entry.js.map → p-8a691722.entry.js.map} +1 -1
  157. package/dist/elements/{p-e8268c7a.entry.js → p-8c13ce70.entry.js} +2 -2
  158. package/dist/elements/{p-b64a85bf.entry.js → p-8f6d4374.entry.js} +2 -2
  159. package/dist/elements/{p-949b115f.js → p-91025a2c.js} +3 -3
  160. package/dist/elements/{p-71835d6f.entry.js → p-95036276.entry.js} +2 -2
  161. package/dist/elements/{p-42169e41.js → p-97889672.js} +2 -2
  162. package/dist/elements/p-97fa472f.entry.js +2 -0
  163. package/dist/elements/{p-a06d93c7.entry.js.map → p-97fa472f.entry.js.map} +1 -1
  164. package/dist/elements/{p-8b209e66.entry.js → p-9840f300.entry.js} +2 -2
  165. package/dist/elements/p-98b2844f.js +5 -0
  166. package/dist/elements/{p-fa19a3e9.entry.js → p-9d23baee.entry.js} +2 -2
  167. package/dist/elements/{p-7e8b8df1.entry.js → p-9d6c94d3.entry.js} +2 -2
  168. package/dist/elements/{p-41854c8f.entry.js → p-9d81c061.entry.js} +2 -2
  169. package/dist/elements/{p-dadb557e.entry.js → p-a19fb8fa.entry.js} +4 -4
  170. package/dist/elements/{p-9a4bf79e.entry.js → p-a7c9aa13.entry.js} +2 -2
  171. package/dist/elements/{p-0ee8b7a7.js → p-acfa402f.js} +2 -2
  172. package/dist/elements/{p-facc0ac5.entry.js → p-af03cfbe.entry.js} +2 -2
  173. package/dist/elements/{p-b8bd7745.entry.js → p-af2b9ecb.entry.js} +2 -2
  174. package/dist/elements/{p-cbf050d6.js → p-b110cb49.js} +2 -2
  175. package/dist/elements/{p-09d80405.entry.js → p-b1292dde.entry.js} +2 -2
  176. package/dist/elements/p-b2c94853.entry.js +2 -0
  177. package/dist/elements/{p-250d4bf1.entry.js.map → p-b2c94853.entry.js.map} +1 -1
  178. package/dist/elements/{p-a376351f.entry.js → p-b34203cd.entry.js} +2 -2
  179. package/dist/elements/{p-dc709055.entry.js → p-b954a40f.entry.js} +2 -2
  180. package/dist/elements/{p-1fc8e557.js → p-bde7428a.js} +2 -2
  181. package/dist/elements/{p-734e5a97.js → p-bf5335d4.js} +2 -2
  182. package/dist/elements/p-c1df6af7.js +8 -0
  183. package/dist/elements/p-c27a94bc.entry.js +2 -0
  184. package/dist/elements/{p-cbae963d.js → p-c30eb80f.js} +3 -3
  185. package/dist/elements/{p-4c078751.entry.js → p-c4332c66.entry.js} +2 -2
  186. package/dist/elements/{p-36caf749.entry.js → p-c4894c44.entry.js} +2 -2
  187. package/dist/elements/{p-87c81685.entry.js → p-c4e1867e.entry.js} +2 -2
  188. package/dist/elements/{p-645632a8.entry.js → p-c7db2b55.entry.js} +5 -5
  189. package/dist/elements/p-cb3e5072.entry.js +2 -0
  190. package/dist/elements/{p-49fcec88.entry.js → p-d54d552d.entry.js} +6 -6
  191. package/dist/elements/{p-2a548485.entry.js → p-d7b597ed.entry.js} +2 -2
  192. package/dist/elements/p-da0c771e.js +5 -0
  193. package/dist/elements/{p-c9604122.entry.js → p-de6d7967.entry.js} +2 -2
  194. package/dist/elements/p-e05f218c.entry.js +2 -0
  195. package/dist/elements/{p-2f0509be.entry.js.map → p-e05f218c.entry.js.map} +1 -1
  196. package/dist/elements/{p-b5f6b322.entry.js → p-e15ff70c.entry.js} +2 -2
  197. package/dist/elements/p-e1957ea1.entry.js +2 -0
  198. package/dist/elements/p-e43d654c.js +5 -0
  199. package/dist/elements/{p-01981011.entry.js → p-e7fbd427.entry.js} +2 -2
  200. package/dist/elements/{p-d61d280b.js → p-e912617c.js} +3 -3
  201. package/dist/elements/{p-da0d920d.js → p-ebe1c8ca.js} +2 -2
  202. package/dist/elements/{p-d872fe3e.entry.js → p-ec283f66.entry.js} +2 -2
  203. package/dist/elements/p-ec7a6c44.js +2 -0
  204. package/dist/elements/{p-f40b3ec6.entry.js → p-ed22dcc0.entry.js} +2 -2
  205. package/dist/elements/{p-05fff093.entry.js → p-eeaffc3b.entry.js} +2 -2
  206. package/dist/elements/p-f2c0c8a9.js +5 -0
  207. package/dist/elements/{p-c186950b.entry.js → p-f3bf8ff7.entry.js} +2 -2
  208. package/dist/elements/{p-5441ae35.entry.js → p-fb740291.entry.js} +2 -2
  209. package/dist/elements/{p-5bf40440.entry.js → p-fbff274c.entry.js} +2 -2
  210. package/dist/elements/{p-266d2934.entry.js → p-fd84af22.entry.js} +2 -2
  211. package/dist/esm/{BrokenFile-d387a173.js → BrokenFile-0b9882ef.js} +2 -2
  212. package/dist/esm/{BrokenFile-d387a173.js.map → BrokenFile-0b9882ef.js.map} +1 -1
  213. package/dist/esm/{animation-43b39c85.js → animation-756697b9.js} +2 -2
  214. package/dist/esm/{animation-43b39c85.js.map → animation-756697b9.js.map} +1 -1
  215. package/dist/esm/{app-globals-f420d326.js → app-globals-31ecda4c.js} +2 -2
  216. package/dist/esm/{app-globals-f420d326.js.map → app-globals-31ecda4c.js.map} +1 -1
  217. package/dist/esm/elements.js +5 -5
  218. package/dist/esm/{form-controller-3b50bf52.js → form-controller-8a54002c.js} +2 -2
  219. package/dist/esm/{form-controller-3b50bf52.js.map → form-controller-8a54002c.js.map} +1 -1
  220. package/dist/esm/{framework-delegate-c5179013.js → framework-delegate-65b5c396.js} +2 -2
  221. package/dist/esm/{framework-delegate-c5179013.js.map → framework-delegate-65b5c396.js.map} +1 -1
  222. package/dist/esm/{hardware-back-button-12e771ad.js → hardware-back-button-87b1549b.js} +3 -3
  223. package/dist/esm/{hardware-back-button-12e771ad.js.map → hardware-back-button-87b1549b.js.map} +1 -1
  224. package/dist/esm/{helpers-c51da066.js → helpers-bc137989.js} +2 -2
  225. package/dist/esm/{helpers-c51da066.js.map → helpers-bc137989.js.map} +1 -1
  226. package/dist/esm/{index-9725d917.js → index-46d8987d.js} +2 -2
  227. package/dist/esm/{index-9725d917.js.map → index-46d8987d.js.map} +1 -1
  228. package/dist/esm/{index-12e18dab.js → index-81865f43.js} +2 -2
  229. package/dist/esm/{index-12e18dab.js.map → index-81865f43.js.map} +1 -1
  230. package/dist/esm/{index-9edae53a.js → index-a51d17dd.js} +2 -2
  231. package/dist/esm/{index-9edae53a.js.map → index-a51d17dd.js.map} +1 -1
  232. package/dist/esm/{index-7462d21e.js → index-cbb71797.js} +5 -5
  233. package/dist/esm/{index-7462d21e.js.map → index-cbb71797.js.map} +1 -1
  234. package/dist/esm/{index-842e2941.js → index-e7f761c9.js} +2 -2
  235. package/dist/esm/{index-842e2941.js.map → index-e7f761c9.js.map} +1 -1
  236. package/dist/esm/{index-ccbcf170.js → index-fa9f8152.js} +5 -5
  237. package/dist/esm/{index-ccbcf170.js.map → index-fa9f8152.js.map} +1 -1
  238. package/dist/esm/{input-shims-0cb1bad1.js → input-shims-10923fa6.js} +3 -3
  239. package/dist/esm/{input-shims-0cb1bad1.js.map → input-shims-10923fa6.js.map} +1 -1
  240. package/dist/esm/{input.utils-0e2bf61a.js → input.utils-5fe0312f.js} +2 -2
  241. package/dist/esm/{input.utils-0e2bf61a.js.map → input.utils-5fe0312f.js.map} +1 -1
  242. package/dist/esm/ion-accordion-group.entry.js +2 -2
  243. package/dist/esm/ion-accordion.entry.js +4 -4
  244. package/dist/esm/ion-action-sheet_3.entry.js +7 -7
  245. package/dist/esm/ion-app.entry.js +7 -7
  246. package/dist/esm/ion-avatar.entry.js +2 -2
  247. package/dist/esm/ion-back-button.entry.js +4 -4
  248. package/dist/esm/ion-backdrop.entry.js +2 -2
  249. package/dist/esm/ion-badge_5.entry.js +3 -3
  250. package/dist/esm/ion-breadcrumb.entry.js +4 -4
  251. package/dist/esm/ion-breadcrumbs.entry.js +2 -2
  252. package/dist/esm/ion-button_4.entry.js +3 -3
  253. package/dist/esm/ion-card-content.entry.js +2 -2
  254. package/dist/esm/ion-card-header.entry.js +2 -2
  255. package/dist/esm/ion-card-subtitle.entry.js +2 -2
  256. package/dist/esm/ion-card-title.entry.js +2 -2
  257. package/dist/esm/ion-card.entry.js +3 -3
  258. package/dist/esm/ion-checkbox_7.entry.js +5 -5
  259. package/dist/esm/ion-chip.entry.js +2 -2
  260. package/dist/esm/ion-col.entry.js +2 -2
  261. package/dist/esm/ion-content.entry.js +3 -3
  262. package/dist/esm/ion-datetime-button.entry.js +3 -3
  263. package/dist/esm/ion-datetime.entry.js +4 -4
  264. package/dist/esm/ion-fab-button.entry.js +4 -4
  265. package/dist/esm/ion-fab-list.entry.js +2 -2
  266. package/dist/esm/ion-fab.entry.js +2 -2
  267. package/dist/esm/ion-footer.entry.js +4 -4
  268. package/dist/esm/ion-grid.entry.js +2 -2
  269. package/dist/esm/ion-header.entry.js +4 -4
  270. package/dist/esm/ion-icon_31.entry.js +331 -461
  271. package/dist/esm/ion-icon_31.entry.js.map +1 -1
  272. package/dist/esm/ion-img.entry.js +3 -3
  273. package/dist/esm/ion-infinite-scroll-content.entry.js +2 -2
  274. package/dist/esm/ion-infinite-scroll.entry.js +4 -4
  275. package/dist/esm/ion-input.entry.js +7 -7
  276. package/dist/esm/ion-item-divider.entry.js +2 -2
  277. package/dist/esm/ion-item-group.entry.js +2 -2
  278. package/dist/esm/ion-item-option.entry.js +2 -2
  279. package/dist/esm/ion-item-options.entry.js +3 -3
  280. package/dist/esm/ion-item-sliding.entry.js +4 -4
  281. package/dist/esm/ion-loading.entry.js +7 -7
  282. package/dist/esm/ion-menu-button.entry.js +8 -8
  283. package/dist/esm/ion-menu-toggle.entry.js +7 -7
  284. package/dist/esm/ion-menu.entry.js +8 -8
  285. package/dist/esm/ion-modal.entry.js +9 -9
  286. package/dist/esm/ion-nav-link.entry.js +1 -1
  287. package/dist/esm/ion-nav.entry.js +6 -6
  288. package/dist/esm/ion-note.entry.js +2 -2
  289. package/dist/esm/ion-picker-column.entry.js +3 -3
  290. package/dist/esm/ion-picker.entry.js +7 -7
  291. package/dist/esm/ion-popover.entry.js +8 -8
  292. package/dist/esm/ion-range.entry.js +5 -5
  293. package/dist/esm/ion-refresher-content.entry.js +6 -6
  294. package/dist/esm/ion-refresher.entry.js +6 -6
  295. package/dist/esm/ion-reorder-group.entry.js +4 -4
  296. package/dist/esm/ion-reorder.entry.js +3 -3
  297. package/dist/esm/ion-route-redirect.entry.js +1 -1
  298. package/dist/esm/ion-route.entry.js +1 -1
  299. package/dist/esm/ion-router-link.entry.js +2 -2
  300. package/dist/esm/ion-router-outlet.entry.js +6 -6
  301. package/dist/esm/ion-router.entry.js +2 -2
  302. package/dist/esm/ion-row.entry.js +2 -2
  303. package/dist/{components/searchbar.js → esm/ion-searchbar.entry.js} +17 -70
  304. package/dist/esm/ion-searchbar.entry.js.map +1 -0
  305. package/dist/esm/ion-segment-button.entry.js +3 -3
  306. package/dist/esm/ion-segment.entry.js +3 -3
  307. package/dist/esm/ion-select-option.entry.js +2 -2
  308. package/dist/esm/ion-select.entry.js +9 -9
  309. package/dist/esm/ion-spinner.entry.js +2 -2
  310. package/dist/esm/ion-split-pane.entry.js +2 -2
  311. package/dist/esm/ion-tab-bar.entry.js +2 -2
  312. package/dist/esm/ion-tab-button.entry.js +3 -3
  313. package/dist/esm/ion-tab.entry.js +3 -3
  314. package/dist/esm/ion-tabs.entry.js +1 -1
  315. package/dist/esm/ion-text.entry.js +2 -2
  316. package/dist/esm/ion-textarea.entry.js +6 -6
  317. package/dist/esm/ion-thumbnail.entry.js +2 -2
  318. package/dist/esm/ion-title.entry.js +2 -2
  319. package/dist/esm/ion-toggle.entry.js +5 -5
  320. package/dist/esm/ion-toolbar.entry.js +2 -2
  321. package/dist/esm/{ionic-global-07f989af.js → ionic-global-dc58df6a.js} +2 -2
  322. package/dist/esm/{ionic-global-07f989af.js.map → ionic-global-dc58df6a.js.map} +1 -1
  323. package/dist/esm/{ios.transition-02b5b74a.js → ios.transition-cd6a57b8.js} +5 -5
  324. package/dist/esm/{ios.transition-02b5b74a.js.map → ios.transition-cd6a57b8.js.map} +1 -1
  325. package/dist/esm/loader.js +5 -5
  326. package/dist/esm/{md.transition-0e6cf607.js → md.transition-a2999731.js} +5 -5
  327. package/dist/esm/{md.transition-0e6cf607.js.map → md.transition-a2999731.js.map} +1 -1
  328. package/dist/esm/{menu-toggle-util-6257f7b5.js → menu-toggle-util-5d79b187.js} +2 -2
  329. package/dist/esm/{menu-toggle-util-6257f7b5.js.map → menu-toggle-util-5d79b187.js.map} +1 -1
  330. package/dist/esm/{notch-controller-79926902.js → notch-controller-ce206c7f.js} +2 -2
  331. package/dist/esm/{notch-controller-79926902.js.map → notch-controller-ce206c7f.js.map} +1 -1
  332. package/dist/esm/{overlays-ef03d5bd.js → overlays-d7fc4ce2.js} +5 -5
  333. package/dist/esm/{overlays-ef03d5bd.js.map → overlays-d7fc4ce2.js.map} +1 -1
  334. package/dist/esm/pos-app-document-viewer.entry.js +1 -1
  335. package/dist/esm/pos-app-generic.entry.js +2 -2
  336. package/dist/esm/pos-app-image-viewer.entry.js +1 -1
  337. package/dist/esm/pos-app-ldp-container.entry.js +2 -2
  338. package/dist/esm/pos-app-rdf-document.entry.js +2 -2
  339. package/dist/esm/pos-container-contents.entry.js +1 -1
  340. package/dist/esm/pos-container-item.entry.js +1 -1
  341. package/dist/esm/pos-document.entry.js +2 -2
  342. package/dist/esm/pos-list.entry.js +1 -1
  343. package/dist/esm/pos-relations_2.entry.js +1 -1
  344. package/dist/esm/pos-subjects.entry.js +1 -1
  345. package/dist/esm/pos-value.entry.js +1 -1
  346. package/dist/esm/{refresher.utils-d191622d.js → refresher.utils-e60a7dd8.js} +4 -4
  347. package/dist/esm/{refresher.utils-d191622d.js.map → refresher.utils-e60a7dd8.js.map} +1 -1
  348. package/dist/esm/{status-tap-cdf580e7.js → status-tap-a4c12279.js} +4 -4
  349. package/dist/esm/{status-tap-cdf580e7.js.map → status-tap-a4c12279.js.map} +1 -1
  350. package/dist/esm/{swipe-back-698e6532.js → swipe-back-c940b28a.js} +2 -2
  351. package/dist/esm/{swipe-back-698e6532.js.map → swipe-back-c940b28a.js.map} +1 -1
  352. package/dist/types/apps/pos-app-browser/pos-app-browser.d.ts +2 -1
  353. package/dist/types/apps/pos-app-dashboard/pos-getting-started/pos-getting-started.d.ts +2 -0
  354. package/dist/types/components/pos-login/pos-login.d.ts +5 -0
  355. package/dist/types/components/pos-navigation/__test/typeToSearch.d.ts +1 -0
  356. package/dist/types/components/pos-navigation/bar/pos-navigation-bar.d.ts +11 -0
  357. package/dist/types/components/pos-navigation/pos-navigation.d.ts +44 -0
  358. package/dist/types/components.d.ts +64 -7
  359. package/package.json +1 -1
  360. package/dist/collection/components/pos-navigation-bar/pos-navigation-bar.css +0 -51
  361. package/dist/collection/components/pos-navigation-bar/pos-navigation-bar.js.map +0 -1
  362. package/dist/elements/p-07773ed5.entry.js +0 -2
  363. package/dist/elements/p-250d4bf1.entry.js +0 -2
  364. package/dist/elements/p-2f0509be.entry.js +0 -2
  365. package/dist/elements/p-4c78c8c9.js +0 -5
  366. package/dist/elements/p-4ccdbcbf.entry.js +0 -2
  367. package/dist/elements/p-523432d1.js +0 -2
  368. package/dist/elements/p-627826b0.entry.js +0 -2
  369. package/dist/elements/p-66a58eb0.entry.js +0 -2
  370. package/dist/elements/p-7183a9ca.entry.js +0 -2
  371. package/dist/elements/p-7f53778f.entry.js +0 -2
  372. package/dist/elements/p-8f6d1cbe.entry.js +0 -2
  373. package/dist/elements/p-932de51e.js +0 -8
  374. package/dist/elements/p-95161a5d.entry.js +0 -2
  375. package/dist/elements/p-a06d93c7.entry.js +0 -2
  376. package/dist/elements/p-a08f0446.entry.js +0 -2
  377. package/dist/elements/p-a13569cf.entry.js +0 -2
  378. package/dist/elements/p-a37a2712.js +0 -5
  379. package/dist/elements/p-b34f1af4.entry.js +0 -20
  380. package/dist/elements/p-b34f1af4.entry.js.map +0 -1
  381. package/dist/elements/p-bca341ba.entry.js +0 -2
  382. package/dist/elements/p-bdea20c4.entry.js +0 -2
  383. package/dist/elements/p-c01a4a79.entry.js +0 -2
  384. package/dist/elements/p-c452a2e9.js +0 -5
  385. package/dist/elements/p-d1e7b393.js +0 -5
  386. package/dist/elements/p-d358565a.entry.js +0 -2
  387. package/dist/elements/p-eba70ed1.js +0 -6
  388. package/dist/elements/p-f67bba50.js +0 -5
  389. package/dist/types/components/pos-navigation-bar/pos-navigation-bar.d.ts +0 -25
  390. /package/dist/elements/{p-a6c03ce8.js.map → p-01adc2b7.js.map} +0 -0
  391. /package/dist/elements/{p-7190d53c.entry.js.map → p-09ff1516.entry.js.map} +0 -0
  392. /package/dist/elements/{p-307d1531.js.map → p-0a6631d5.js.map} +0 -0
  393. /package/dist/elements/{p-c698ab8e.entry.js.map → p-0b3d14ec.entry.js.map} +0 -0
  394. /package/dist/elements/{p-d8818bb3.entry.js.map → p-0d4f129d.entry.js.map} +0 -0
  395. /package/dist/elements/{p-07773ed5.entry.js.map → p-104fee38.entry.js.map} +0 -0
  396. /package/dist/elements/{p-6cc9961e.entry.js.map → p-11466af2.entry.js.map} +0 -0
  397. /package/dist/elements/{p-3e6ffc13.entry.js.map → p-11845ff3.entry.js.map} +0 -0
  398. /package/dist/elements/{p-a507d627.entry.js.map → p-151d1ec8.entry.js.map} +0 -0
  399. /package/dist/elements/{p-8e1c68eb.entry.js.map → p-178b3852.entry.js.map} +0 -0
  400. /package/dist/elements/{p-89aef852.js.map → p-1930ffd5.js.map} +0 -0
  401. /package/dist/elements/{p-aa7d93f1.entry.js.map → p-1a1222a3.entry.js.map} +0 -0
  402. /package/dist/elements/{p-4dd65d40.entry.js.map → p-1e05efd7.entry.js.map} +0 -0
  403. /package/dist/elements/{p-f50c3045.entry.js.map → p-1faf2d02.entry.js.map} +0 -0
  404. /package/dist/elements/{p-a421bbe5.entry.js.map → p-21e90439.entry.js.map} +0 -0
  405. /package/dist/elements/{p-552a9992.entry.js.map → p-22c21319.entry.js.map} +0 -0
  406. /package/dist/elements/{p-66973c59.entry.js.map → p-24d93ddd.entry.js.map} +0 -0
  407. /package/dist/elements/{p-8f6d1cbe.entry.js.map → p-258f2385.entry.js.map} +0 -0
  408. /package/dist/elements/{p-72a9cbdc.entry.js.map → p-27bd8113.entry.js.map} +0 -0
  409. /package/dist/elements/{p-c350af00.entry.js.map → p-2948d57b.entry.js.map} +0 -0
  410. /package/dist/elements/{p-7183a9ca.entry.js.map → p-2cda3231.entry.js.map} +0 -0
  411. /package/dist/elements/{p-41bb9792.entry.js.map → p-2cdaf88b.entry.js.map} +0 -0
  412. /package/dist/elements/{p-fa0be1d8.entry.js.map → p-2e08ee3a.entry.js.map} +0 -0
  413. /package/dist/elements/{p-239442f9.entry.js.map → p-2e0c20e7.entry.js.map} +0 -0
  414. /package/dist/elements/{p-627826b0.entry.js.map → p-2ec92ff9.entry.js.map} +0 -0
  415. /package/dist/elements/{p-8e8881a8.entry.js.map → p-30834f34.entry.js.map} +0 -0
  416. /package/dist/elements/{p-eba70ed1.js.map → p-30cd90ec.js.map} +0 -0
  417. /package/dist/elements/{p-ae984107.entry.js.map → p-3585f786.entry.js.map} +0 -0
  418. /package/dist/elements/{p-d08312dd.entry.js.map → p-35f84573.entry.js.map} +0 -0
  419. /package/dist/elements/{p-ffa8c481.entry.js.map → p-3f02cc92.entry.js.map} +0 -0
  420. /package/dist/elements/{p-71ee259b.js.map → p-3f316fc4.js.map} +0 -0
  421. /package/dist/elements/{p-bc675b21.entry.js.map → p-3f3b74e6.entry.js.map} +0 -0
  422. /package/dist/elements/{p-7f53778f.entry.js.map → p-40a2d567.entry.js.map} +0 -0
  423. /package/dist/elements/{p-e78cf007.entry.js.map → p-4dc7c524.entry.js.map} +0 -0
  424. /package/dist/elements/{p-c191e6df.js.map → p-4e8c31fa.js.map} +0 -0
  425. /package/dist/elements/{p-a45b1964.entry.js.map → p-5051d2a6.entry.js.map} +0 -0
  426. /package/dist/elements/{p-e0de7c6a.entry.js.map → p-5a061ddb.entry.js.map} +0 -0
  427. /package/dist/elements/{p-061819d1.js.map → p-5a8e7149.js.map} +0 -0
  428. /package/dist/elements/{p-4c78c8c9.js.map → p-5bf4c45a.js.map} +0 -0
  429. /package/dist/elements/{p-b9dcf3b2.js.map → p-5e8a3893.js.map} +0 -0
  430. /package/dist/elements/{p-300ec095.entry.js.map → p-602861f4.entry.js.map} +0 -0
  431. /package/dist/elements/{p-4a370bdc.entry.js.map → p-627d5e73.entry.js.map} +0 -0
  432. /package/dist/elements/{p-406df11a.entry.js.map → p-648dac6c.entry.js.map} +0 -0
  433. /package/dist/elements/{p-07d2bd5a.entry.js.map → p-650db824.entry.js.map} +0 -0
  434. /package/dist/elements/{p-cb550d04.entry.js.map → p-682dd0f9.entry.js.map} +0 -0
  435. /package/dist/elements/{p-59ec8b76.entry.js.map → p-689a5c54.entry.js.map} +0 -0
  436. /package/dist/elements/{p-d6394ee4.entry.js.map → p-6a701de0.entry.js.map} +0 -0
  437. /package/dist/elements/{p-f4035b4a.entry.js.map → p-6ca9bad7.entry.js.map} +0 -0
  438. /package/dist/elements/{p-25926b66.entry.js.map → p-6cae9207.entry.js.map} +0 -0
  439. /package/dist/elements/{p-6119b57a.entry.js.map → p-6e5c902a.entry.js.map} +0 -0
  440. /package/dist/elements/{p-0ddcbecd.entry.js.map → p-72ba182e.entry.js.map} +0 -0
  441. /package/dist/elements/{p-1b2d32c1.entry.js.map → p-8619a806.entry.js.map} +0 -0
  442. /package/dist/elements/{p-4383e1bb.entry.js.map → p-87af433a.entry.js.map} +0 -0
  443. /package/dist/elements/{p-f96384f2.entry.js.map → p-87eb06bc.entry.js.map} +0 -0
  444. /package/dist/elements/{p-e8268c7a.entry.js.map → p-8c13ce70.entry.js.map} +0 -0
  445. /package/dist/elements/{p-b64a85bf.entry.js.map → p-8f6d4374.entry.js.map} +0 -0
  446. /package/dist/elements/{p-949b115f.js.map → p-91025a2c.js.map} +0 -0
  447. /package/dist/elements/{p-71835d6f.entry.js.map → p-95036276.entry.js.map} +0 -0
  448. /package/dist/elements/{p-42169e41.js.map → p-97889672.js.map} +0 -0
  449. /package/dist/elements/{p-8b209e66.entry.js.map → p-9840f300.entry.js.map} +0 -0
  450. /package/dist/elements/{p-a37a2712.js.map → p-98b2844f.js.map} +0 -0
  451. /package/dist/elements/{p-fa19a3e9.entry.js.map → p-9d23baee.entry.js.map} +0 -0
  452. /package/dist/elements/{p-7e8b8df1.entry.js.map → p-9d6c94d3.entry.js.map} +0 -0
  453. /package/dist/elements/{p-41854c8f.entry.js.map → p-9d81c061.entry.js.map} +0 -0
  454. /package/dist/elements/{p-dadb557e.entry.js.map → p-a19fb8fa.entry.js.map} +0 -0
  455. /package/dist/elements/{p-9a4bf79e.entry.js.map → p-a7c9aa13.entry.js.map} +0 -0
  456. /package/dist/elements/{p-0ee8b7a7.js.map → p-acfa402f.js.map} +0 -0
  457. /package/dist/elements/{p-facc0ac5.entry.js.map → p-af03cfbe.entry.js.map} +0 -0
  458. /package/dist/elements/{p-b8bd7745.entry.js.map → p-af2b9ecb.entry.js.map} +0 -0
  459. /package/dist/elements/{p-cbf050d6.js.map → p-b110cb49.js.map} +0 -0
  460. /package/dist/elements/{p-09d80405.entry.js.map → p-b1292dde.entry.js.map} +0 -0
  461. /package/dist/elements/{p-a376351f.entry.js.map → p-b34203cd.entry.js.map} +0 -0
  462. /package/dist/elements/{p-dc709055.entry.js.map → p-b954a40f.entry.js.map} +0 -0
  463. /package/dist/elements/{p-1fc8e557.js.map → p-bde7428a.js.map} +0 -0
  464. /package/dist/elements/{p-734e5a97.js.map → p-bf5335d4.js.map} +0 -0
  465. /package/dist/elements/{p-932de51e.js.map → p-c1df6af7.js.map} +0 -0
  466. /package/dist/elements/{p-a08f0446.entry.js.map → p-c27a94bc.entry.js.map} +0 -0
  467. /package/dist/elements/{p-cbae963d.js.map → p-c30eb80f.js.map} +0 -0
  468. /package/dist/elements/{p-4c078751.entry.js.map → p-c4332c66.entry.js.map} +0 -0
  469. /package/dist/elements/{p-36caf749.entry.js.map → p-c4894c44.entry.js.map} +0 -0
  470. /package/dist/elements/{p-87c81685.entry.js.map → p-c4e1867e.entry.js.map} +0 -0
  471. /package/dist/elements/{p-645632a8.entry.js.map → p-c7db2b55.entry.js.map} +0 -0
  472. /package/dist/elements/{p-a13569cf.entry.js.map → p-cb3e5072.entry.js.map} +0 -0
  473. /package/dist/elements/{p-49fcec88.entry.js.map → p-d54d552d.entry.js.map} +0 -0
  474. /package/dist/elements/{p-2a548485.entry.js.map → p-d7b597ed.entry.js.map} +0 -0
  475. /package/dist/elements/{p-c452a2e9.js.map → p-da0c771e.js.map} +0 -0
  476. /package/dist/elements/{p-c9604122.entry.js.map → p-de6d7967.entry.js.map} +0 -0
  477. /package/dist/elements/{p-b5f6b322.entry.js.map → p-e15ff70c.entry.js.map} +0 -0
  478. /package/dist/elements/{p-4ccdbcbf.entry.js.map → p-e1957ea1.entry.js.map} +0 -0
  479. /package/dist/elements/{p-f67bba50.js.map → p-e43d654c.js.map} +0 -0
  480. /package/dist/elements/{p-01981011.entry.js.map → p-e7fbd427.entry.js.map} +0 -0
  481. /package/dist/elements/{p-d61d280b.js.map → p-e912617c.js.map} +0 -0
  482. /package/dist/elements/{p-da0d920d.js.map → p-ebe1c8ca.js.map} +0 -0
  483. /package/dist/elements/{p-d872fe3e.entry.js.map → p-ec283f66.entry.js.map} +0 -0
  484. /package/dist/elements/{p-523432d1.js.map → p-ec7a6c44.js.map} +0 -0
  485. /package/dist/elements/{p-f40b3ec6.entry.js.map → p-ed22dcc0.entry.js.map} +0 -0
  486. /package/dist/elements/{p-05fff093.entry.js.map → p-eeaffc3b.entry.js.map} +0 -0
  487. /package/dist/elements/{p-d1e7b393.js.map → p-f2c0c8a9.js.map} +0 -0
  488. /package/dist/elements/{p-c186950b.entry.js.map → p-f3bf8ff7.entry.js.map} +0 -0
  489. /package/dist/elements/{p-5441ae35.entry.js.map → p-fb740291.entry.js.map} +0 -0
  490. /package/dist/elements/{p-5bf40440.entry.js.map → p-fbff274c.entry.js.map} +0 -0
  491. /package/dist/elements/{p-266d2934.entry.js.map → p-fd84af22.entry.js.map} +0 -0
@@ -1,23 +1,21 @@
1
- import { d as getAssetPath, r as registerInstance, h, H as Host, e as getElement, f as readTask, w as writeTask, i as createEvent, j as forceUpdate, k as getRenderingRef } from './index-9725d917.js';
2
- import { c as clamp, d as debounceEvent, i as inheritAttributes$1, a as componentOnReady, r as raf, g as getElementRoot } from './helpers-c51da066.js';
1
+ import { d as getAssetPath, r as registerInstance, h, H as Host, e as getElement, f as readTask, w as writeTask, i as createEvent, j as getRenderingRef, k as forceUpdate } from './index-46d8987d.js';
2
+ import { c as clamp, g as getElementRoot, r as raf } from './helpers-bc137989.js';
3
3
  import { c as createColorClasses$1, h as hostContext, g as getClassMap } from './theme-d75c68ae.js';
4
- import { c as config$1, g as getIonMode$1 } from './ionic-global-07f989af.js';
5
- import { i as isRTL$1 } from './dir-f50ace98.js';
6
- import { a as arrowBackSharp, c as closeCircle, b as closeSharp, s as searchOutline, d as searchSharp } from './index-9edae53a.js';
4
+ import { c as config$1, g as getIonMode$1 } from './ionic-global-dc58df6a.js';
7
5
  import { E as ENABLE_HTML_CONTENT_DEFAULT, s as sanitizeDOMString } from './index-ce4e7029.js';
8
6
  import { c as createLockController } from './lock-controller-10217ff6.js';
9
7
  import { p as printIonWarning } from './index-f7ac0403.js';
10
- import { O as OVERLAY_GESTURE_PRIORITY, c as createDelegateController, a as createTriggerController, i as isCancel, p as prepareOverlay, s as setOverlayId, b as present, d as dismiss, e as eventMethod, f as safeCall, G as GESTURE, t as toastController } from './overlays-ef03d5bd.js';
11
- import { c as createAnimation } from './animation-43b39c85.js';
8
+ import { O as OVERLAY_GESTURE_PRIORITY, c as createDelegateController, a as createTriggerController, i as isCancel, p as prepareOverlay, s as setOverlayId, b as present, d as dismiss, e as eventMethod, f as safeCall, G as GESTURE, t as toastController } from './overlays-d7fc4ce2.js';
9
+ import { c as createAnimation } from './animation-756697b9.js';
12
10
  import { w as win } from './index-6b94f340.js';
13
11
  import { createGesture } from './index-38fe935b.js';
14
- import { c as createStore$1, s as store, B as BrokenFile } from './BrokenFile-d387a173.js';
12
+ import { c as createStore$1, s as store, B as BrokenFile } from './BrokenFile-0b9882ef.js';
15
13
  import { P as PodOS, N as NoOfflineCache, L as LabelIndex } from './index-f3176f87.js';
16
14
  import { s as subscribeResource } from './ResourceAware-5f237305.js';
17
15
  import './gesture-controller-958242a2.js';
18
16
  import { s as subscribePodOs } from './PodOsAware-132573cd.js';
19
- import './hardware-back-button-12e771ad.js';
20
- import './framework-delegate-c5179013.js';
17
+ import './hardware-back-button-87b1549b.js';
18
+ import './framework-delegate-65b5c396.js';
21
19
 
22
20
  let CACHED_MAP;
23
21
  const getIconMap = () => {
@@ -495,422 +493,6 @@ const PADDING = 10;
495
493
  const INITIAL_ORIGIN_SCALE = 0.5;
496
494
  RippleEffect.style = IonRippleEffectStyle0;
497
495
 
498
- const searchbarIosCss = ".sc-ion-searchbar-ios-h{--placeholder-color:initial;--placeholder-font-style:initial;--placeholder-font-weight:initial;--placeholder-opacity:0.6;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;width:100%;color:var(--color);font-family:var(--ion-font-family, inherit);box-sizing:border-box}.ion-color.sc-ion-searchbar-ios-h{color:var(--ion-color-contrast)}.ion-color.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{background:var(--ion-color-base)}.ion-color.sc-ion-searchbar-ios-h .searchbar-clear-button.sc-ion-searchbar-ios,.ion-color.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.ion-color.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios{color:inherit}.searchbar-search-icon.sc-ion-searchbar-ios{color:var(--icon-color);pointer-events:none}.searchbar-input-container.sc-ion-searchbar-ios{display:block;position:relative;flex-shrink:1;width:100%}.searchbar-input.sc-ion-searchbar-ios{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;border-radius:var(--border-radius);display:block;width:100%;min-height:inherit;border:0;outline:none;background:var(--background);font-family:inherit;box-shadow:var(--box-shadow);box-sizing:border-box;appearance:none}.searchbar-input.sc-ion-searchbar-ios::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.searchbar-input.sc-ion-searchbar-ios::-webkit-search-cancel-button,.searchbar-input.sc-ion-searchbar-ios::-ms-clear{display:none}.searchbar-cancel-button.sc-ion-searchbar-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:none;height:100%;border:0;outline:none;color:var(--cancel-button-color);cursor:pointer;appearance:none}.searchbar-cancel-button.sc-ion-searchbar-ios>div.sc-ion-searchbar-ios{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.searchbar-clear-button.sc-ion-searchbar-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:none;min-height:0;outline:none;color:var(--clear-button-color);appearance:none}.searchbar-clear-button.sc-ion-searchbar-ios:focus{opacity:0.5}.searchbar-has-value.searchbar-should-show-clear.sc-ion-searchbar-ios-h .searchbar-clear-button.sc-ion-searchbar-ios{display:block}.searchbar-disabled.sc-ion-searchbar-ios-h{cursor:default;opacity:0.4;pointer-events:none}.sc-ion-searchbar-ios-h{--background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.07);--border-radius:10px;--box-shadow:none;--cancel-button-color:var(--ion-color-primary, #3880ff);--clear-button-color:var(--ion-color-step-600, #666666);--color:var(--ion-text-color, #000);--icon-color:var(--ion-color-step-600, #666666);-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:12px;padding-bottom:12px;min-height:60px;contain:content}.searchbar-input-container.sc-ion-searchbar-ios{min-height:36px}.searchbar-search-icon.sc-ion-searchbar-ios{-webkit-margin-start:calc(50% - 60px);margin-inline-start:calc(50% - 60px);top:0;position:absolute;width:1.375rem;height:100%;contain:strict}@supports (inset-inline-start: 0){.searchbar-search-icon.sc-ion-searchbar-ios{inset-inline-start:5px}}@supports not (inset-inline-start: 0){.searchbar-search-icon.sc-ion-searchbar-ios{left:5px}[dir=rtl].sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios,[dir=rtl] .sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios{left:unset;right:unset;right:5px}[dir=rtl].sc-ion-searchbar-ios .searchbar-search-icon.sc-ion-searchbar-ios{left:unset;right:unset;right:5px}@supports selector(:dir(rtl)){.searchbar-search-icon.sc-ion-searchbar-ios:dir(rtl){left:unset;right:unset;right:5px}}}.searchbar-input.sc-ion-searchbar-ios{-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:6px;padding-bottom:6px;height:100%;font-size:1.0625rem;font-weight:400;contain:strict}.searchbar-has-value.searchbar-should-show-clear.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{-webkit-padding-start:1.75rem;padding-inline-start:1.75rem;-webkit-padding-end:1.75rem;padding-inline-end:1.75rem}.searchbar-clear-button.sc-ion-searchbar-ios{top:0;background-position:center;position:absolute;width:1.875rem;height:100%;border:0;background-color:transparent}@supports (inset-inline-start: 0){.searchbar-clear-button.sc-ion-searchbar-ios{inset-inline-end:0}}@supports not (inset-inline-start: 0){.searchbar-clear-button.sc-ion-searchbar-ios{right:0}[dir=rtl].sc-ion-searchbar-ios-h .searchbar-clear-button.sc-ion-searchbar-ios,[dir=rtl] .sc-ion-searchbar-ios-h .searchbar-clear-button.sc-ion-searchbar-ios{left:unset;right:unset;left:0}[dir=rtl].sc-ion-searchbar-ios .searchbar-clear-button.sc-ion-searchbar-ios{left:unset;right:unset;left:0}@supports selector(:dir(rtl)){.searchbar-clear-button.sc-ion-searchbar-ios:dir(rtl){left:unset;right:unset;left:0}}}.searchbar-clear-icon.sc-ion-searchbar-ios{width:1.125rem;height:100%}.searchbar-cancel-button.sc-ion-searchbar-ios{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0;flex-shrink:0;background-color:transparent;font-size:16px}.searchbar-left-aligned.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios{-webkit-margin-start:0;margin-inline-start:0}.searchbar-left-aligned.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{-webkit-padding-start:1.875rem;padding-inline-start:1.875rem}.searchbar-has-focus.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.searchbar-should-show-cancel.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{display:block}.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios,.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{transition:all 300ms ease}.searchbar-animated.searchbar-has-focus.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.searchbar-animated.searchbar-should-show-cancel.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{opacity:1;pointer-events:auto}.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{-webkit-margin-end:-100%;margin-inline-end:-100%;transform:translate3d(0, 0, 0);transition:all 300ms ease;opacity:0;pointer-events:none}.searchbar-no-animate.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios,.searchbar-no-animate.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios,.searchbar-no-animate.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{transition-duration:0ms}.ion-color.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{color:var(--ion-color-base)}@media (any-hover: hover){.ion-color.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios:hover{color:var(--ion-color-tint)}}ion-toolbar.sc-ion-searchbar-ios-h,ion-toolbar .sc-ion-searchbar-ios-h{padding-top:1px;padding-bottom:15px;min-height:52px}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color),ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color){color:inherit}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-cancel-button.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-cancel-button.sc-ion-searchbar-ios{color:currentColor}ion-toolbar.ion-color.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios{color:currentColor;opacity:0.5}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-input.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-input.sc-ion-searchbar-ios{background:rgba(var(--ion-color-contrast-rgb), 0.07);color:currentColor}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-clear-button.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-clear-button.sc-ion-searchbar-ios{color:currentColor;opacity:0.5}";
499
- const IonSearchbarIosStyle0 = searchbarIosCss;
500
-
501
- const searchbarMdCss = ".sc-ion-searchbar-md-h{--placeholder-color:initial;--placeholder-font-style:initial;--placeholder-font-weight:initial;--placeholder-opacity:0.6;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;width:100%;color:var(--color);font-family:var(--ion-font-family, inherit);box-sizing:border-box}.ion-color.sc-ion-searchbar-md-h{color:var(--ion-color-contrast)}.ion-color.sc-ion-searchbar-md-h .searchbar-input.sc-ion-searchbar-md{background:var(--ion-color-base)}.ion-color.sc-ion-searchbar-md-h .searchbar-clear-button.sc-ion-searchbar-md,.ion-color.sc-ion-searchbar-md-h .searchbar-cancel-button.sc-ion-searchbar-md,.ion-color.sc-ion-searchbar-md-h .searchbar-search-icon.sc-ion-searchbar-md{color:inherit}.searchbar-search-icon.sc-ion-searchbar-md{color:var(--icon-color);pointer-events:none}.searchbar-input-container.sc-ion-searchbar-md{display:block;position:relative;flex-shrink:1;width:100%}.searchbar-input.sc-ion-searchbar-md{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;border-radius:var(--border-radius);display:block;width:100%;min-height:inherit;border:0;outline:none;background:var(--background);font-family:inherit;box-shadow:var(--box-shadow);box-sizing:border-box;appearance:none}.searchbar-input.sc-ion-searchbar-md::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.searchbar-input.sc-ion-searchbar-md::-webkit-search-cancel-button,.searchbar-input.sc-ion-searchbar-md::-ms-clear{display:none}.searchbar-cancel-button.sc-ion-searchbar-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:none;height:100%;border:0;outline:none;color:var(--cancel-button-color);cursor:pointer;appearance:none}.searchbar-cancel-button.sc-ion-searchbar-md>div.sc-ion-searchbar-md{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.searchbar-clear-button.sc-ion-searchbar-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:none;min-height:0;outline:none;color:var(--clear-button-color);appearance:none}.searchbar-clear-button.sc-ion-searchbar-md:focus{opacity:0.5}.searchbar-has-value.searchbar-should-show-clear.sc-ion-searchbar-md-h .searchbar-clear-button.sc-ion-searchbar-md{display:block}.searchbar-disabled.sc-ion-searchbar-md-h{cursor:default;opacity:0.4;pointer-events:none}.sc-ion-searchbar-md-h{--background:var(--ion-background-color, #fff);--border-radius:2px;--box-shadow:0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);--cancel-button-color:var(--ion-color-step-900, #1a1a1a);--clear-button-color:initial;--color:var(--ion-color-step-850, #262626);--icon-color:var(--ion-color-step-600, #666666);-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;background:inherit}.searchbar-search-icon.sc-ion-searchbar-md{top:11px;width:1.3125rem;height:1.3125rem}@supports (inset-inline-start: 0){.searchbar-search-icon.sc-ion-searchbar-md{inset-inline-start:16px}}@supports not (inset-inline-start: 0){.searchbar-search-icon.sc-ion-searchbar-md{left:16px}[dir=rtl].sc-ion-searchbar-md-h .searchbar-search-icon.sc-ion-searchbar-md,[dir=rtl] .sc-ion-searchbar-md-h .searchbar-search-icon.sc-ion-searchbar-md{left:unset;right:unset;right:16px}[dir=rtl].sc-ion-searchbar-md .searchbar-search-icon.sc-ion-searchbar-md{left:unset;right:unset;right:16px}@supports selector(:dir(rtl)){.searchbar-search-icon.sc-ion-searchbar-md:dir(rtl){left:unset;right:unset;right:16px}}}.searchbar-cancel-button.sc-ion-searchbar-md{top:0;background-color:transparent;font-size:1.5em}@supports (inset-inline-start: 0){.searchbar-cancel-button.sc-ion-searchbar-md{inset-inline-start:9px}}@supports not (inset-inline-start: 0){.searchbar-cancel-button.sc-ion-searchbar-md{left:9px}[dir=rtl].sc-ion-searchbar-md-h .searchbar-cancel-button.sc-ion-searchbar-md,[dir=rtl] .sc-ion-searchbar-md-h .searchbar-cancel-button.sc-ion-searchbar-md{left:unset;right:unset;right:9px}[dir=rtl].sc-ion-searchbar-md .searchbar-cancel-button.sc-ion-searchbar-md{left:unset;right:unset;right:9px}@supports selector(:dir(rtl)){.searchbar-cancel-button.sc-ion-searchbar-md:dir(rtl){left:unset;right:unset;right:9px}}}.searchbar-search-icon.sc-ion-searchbar-md,.searchbar-cancel-button.sc-ion-searchbar-md{position:absolute}.searchbar-search-icon.ion-activated.sc-ion-searchbar-md,.searchbar-cancel-button.ion-activated.sc-ion-searchbar-md{background-color:transparent}.searchbar-input.sc-ion-searchbar-md{-webkit-padding-start:3.4375rem;padding-inline-start:3.4375rem;-webkit-padding-end:3.4375rem;padding-inline-end:3.4375rem;padding-top:0.375rem;padding-bottom:0.375rem;background-position:left 8px center;height:auto;font-size:1rem;font-weight:400;line-height:30px}[dir=rtl].sc-ion-searchbar-md-h .searchbar-input.sc-ion-searchbar-md,[dir=rtl] .sc-ion-searchbar-md-h .searchbar-input.sc-ion-searchbar-md{background-position:right 8px center}[dir=rtl].sc-ion-searchbar-md .searchbar-input.sc-ion-searchbar-md{background-position:right 8px center}@supports selector(:dir(rtl)){.searchbar-input.sc-ion-searchbar-md:dir(rtl){background-position:right 8px center}}.searchbar-clear-button.sc-ion-searchbar-md{top:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;position:absolute;height:100%;border:0;background-color:transparent}@supports (inset-inline-start: 0){.searchbar-clear-button.sc-ion-searchbar-md{inset-inline-end:13px}}@supports not (inset-inline-start: 0){.searchbar-clear-button.sc-ion-searchbar-md{right:13px}[dir=rtl].sc-ion-searchbar-md-h .searchbar-clear-button.sc-ion-searchbar-md,[dir=rtl] .sc-ion-searchbar-md-h .searchbar-clear-button.sc-ion-searchbar-md{left:unset;right:unset;left:13px}[dir=rtl].sc-ion-searchbar-md .searchbar-clear-button.sc-ion-searchbar-md{left:unset;right:unset;left:13px}@supports selector(:dir(rtl)){.searchbar-clear-button.sc-ion-searchbar-md:dir(rtl){left:unset;right:unset;left:13px}}}.searchbar-clear-button.ion-activated.sc-ion-searchbar-md{background-color:transparent}.searchbar-clear-icon.sc-ion-searchbar-md{width:1.375rem;height:100%}.searchbar-has-focus.sc-ion-searchbar-md-h .searchbar-search-icon.sc-ion-searchbar-md{display:block}.searchbar-has-focus.sc-ion-searchbar-md-h .searchbar-cancel-button.sc-ion-searchbar-md,.searchbar-should-show-cancel.sc-ion-searchbar-md-h .searchbar-cancel-button.sc-ion-searchbar-md{display:block}.searchbar-has-focus.sc-ion-searchbar-md-h .searchbar-cancel-button.sc-ion-searchbar-md+.searchbar-search-icon.sc-ion-searchbar-md,.searchbar-should-show-cancel.sc-ion-searchbar-md-h .searchbar-cancel-button.sc-ion-searchbar-md+.searchbar-search-icon.sc-ion-searchbar-md{display:none}ion-toolbar.sc-ion-searchbar-md-h,ion-toolbar .sc-ion-searchbar-md-h{-webkit-padding-start:7px;padding-inline-start:7px;-webkit-padding-end:7px;padding-inline-end:7px;padding-top:3px;padding-bottom:3px}";
502
- const IonSearchbarMdStyle0 = searchbarMdCss;
503
-
504
- const Searchbar = class {
505
- constructor(hostRef) {
506
- registerInstance(this, hostRef);
507
- this.ionInput = createEvent(this, "ionInput", 7);
508
- this.ionChange = createEvent(this, "ionChange", 7);
509
- this.ionCancel = createEvent(this, "ionCancel", 7);
510
- this.ionClear = createEvent(this, "ionClear", 7);
511
- this.ionBlur = createEvent(this, "ionBlur", 7);
512
- this.ionFocus = createEvent(this, "ionFocus", 7);
513
- this.ionStyle = createEvent(this, "ionStyle", 7);
514
- this.isCancelVisible = false;
515
- this.shouldAlignLeft = true;
516
- this.inputId = `ion-searchbar-${searchbarIds++}`;
517
- this.inheritedAttributes = {};
518
- /**
519
- * Clears the input field and triggers the control change.
520
- */
521
- this.onClearInput = async (shouldFocus) => {
522
- this.ionClear.emit();
523
- return new Promise((resolve) => {
524
- // setTimeout() fixes https://github.com/ionic-team/ionic/issues/7527
525
- // wait for 4 frames
526
- setTimeout(() => {
527
- const value = this.getValue();
528
- if (value !== '') {
529
- this.value = '';
530
- this.emitInputChange();
531
- /**
532
- * When tapping clear button
533
- * ensure input is focused after
534
- * clearing input so users
535
- * can quickly start typing.
536
- */
537
- if (shouldFocus && !this.focused) {
538
- this.setFocus();
539
- /**
540
- * The setFocus call above will clear focusedValue,
541
- * but ionChange will never have gotten a chance to
542
- * fire. Manually revert focusedValue so onBlur can
543
- * compare against what was in the box before the clear.
544
- */
545
- this.focusedValue = value;
546
- }
547
- }
548
- resolve();
549
- }, 16 * 4);
550
- });
551
- };
552
- /**
553
- * Clears the input field and tells the input to blur since
554
- * the clearInput function doesn't want the input to blur
555
- * then calls the custom cancel function if the user passed one in.
556
- */
557
- this.onCancelSearchbar = async (ev) => {
558
- if (ev) {
559
- ev.preventDefault();
560
- ev.stopPropagation();
561
- }
562
- this.ionCancel.emit();
563
- // get cached values before clearing the input
564
- const value = this.getValue();
565
- const focused = this.focused;
566
- await this.onClearInput();
567
- /**
568
- * If there used to be something in the box, and we weren't focused
569
- * beforehand (meaning no blur fired that would already handle this),
570
- * manually fire ionChange.
571
- */
572
- if (value && !focused) {
573
- this.emitValueChange(ev);
574
- }
575
- if (this.nativeInput) {
576
- this.nativeInput.blur();
577
- }
578
- };
579
- /**
580
- * Update the Searchbar input value when the input changes
581
- */
582
- this.onInput = (ev) => {
583
- const input = ev.target;
584
- if (input) {
585
- this.value = input.value;
586
- }
587
- this.emitInputChange(ev);
588
- };
589
- this.onChange = (ev) => {
590
- this.emitValueChange(ev);
591
- };
592
- /**
593
- * Sets the Searchbar to not focused and checks if it should align left
594
- * based on whether there is a value in the searchbar or not.
595
- */
596
- this.onBlur = (ev) => {
597
- this.focused = false;
598
- this.ionBlur.emit();
599
- this.positionElements();
600
- if (this.focusedValue !== this.value) {
601
- this.emitValueChange(ev);
602
- }
603
- this.focusedValue = undefined;
604
- };
605
- /**
606
- * Sets the Searchbar to focused and active on input focus.
607
- */
608
- this.onFocus = () => {
609
- this.focused = true;
610
- this.focusedValue = this.value;
611
- this.ionFocus.emit();
612
- this.positionElements();
613
- };
614
- this.focused = false;
615
- this.noAnimate = true;
616
- this.color = undefined;
617
- this.animated = false;
618
- this.autocapitalize = 'default';
619
- this.autocomplete = 'off';
620
- this.autocorrect = 'off';
621
- this.cancelButtonIcon = config$1.get('backButtonIcon', arrowBackSharp);
622
- this.cancelButtonText = 'Cancel';
623
- this.clearIcon = undefined;
624
- this.debounce = undefined;
625
- this.disabled = false;
626
- this.inputmode = undefined;
627
- this.enterkeyhint = undefined;
628
- this.maxlength = undefined;
629
- this.minlength = undefined;
630
- this.name = this.inputId;
631
- this.placeholder = 'Search';
632
- this.searchIcon = undefined;
633
- this.showCancelButton = 'never';
634
- this.showClearButton = 'always';
635
- this.spellcheck = false;
636
- this.type = 'search';
637
- this.value = '';
638
- }
639
- /**
640
- * lang and dir are globally enumerated attributes.
641
- * As a result, creating these as properties
642
- * can have unintended side effects. Instead, we
643
- * listen for attribute changes and inherit them
644
- * to the inner `<input>` element.
645
- */
646
- onLangChanged(newValue) {
647
- this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { lang: newValue });
648
- forceUpdate(this);
649
- }
650
- onDirChanged(newValue) {
651
- this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { dir: newValue });
652
- forceUpdate(this);
653
- }
654
- debounceChanged() {
655
- const { ionInput, debounce, originalIonInput } = this;
656
- /**
657
- * If debounce is undefined, we have to manually revert the ionInput emitter in case
658
- * debounce used to be set to a number. Otherwise, the event would stay debounced.
659
- */
660
- this.ionInput = debounce === undefined ? originalIonInput !== null && originalIonInput !== void 0 ? originalIonInput : ionInput : debounceEvent(ionInput, debounce);
661
- }
662
- valueChanged() {
663
- const inputEl = this.nativeInput;
664
- const value = this.getValue();
665
- if (inputEl && inputEl.value !== value) {
666
- inputEl.value = value;
667
- }
668
- }
669
- showCancelButtonChanged() {
670
- requestAnimationFrame(() => {
671
- this.positionElements();
672
- forceUpdate(this);
673
- });
674
- }
675
- connectedCallback() {
676
- this.emitStyle();
677
- }
678
- componentWillLoad() {
679
- this.inheritedAttributes = Object.assign({}, inheritAttributes$1(this.el, ['lang', 'dir']));
680
- }
681
- componentDidLoad() {
682
- this.originalIonInput = this.ionInput;
683
- this.positionElements();
684
- this.debounceChanged();
685
- setTimeout(() => {
686
- this.noAnimate = false;
687
- }, 300);
688
- }
689
- emitStyle() {
690
- this.ionStyle.emit({
691
- searchbar: true,
692
- });
693
- }
694
- /**
695
- * Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global
696
- * `input.focus()`.
697
- *
698
- * Developers who wish to focus an input when a page enters
699
- * should call `setFocus()` in the `ionViewDidEnter()` lifecycle method.
700
- *
701
- * Developers who wish to focus an input when an overlay is presented
702
- * should call `setFocus` after `didPresent` has resolved.
703
- *
704
- * See [managing focus](/docs/developing/managing-focus) for more information.
705
- */
706
- async setFocus() {
707
- if (this.nativeInput) {
708
- this.nativeInput.focus();
709
- }
710
- }
711
- /**
712
- * Returns the native `<input>` element used under the hood.
713
- */
714
- async getInputElement() {
715
- /**
716
- * If this gets called in certain early lifecycle hooks (ex: Vue onMounted),
717
- * nativeInput won't be defined yet with the custom elements build, so wait for it to load in.
718
- */
719
- if (!this.nativeInput) {
720
- await new Promise((resolve) => componentOnReady(this.el, resolve));
721
- }
722
- return Promise.resolve(this.nativeInput);
723
- }
724
- /**
725
- * Emits an `ionChange` event.
726
- *
727
- * This API should be called for user committed changes.
728
- * This API should not be used for external value changes.
729
- */
730
- emitValueChange(event) {
731
- const { value } = this;
732
- // Checks for both null and undefined values
733
- const newValue = value == null ? value : value.toString();
734
- // Emitting a value change should update the internal state for tracking the focused value
735
- this.focusedValue = newValue;
736
- this.ionChange.emit({ value: newValue, event });
737
- }
738
- /**
739
- * Emits an `ionInput` event.
740
- */
741
- emitInputChange(event) {
742
- const { value } = this;
743
- this.ionInput.emit({ value, event });
744
- }
745
- /**
746
- * Positions the input search icon, placeholder, and the cancel button
747
- * based on the input value and if it is focused. (ios only)
748
- */
749
- positionElements() {
750
- const value = this.getValue();
751
- const prevAlignLeft = this.shouldAlignLeft;
752
- const mode = getIonMode$1(this);
753
- const shouldAlignLeft = !this.animated || value.trim() !== '' || !!this.focused;
754
- this.shouldAlignLeft = shouldAlignLeft;
755
- if (mode !== 'ios') {
756
- return;
757
- }
758
- if (prevAlignLeft !== shouldAlignLeft) {
759
- this.positionPlaceholder();
760
- }
761
- if (this.animated) {
762
- this.positionCancelButton();
763
- }
764
- }
765
- /**
766
- * Positions the input placeholder
767
- */
768
- positionPlaceholder() {
769
- const inputEl = this.nativeInput;
770
- if (!inputEl) {
771
- return;
772
- }
773
- const rtl = isRTL$1(this.el);
774
- const iconEl = (this.el.shadowRoot || this.el).querySelector('.searchbar-search-icon');
775
- if (this.shouldAlignLeft) {
776
- inputEl.removeAttribute('style');
777
- iconEl.removeAttribute('style');
778
- }
779
- else {
780
- // Create a dummy span to get the placeholder width
781
- const doc = document;
782
- const tempSpan = doc.createElement('span');
783
- tempSpan.innerText = this.placeholder || '';
784
- doc.body.appendChild(tempSpan);
785
- // Get the width of the span then remove it
786
- raf(() => {
787
- const textWidth = tempSpan.offsetWidth;
788
- tempSpan.remove();
789
- // Calculate the input padding
790
- const inputLeft = 'calc(50% - ' + textWidth / 2 + 'px)';
791
- // Calculate the icon margin
792
- /**
793
- * We take the icon width to account
794
- * for any text scales applied to the icon
795
- * such as Dynamic Type on iOS as well as 8px
796
- * of padding.
797
- */
798
- const iconLeft = 'calc(50% - ' + (textWidth / 2 + iconEl.clientWidth + 8) + 'px)';
799
- // Set the input padding start and icon margin start
800
- if (rtl) {
801
- inputEl.style.paddingRight = inputLeft;
802
- iconEl.style.marginRight = iconLeft;
803
- }
804
- else {
805
- inputEl.style.paddingLeft = inputLeft;
806
- iconEl.style.marginLeft = iconLeft;
807
- }
808
- });
809
- }
810
- }
811
- /**
812
- * Show the iOS Cancel button on focus, hide it offscreen otherwise
813
- */
814
- positionCancelButton() {
815
- const rtl = isRTL$1(this.el);
816
- const cancelButton = (this.el.shadowRoot || this.el).querySelector('.searchbar-cancel-button');
817
- const shouldShowCancel = this.shouldShowCancelButton();
818
- if (cancelButton !== null && shouldShowCancel !== this.isCancelVisible) {
819
- const cancelStyle = cancelButton.style;
820
- this.isCancelVisible = shouldShowCancel;
821
- if (shouldShowCancel) {
822
- if (rtl) {
823
- cancelStyle.marginLeft = '0';
824
- }
825
- else {
826
- cancelStyle.marginRight = '0';
827
- }
828
- }
829
- else {
830
- const offset = cancelButton.offsetWidth;
831
- if (offset > 0) {
832
- if (rtl) {
833
- cancelStyle.marginLeft = -offset + 'px';
834
- }
835
- else {
836
- cancelStyle.marginRight = -offset + 'px';
837
- }
838
- }
839
- }
840
- }
841
- }
842
- getValue() {
843
- return this.value || '';
844
- }
845
- hasValue() {
846
- return this.getValue() !== '';
847
- }
848
- /**
849
- * Determines whether or not the cancel button should be visible onscreen.
850
- * Cancel button should be shown if one of two conditions applies:
851
- * 1. `showCancelButton` is set to `always`.
852
- * 2. `showCancelButton` is set to `focus`, and the searchbar has been focused.
853
- */
854
- shouldShowCancelButton() {
855
- if (this.showCancelButton === 'never' || (this.showCancelButton === 'focus' && !this.focused)) {
856
- return false;
857
- }
858
- return true;
859
- }
860
- /**
861
- * Determines whether or not the clear button should be visible onscreen.
862
- * Clear button should be shown if one of two conditions applies:
863
- * 1. `showClearButton` is set to `always`.
864
- * 2. `showClearButton` is set to `focus`, and the searchbar has been focused.
865
- */
866
- shouldShowClearButton() {
867
- if (this.showClearButton === 'never' || (this.showClearButton === 'focus' && !this.focused)) {
868
- return false;
869
- }
870
- return true;
871
- }
872
- render() {
873
- const { cancelButtonText, autocapitalize } = this;
874
- const animated = this.animated && config$1.getBoolean('animated', true);
875
- const mode = getIonMode$1(this);
876
- const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
877
- const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
878
- const shouldShowCancelButton = this.shouldShowCancelButton();
879
- const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '9c7b4d2e86d9bcd12e57c9a96723d3da598a3773', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, h("div", { key: '1c25268a776134cccd29eb752898cb8ac0eed30f', "aria-hidden": "true" }, mode === 'md' ? (h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
880
- return (h(Host, { key: 'feef9fc7e405656e134a76dc037aaaa1a4ce36b4', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
881
- [mode]: true,
882
- 'searchbar-animated': animated,
883
- 'searchbar-disabled': this.disabled,
884
- 'searchbar-no-animate': animated && this.noAnimate,
885
- 'searchbar-has-value': this.hasValue(),
886
- 'searchbar-left-aligned': this.shouldAlignLeft,
887
- 'searchbar-has-focus': this.focused,
888
- 'searchbar-should-show-clear': this.shouldShowClearButton(),
889
- 'searchbar-should-show-cancel': this.shouldShowCancelButton(),
890
- }) }, h("div", { key: '92e3925dc0de468e5665705902153837105dfa57', class: "searchbar-input-container" }, h("input", Object.assign({ key: 'fb74faf81b347a62338ccdac981525df1c52b322', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, h("ion-icon", { key: 'd58c3636dac1d2e4135989f4c07dc95c51492e60', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), h("button", { key: '1cece7c63ca5ca4b8799e15ee6d2bac100ef0d5e', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
891
- /**
892
- * This prevents mobile browsers from
893
- * blurring the input when the clear
894
- * button is activated.
895
- */
896
- ev.preventDefault();
897
- }, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: 'fe3c2b9cac29002f69e95a89b554c7504e2df050', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
898
- }
899
- get el() { return getElement(this); }
900
- static get watchers() { return {
901
- "lang": ["onLangChanged"],
902
- "dir": ["onDirChanged"],
903
- "debounce": ["debounceChanged"],
904
- "value": ["valueChanged"],
905
- "showCancelButton": ["showCancelButtonChanged"]
906
- }; }
907
- };
908
- let searchbarIds = 0;
909
- Searchbar.style = {
910
- ios: IonSearchbarIosStyle0,
911
- md: IonSearchbarMdStyle0
912
- };
913
-
914
496
  const skeletonTextCss = ":host{--background:rgba(var(--background-rgb, var(--ion-text-color-rgb, 0, 0, 0)), 0.065);border-radius:var(--border-radius, inherit);display:block;width:100%;height:inherit;margin-top:4px;margin-bottom:4px;background:var(--background);line-height:10px;user-select:none;pointer-events:none}span{display:inline-block}:host(.in-media){margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;height:100%}:host(.skeleton-text-animated){position:relative;background:linear-gradient(to right, rgba(var(--background-rgb, var(--ion-text-color-rgb, 0, 0, 0)), 0.065) 8%, rgba(var(--background-rgb, var(--ion-text-color-rgb, 0, 0, 0)), 0.135) 18%, rgba(var(--background-rgb, var(--ion-text-color-rgb, 0, 0, 0)), 0.065) 33%);background-size:800px 104px;animation-duration:1s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:shimmer;animation-timing-function:linear}@keyframes shimmer{0%{background-position:-400px 0}100%{background-position:400px 0}}";
915
497
  const IonSkeletonTextStyle0 = skeletonTextCss;
916
498
 
@@ -1795,7 +1377,7 @@ Toast.style = {
1795
1377
  md: IonToastMdStyle0
1796
1378
  };
1797
1379
 
1798
- const posAddNewThingCss = ":host{font-family:var(--font-sans);display:block}button#new{cursor:pointer;display:flex;align-items:center;justify-content:center;border:none;width:var(--scale-5);height:var(--scale-5);background-color:var(--pos-primary-color);color:var(--pos-primary-text-color);font-size:var(--scale-6);border-radius:var(--radius-xs)}button#new:hover,button#new:focus{outline:none;filter:brightness(110%);box-shadow:var(--shadow-sm)}pos-new-thing-form{margin:var(--scale-3)}";
1380
+ const posAddNewThingCss = ":host{font-family:var(--font-sans);display:block}button#new{cursor:pointer;display:flex;align-items:center;justify-content:center;border:none;width:var(--size-10);height:var(--size-10);background-color:var(--pos-primary-color);color:var(--pos-primary-text-color);font-size:var(--scale-6);border-radius:var(--radius-xs)}button#new:hover,button#new:focus{outline:none;filter:brightness(110%);box-shadow:var(--shadow-sm)}pos-new-thing-form{margin:var(--scale-3)}";
1799
1381
  const PosAddNewThingStyle0 = posAddNewThingCss;
1800
1382
 
1801
1383
  const PosAddNewThing = class {
@@ -1806,7 +1388,7 @@ const PosAddNewThing = class {
1806
1388
  this.dialog.showModal();
1807
1389
  }
1808
1390
  render() {
1809
- return (h(Host, { key: '6142a141ef03ca93a362a6b00ebe8d515c3a677a' }, h("button", { key: '72ecf353cd3a7d2d68f9ef28eb1bbe7fdb88b700', id: "new", title: "Add a new thing", onClick: () => this.openDialog() }, h("ion-icon", { key: 'bd05d75c42c10de6df519575787fc66eafb22930', name: "add-circle-outline" })), h("pos-dialog", { key: '23cf0118149704dfca16758970e4f4658e87e946', ref: el => (this.dialog = el) }, h("span", { key: '5af7b7f618cc20684c39134b5ea295400e651cb6', slot: "title" }, "Add a new thing"), h("pos-new-thing-form", { key: '895496c2f6ede3c8677d9d918e0b13582090baed', slot: "content", referenceUri: this.referenceUri }))));
1391
+ return (h(Host, { key: '5ed3ba3982467778ed2b9b02090c230acb6b1762' }, h("button", { key: '96ff5dbd0ba4ca4d8c1d25045efa06fea062e9cf', id: "new", title: "Add a new thing", onClick: () => this.openDialog() }, h("ion-icon", { key: '201a19c8ecb39e0e913d3fb8cf1ebee06bc41df5', name: "add-circle-outline" })), h("pos-dialog", { key: '421da81e6faf52119fe600cc388663299eab67ec', ref: el => (this.dialog = el) }, h("span", { key: '454e6e05dc478e9c1b378cb3308f006fab4d8738', slot: "title" }, "Add a new thing"), h("pos-new-thing-form", { key: 'a469379848776a4c7e9f8e3f94da76ba048d7fab', slot: "content", referenceUri: this.referenceUri }))));
1810
1392
  }
1811
1393
  };
1812
1394
  PosAddNewThing.style = PosAddNewThingStyle0;
@@ -2867,6 +2449,158 @@ class AnonymousSubject extends Subject {
2867
2449
  }
2868
2450
  }
2869
2451
 
2452
+ const dateTimestampProvider = {
2453
+ now() {
2454
+ return (dateTimestampProvider.delegate || Date).now();
2455
+ },
2456
+ delegate: undefined,
2457
+ };
2458
+
2459
+ class Action extends Subscription {
2460
+ constructor(scheduler, work) {
2461
+ super();
2462
+ }
2463
+ schedule(state, delay = 0) {
2464
+ return this;
2465
+ }
2466
+ }
2467
+
2468
+ const intervalProvider = {
2469
+ setInterval(handler, timeout, ...args) {
2470
+ const { delegate } = intervalProvider;
2471
+ if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) {
2472
+ return delegate.setInterval(handler, timeout, ...args);
2473
+ }
2474
+ return setInterval(handler, timeout, ...args);
2475
+ },
2476
+ clearInterval(handle) {
2477
+ const { delegate } = intervalProvider;
2478
+ return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle);
2479
+ },
2480
+ delegate: undefined,
2481
+ };
2482
+
2483
+ class AsyncAction extends Action {
2484
+ constructor(scheduler, work) {
2485
+ super(scheduler, work);
2486
+ this.scheduler = scheduler;
2487
+ this.work = work;
2488
+ this.pending = false;
2489
+ }
2490
+ schedule(state, delay = 0) {
2491
+ var _a;
2492
+ if (this.closed) {
2493
+ return this;
2494
+ }
2495
+ this.state = state;
2496
+ const id = this.id;
2497
+ const scheduler = this.scheduler;
2498
+ if (id != null) {
2499
+ this.id = this.recycleAsyncId(scheduler, id, delay);
2500
+ }
2501
+ this.pending = true;
2502
+ this.delay = delay;
2503
+ this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay);
2504
+ return this;
2505
+ }
2506
+ requestAsyncId(scheduler, _id, delay = 0) {
2507
+ return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);
2508
+ }
2509
+ recycleAsyncId(_scheduler, id, delay = 0) {
2510
+ if (delay != null && this.delay === delay && this.pending === false) {
2511
+ return id;
2512
+ }
2513
+ if (id != null) {
2514
+ intervalProvider.clearInterval(id);
2515
+ }
2516
+ return undefined;
2517
+ }
2518
+ execute(state, delay) {
2519
+ if (this.closed) {
2520
+ return new Error('executing a cancelled action');
2521
+ }
2522
+ this.pending = false;
2523
+ const error = this._execute(state, delay);
2524
+ if (error) {
2525
+ return error;
2526
+ }
2527
+ else if (this.pending === false && this.id != null) {
2528
+ this.id = this.recycleAsyncId(this.scheduler, this.id, null);
2529
+ }
2530
+ }
2531
+ _execute(state, _delay) {
2532
+ let errored = false;
2533
+ let errorValue;
2534
+ try {
2535
+ this.work(state);
2536
+ }
2537
+ catch (e) {
2538
+ errored = true;
2539
+ errorValue = e ? e : new Error('Scheduled action threw falsy error');
2540
+ }
2541
+ if (errored) {
2542
+ this.unsubscribe();
2543
+ return errorValue;
2544
+ }
2545
+ }
2546
+ unsubscribe() {
2547
+ if (!this.closed) {
2548
+ const { id, scheduler } = this;
2549
+ const { actions } = scheduler;
2550
+ this.work = this.state = this.scheduler = null;
2551
+ this.pending = false;
2552
+ arrRemove(actions, this);
2553
+ if (id != null) {
2554
+ this.id = this.recycleAsyncId(scheduler, id, null);
2555
+ }
2556
+ this.delay = null;
2557
+ super.unsubscribe();
2558
+ }
2559
+ }
2560
+ }
2561
+
2562
+ class Scheduler {
2563
+ constructor(schedulerActionCtor, now = Scheduler.now) {
2564
+ this.schedulerActionCtor = schedulerActionCtor;
2565
+ this.now = now;
2566
+ }
2567
+ schedule(work, delay = 0, state) {
2568
+ return new this.schedulerActionCtor(this, work).schedule(state, delay);
2569
+ }
2570
+ }
2571
+ Scheduler.now = dateTimestampProvider.now;
2572
+
2573
+ class AsyncScheduler extends Scheduler {
2574
+ constructor(SchedulerAction, now = Scheduler.now) {
2575
+ super(SchedulerAction, now);
2576
+ this.actions = [];
2577
+ this._active = false;
2578
+ }
2579
+ flush(action) {
2580
+ const { actions } = this;
2581
+ if (this._active) {
2582
+ actions.push(action);
2583
+ return;
2584
+ }
2585
+ let error;
2586
+ this._active = true;
2587
+ do {
2588
+ if ((error = action.execute(action.state, action.delay))) {
2589
+ break;
2590
+ }
2591
+ } while ((action = actions.shift()));
2592
+ this._active = false;
2593
+ if (error) {
2594
+ while ((action = actions.shift())) {
2595
+ action.unsubscribe();
2596
+ }
2597
+ throw error;
2598
+ }
2599
+ }
2600
+ }
2601
+
2602
+ const asyncScheduler = new AsyncScheduler(AsyncAction);
2603
+
2870
2604
  /******************************************************************************
2871
2605
  Copyright (c) Microsoft Corporation.
2872
2606
 
@@ -3082,6 +2816,46 @@ function process(asyncIterable, subscriber) {
3082
2816
  });
3083
2817
  }
3084
2818
 
2819
+ function debounceTime(dueTime, scheduler = asyncScheduler) {
2820
+ return operate((source, subscriber) => {
2821
+ let activeTask = null;
2822
+ let lastValue = null;
2823
+ let lastTime = null;
2824
+ const emit = () => {
2825
+ if (activeTask) {
2826
+ activeTask.unsubscribe();
2827
+ activeTask = null;
2828
+ const value = lastValue;
2829
+ lastValue = null;
2830
+ subscriber.next(value);
2831
+ }
2832
+ };
2833
+ function emitWhenIdle() {
2834
+ const targetTime = lastTime + dueTime;
2835
+ const now = scheduler.now();
2836
+ if (now < targetTime) {
2837
+ activeTask = this.schedule(undefined, targetTime - now);
2838
+ subscriber.add(activeTask);
2839
+ return;
2840
+ }
2841
+ emit();
2842
+ }
2843
+ source.subscribe(createOperatorSubscriber(subscriber, (value) => {
2844
+ lastValue = value;
2845
+ lastTime = scheduler.now();
2846
+ if (!activeTask) {
2847
+ activeTask = scheduler.schedule(emitWhenIdle, dueTime);
2848
+ subscriber.add(activeTask);
2849
+ }
2850
+ }, () => {
2851
+ emit();
2852
+ subscriber.complete();
2853
+ }, undefined, () => {
2854
+ lastValue = activeTask = null;
2855
+ }));
2856
+ });
2857
+ }
2858
+
3085
2859
  function takeUntil(notifier) {
3086
2860
  return operate((source, subscriber) => {
3087
2861
  innerFrom(notifier).subscribe(createOperatorSubscriber(subscriber, () => subscriber.complete(), noop));
@@ -3137,11 +2911,11 @@ const PosApp = class {
3137
2911
  }
3138
2912
  }
3139
2913
  render() {
3140
- return h("slot", { key: '988c393af75e8bd0f4ff2b4c04fe33b1ed686fa7' });
2914
+ return h("slot", { key: '402887f3383b6053da157df211c28977720db8e2' });
3141
2915
  }
3142
2916
  };
3143
2917
 
3144
- const posAppBrowserCss = "pos-router {\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\npos-navigation-bar {\n max-width: var(--width-lg);\n margin: 0;\n}\n\npos-add-new-thing,\npos-login {\n flex: 0 1 auto; /* Behält die Breite des Inhalts bei */\n}\n\nheader,\nfooter {\n display: flex;\n gap: var(--size-1);\n height: auto;\n justify-content: center;\n align-items: center;\n padding: var(--size-1);\n}\n\nfooter svg {\n width: var(--size-5);\n height: var(--size-5);\n}\n\nfooter {\n font-size: var(--scale-fluid-000);\n\n .settings {\n padding: 0 var(--size-1);\n text-decoration: none;\n background-color: var(--pos-background-color);\n border: 1px solid var(--pos-secondary-border-color);\n color: var(--pos-secondary-border-color);\n border-radius: var(--radius-xs);\n\n &:hover {\n background-color: var(--pos-secondary-border-color);\n color: var(--pos-background-color);\n }\n }\n}\n\nheader {\n flex-wrap: wrap;\n padding: 0 var(--size-8);\n}\n\nmain {\n flex: 1;\n max-height: 100vh;\n overflow: auto;\n}\n\n@media (max-width: 640px) {\n header {\n padding: 0 var(--size-1) var(--size-1);\n justify-content: space-between;\n }\n\n pos-navigation-bar {\n flex-basis: 100%;\n order: 0;\n }\n\n pos-add-new-thing,\n pos-login {\n order: 1;\n }\n}\n";
2918
+ const posAppBrowserCss = "pos-router {\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\npos-navigation {\n max-width: var(--width-lg);\n margin: 0;\n min-width: var(--size-32);\n flex-shrink: 1; /* Ensure navigation can shrink */\n}\n\npos-add-new-thing,\npos-login {\n flex: 0 1 auto;\n flex-shrink: 0; /* Ensure those items don't shrink */\n}\n\nheader,\nfooter {\n display: flex;\n gap: var(--size-1);\n height: auto;\n justify-content: center;\n align-items: center;\n padding: var(--size-1);\n}\n\nfooter svg {\n width: var(--size-5);\n height: var(--size-5);\n}\n\nfooter {\n font-size: var(--scale-fluid-000);\n\n .settings {\n padding: 0 var(--size-1);\n text-decoration: none;\n background-color: var(--pos-background-color);\n border: 1px solid var(--pos-secondary-border-color);\n color: var(--pos-secondary-border-color);\n border-radius: var(--radius-xs);\n\n &:hover {\n background-color: var(--pos-secondary-border-color);\n color: var(--pos-background-color);\n }\n }\n}\n\nheader {\n flex-wrap: nowrap;\n padding: var(--size-1) var(--size-8);\n}\n\nmain {\n flex: 1;\n max-height: 100vh;\n overflow: auto;\n}\n\n@media (max-width: 640px) {\n header {\n padding: var(--size-1);\n justify-content: space-between;\n }\n}\n";
3145
2919
  const PosAppBrowserStyle0 = posAppBrowserCss;
3146
2920
 
3147
2921
  const PosAppBrowser = class {
@@ -3151,14 +2925,23 @@ const PosAppBrowser = class {
3151
2925
  /**
3152
2926
  * The mode the app is running in:
3153
2927
  *
3154
- * - standalone: use this when you deploy it as a standalone web application
2928
+ * - standalone: use this when you deploy it as a standalone web application
3155
2929
  * - pod: use this when you host this app as a default interface for you pod
3156
2930
  */
3157
2931
  this.mode = 'standalone';
3158
2932
  this.uri = '';
3159
2933
  }
3160
2934
  render() {
3161
- return (h(Host, { key: '50b6e91f4e98be29cfa37552eb799883aeb49c9e' }, h("pos-app", { key: '652617d5eaf3653caeb58b9e93dff09810a587a3', restorePreviousSession: this.restorePreviousSession }, h("pos-error-toast", { key: 'f4a29b30c2a4caece50c0da046426bc50a3b402e' }, h("pos-router", { key: 'd3f2307db47406c4d84c9b27ac767d263ae81c32', mode: this.mode, "onPod-os:route-changed": e => (this.uri = e.detail) }, h("header", { key: '521c8469dae209a27780d62a5922f8a15d393e07' }, h("pos-add-new-thing", { key: '2fdd9716da4b3590fb0983a4b50f8c63eca26dce', referenceUri: this.uri }), h("pos-navigation-bar", { key: '6add9651de9ff5ca8496470c0df1341927683001', uri: this.uri === 'pod-os:dashboard' ? '' : this.uri }), h("pos-login", { key: '87a60cc03fc63a2ca68b294726e7e44a09bdc835' })), h("main", { key: 'dd2b3de09ca7f8957b240b030cafeeac37e76c1b' }, this.uri.startsWith('pod-os:') ? (h("pos-internal-router", { uri: this.uri })) : (h("pos-resource", { key: this.uri, uri: this.uri }, h("pos-type-router", null)))), h("footer", { key: 'ea1444713656c8740d81c5ac777b72bb6e287729' }, h(Logo, { key: '1bba3eec9e30c30f9132a6524e00ec212169f402' }), h("span", { key: '3b38a5e1704559f271075b60a27d8334f41a09dc' }, "PodOS Browser"), h("span", { key: '848dd110da12d70ec7798bfcf042638af8f7b121' }, "|"), h("a", { key: '8b748b91e4ae5351d0b2081dcb2af09867a00aee', class: "settings", href: "?uri=pod-os%3Asettings" }, "\u2699 Settings")))))));
2935
+ return (h(Host, { key: 'd2c863f8abf790352cdf9c830a1baa8d7aee95a8' }, h("pos-app", { key: '163415bea00a0a18f5e97f5cb7f3e5b9f5910f61', restorePreviousSession: this.restorePreviousSession }, h("pos-error-toast", { key: '799735b00aff86946259013132079814520ced7e' }, h("pos-router", { key: 'bdb89d03d93937399ec38b0b2c1d695feea248b9', mode: this.mode, "onPod-os:route-changed": e => (this.uri = e.detail) }, h("header", { key: 'e828af57fa2d8842c058197a826ac488cbb2a968' }, h("pos-add-new-thing", { key: '28eed0a89a4e554e88ea4fce13b2dd59c5ce0149', referenceUri: this.uri }), h("pos-navigation", { key: '16a06ae6aea6ac316cacc4ffa52442b3ada62d62', uri: this.uri === 'pod-os:dashboard' ? '' : this.uri }), h("pos-login", { key: '9577c4aa8a18af341715b6e51946dbb4481ef963' })), h("main", { key: '73dc7ba162440c5198a31f5a4b060dc2c2d1c70a' }, this.mainContent()), h("footer", { key: 'cb18c8eb3abc1ee62426db39a61e650df2906241' }, h(Logo, { key: 'e9205f06faa7153310a17470f55b97a423cf6691' }), h("span", { key: '7be0a255d0ca50d961f122fdfc9fd3bb3fdfd624' }, "PodOS Browser"), h("span", { key: '3ed17bc88faffbcfa973278c76f63a2a199ec026' }, "|"), h("a", { key: 'ab88d3e93e59b918dd21b8cd42b70522dc532730', class: "settings", href: "?uri=pod-os%3Asettings" }, "\u2699 Settings")))))));
2936
+ }
2937
+ mainContent() {
2938
+ if (this.uri === '') {
2939
+ return null;
2940
+ }
2941
+ if (this.uri.startsWith('pod-os:')) {
2942
+ return h("pos-internal-router", { uri: this.uri });
2943
+ }
2944
+ return (h("pos-resource", { key: this.uri, uri: this.uri }, h("pos-type-router", null)));
3162
2945
  }
3163
2946
  };
3164
2947
  const Logo = () => {
@@ -3199,7 +2982,7 @@ const PosAppSettings = class {
3199
2982
  registerInstance(this, hostRef);
3200
2983
  }
3201
2984
  render() {
3202
- return h("pos-setting-offline-cache", { key: 'f065206f6291089773a19045243f04b6ce35eeb9' });
2985
+ return h("pos-setting-offline-cache", { key: '0da588136a4c7c4238e0387bfe0649464ccd1c7d' });
3203
2986
  }
3204
2987
  };
3205
2988
  PosAppSettings.style = PosAppSettingsStyle0;
@@ -3234,7 +3017,7 @@ const PosDialog = class {
3234
3017
  this.dialog.close();
3235
3018
  }
3236
3019
  render() {
3237
- return (h(Host, { key: '168dc7d1cf3feabd5f9b2b3f9add6b04467b36ef' }, h("dialog", { key: '8bbfb245d9ff066d111c116c1715be25b0907403', ref: el => (this.dialog = el) }, h("header", { key: '94e28eb2b8147cb6b2aedda0d8e6a5158117788e' }, h("slot", { key: 'a40c2d397b9f54056d4fd8089fdfcc1e446b6d61', name: "title" }), h("button", { key: 'f0f64f5aaafc331f9e3d0fb6201c453600157db1', tabindex: -1, id: "close", title: "Close", onClick: () => this.close() }, h("ion-icon", { key: 'd94a0cf3d19d7caa3717690004101e3ff4748760', name: "close-outline" }))), h("slot", { key: '3181fafe55869add4a587bf4726226055e98588d', name: "content" }))));
3020
+ return (h(Host, { key: '307e23d3f92eae595a6bb9fd3e2487387d9b02c2' }, h("dialog", { key: '4c21714a0e2e84d809fe46b75d875c961ff8240c', ref: el => (this.dialog = el) }, h("header", { key: '0b9276c31a8deffa524a65b744d0ced04a753c1b' }, h("slot", { key: 'f4bcf72fcb25ea2619a0d7a40f524a10a91c0ca6', name: "title" }), h("button", { key: '8afb0911e29f8b4c81ff31f498266b398125327a', tabindex: -1, id: "close", title: "Close", onClick: () => this.close() }, h("ion-icon", { key: '464669b8a7f2aa1a1d274f933bb394a61abffc99', name: "close-outline" }))), h("slot", { key: 'f9fa43f73f8c295b6c728b4c7e7e3bf5c3be8948', name: "content" }))));
3238
3021
  }
3239
3022
  };
3240
3023
  PosDialog.style = PosDialogStyle0;
@@ -3269,7 +3052,7 @@ const PosErrorToast = class {
3269
3052
  await toast.present();
3270
3053
  }
3271
3054
  render() {
3272
- return (h(Host, { key: 'c1ee5f8a19177c79a3fe377fa27e4a32ffa9db9f' }, h("ion-toast", { key: '8759a3436a5caa16a11a2900a5f67d0dd205d097', trigger: "never", message: "Workarround to preload ion-toast and ion-ripple-effect to be able to show errors while offline", duration: 0 }, h("ion-ripple-effect", { key: '990aa24f2a18750ec5307498acda539b784c86c4' })), h("slot", { key: 'bea0650cc211dc2a161e7c634825adc045647d84' })));
3055
+ return (h(Host, { key: '0dce513e04101d3b9011c635f5aab8897a246385' }, h("ion-toast", { key: '956224c61589fca317f8143055344c857aa894cf', trigger: "never", message: "Workarround to preload ion-toast and ion-ripple-effect to be able to show errors while offline", duration: 0 }, h("ion-ripple-effect", { key: 'e96e65e2f06b61970e241639e7c429a90404517e' })), h("slot", { key: '8869125c64fb97f9736e30df0a748c9ce6aec1da' })));
3273
3056
  }
3274
3057
  };
3275
3058
 
@@ -3286,15 +3069,16 @@ const PosExampleResources = class {
3286
3069
  };
3287
3070
  PosExampleResources.style = PosExampleResourcesStyle0;
3288
3071
 
3289
- const posGettingStartedCss = ":host{border:var(--size-px) solid var(--pos-border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--size-8);max-width:var(--size-96);background:var(--pos-card-background)}.question{font-weight:var(--weight-semibold)}a{font-weight:var(--weight-bold);color:var(--pos-primary-color)}";
3072
+ const posGettingStartedCss = ":host{border:var(--size-px) solid var(--pos-border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--size-8);max-width:var(--size-96);background:var(--pos-card-background)}.question{font-weight:var(--weight-semibold)}a{font-weight:var(--weight-bold);color:var(--pos-primary-color)}button.login{background:none;color:var(--pos-primary-color);display:inline;text-decoration:underline;border:none;padding:0;margin:0;cursor:pointer;font-size:unset}";
3290
3073
  const PosGettingStartedStyle0 = posGettingStartedCss;
3291
3074
 
3292
3075
  const PosGettingStarted = class {
3293
3076
  constructor(hostRef) {
3294
3077
  registerInstance(this, hostRef);
3078
+ this.login = createEvent(this, "pod-os:login", 7);
3295
3079
  }
3296
3080
  render() {
3297
- return (h(Host, { key: 'a31a64545a5960ce8e34f0c612d2755e465c1131' }, h("div", { key: '29ec2c449fd5334e47199dece7c01c2a71ab6d98' }, h("h2", { key: 'e680003831826c8cd4615de083f9f9c305513c29' }, "Getting started \uD83D\uDE80"), h("p", { key: '8e80305087bee4c8ec05ac7cb16096caf0c61ad0' }, "\uD83D\uDD0E Enter a URL into the above navigation bar to browse through the web of data. "), h("p", { key: '4d7ba95047694e636934cb7a03c291adb0678bb6' }, "\uD83D\uDD10 Sign in to access private resources on your Solid Pod or those of your friends or coworkers.")), h("div", { key: '167ac903fa88b9be6cf00f2f5bfea23d8dfd14c9' }, h("p", { key: 'a0b06f944e534b889502a96c935686a3b7f349d0', class: "question" }, "New to Solid?"), h("p", { key: '8c26c4d20d0fcdb075ad4c0ea5ff012d22dee081' }, h("a", { key: 'd9bc5b7bfd213012078729e25e42b4ea8b970573', href: "https://solidproject.org/for-developers#hosted-pod-services" }, "Get a Pod \u2192"))), h("div", { key: '223f171699e3acf5f1c5c4819621bddc49db41f1' }, h("p", { key: 'e83cfd2b01c5abaf30f0053ef261c68ae0919f0a', class: "question" }, "Want to dig deeper into PodOS?"), h("p", { key: '8ccdbd60a250850c4105e99545f09755109ced86' }, h("a", { key: 'f72a83533b846bd8e8e798b0dd71cfc585a8d104', href: "http://pod-os.org" }, "Learn more \u2192")))));
3081
+ return (h(Host, { key: '963476081378811bc5623921ca7f4dc5ac18b9f7' }, h("div", { key: 'df6a7a5bab3c026d1960c03a4d008f8bff0b1c9d' }, h("h2", { key: '9e7a1e2c081f87275641fe99afb72c1f8ef65115' }, "Getting started \uD83D\uDE80"), h("p", { key: 'dac8ca58a733d66ab80fa79ef59d62a254b3b83f' }, "\uD83D\uDD0E Enter a URL into the above navigation bar to browse through the web of data. "), h("p", { key: 'c90fbc4f7c09893f6ded65befe4c77f673df6db2' }, "\uD83D\uDD10", ' ', h("button", { key: '2688b10503c6d518a7a48601f35e1f20741d71c7', class: "login", onClick: () => this.login.emit() }, "Sign in"), ' ', "to access private resources on your Solid Pod or those of your friends or coworkers.")), h("div", { key: '5990c65adc978df16ec7b73c3be2b6b4b3a48ce3' }, h("p", { key: '8fd4cb0941da30c3b438338a557a6d4fb9d7ff33', class: "question" }, "New to Solid?"), h("p", { key: 'd6b06063acaac1d55dc0aea86c3d80f4e7c8ca6f' }, h("a", { key: 'b0a49b4e170c89f736cf9bd2dd567cfafbcec31c', href: "https://solidproject.org/for-developers#hosted-pod-services" }, "Get a Pod \u2192"))), h("div", { key: '7c88ea4bb3982346343cf10e6196d2d07057a24e' }, h("p", { key: '22cfb601fada05ca7b5f274f0b6a81d360344764', class: "question" }, "Want to dig deeper into PodOS?"), h("p", { key: 'fb03d0f84714feb53b1b053390a5e7b9686e610e' }, h("a", { key: '1681d6d1c860589ca1624abc3c05121ccde3f951', href: "http://pod-os.org" }, "Learn more \u2192")))));
3298
3082
  }
3299
3083
  };
3300
3084
  PosGettingStarted.style = PosGettingStartedStyle0;
@@ -3406,11 +3190,13 @@ const PosLogin = class {
3406
3190
  constructor(hostRef) {
3407
3191
  registerInstance(this, hostRef);
3408
3192
  this.initializeOsEmitter = createEvent(this, "pod-os:init", 7);
3193
+ this.customLoggedInComponent = false;
3409
3194
  this.setOs = async (os) => {
3410
3195
  this.os = os;
3411
3196
  };
3412
3197
  }
3413
3198
  componentWillLoad() {
3199
+ this.customLoggedInComponent = !!this.host.querySelector('[slot="if-logged-in"]');
3414
3200
  this.initializeOsEmitter.emit(this.setOs);
3415
3201
  }
3416
3202
  login(event) {
@@ -3420,12 +3206,25 @@ const PosLogin = class {
3420
3206
  logout() {
3421
3207
  this.os.logout();
3422
3208
  }
3209
+ onLogin() {
3210
+ this.openDialog();
3211
+ }
3423
3212
  openDialog() {
3424
3213
  this.dialog.showModal();
3425
3214
  }
3426
3215
  render() {
3427
- return (h(Host, { key: '6349e0939fb22cddc9a6e47d424ce2badd518dcd' }, h("div", { key: '940d720ae5a7b951fe4a1bf411e463add43d93d0', class: "container" }, store.state.isLoggedIn ? (h("pos-resource", { uri: store.state.webId }, h("span", { class: "user-data" }, h("pos-picture", null), h("pos-label", null)))) : (''), !store.state.isLoggedIn && (h("button", { key: '40aeea2f9686c9792c3952f8b899f9e819895bae', id: "login", onClick: () => this.openDialog() }, "Login")), store.state.isLoggedIn && (h("button", { key: 'dd8129f4ae6b590231c33d072f4094b7bfc99da5', id: "logout", onClick: () => this.logout() }, "Logout"))), h("pos-dialog", { key: '33278d394f830f5c6040c3c22dc720440dd9d75c', ref: el => (this.dialog = el) }, h("span", { key: '96d3c645cacb1b38bd9adca8562ae4068eeabe11', slot: "title" }, "Sign in to your Pod"), h("pos-login-form", { key: '0c296b68774e4e2c1ed6091c305348b36e80178f', "onPod-os:idp-url-selected": ev => this.login(ev), slot: "content" }))));
3216
+ return (h(Host, { key: '5919c664924fc9020d2003b286178bbaadcbc749' }, h("div", { key: '7a4dbc59b515c9e7834a506795c51aaba1a95d4c', class: "container" }, !store.state.isLoggedIn ? (h("button", { id: "login", onClick: () => this.openDialog() }, "Login")) : (this.loggedInComponents())), h("pos-dialog", { key: 'fb0a021cc751223a3bd3bf3b7ef4efd8e14e24af', ref: el => (this.dialog = el) }, h("span", { key: '0b652f2575bb2d037e05dbdbbaade37c3229e4f9', slot: "title" }, "Sign in to your Pod"), h("pos-login-form", { key: '4927ad17b14afd59509126ae5620fc34a381829e', "onPod-os:idp-url-selected": ev => this.login(ev), slot: "content" }))));
3428
3217
  }
3218
+ loggedInComponents() {
3219
+ return this.customLoggedInComponent ? h("slot", { name: "if-logged-in" }) : this.defaultLoggedInComponents();
3220
+ }
3221
+ defaultLoggedInComponents() {
3222
+ return [
3223
+ h("pos-resource", { uri: store.state.webId }, h("span", { class: "user-data" }, h("pos-picture", null), h("pos-label", null))),
3224
+ h("button", { id: "logout", onClick: () => this.logout() }, "Logout"),
3225
+ ];
3226
+ }
3227
+ get host() { return getElement(this); }
3429
3228
  };
3430
3229
  PosLogin.style = PosLoginStyle0;
3431
3230
 
@@ -3443,7 +3242,7 @@ const PosLoginForm = class {
3443
3242
  this.canSubmit = Boolean(this.idpUrl);
3444
3243
  }
3445
3244
  render() {
3446
- return (h("form", { key: '193d3790329d1480fd6b14fd55a0d8cee8ce61dd', method: "dialog", onSubmit: () => this.handleSubmit() }, h("label", { key: 'd85ea6b508c9f229e1125f8cc97092335458b94a', htmlFor: "idpUrl" }, "Please enter your Identity Provider"), h("input", { key: 'a2f5e9955b27a8c1fab14c8f087fab167a19dc9a', id: "idpUrl", type: "url", value: this.idpUrl, required: true, onInput: e => this.handleChange(e), list: "suggestedIssuers", placeholder: "Type to search..." }), h("datalist", { key: 'fa0924b31e1a4fcdc794931dd2073022ab4ce95b', id: "suggestedIssuers" }, h("option", { key: 'c3495be7c2a98494ac3ca7fe504edd4b1b232394', value: "https://solidcommunity.net" }, "solidcommunity.net"), h("option", { key: '7fd17434388ed31468df8682dcfc2b4263c27ccb', value: "https://solidweb.org" }, "solidweb.org"), h("option", { key: '4c2a5854fc2499198b289181136cbd0a2fd9c1e1', value: "https://solidweb.me" }, "solidweb.me"), h("option", { key: '02a81104db23c62e0d42b8b45b95eccbd16fc108', value: "https://inrupt.net" }, "inrupt.net"), h("option", { key: 'd7c15dca86800cafc5a974920e40bd117fa50194', value: "https://login.inrupt.com" }, "Inrupt PodSpaces"), h("option", { key: '93ff71136f1775098fda80db5d437f37b51c496f', value: "https://trinpod.us" }, "trinpod.us"), h("option", { key: '481f1630526e324cb24b38c0077b1aeb496b4690', value: "https://use.id" }, "use.id"), h("option", { key: 'abd85ffba7532ba488bf0a4c18a2da2f3dc481ee', value: "https://solid.redpencil.io" }, "redpencil.io"), h("option", { key: '339562d277c4af2e10344f385d00aa4cc37375fa', value: "https://datapod.grant.io" }, "Data Pod (grant.io)"), h("option", { key: '918224ac5af806666a7b77bc8049dcf79800ab8c', value: "https://teamid.live" }, "teamid.live")), h("input", { key: '1ad3ef7998237d30c5eaf5bc9eebe55ede09d0a8', id: "login", type: "submit", value: "Login", disabled: !this.canSubmit })));
3245
+ return (h("form", { key: 'ddd05b4f905b65b2b5da556b3e9562bbff1812b0', method: "dialog", onSubmit: () => this.handleSubmit() }, h("label", { key: 'a23f430387db8339efe42d680d0659122b4503c2', htmlFor: "idpUrl" }, "Please enter your Identity Provider"), h("input", { key: '23c7209c3a4ecd79f305dc23961508f41ede85d3', id: "idpUrl", type: "url", value: this.idpUrl, required: true, onInput: e => this.handleChange(e), list: "suggestedIssuers", placeholder: "Type to search..." }), h("datalist", { key: '663730bddeb65eb5c58116ea329e00eee4b64a0f', id: "suggestedIssuers" }, h("option", { key: '71f0b94980ae6b38732f5f4319e1a5d4dad36f77', value: "https://solidcommunity.net" }, "solidcommunity.net"), h("option", { key: 'a18600e5fd7c6892f64b1b8e70480d564e9c39f6', value: "https://solidweb.org" }, "solidweb.org"), h("option", { key: '5528ee847f979c29d8d9725a13d51f7ae88cb82c', value: "https://solidweb.me" }, "solidweb.me"), h("option", { key: '9f1b85fbc78dc9870112053c61ece17d20dd89ec', value: "https://inrupt.net" }, "inrupt.net"), h("option", { key: '6bdaac53eae2b6830a2146e980542565dead33b7', value: "https://login.inrupt.com" }, "Inrupt PodSpaces"), h("option", { key: 'd5f243d1e7656bbca35b1c9920d4e2b867abed68', value: "https://trinpod.us" }, "trinpod.us"), h("option", { key: '1a9f2aab20d25a09b31ae47858c638e065ac27b5', value: "https://use.id" }, "use.id"), h("option", { key: 'f275d341b26be71158d6e5bd44ed138f54da823e', value: "https://solid.redpencil.io" }, "redpencil.io"), h("option", { key: '0945f4829972e9bdb37deb406d24d63e5bf30e8f', value: "https://datapod.grant.io" }, "Data Pod (grant.io)"), h("option", { key: '4cce12430b365c241a126ece63865c8dfa6e195e', value: "https://teamid.live" }, "teamid.live")), h("input", { key: 'd46215b8314e845b4ba6df750537ec6c8a14f8ed', id: "login", type: "submit", value: "Login", disabled: !this.canSubmit })));
3447
3246
  }
3448
3247
  handleChange(event) {
3449
3248
  this.validate();
@@ -3459,7 +3258,7 @@ const PosLoginForm = class {
3459
3258
  };
3460
3259
  PosLoginForm.style = PosLoginFormStyle0;
3461
3260
 
3462
- const posMakeFindableCss = "button.main {\n display: flex;\n transition:\n width 200ms,\n background-color 500ms,\n color 500ms,\n border-color 500ms;\n max-width: var(--size-40);\n flex-direction: row;\n overflow: hidden;\n height: var(--size-8);\n width: var(--size-8);\n align-items: center;\n justify-content: center;\n border-radius: var(--radius-xs);\n color: var(--pos-subtle-text-color);\n border: var(--size-px) dashed var(--pos-subtle-text-color);\n background-color: var(--pos-background-color);\n\n p {\n padding: 0;\n margin: 0;\n display: none;\n white-space: nowrap;\n }\n\n &.success {\n color: var(--color-green-700);\n border-color: var(--color-green-700);\n border-style: solid;\n background-color: var(--color-green-100);\n }\n\n &:active {\n transform: scale(0.99);\n filter: brightness(90%);\n }\n}\n\n.options {\n position: absolute;\n animation: fadeIn 300ms;\n padding: 0;\n margin-top: var(--size-1);\n z-index: var(--layer-top);\n\n ol {\n display: flex;\n flex-direction: column;\n box-shadow: var(--shadow-md);\n backdrop-filter: var(--blur-md);\n border-radius: var(--radius-xs);\n overflow: hidden;\n color: var(--color-grey-900);\n background-color: var(--color-grey-200);\n padding: 0;\n margin: 0;\n list-style: none;\n label {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n transition: all 300ms var(--ease-in-out-sine);\n margin: 0;\n border: none;\n outline: none;\n padding: var(--size-2);\n width: var(--size-full);\n\n &:hover,\n &:focus {\n filter: brightness(80%);\n }\n\n &:active {\n filter: brightness(90%);\n }\n }\n }\n label:has(input:checked) {\n background-color: var(--color-green-100);\n }\n}\n\nsvg {\n display: inline-block;\n height: var(--size-6);\n flex-shrink: 0;\n flex-grow: 0;\n width: var(--size-6);\n}\n\nbutton.main:hover,\nbutton.open {\n &.success {\n background: var(--color-green-200);\n }\n width: var(--size-full);\n height: var(--size-8);\n background: var(--pos-background-color);\n color: var(--pos-normal-text-color);\n\n p {\n display: inline-block;\n }\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n";
3261
+ const posMakeFindableCss = "button.main {\n display: flex;\n transition:\n width 200ms,\n background-color 500ms,\n color 500ms,\n border-color 500ms;\n max-width: var(--size-40);\n flex-direction: row;\n overflow: hidden;\n height: var(--pos-navigation-bar-height);\n width: var(--pos-navigation-bar-height);\n align-items: center;\n justify-content: center;\n border-radius: var(--radius-md);\n color: var(--pos-subtle-text-color);\n border: var(--size-px) dashed var(--pos-subtle-text-color);\n background-color: var(--pos-background-color);\n\n p {\n padding: 0;\n margin: 0;\n display: none;\n white-space: nowrap;\n }\n\n &.success {\n color: var(--color-green-700);\n border-color: var(--color-green-700);\n border-style: solid;\n background-color: var(--color-green-100);\n }\n\n &:active {\n transform: scale(0.99);\n filter: brightness(90%);\n }\n &:focus {\n outline: var(--pos-input-focus-outline);\n }\n}\n\n.options {\n position: absolute;\n animation: fadeIn 300ms;\n padding: 0;\n margin-top: var(--size-1);\n z-index: var(--layer-top);\n\n ol {\n display: flex;\n flex-direction: column;\n box-shadow: var(--shadow-md);\n backdrop-filter: var(--blur-md);\n border-radius: var(--radius-xs);\n overflow: hidden;\n color: var(--color-grey-900);\n background-color: var(--color-grey-200);\n padding: 0;\n margin: 0;\n list-style: none;\n label {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n transition: all 300ms var(--ease-in-out-sine);\n margin: 0;\n border: none;\n outline: none;\n padding: var(--size-2);\n width: var(--size-full);\n\n &:hover,\n &:focus {\n filter: brightness(80%);\n }\n\n &:active {\n filter: brightness(90%);\n }\n }\n }\n label:has(input:checked) {\n background-color: var(--color-green-100);\n }\n}\n\nsvg {\n display: inline-block;\n height: var(--size-6);\n flex-shrink: 0;\n flex-grow: 0;\n width: var(--size-6);\n}\n\nbutton.main:hover,\nbutton.open {\n &.success {\n background: var(--color-green-200);\n }\n width: var(--size-full);\n height: var(--pos-navigation-bar-height);\n background: var(--pos-background-color);\n color: var(--pos-normal-text-color);\n\n p {\n display: inline-block;\n }\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n";
3463
3262
  const PosMakeFindableStyle0 = posMakeFindableCss;
3464
3263
 
3465
3264
  const PosMakeFindable = class {
@@ -3566,25 +3365,44 @@ const IconMakeFindable = () => (h("svg", { role: "presentation", xmlns: "http://
3566
3365
  const IconSuccess = () => (h("svg", { role: "presentation", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "M10.125 2.25h-4.5c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125v-9M10.125 2.25h.375a9 9 0 0 1 9 9v.375M10.125 2.25A3.375 3.375 0 0 1 13.5 5.625v1.5c0 .621.504 1.125 1.125 1.125h1.5a3.375 3.375 0 0 1 3.375 3.375M9 15l2.25 2.25L15 12" })));
3567
3366
  PosMakeFindable.style = PosMakeFindableStyle0;
3568
3367
 
3569
- const posNavigationBarCss = ".suggestions ol {\n border: 1px solid var(--pos-border-color);\n display: flex;\n flex-direction: column;\n position: absolute;\n margin: 0;\n padding: 0;\n z-index: var(--layer-top);\n list-style-type: none;\n box-shadow: var(--shadow-xl);\n}\n\n.suggestions {\n position: relative;\n li {\n padding: 1rem;\n background-color: var(--pos-background-color);\n pos-rich-link {\n --background-color: inherit;\n }\n &.selected {\n background-color: var(--pos-primary-color);\n &:hover {\n background-color: var(--pos-primary-color);\n }\n }\n &:hover {\n background-color: var(--pos-border-color);\n }\n }\n}\n\n.suggestions li.selected pos-rich-link {\n --label-color: white;\n --description-color: var(--pos-border-color);\n --uri-color: var(--pos-subtle-text-color);\n}\n\nion-searchbar {\n width: 100%;\n}\n\nform {\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n\n.bar {\n flex-grow: 1;\n}\n";
3570
- const PosNavigationBarStyle0 = posNavigationBarCss;
3368
+ const posNavigationCss = ":host {\n --pos-navigation-bar-height: var(--size-10);\n}\n\nsearch {\n position: relative;\n}\n\n.suggestions ol {\n border: 1px solid var(--pos-border-color);\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style-type: none;\n}\n\n.suggestions {\n width: 100%;\n overflow-y: auto;\n max-height: 90dvh;\n li {\n padding: 1rem;\n background-color: var(--pos-background-color);\n pos-rich-link {\n --background-color: inherit;\n }\n &[aria-selected='true'] {\n background-color: var(--pos-primary-color);\n &:hover {\n background-color: var(--pos-primary-color);\n }\n }\n &:hover {\n background-color: var(--pos-border-color);\n }\n }\n}\n\n.suggestions li.selected pos-rich-link {\n --label-color: white;\n --description-color: var(--pos-border-color);\n --uri-color: var(--pos-subtle-text-color);\n}\n\ndialog {\n position: absolute;\n margin-top: calc(-1 * var(--pos-navigation-bar-height));\n padding: 0;\n width: 100%;\n max-width: 100%;\n min-width: 100%;\n overflow: hidden;\n max-height: 100dvh;\n background-color: var(--pos-background-color);\n color: var(--pos-normal-text-color);\n border: var(--pos-border-color);\n border-radius: var(--radius-md);\n box-shadow: var(--shadow-md);\n form {\n display: flex;\n flex-direction: column;\n height: 100%;\n width: 100%;\n align-items: center;\n input {\n display: flex;\n font-size: var(--scale-1);\n height: var(--pos-navigation-bar-height);\n border-top-left-radius: var(--radius-md);\n border-top-right-radius: var(--radius-md);\n padding-left: var(--size-2);\n width: 100%;\n border: none;\n outline: none;\n color: var(--pos-normal-text-color);\n background-color: var(--pos-input-background-color);\n box-sizing: border-box;\n }\n }\n}\n\ndialog[open] {\n display: flex;\n z-index: var(--layer-top);\n animation: slideIn 100ms ease-out;\n}\n\n@media (max-width: 640px) {\n search {\n position: unset;\n }\n dialog {\n margin-top: var(--size-1);\n top: 0;\n width: 95dvw;\n max-width: unset;\n min-width: unset;\n form {\n input {\n height: var(--size-12);\n font-size: var(--scale-fluid-3);\n }\n }\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n";
3369
+ const PosNavigationStyle0 = posNavigationCss;
3571
3370
 
3572
- const PosNavigationBar = class {
3371
+ const PosNavigation = class {
3573
3372
  constructor(hostRef) {
3574
3373
  registerInstance(this, hostRef);
3575
3374
  this.subscribePodOs = createEvent(this, "pod-os:init", 7);
3576
3375
  this.linkEmitter = createEvent(this, "pod-os:link", 7);
3376
+ /**
3377
+ * Initial value of the navigation bar
3378
+ */
3577
3379
  this.uri = '';
3578
- this.value = this.uri;
3380
+ /**
3381
+ * Current value of the input field
3382
+ */
3383
+ this.inputValue = this.uri;
3579
3384
  this.searchIndex = undefined;
3580
3385
  this.suggestions = [];
3581
3386
  this.selectedIndex = -1;
3387
+ this.resource = null;
3388
+ this.changeEvents = new Subject();
3389
+ this.debouncedSearch = null;
3582
3390
  this.receivePodOs = async (os) => {
3583
3391
  this.os = os;
3584
3392
  };
3585
3393
  }
3394
+ updateResource() {
3395
+ var _a;
3396
+ try {
3397
+ this.resource = this.uri ? (_a = this.os) === null || _a === void 0 ? void 0 : _a.store.get(this.uri) : null;
3398
+ }
3399
+ catch (_b) {
3400
+ this.resource = null;
3401
+ }
3402
+ }
3586
3403
  componentWillLoad() {
3587
3404
  subscribePodOs(this);
3405
+ this.updateResource();
3588
3406
  store.onChange('isLoggedIn', async (isLoggedIn) => {
3589
3407
  if (isLoggedIn) {
3590
3408
  await this.buildSearchIndex();
@@ -3593,6 +3411,11 @@ const PosNavigationBar = class {
3593
3411
  this.clearSearchIndex();
3594
3412
  }
3595
3413
  });
3414
+ this.debouncedSearch = this.changeEvents.pipe(debounceTime(300)).subscribe(() => this.search());
3415
+ }
3416
+ disconnectedCallback() {
3417
+ var _a;
3418
+ (_a = this.debouncedSearch) === null || _a === void 0 ? void 0 : _a.unsubscribe();
3596
3419
  }
3597
3420
  async buildSearchIndex() {
3598
3421
  this.searchIndex = await this.os.buildSearchIndex(store.state.profile);
@@ -3600,16 +3423,33 @@ const PosNavigationBar = class {
3600
3423
  rebuildSearchIndex() {
3601
3424
  this.searchIndex.rebuild();
3602
3425
  }
3426
+ openNavigationDialog(e) {
3427
+ var _a, _b;
3428
+ this.resource = e.detail;
3429
+ if (e.detail) {
3430
+ this.inputValue = e.detail.uri;
3431
+ this.search();
3432
+ }
3433
+ (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.select();
3434
+ (_b = this.dialogRef) === null || _b === void 0 ? void 0 : _b.show();
3435
+ }
3603
3436
  clearSearchIndex() {
3604
3437
  var _a;
3605
3438
  (_a = this.searchIndex) === null || _a === void 0 ? void 0 : _a.clear();
3606
3439
  }
3607
3440
  onChange(event) {
3608
- this.value = event.detail.value;
3609
- this.search();
3441
+ this.inputValue = event.target.value;
3442
+ this.changeEvents.next();
3443
+ }
3444
+ closeDialog() {
3445
+ var _a;
3446
+ (_a = this.dialogRef) === null || _a === void 0 ? void 0 : _a.close();
3447
+ this.selectedIndex = -1;
3610
3448
  }
3611
3449
  clearSuggestions() {
3450
+ var _a;
3612
3451
  this.suggestions = [];
3452
+ (_a = this.dialogRef) === null || _a === void 0 ? void 0 : _a.close();
3613
3453
  this.selectedIndex = -1;
3614
3454
  }
3615
3455
  onClickSelf(event) {
@@ -3617,7 +3457,7 @@ const PosNavigationBar = class {
3617
3457
  }
3618
3458
  handleKeyDown(ev) {
3619
3459
  if (ev.key === 'Escape') {
3620
- this.clearSuggestions();
3460
+ this.closeDialog();
3621
3461
  }
3622
3462
  else if (ev.key === 'ArrowDown') {
3623
3463
  ev.preventDefault();
@@ -3630,20 +3470,50 @@ const PosNavigationBar = class {
3630
3470
  }
3631
3471
  search() {
3632
3472
  if (this.searchIndex) {
3633
- this.suggestions = this.value ? this.searchIndex.search(this.value) : [];
3473
+ this.suggestions = this.inputValue ? this.searchIndex.search(this.inputValue) : [];
3634
3474
  }
3635
3475
  }
3636
- onSubmit(event) {
3637
- event.preventDefault();
3476
+ onSubmit() {
3638
3477
  if (this.suggestions && this.selectedIndex > -1) {
3639
3478
  this.linkEmitter.emit(this.suggestions[this.selectedIndex].ref);
3640
3479
  }
3641
3480
  else {
3642
- this.linkEmitter.emit(this.value);
3481
+ this.linkEmitter.emit(this.inputValue);
3643
3482
  }
3644
3483
  }
3645
3484
  render() {
3646
- return (h("form", { key: 'e92382c2024642ea5c0b5abb00f1759003f74c78', onSubmit: e => this.onSubmit(e) }, this.searchIndex && this.uri ? h("pos-make-findable", { uri: this.uri }) : '', h("div", { key: 'c32607860e8aa1fe6d6d182c0e2a056f40b6f1b7', class: "bar" }, h("ion-searchbar", { key: '6f281c307640200da6c57a0660e27901f55d375d', enterkeyhint: "search", placeholder: "Search or enter URI", value: this.uri, debounce: 300, onIonChange: e => this.onChange(e), onIonInput: e => this.onChange(e) }), this.suggestions.length > 0 ? (h("div", { class: "suggestions" }, h("ol", null, this.suggestions.map((it, index) => (h("li", { class: index === this.selectedIndex ? 'selected' : '' }, h("pos-rich-link", { uri: it.ref }))))))) : null)));
3485
+ return (h("nav", { key: '5c6c07b6b2f9ccb0e45bd59b5e477d8ed3d52c2d' }, h("search", { key: '19997ad34212d679547ad5e1bb2f5ea53e576361' }, h("pos-navigation-bar", { key: '2d1c073b2c53ba8cd5afbb595cc95015e5a50e5b', searchIndexReady: this.searchIndex !== undefined, current: this.resource }), h("dialog", { key: '55de5a58604feaf54426b643b434560dbc55a9a1', ref: el => (this.dialogRef = el) }, h("form", { key: '50c064938ec275b53bde81d9bb6c86e0c708a625', method: "dialog", onSubmit: () => this.onSubmit() }, h("input", { key: 'ca06fd69e8346cb8bb0868560f39987b4545c8f5', ref: el => (this.inputRef = el), enterkeyhint: "search", "aria-label": "Search or enter URI", placeholder: "Search or enter URI", value: this.uri, onChange: e => this.onChange(e), onInput: e => this.onChange(e), role: "combobox", "aria-autocomplete": "list", "aria-expanded": this.suggestions.length > 0, "aria-controls": "suggestions-list", "aria-activedescendant": this.selectedIndex >= 0 ? `option-${this.selectedIndex}` : null }), this.suggestions.length > 0 ? (h("div", { class: "suggestions" }, h("ol", { id: "suggestions-list", role: "listbox", "aria-label": "Search results" }, this.suggestions.map((it, index) => (h("li", { id: `option-${index}`, role: "option", "aria-selected": index === this.selectedIndex ? 'true' : 'false' }, h("pos-rich-link", { uri: it.ref }))))))) : null)))));
3486
+ }
3487
+ static get watchers() { return {
3488
+ "uri": ["updateResource"],
3489
+ "os": ["updateResource"]
3490
+ }; }
3491
+ };
3492
+ PosNavigation.style = PosNavigationStyle0;
3493
+
3494
+ const posNavigationBarCss = "section.current {\n display: flex;\n height: var(--pos-navigation-bar-height);\n flex-grow: 1;\n gap: 0;\n background-color: var(--pos-input-background-color);\n border-radius: var(--radius-md);\n width: 100%;\n &:focus-within {\n outline: var(--pos-input-focus-outline);\n }\n}\n\nsection.current button {\n cursor: pointer;\n font-size: var(--scale-1);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-grow: 1;\n background: none;\n color: var(--pos-normal-text-color);\n outline: none;\n border: none;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n &:focus {\n text-decoration: underline;\n }\n :first-child {\n flex-grow: 1;\n }\n svg {\n width: var(--size-6);\n color: var(--pos-subtle-text-color);\n }\n}\n";
3495
+ const PosNavigationBarStyle0 = posNavigationBarCss;
3496
+
3497
+ const PosNavigationBar = class {
3498
+ constructor(hostRef) {
3499
+ registerInstance(this, hostRef);
3500
+ this.navigate = createEvent(this, "pod-os:navigate", 7);
3501
+ }
3502
+ onClick() {
3503
+ this.navigate.emit(this.current);
3504
+ }
3505
+ activate(e) {
3506
+ if ((e.ctrlKey || e.metaKey) && e.key === 'k') {
3507
+ e.preventDefault();
3508
+ this.navigate.emit(this.current);
3509
+ }
3510
+ }
3511
+ render() {
3512
+ const ariaLabel = this.current ? `${this.current.label()} (Click to search or enter URI)` : 'Search or enter URI';
3513
+ return (h("section", { key: '1b507d50bd24f257023fe980f1ffdb3abe903577', class: "current" }, this.current && this.searchIndexReady && h("pos-make-findable", { key: 'e96559f40418154a26350705ae6e3dbf8057a424', uri: this.current.uri }), h("button", { key: '2ac476bd89918e71ca10cc945952f8c9905865df', "aria-label": ariaLabel, onClick: () => this.onClick() }, h("div", { key: 'd34b73e2090f08cab8533d03a7b206d420bfa8c2' }, this.current ? this.current.label() : 'Search or enter URI'), this.icon())));
3514
+ }
3515
+ icon() {
3516
+ return (h("svg", { "aria-hidden": "true", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", d: "m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z" })));
3647
3517
  }
3648
3518
  };
3649
3519
  PosNavigationBar.style = PosNavigationBarStyle0;
@@ -3669,7 +3539,7 @@ const PosNewThingForm = class {
3669
3539
  subscribePodOs(this);
3670
3540
  }
3671
3541
  render() {
3672
- return (h("form", { key: '9ee9d0ab4f31bfc55865ef697d410b37977b1051', method: "dialog", onSubmit: e => this.handleSubmit(e) }, h("label", { key: 'a6f807d2034d55e5218c01375c4ff36564924bfb', htmlFor: "type" }, "Type"), h("pos-select-term", { key: 'f6001d6801bee97c03121d57742a595c8d5d5bd7', id: "type", placeholder: "", value: this.selectedTypeUri, "onPod-os:term-selected": e => this.onTermSelected(e) }), h("label", { key: '9365561d47d72e0153bb743f4fdf5ca7a1b5dcc0', htmlFor: "name" }, "Name"), h("input", { key: 'c93de873370a1123441a33d27c53c954bcc5f5ce', id: "name", type: "text", value: this.name, onInput: e => this.handleChange(e) }), this.newUri ? (h("div", { id: "new-uri", title: "This will be the URI of the new thing" }, this.newUri)) : null, h("input", { key: '9fc1fb39f7c582a069876642cc17678303c7d72b', id: "create", type: "submit", value: "Create", disabled: !this.canSubmit })));
3542
+ return (h("form", { key: '6d8a76b95abc98ab382b425b2dd8894983bb9522', method: "dialog", onSubmit: e => this.handleSubmit(e) }, h("label", { key: '6fe391ac186c0b0a8e6bb3265e66469dac3ab187', htmlFor: "type" }, "Type"), h("pos-select-term", { key: '33b50596c8cd22d8ce2b1af114277fa9bfd80355', id: "type", placeholder: "", value: this.selectedTypeUri, "onPod-os:term-selected": e => this.onTermSelected(e) }), h("label", { key: '8681f29f0c20d59c2be10a1f49cc38dea6abd19d', htmlFor: "name" }, "Name"), h("input", { key: 'f5905d871b55821f7019134d972e1f156c55f49e', id: "name", type: "text", value: this.name, onInput: e => this.handleChange(e) }), this.newUri ? (h("div", { id: "new-uri", title: "This will be the URI of the new thing" }, this.newUri)) : null, h("input", { key: 'dade4834abecd9bf2fc8eb5bca0b1f60784287a4', id: "create", type: "submit", value: "Create", disabled: !this.canSubmit })));
3673
3543
  }
3674
3544
  handleChange(event) {
3675
3545
  this.name = event.target.value;
@@ -3799,7 +3669,7 @@ const PosResource = class {
3799
3669
  };
3800
3670
  PosResource.style = PosResourceStyle0;
3801
3671
 
3802
- const posRichLinkCss = ":host {\n --background-color: inherit;\n --label-color: var(--pos-normal-text-color);\n --description-color: var(--pos-normal-text-color);\n --uri-color: var(--pos-subtle-text-color);\n --font-family: var(--font-sans);\n}\n\np.content {\n background-color: var(--background-color);\n line-height: var(--line-xs);\n margin: 0;\n display: flex;\n flex-direction: column;\n align-items: baseline;\n gap: var(--size-1);\n\n .url {\n font-size: var(--scale-fluid-1);\n color: var(--pos-subtle-text-color);\n }\n}\n\na {\n color: var(--label-color);\n max-width: var(--prose-lg);\n text-decoration: underline;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n text-decoration-thickness: var(--size-px);\n}\n\npos-label {\n color: var(--label-color);\n font-size: var(--scale-fluid-2);\n margin-bottom: var(--size-1);\n}\n\npos-description {\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n text-overflow: ellipsis;\n overflow: hidden;\n font-weight: var(--weight-light);\n color: var(--description-color);\n font-size: var(--scale-fluid-2);\n}\n\n@media (min-width: 640px) {\n pos-label {\n font-size: var(--scale-fluid-0);\n }\n pos-description {\n font-size: var(--scale-fluid-1);\n }\n\n p.content {\n .url {\n font-size: var(--scale-fluid-000);\n }\n }\n}\n";
3672
+ const posRichLinkCss = ":host {\n --background-color: inherit;\n --label-color: var(--pos-normal-text-color);\n --description-color: var(--pos-normal-text-color);\n --uri-color: var(--pos-subtle-text-color);\n --font-family: var(--font-sans);\n}\n\np.content {\n background-color: var(--background-color);\n line-height: var(--line-xs);\n margin: 0;\n display: flex;\n flex-direction: column;\n align-items: baseline;\n gap: var(--size-1);\n\n .url {\n font-size: var(--scale-fluid-1);\n color: var(--pos-subtle-text-color);\n }\n}\n\na {\n color: var(--label-color);\n max-width: min(100%, var(--prose-lg));\n text-decoration: underline;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n text-decoration-thickness: var(--size-px);\n}\n\npos-label {\n color: var(--label-color);\n font-size: var(--scale-fluid-2);\n margin-bottom: var(--size-1);\n}\n\npos-description {\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n text-overflow: ellipsis;\n overflow: hidden;\n font-weight: var(--weight-light);\n color: var(--description-color);\n font-size: var(--scale-fluid-2);\n}\n\n@media (min-width: 640px) {\n pos-label {\n font-size: var(--scale-fluid-0);\n }\n pos-description {\n font-size: var(--scale-fluid-1);\n }\n\n p.content {\n .url {\n font-size: var(--scale-fluid-000);\n }\n }\n}\n";
3803
3673
  const PosRichLinkStyle0 = posRichLinkCss;
3804
3674
 
3805
3675
  const PosRichLink = class {
@@ -3808,10 +3678,10 @@ const PosRichLink = class {
3808
3678
  this.linkEmitter = createEvent(this, "pod-os:link", 7);
3809
3679
  }
3810
3680
  render() {
3811
- return (h("pos-resource", { key: '0a794cc8287b13f163a813dc6a4f87b2f00e028b', lazy: true, uri: this.uri }, h("p", { key: 'b7a44482a82cd69228f144b04e9ec20b84410339', class: "content" }, h("a", { key: '0d218d4d5c1991c767b66f0d37c5476038e7a0fb', href: this.uri, onClick: e => {
3681
+ return (h("pos-resource", { key: '389fb8817f5a7ff77965a8bb9924f48af15c528c', lazy: true, uri: this.uri }, h("p", { key: '1946deeff38a510800ef1558fd6374f65d72cd7f', class: "content" }, h("a", { key: '776c99ca32c7cd7fac30ab1f18b1c024b234d85f', href: this.uri, onClick: e => {
3812
3682
  e.preventDefault();
3813
3683
  this.linkEmitter.emit(this.uri);
3814
- } }, h("pos-label", { key: 'd04048986a7a4da138608f187a2f27e6313d9a6e' })), h("span", { key: '53a05023aa2fec4725e1d7e59acee9888476ecac', class: "url" }, new URL(this.uri).host), h("pos-description", { key: 'a73de2d208b684a9f555cda312e94df4282afba0' }))));
3684
+ } }, h("pos-label", { key: '0ddb22c414f2e4d61cf1beabb301b723b78235e1' })), h("span", { key: 'd2730c1fcc1c1521a7527bdb7a63c091ff49746c', class: "url" }, new URL(this.uri).host), h("pos-description", { key: '53867e57b7403aed46e94a5f3df0b8389bc68244' }))));
3815
3685
  }
3816
3686
  };
3817
3687
  PosRichLink.style = PosRichLinkStyle0;
@@ -4104,7 +3974,7 @@ const DEFAULT_PARSE_URL = (url) => {
4104
3974
  return url.pathname.toLowerCase();
4105
3975
  };
4106
3976
 
4107
- const posRouterCss = ".toolbar{display:flex;flex-direction:row;gap:0;align-items:center;margin-left:0.5rem}pos-navigation-bar{flex-grow:1}";
3977
+ const posRouterCss = ".toolbar{display:flex;flex-direction:row;gap:0;align-items:center;margin-left:0.5rem}pos-navigation{flex-grow:1}";
4108
3978
  const PosRouterStyle0 = posRouterCss;
4109
3979
 
4110
3980
  const Router = createRouter();
@@ -4142,7 +4012,7 @@ const PosRouter = class {
4142
4012
  this.routeChanged.emit(this.uri);
4143
4013
  }
4144
4014
  render() {
4145
- return h("slot", { key: '221db70a52ce7ebc7e9c171142dcf94f252fa985' });
4015
+ return h("slot", { key: 'a5a451a8ddf4a30c6e5cbb2faf61d44f5a286df9' });
4146
4016
  }
4147
4017
  };
4148
4018
  PosRouter.style = PosRouterStyle0;
@@ -4172,7 +4042,7 @@ const PosSelectTerm = class {
4172
4042
  this.termSelected.emit({ uri: event.target.value });
4173
4043
  }
4174
4044
  render() {
4175
- return (h(Host, { key: '7a548735e2a0478fa1e63e2a880ca61f0f43d91c' }, h("input", { key: '9549691026f4bf42a3048f2af3a78bd71536b160', part: "input", list: "terms", placeholder: this.placeholder, value: this.value, onChange: ev => this.handleChange(ev) }), h("datalist", { key: 'adfd77a001389d6cc092e3b054ef12e45d562d54', part: "terms", id: "terms" }, this.terms.map(term => (h("option", { value: term.uri }, term.shorthand))))));
4045
+ return (h(Host, { key: '7f7d48443893800bb818e67865fccdbe1d10d44a' }, h("input", { key: 'ee24690418d5a4d6e357154e12685fa9975754f9', part: "input", list: "terms", placeholder: this.placeholder, value: this.value, onChange: ev => this.handleChange(ev) }), h("datalist", { key: '78fde7ccb4e0750e902da139b02810c15c21db3e', part: "terms", id: "terms" }, this.terms.map(term => (h("option", { value: term.uri }, term.shorthand))))));
4176
4046
  }
4177
4047
  static get delegatesFocus() { return true; }
4178
4048
  static get watchers() { return {
@@ -4189,7 +4059,7 @@ const PosSettingOfflineCache = class {
4189
4059
  registerInstance(this, hostRef);
4190
4060
  }
4191
4061
  render() {
4192
- return (h(Host, { key: 'f024e7d542cfc87a4dc0a1f22694b664086ebd60' }, h("div", { key: 'e88e694cefa4a2361ca8c67f1bd023fda1b70f2a' }, h("h2", { key: 'c4b2e6270f26a2eb7f62e5076b40834903fc10e4' }, h("svg", { key: 'd63643c1ed908c6fe9ab4ff6c47b13848c714c32', xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { key: '78f055556bb175ea17d0db1ccf78c16343d67d3f', "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20.25 6.375c0 2.278-3.694 4.125-8.25 4.125S3.75 8.653 3.75 6.375m16.5 0c0-2.278-3.694-4.125-8.25-4.125S3.75 4.097 3.75 6.375m16.5 0v11.25c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125V6.375m16.5 0v3.75m-16.5-3.75v3.75m16.5 0v3.75C20.25 16.153 16.556 18 12 18s-8.25-1.847-8.25-4.125v-3.75m16.5 0c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125" })), "Cache Settings"), h("p", { key: '3045ae3214b9e91feb34857ce45a3db6529f2959', class: "info" }, "\u2139 Enable offline cache to be able to access previously loaded data while offline."), h("p", { key: '9987c1cb59b62e1eb06c67a9c646a9a2f125529a', class: "warn" }, "\u26A0 Private data may be stored on this device. Only enable it, if you trust this device."), h("label", { key: '55dd3c0fa7ece9a59437e7818d6cfa9b0e9eb5bf' }, h("input", { key: '22874f8a39b5016b71818fa1d6226bf66ff969c3', type: "checkbox", checked: localSettings.state.offlineCache, onChange: ev => (localSettings.state.offlineCache = ev.target.checked) }), "Enable offline cache"))));
4062
+ return (h(Host, { key: 'b598a0dbe21fe9e7f1aa0f51f0b53c270feb8add' }, h("div", { key: '5cec10cc63203c8421bbb627643f1365899cc850' }, h("h2", { key: '094528da7d8567e8a2ba6e82fb1c05b2f4dc7b22' }, h("svg", { key: '3d3e8b17420ba7352877eb1c6bca17d3791b1bd6', xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", "stroke-width": "1.5", stroke: "currentColor" }, h("path", { key: '065bc78382b03bd2bcc3c812a71e9f27c4e3251c', "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20.25 6.375c0 2.278-3.694 4.125-8.25 4.125S3.75 8.653 3.75 6.375m16.5 0c0-2.278-3.694-4.125-8.25-4.125S3.75 4.097 3.75 6.375m16.5 0v11.25c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125V6.375m16.5 0v3.75m-16.5-3.75v3.75m16.5 0v3.75C20.25 16.153 16.556 18 12 18s-8.25-1.847-8.25-4.125v-3.75m16.5 0c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125" })), "Cache Settings"), h("p", { key: '5e5d2ec497039791f82a857a709157e6b97efdfe', class: "info" }, "\u2139 Enable offline cache to be able to access previously loaded data while offline."), h("p", { key: 'd4ff4a3a17df1e5ed7ce076abbf98def4ebdac7d', class: "warn" }, "\u26A0 Private data may be stored on this device. Only enable it, if you trust this device."), h("label", { key: '1d1aa4f7b4b5fa53080cc5635a20ccee3faee29d' }, h("input", { key: '4223888802ea51dec26a3d23abdd9c28098de5aa', type: "checkbox", checked: localSettings.state.offlineCache, onChange: ev => (localSettings.state.offlineCache = ev.target.checked) }), "Enable offline cache"))));
4193
4063
  }
4194
4064
  };
4195
4065
  PosSettingOfflineCache.style = PosSettingOfflineCacheStyle0;
@@ -4247,6 +4117,6 @@ const PosTypeRouter = class {
4247
4117
  }
4248
4118
  };
4249
4119
 
4250
- export { Icon as ion_icon, ProgressBar as ion_progress_bar, RippleEffect as ion_ripple_effect, Searchbar as ion_searchbar, SkeletonText as ion_skeleton_text, Toast as ion_toast, PosAddNewThing as pos_add_new_thing, PosApp as pos_app, PosAppBrowser as pos_app_browser, PosAppDashboard as pos_app_dashboard, PosAppSettings as pos_app_settings, PosDescription as pos_description, PosDialog as pos_dialog, PosErrorToast as pos_error_toast, PosExampleResources as pos_example_resources, PosGettingStarted as pos_getting_started, PosImage as pos_image, PosInternalRouter as pos_internal_router, PosLabel as pos_label, PosLogin as pos_login, PosLoginForm as pos_login_form, PosMakeFindable as pos_make_findable, PosNavigationBar as pos_navigation_bar, PosNewThingForm as pos_new_thing_form, PosPicture as pos_picture, PosResource as pos_resource, PosRichLink as pos_rich_link, PosRouter as pos_router, PosSelectTerm as pos_select_term, PosSettingOfflineCache as pos_setting_offline_cache, PosTypeRouter as pos_type_router };
4120
+ export { Icon as ion_icon, ProgressBar as ion_progress_bar, RippleEffect as ion_ripple_effect, SkeletonText as ion_skeleton_text, Toast as ion_toast, PosAddNewThing as pos_add_new_thing, PosApp as pos_app, PosAppBrowser as pos_app_browser, PosAppDashboard as pos_app_dashboard, PosAppSettings as pos_app_settings, PosDescription as pos_description, PosDialog as pos_dialog, PosErrorToast as pos_error_toast, PosExampleResources as pos_example_resources, PosGettingStarted as pos_getting_started, PosImage as pos_image, PosInternalRouter as pos_internal_router, PosLabel as pos_label, PosLogin as pos_login, PosLoginForm as pos_login_form, PosMakeFindable as pos_make_findable, PosNavigation as pos_navigation, PosNavigationBar as pos_navigation_bar, PosNewThingForm as pos_new_thing_form, PosPicture as pos_picture, PosResource as pos_resource, PosRichLink as pos_rich_link, PosRouter as pos_router, PosSelectTerm as pos_select_term, PosSettingOfflineCache as pos_setting_offline_cache, PosTypeRouter as pos_type_router };
4251
4121
 
4252
4122
  //# sourceMappingURL=ion-icon_31.entry.js.map