@pod-os/elements 0.26.0 → 0.26.1-rc.2078d14.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 (453) hide show
  1. package/dist/cjs/elements.cjs.js +1 -1
  2. package/dist/cjs/ion-icon_31.cjs.entry.js +312 -461
  3. package/dist/cjs/ion-icon_31.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ion-searchbar.cjs.entry.js +430 -0
  5. package/dist/cjs/ion-searchbar.cjs.entry.js.map +1 -0
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/collection/apps/pos-app-browser/pos-app-browser.css +8 -15
  8. package/dist/collection/apps/pos-app-browser/pos-app-browser.js +12 -3
  9. package/dist/collection/apps/pos-app-browser/pos-app-browser.js.map +1 -1
  10. package/dist/collection/collection-manifest.json +2 -1
  11. package/dist/collection/components/pos-add-new-thing/pos-add-new-thing.css +2 -2
  12. package/dist/collection/components/pos-make-findable/pos-make-findable.css +7 -4
  13. package/dist/collection/components/pos-navigation/__test/typeToSearch.js +12 -0
  14. package/dist/collection/components/pos-navigation/__test/typeToSearch.js.map +1 -0
  15. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.css +28 -0
  16. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.js +102 -0
  17. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.js.map +1 -0
  18. package/dist/collection/components/pos-navigation/pos-navigation.css +115 -0
  19. package/dist/collection/components/{pos-navigation-bar/pos-navigation-bar.js → pos-navigation/pos-navigation.js} +75 -18
  20. package/dist/collection/components/pos-navigation/pos-navigation.js.map +1 -0
  21. package/dist/collection/components/pos-new-thing-form/pos-new-thing-form.js +1 -1
  22. package/dist/collection/components/pos-rich-link/pos-rich-link.css +1 -1
  23. package/dist/collection/components/pos-rich-link/pos-rich-link.js +2 -2
  24. package/dist/collection/components/pos-router/pos-router.css +1 -1
  25. package/dist/collection/components/pos-router/pos-router.js +1 -1
  26. package/dist/collection/components/pos-select-term/pos-select-term.js +1 -1
  27. package/dist/components/Subject.js +700 -0
  28. package/dist/components/Subject.js.map +1 -0
  29. package/dist/components/ion-searchbar.js +475 -1
  30. package/dist/components/ion-searchbar.js.map +1 -1
  31. package/dist/components/pos-add-new-thing2.js +1 -1
  32. package/dist/components/pos-add-new-thing2.js.map +1 -1
  33. package/dist/components/pos-app-browser.js +49 -40
  34. package/dist/components/pos-app-browser.js.map +1 -1
  35. package/dist/components/pos-app2.js +1 -697
  36. package/dist/components/pos-app2.js.map +1 -1
  37. package/dist/components/pos-make-findable2.js +1 -1
  38. package/dist/components/pos-make-findable2.js.map +1 -1
  39. package/dist/components/pos-navigation-bar2.js +21 -109
  40. package/dist/components/pos-navigation-bar2.js.map +1 -1
  41. package/dist/components/pos-navigation.d.ts +11 -0
  42. package/dist/components/pos-navigation.js +8 -0
  43. package/dist/components/pos-navigation.js.map +1 -0
  44. package/dist/components/pos-navigation2.js +394 -0
  45. package/dist/components/pos-navigation2.js.map +1 -0
  46. package/dist/components/pos-new-thing-form2.js +1 -1
  47. package/dist/components/pos-rich-link2.js +3 -3
  48. package/dist/components/pos-rich-link2.js.map +1 -1
  49. package/dist/components/pos-router2.js +2 -2
  50. package/dist/components/pos-router2.js.map +1 -1
  51. package/dist/components/pos-select-term2.js +1 -1
  52. package/dist/elements/elements.esm.js +1 -1
  53. package/dist/elements/elements.esm.js.map +1 -1
  54. package/dist/elements/{p-a6c03ce8.js → p-01adc2b7.js} +2 -2
  55. package/dist/elements/{p-7190d53c.entry.js → p-09ff1516.entry.js} +2 -2
  56. package/dist/elements/{p-307d1531.js → p-0a6631d5.js} +2 -2
  57. package/dist/elements/{p-c698ab8e.entry.js → p-0b3d14ec.entry.js} +3 -3
  58. package/dist/elements/{p-d8818bb3.entry.js → p-0d4f129d.entry.js} +2 -2
  59. package/dist/elements/p-104fee38.entry.js +2 -0
  60. package/dist/elements/{p-6cc9961e.entry.js → p-11466af2.entry.js} +2 -2
  61. package/dist/elements/{p-3e6ffc13.entry.js → p-11845ff3.entry.js} +2 -2
  62. package/dist/elements/p-13b1d6fe.entry.js +2 -0
  63. package/dist/elements/{p-d358565a.entry.js.map → p-13b1d6fe.entry.js.map} +1 -1
  64. package/dist/elements/p-14bf4c7a.entry.js +2 -0
  65. package/dist/elements/{p-66a58eb0.entry.js.map → p-14bf4c7a.entry.js.map} +1 -1
  66. package/dist/elements/{p-a507d627.entry.js → p-151d1ec8.entry.js} +2 -2
  67. package/dist/elements/{p-89aef852.js → p-1930ffd5.js} +2 -2
  68. package/dist/elements/{p-aa7d93f1.entry.js → p-1a1222a3.entry.js} +2 -2
  69. package/dist/elements/{p-4dd65d40.entry.js → p-1e05efd7.entry.js} +2 -2
  70. package/dist/elements/{p-f50c3045.entry.js → p-1faf2d02.entry.js} +2 -2
  71. package/dist/elements/{p-a421bbe5.entry.js → p-21e90439.entry.js} +2 -2
  72. package/dist/elements/p-220cce23.entry.js +2 -0
  73. package/dist/{components/searchbar.js.map → elements/p-220cce23.entry.js.map} +1 -1
  74. package/dist/elements/{p-552a9992.entry.js → p-22c21319.entry.js} +2 -2
  75. package/dist/elements/{p-66973c59.entry.js → p-24d93ddd.entry.js} +2 -2
  76. package/dist/elements/p-2551eb06.entry.js +2 -0
  77. package/dist/elements/{p-bca341ba.entry.js.map → p-2551eb06.entry.js.map} +1 -1
  78. package/dist/elements/p-258f2385.entry.js +2 -0
  79. package/dist/elements/{p-72a9cbdc.entry.js → p-27bd8113.entry.js} +2 -2
  80. package/dist/elements/{p-c350af00.entry.js → p-2948d57b.entry.js} +2 -2
  81. package/dist/elements/{p-41bb9792.entry.js → p-2cdaf88b.entry.js} +2 -2
  82. package/dist/elements/{p-fa0be1d8.entry.js → p-2e08ee3a.entry.js} +2 -2
  83. package/dist/elements/{p-239442f9.entry.js → p-2e0c20e7.entry.js} +2 -2
  84. package/dist/elements/p-2ec92ff9.entry.js +2 -0
  85. package/dist/elements/p-2f3623f1.entry.js +2 -0
  86. package/dist/elements/{p-c01a4a79.entry.js.map → p-2f3623f1.entry.js.map} +1 -1
  87. package/dist/elements/{p-8e8881a8.entry.js → p-30834f34.entry.js} +2 -2
  88. package/dist/elements/p-30cd90ec.js +6 -0
  89. package/dist/elements/{p-ae984107.entry.js → p-3585f786.entry.js} +2 -2
  90. package/dist/elements/{p-d08312dd.entry.js → p-35f84573.entry.js} +2 -2
  91. package/dist/elements/p-3e130681.entry.js +2 -0
  92. package/dist/elements/{p-bdea20c4.entry.js.map → p-3e130681.entry.js.map} +1 -1
  93. package/dist/elements/{p-ffa8c481.entry.js → p-3f02cc92.entry.js} +2 -2
  94. package/dist/elements/{p-71ee259b.js → p-3f316fc4.js} +2 -2
  95. package/dist/elements/{p-bc675b21.entry.js → p-3f3b74e6.entry.js} +2 -2
  96. package/dist/elements/p-40a2d567.entry.js +2 -0
  97. package/dist/elements/{p-e78cf007.entry.js → p-4dc7c524.entry.js} +2 -2
  98. package/dist/elements/{p-c191e6df.js → p-4e8c31fa.js} +8 -8
  99. package/dist/elements/{p-a45b1964.entry.js → p-5051d2a6.entry.js} +2 -2
  100. package/dist/elements/{p-e0de7c6a.entry.js → p-5a061ddb.entry.js} +2 -2
  101. package/dist/elements/{p-061819d1.js → p-5a8e7149.js} +3 -3
  102. package/dist/elements/p-5bf4c45a.js +5 -0
  103. package/dist/elements/{p-b9dcf3b2.js → p-5e8a3893.js} +2 -2
  104. package/dist/elements/{p-300ec095.entry.js → p-602861f4.entry.js} +3 -3
  105. package/dist/elements/{p-4a370bdc.entry.js → p-627d5e73.entry.js} +2 -2
  106. package/dist/elements/{p-406df11a.entry.js → p-648dac6c.entry.js} +2 -2
  107. package/dist/elements/{p-07d2bd5a.entry.js → p-650db824.entry.js} +2 -2
  108. package/dist/elements/{p-cb550d04.entry.js → p-682dd0f9.entry.js} +2 -2
  109. package/dist/elements/{p-59ec8b76.entry.js → p-689a5c54.entry.js} +3 -3
  110. package/dist/elements/{p-d6394ee4.entry.js → p-6a701de0.entry.js} +2 -2
  111. package/dist/elements/{p-f4035b4a.entry.js → p-6ca9bad7.entry.js} +2 -2
  112. package/dist/elements/{p-25926b66.entry.js → p-6cae9207.entry.js} +2 -2
  113. package/dist/elements/{p-6119b57a.entry.js → p-6e5c902a.entry.js} +2 -2
  114. package/dist/elements/{p-0ddcbecd.entry.js → p-72ba182e.entry.js} +2 -2
  115. package/dist/elements/p-7c14c1f9.entry.js +20 -0
  116. package/dist/elements/p-7c14c1f9.entry.js.map +1 -0
  117. package/dist/elements/{p-1b2d32c1.entry.js → p-8619a806.entry.js} +2 -2
  118. package/dist/elements/{p-4383e1bb.entry.js → p-87af433a.entry.js} +2 -2
  119. package/dist/elements/{p-f96384f2.entry.js → p-87eb06bc.entry.js} +2 -2
  120. package/dist/elements/p-8a691722.entry.js +2 -0
  121. package/dist/elements/{p-95161a5d.entry.js.map → p-8a691722.entry.js.map} +1 -1
  122. package/dist/elements/{p-e8268c7a.entry.js → p-8c13ce70.entry.js} +2 -2
  123. package/dist/elements/{p-b64a85bf.entry.js → p-8f6d4374.entry.js} +2 -2
  124. package/dist/elements/{p-949b115f.js → p-91025a2c.js} +3 -3
  125. package/dist/elements/{p-71835d6f.entry.js → p-95036276.entry.js} +2 -2
  126. package/dist/elements/{p-42169e41.js → p-97889672.js} +2 -2
  127. package/dist/elements/p-97fa472f.entry.js +2 -0
  128. package/dist/elements/{p-a06d93c7.entry.js.map → p-97fa472f.entry.js.map} +1 -1
  129. package/dist/elements/{p-8b209e66.entry.js → p-9840f300.entry.js} +2 -2
  130. package/dist/elements/p-98b2844f.js +5 -0
  131. package/dist/elements/{p-fa19a3e9.entry.js → p-9d23baee.entry.js} +2 -2
  132. package/dist/elements/{p-7e8b8df1.entry.js → p-9d6c94d3.entry.js} +2 -2
  133. package/dist/elements/{p-41854c8f.entry.js → p-9d81c061.entry.js} +2 -2
  134. package/dist/elements/{p-dadb557e.entry.js → p-a19fb8fa.entry.js} +4 -4
  135. package/dist/elements/{p-9a4bf79e.entry.js → p-a7c9aa13.entry.js} +2 -2
  136. package/dist/elements/{p-0ee8b7a7.js → p-acfa402f.js} +2 -2
  137. package/dist/elements/{p-facc0ac5.entry.js → p-af03cfbe.entry.js} +2 -2
  138. package/dist/elements/{p-b8bd7745.entry.js → p-af2b9ecb.entry.js} +2 -2
  139. package/dist/elements/{p-cbf050d6.js → p-b110cb49.js} +2 -2
  140. package/dist/elements/{p-09d80405.entry.js → p-b1292dde.entry.js} +2 -2
  141. package/dist/elements/{p-4ccdbcbf.entry.js → p-b1de75a4.entry.js} +2 -2
  142. package/dist/elements/p-b2c94853.entry.js +2 -0
  143. package/dist/elements/{p-250d4bf1.entry.js.map → p-b2c94853.entry.js.map} +1 -1
  144. package/dist/elements/{p-a376351f.entry.js → p-b34203cd.entry.js} +2 -2
  145. package/dist/elements/{p-dc709055.entry.js → p-b954a40f.entry.js} +2 -2
  146. package/dist/elements/{p-1fc8e557.js → p-bde7428a.js} +2 -2
  147. package/dist/elements/{p-734e5a97.js → p-bf5335d4.js} +2 -2
  148. package/dist/elements/p-c1df6af7.js +8 -0
  149. package/dist/elements/{p-cbae963d.js → p-c30eb80f.js} +3 -3
  150. package/dist/elements/{p-4c078751.entry.js → p-c4332c66.entry.js} +2 -2
  151. package/dist/elements/{p-8e1c68eb.entry.js → p-c466d5bf.entry.js} +2 -2
  152. package/dist/elements/{p-36caf749.entry.js → p-c4894c44.entry.js} +2 -2
  153. package/dist/elements/{p-87c81685.entry.js → p-c4e1867e.entry.js} +2 -2
  154. package/dist/elements/{p-645632a8.entry.js → p-c7db2b55.entry.js} +5 -5
  155. package/dist/elements/p-cb3e5072.entry.js +2 -0
  156. package/dist/elements/{p-49fcec88.entry.js → p-d54d552d.entry.js} +6 -6
  157. package/dist/elements/{p-2a548485.entry.js → p-d7b597ed.entry.js} +2 -2
  158. package/dist/elements/p-da0c771e.js +5 -0
  159. package/dist/elements/{p-7183a9ca.entry.js → p-dbb94429.entry.js} +2 -2
  160. package/dist/elements/{p-c9604122.entry.js → p-de6d7967.entry.js} +2 -2
  161. package/dist/elements/p-e05f218c.entry.js +2 -0
  162. package/dist/elements/{p-2f0509be.entry.js.map → p-e05f218c.entry.js.map} +1 -1
  163. package/dist/elements/{p-b5f6b322.entry.js → p-e15ff70c.entry.js} +2 -2
  164. package/dist/elements/p-e43d654c.js +5 -0
  165. package/dist/elements/{p-01981011.entry.js → p-e7fbd427.entry.js} +2 -2
  166. package/dist/elements/{p-d61d280b.js → p-e912617c.js} +3 -3
  167. package/dist/elements/{p-da0d920d.js → p-ebe1c8ca.js} +2 -2
  168. package/dist/elements/{p-d872fe3e.entry.js → p-ec283f66.entry.js} +2 -2
  169. package/dist/elements/p-ec7a6c44.js +2 -0
  170. package/dist/elements/{p-f40b3ec6.entry.js → p-ed22dcc0.entry.js} +2 -2
  171. package/dist/elements/{p-05fff093.entry.js → p-eeaffc3b.entry.js} +2 -2
  172. package/dist/elements/p-f2c0c8a9.js +5 -0
  173. package/dist/elements/{p-c186950b.entry.js → p-f3bf8ff7.entry.js} +2 -2
  174. package/dist/elements/{p-5441ae35.entry.js → p-fb740291.entry.js} +2 -2
  175. package/dist/elements/{p-5bf40440.entry.js → p-fbff274c.entry.js} +2 -2
  176. package/dist/elements/{p-266d2934.entry.js → p-fd84af22.entry.js} +2 -2
  177. package/dist/elements/{p-a08f0446.entry.js → p-ff684bff.entry.js} +2 -2
  178. package/dist/esm/{BrokenFile-d387a173.js → BrokenFile-0b9882ef.js} +2 -2
  179. package/dist/esm/{BrokenFile-d387a173.js.map → BrokenFile-0b9882ef.js.map} +1 -1
  180. package/dist/esm/{animation-43b39c85.js → animation-756697b9.js} +2 -2
  181. package/dist/esm/{animation-43b39c85.js.map → animation-756697b9.js.map} +1 -1
  182. package/dist/esm/{app-globals-f420d326.js → app-globals-31ecda4c.js} +2 -2
  183. package/dist/esm/{app-globals-f420d326.js.map → app-globals-31ecda4c.js.map} +1 -1
  184. package/dist/esm/elements.js +5 -5
  185. package/dist/esm/{form-controller-3b50bf52.js → form-controller-8a54002c.js} +2 -2
  186. package/dist/esm/{form-controller-3b50bf52.js.map → form-controller-8a54002c.js.map} +1 -1
  187. package/dist/esm/{framework-delegate-c5179013.js → framework-delegate-65b5c396.js} +2 -2
  188. package/dist/esm/{framework-delegate-c5179013.js.map → framework-delegate-65b5c396.js.map} +1 -1
  189. package/dist/esm/{hardware-back-button-12e771ad.js → hardware-back-button-87b1549b.js} +3 -3
  190. package/dist/esm/{hardware-back-button-12e771ad.js.map → hardware-back-button-87b1549b.js.map} +1 -1
  191. package/dist/esm/{helpers-c51da066.js → helpers-bc137989.js} +2 -2
  192. package/dist/esm/{helpers-c51da066.js.map → helpers-bc137989.js.map} +1 -1
  193. package/dist/esm/{index-9725d917.js → index-46d8987d.js} +2 -2
  194. package/dist/esm/{index-9725d917.js.map → index-46d8987d.js.map} +1 -1
  195. package/dist/esm/{index-12e18dab.js → index-81865f43.js} +2 -2
  196. package/dist/esm/{index-12e18dab.js.map → index-81865f43.js.map} +1 -1
  197. package/dist/esm/{index-9edae53a.js → index-a51d17dd.js} +2 -2
  198. package/dist/esm/{index-9edae53a.js.map → index-a51d17dd.js.map} +1 -1
  199. package/dist/esm/{index-7462d21e.js → index-cbb71797.js} +5 -5
  200. package/dist/esm/{index-7462d21e.js.map → index-cbb71797.js.map} +1 -1
  201. package/dist/esm/{index-842e2941.js → index-e7f761c9.js} +2 -2
  202. package/dist/esm/{index-842e2941.js.map → index-e7f761c9.js.map} +1 -1
  203. package/dist/esm/{index-ccbcf170.js → index-fa9f8152.js} +5 -5
  204. package/dist/esm/{index-ccbcf170.js.map → index-fa9f8152.js.map} +1 -1
  205. package/dist/esm/{input-shims-0cb1bad1.js → input-shims-10923fa6.js} +3 -3
  206. package/dist/esm/{input-shims-0cb1bad1.js.map → input-shims-10923fa6.js.map} +1 -1
  207. package/dist/esm/{input.utils-0e2bf61a.js → input.utils-5fe0312f.js} +2 -2
  208. package/dist/esm/{input.utils-0e2bf61a.js.map → input.utils-5fe0312f.js.map} +1 -1
  209. package/dist/esm/ion-accordion-group.entry.js +2 -2
  210. package/dist/esm/ion-accordion.entry.js +4 -4
  211. package/dist/esm/ion-action-sheet_3.entry.js +7 -7
  212. package/dist/esm/ion-app.entry.js +7 -7
  213. package/dist/esm/ion-avatar.entry.js +2 -2
  214. package/dist/esm/ion-back-button.entry.js +4 -4
  215. package/dist/esm/ion-backdrop.entry.js +2 -2
  216. package/dist/esm/ion-badge_5.entry.js +2 -2
  217. package/dist/esm/ion-breadcrumb.entry.js +4 -4
  218. package/dist/esm/ion-breadcrumbs.entry.js +2 -2
  219. package/dist/esm/ion-button_4.entry.js +3 -3
  220. package/dist/esm/ion-card-content.entry.js +2 -2
  221. package/dist/esm/ion-card-header.entry.js +2 -2
  222. package/dist/esm/ion-card-subtitle.entry.js +2 -2
  223. package/dist/esm/ion-card-title.entry.js +2 -2
  224. package/dist/esm/ion-card.entry.js +3 -3
  225. package/dist/esm/ion-checkbox_7.entry.js +5 -5
  226. package/dist/esm/ion-chip.entry.js +2 -2
  227. package/dist/esm/ion-col.entry.js +2 -2
  228. package/dist/esm/ion-content.entry.js +3 -3
  229. package/dist/esm/ion-datetime-button.entry.js +3 -3
  230. package/dist/esm/ion-datetime.entry.js +4 -4
  231. package/dist/esm/ion-fab-button.entry.js +4 -4
  232. package/dist/esm/ion-fab-list.entry.js +2 -2
  233. package/dist/esm/ion-fab.entry.js +2 -2
  234. package/dist/esm/ion-footer.entry.js +4 -4
  235. package/dist/esm/ion-grid.entry.js +2 -2
  236. package/dist/esm/ion-header.entry.js +4 -4
  237. package/dist/esm/ion-icon_31.entry.js +302 -451
  238. package/dist/esm/ion-icon_31.entry.js.map +1 -1
  239. package/dist/esm/ion-img.entry.js +3 -3
  240. package/dist/esm/ion-infinite-scroll-content.entry.js +2 -2
  241. package/dist/esm/ion-infinite-scroll.entry.js +4 -4
  242. package/dist/esm/ion-input.entry.js +7 -7
  243. package/dist/esm/ion-item-divider.entry.js +2 -2
  244. package/dist/esm/ion-item-group.entry.js +2 -2
  245. package/dist/esm/ion-item-option.entry.js +2 -2
  246. package/dist/esm/ion-item-options.entry.js +3 -3
  247. package/dist/esm/ion-item-sliding.entry.js +4 -4
  248. package/dist/esm/ion-loading.entry.js +7 -7
  249. package/dist/esm/ion-menu-button.entry.js +8 -8
  250. package/dist/esm/ion-menu-toggle.entry.js +7 -7
  251. package/dist/esm/ion-menu.entry.js +8 -8
  252. package/dist/esm/ion-modal.entry.js +9 -9
  253. package/dist/esm/ion-nav-link.entry.js +1 -1
  254. package/dist/esm/ion-nav.entry.js +6 -6
  255. package/dist/esm/ion-note.entry.js +2 -2
  256. package/dist/esm/ion-picker-column.entry.js +3 -3
  257. package/dist/esm/ion-picker.entry.js +7 -7
  258. package/dist/esm/ion-popover.entry.js +8 -8
  259. package/dist/esm/ion-range.entry.js +5 -5
  260. package/dist/esm/ion-refresher-content.entry.js +6 -6
  261. package/dist/esm/ion-refresher.entry.js +6 -6
  262. package/dist/esm/ion-reorder-group.entry.js +4 -4
  263. package/dist/esm/ion-reorder.entry.js +3 -3
  264. package/dist/esm/ion-route-redirect.entry.js +1 -1
  265. package/dist/esm/ion-route.entry.js +1 -1
  266. package/dist/esm/ion-router-link.entry.js +2 -2
  267. package/dist/esm/ion-router-outlet.entry.js +6 -6
  268. package/dist/esm/ion-router.entry.js +2 -2
  269. package/dist/esm/ion-row.entry.js +2 -2
  270. package/dist/{components/searchbar.js → esm/ion-searchbar.entry.js} +17 -70
  271. package/dist/esm/ion-searchbar.entry.js.map +1 -0
  272. package/dist/esm/ion-segment-button.entry.js +3 -3
  273. package/dist/esm/ion-segment.entry.js +3 -3
  274. package/dist/esm/ion-select-option.entry.js +2 -2
  275. package/dist/esm/ion-select.entry.js +9 -9
  276. package/dist/esm/ion-spinner.entry.js +2 -2
  277. package/dist/esm/ion-split-pane.entry.js +2 -2
  278. package/dist/esm/ion-tab-bar.entry.js +2 -2
  279. package/dist/esm/ion-tab-button.entry.js +3 -3
  280. package/dist/esm/ion-tab.entry.js +3 -3
  281. package/dist/esm/ion-tabs.entry.js +1 -1
  282. package/dist/esm/ion-text.entry.js +2 -2
  283. package/dist/esm/ion-textarea.entry.js +6 -6
  284. package/dist/esm/ion-thumbnail.entry.js +2 -2
  285. package/dist/esm/ion-title.entry.js +2 -2
  286. package/dist/esm/ion-toggle.entry.js +5 -5
  287. package/dist/esm/ion-toolbar.entry.js +2 -2
  288. package/dist/esm/{ionic-global-07f989af.js → ionic-global-dc58df6a.js} +2 -2
  289. package/dist/esm/{ionic-global-07f989af.js.map → ionic-global-dc58df6a.js.map} +1 -1
  290. package/dist/esm/{ios.transition-02b5b74a.js → ios.transition-cd6a57b8.js} +5 -5
  291. package/dist/esm/{ios.transition-02b5b74a.js.map → ios.transition-cd6a57b8.js.map} +1 -1
  292. package/dist/esm/loader.js +5 -5
  293. package/dist/esm/{md.transition-0e6cf607.js → md.transition-a2999731.js} +5 -5
  294. package/dist/esm/{md.transition-0e6cf607.js.map → md.transition-a2999731.js.map} +1 -1
  295. package/dist/esm/{menu-toggle-util-6257f7b5.js → menu-toggle-util-5d79b187.js} +2 -2
  296. package/dist/esm/{menu-toggle-util-6257f7b5.js.map → menu-toggle-util-5d79b187.js.map} +1 -1
  297. package/dist/esm/{notch-controller-79926902.js → notch-controller-ce206c7f.js} +2 -2
  298. package/dist/esm/{notch-controller-79926902.js.map → notch-controller-ce206c7f.js.map} +1 -1
  299. package/dist/esm/{overlays-ef03d5bd.js → overlays-d7fc4ce2.js} +5 -5
  300. package/dist/esm/{overlays-ef03d5bd.js.map → overlays-d7fc4ce2.js.map} +1 -1
  301. package/dist/esm/pos-app-document-viewer.entry.js +1 -1
  302. package/dist/esm/pos-app-generic.entry.js +1 -1
  303. package/dist/esm/pos-app-image-viewer.entry.js +1 -1
  304. package/dist/esm/pos-app-ldp-container.entry.js +1 -1
  305. package/dist/esm/pos-app-rdf-document.entry.js +1 -1
  306. package/dist/esm/pos-container-contents.entry.js +1 -1
  307. package/dist/esm/pos-container-item.entry.js +1 -1
  308. package/dist/esm/pos-document.entry.js +2 -2
  309. package/dist/esm/pos-list.entry.js +1 -1
  310. package/dist/esm/pos-relations_2.entry.js +1 -1
  311. package/dist/esm/pos-subjects.entry.js +1 -1
  312. package/dist/esm/pos-value.entry.js +1 -1
  313. package/dist/esm/{refresher.utils-d191622d.js → refresher.utils-e60a7dd8.js} +4 -4
  314. package/dist/esm/{refresher.utils-d191622d.js.map → refresher.utils-e60a7dd8.js.map} +1 -1
  315. package/dist/esm/{status-tap-cdf580e7.js → status-tap-a4c12279.js} +4 -4
  316. package/dist/esm/{status-tap-cdf580e7.js.map → status-tap-a4c12279.js.map} +1 -1
  317. package/dist/esm/{swipe-back-698e6532.js → swipe-back-c940b28a.js} +2 -2
  318. package/dist/esm/{swipe-back-698e6532.js.map → swipe-back-c940b28a.js.map} +1 -1
  319. package/dist/types/apps/pos-app-browser/pos-app-browser.d.ts +2 -1
  320. package/dist/types/components/pos-navigation/__test/typeToSearch.d.ts +1 -0
  321. package/dist/types/components/pos-navigation/bar/pos-navigation-bar.d.ts +10 -0
  322. package/dist/types/components/pos-navigation/pos-navigation.d.ts +44 -0
  323. package/dist/types/components.d.ts +48 -7
  324. package/package.json +1 -1
  325. package/dist/collection/components/pos-navigation-bar/pos-navigation-bar.css +0 -51
  326. package/dist/collection/components/pos-navigation-bar/pos-navigation-bar.js.map +0 -1
  327. package/dist/elements/p-07773ed5.entry.js +0 -2
  328. package/dist/elements/p-250d4bf1.entry.js +0 -2
  329. package/dist/elements/p-2f0509be.entry.js +0 -2
  330. package/dist/elements/p-4c78c8c9.js +0 -5
  331. package/dist/elements/p-523432d1.js +0 -2
  332. package/dist/elements/p-627826b0.entry.js +0 -2
  333. package/dist/elements/p-66a58eb0.entry.js +0 -2
  334. package/dist/elements/p-7f53778f.entry.js +0 -2
  335. package/dist/elements/p-8f6d1cbe.entry.js +0 -2
  336. package/dist/elements/p-932de51e.js +0 -8
  337. package/dist/elements/p-95161a5d.entry.js +0 -2
  338. package/dist/elements/p-a06d93c7.entry.js +0 -2
  339. package/dist/elements/p-a13569cf.entry.js +0 -2
  340. package/dist/elements/p-a37a2712.js +0 -5
  341. package/dist/elements/p-b34f1af4.entry.js +0 -20
  342. package/dist/elements/p-b34f1af4.entry.js.map +0 -1
  343. package/dist/elements/p-bca341ba.entry.js +0 -2
  344. package/dist/elements/p-bdea20c4.entry.js +0 -2
  345. package/dist/elements/p-c01a4a79.entry.js +0 -2
  346. package/dist/elements/p-c452a2e9.js +0 -5
  347. package/dist/elements/p-d1e7b393.js +0 -5
  348. package/dist/elements/p-d358565a.entry.js +0 -2
  349. package/dist/elements/p-eba70ed1.js +0 -6
  350. package/dist/elements/p-f67bba50.js +0 -5
  351. package/dist/types/components/pos-navigation-bar/pos-navigation-bar.d.ts +0 -25
  352. /package/dist/elements/{p-a6c03ce8.js.map → p-01adc2b7.js.map} +0 -0
  353. /package/dist/elements/{p-7190d53c.entry.js.map → p-09ff1516.entry.js.map} +0 -0
  354. /package/dist/elements/{p-307d1531.js.map → p-0a6631d5.js.map} +0 -0
  355. /package/dist/elements/{p-c698ab8e.entry.js.map → p-0b3d14ec.entry.js.map} +0 -0
  356. /package/dist/elements/{p-d8818bb3.entry.js.map → p-0d4f129d.entry.js.map} +0 -0
  357. /package/dist/elements/{p-07773ed5.entry.js.map → p-104fee38.entry.js.map} +0 -0
  358. /package/dist/elements/{p-6cc9961e.entry.js.map → p-11466af2.entry.js.map} +0 -0
  359. /package/dist/elements/{p-3e6ffc13.entry.js.map → p-11845ff3.entry.js.map} +0 -0
  360. /package/dist/elements/{p-a507d627.entry.js.map → p-151d1ec8.entry.js.map} +0 -0
  361. /package/dist/elements/{p-89aef852.js.map → p-1930ffd5.js.map} +0 -0
  362. /package/dist/elements/{p-aa7d93f1.entry.js.map → p-1a1222a3.entry.js.map} +0 -0
  363. /package/dist/elements/{p-4dd65d40.entry.js.map → p-1e05efd7.entry.js.map} +0 -0
  364. /package/dist/elements/{p-f50c3045.entry.js.map → p-1faf2d02.entry.js.map} +0 -0
  365. /package/dist/elements/{p-a421bbe5.entry.js.map → p-21e90439.entry.js.map} +0 -0
  366. /package/dist/elements/{p-552a9992.entry.js.map → p-22c21319.entry.js.map} +0 -0
  367. /package/dist/elements/{p-66973c59.entry.js.map → p-24d93ddd.entry.js.map} +0 -0
  368. /package/dist/elements/{p-8f6d1cbe.entry.js.map → p-258f2385.entry.js.map} +0 -0
  369. /package/dist/elements/{p-72a9cbdc.entry.js.map → p-27bd8113.entry.js.map} +0 -0
  370. /package/dist/elements/{p-c350af00.entry.js.map → p-2948d57b.entry.js.map} +0 -0
  371. /package/dist/elements/{p-41bb9792.entry.js.map → p-2cdaf88b.entry.js.map} +0 -0
  372. /package/dist/elements/{p-fa0be1d8.entry.js.map → p-2e08ee3a.entry.js.map} +0 -0
  373. /package/dist/elements/{p-239442f9.entry.js.map → p-2e0c20e7.entry.js.map} +0 -0
  374. /package/dist/elements/{p-627826b0.entry.js.map → p-2ec92ff9.entry.js.map} +0 -0
  375. /package/dist/elements/{p-8e8881a8.entry.js.map → p-30834f34.entry.js.map} +0 -0
  376. /package/dist/elements/{p-eba70ed1.js.map → p-30cd90ec.js.map} +0 -0
  377. /package/dist/elements/{p-ae984107.entry.js.map → p-3585f786.entry.js.map} +0 -0
  378. /package/dist/elements/{p-d08312dd.entry.js.map → p-35f84573.entry.js.map} +0 -0
  379. /package/dist/elements/{p-ffa8c481.entry.js.map → p-3f02cc92.entry.js.map} +0 -0
  380. /package/dist/elements/{p-71ee259b.js.map → p-3f316fc4.js.map} +0 -0
  381. /package/dist/elements/{p-bc675b21.entry.js.map → p-3f3b74e6.entry.js.map} +0 -0
  382. /package/dist/elements/{p-7f53778f.entry.js.map → p-40a2d567.entry.js.map} +0 -0
  383. /package/dist/elements/{p-e78cf007.entry.js.map → p-4dc7c524.entry.js.map} +0 -0
  384. /package/dist/elements/{p-c191e6df.js.map → p-4e8c31fa.js.map} +0 -0
  385. /package/dist/elements/{p-a45b1964.entry.js.map → p-5051d2a6.entry.js.map} +0 -0
  386. /package/dist/elements/{p-e0de7c6a.entry.js.map → p-5a061ddb.entry.js.map} +0 -0
  387. /package/dist/elements/{p-061819d1.js.map → p-5a8e7149.js.map} +0 -0
  388. /package/dist/elements/{p-4c78c8c9.js.map → p-5bf4c45a.js.map} +0 -0
  389. /package/dist/elements/{p-b9dcf3b2.js.map → p-5e8a3893.js.map} +0 -0
  390. /package/dist/elements/{p-300ec095.entry.js.map → p-602861f4.entry.js.map} +0 -0
  391. /package/dist/elements/{p-4a370bdc.entry.js.map → p-627d5e73.entry.js.map} +0 -0
  392. /package/dist/elements/{p-406df11a.entry.js.map → p-648dac6c.entry.js.map} +0 -0
  393. /package/dist/elements/{p-07d2bd5a.entry.js.map → p-650db824.entry.js.map} +0 -0
  394. /package/dist/elements/{p-cb550d04.entry.js.map → p-682dd0f9.entry.js.map} +0 -0
  395. /package/dist/elements/{p-59ec8b76.entry.js.map → p-689a5c54.entry.js.map} +0 -0
  396. /package/dist/elements/{p-d6394ee4.entry.js.map → p-6a701de0.entry.js.map} +0 -0
  397. /package/dist/elements/{p-f4035b4a.entry.js.map → p-6ca9bad7.entry.js.map} +0 -0
  398. /package/dist/elements/{p-25926b66.entry.js.map → p-6cae9207.entry.js.map} +0 -0
  399. /package/dist/elements/{p-6119b57a.entry.js.map → p-6e5c902a.entry.js.map} +0 -0
  400. /package/dist/elements/{p-0ddcbecd.entry.js.map → p-72ba182e.entry.js.map} +0 -0
  401. /package/dist/elements/{p-1b2d32c1.entry.js.map → p-8619a806.entry.js.map} +0 -0
  402. /package/dist/elements/{p-4383e1bb.entry.js.map → p-87af433a.entry.js.map} +0 -0
  403. /package/dist/elements/{p-f96384f2.entry.js.map → p-87eb06bc.entry.js.map} +0 -0
  404. /package/dist/elements/{p-e8268c7a.entry.js.map → p-8c13ce70.entry.js.map} +0 -0
  405. /package/dist/elements/{p-b64a85bf.entry.js.map → p-8f6d4374.entry.js.map} +0 -0
  406. /package/dist/elements/{p-949b115f.js.map → p-91025a2c.js.map} +0 -0
  407. /package/dist/elements/{p-71835d6f.entry.js.map → p-95036276.entry.js.map} +0 -0
  408. /package/dist/elements/{p-42169e41.js.map → p-97889672.js.map} +0 -0
  409. /package/dist/elements/{p-8b209e66.entry.js.map → p-9840f300.entry.js.map} +0 -0
  410. /package/dist/elements/{p-a37a2712.js.map → p-98b2844f.js.map} +0 -0
  411. /package/dist/elements/{p-fa19a3e9.entry.js.map → p-9d23baee.entry.js.map} +0 -0
  412. /package/dist/elements/{p-7e8b8df1.entry.js.map → p-9d6c94d3.entry.js.map} +0 -0
  413. /package/dist/elements/{p-41854c8f.entry.js.map → p-9d81c061.entry.js.map} +0 -0
  414. /package/dist/elements/{p-dadb557e.entry.js.map → p-a19fb8fa.entry.js.map} +0 -0
  415. /package/dist/elements/{p-9a4bf79e.entry.js.map → p-a7c9aa13.entry.js.map} +0 -0
  416. /package/dist/elements/{p-0ee8b7a7.js.map → p-acfa402f.js.map} +0 -0
  417. /package/dist/elements/{p-facc0ac5.entry.js.map → p-af03cfbe.entry.js.map} +0 -0
  418. /package/dist/elements/{p-b8bd7745.entry.js.map → p-af2b9ecb.entry.js.map} +0 -0
  419. /package/dist/elements/{p-cbf050d6.js.map → p-b110cb49.js.map} +0 -0
  420. /package/dist/elements/{p-09d80405.entry.js.map → p-b1292dde.entry.js.map} +0 -0
  421. /package/dist/elements/{p-4ccdbcbf.entry.js.map → p-b1de75a4.entry.js.map} +0 -0
  422. /package/dist/elements/{p-a376351f.entry.js.map → p-b34203cd.entry.js.map} +0 -0
  423. /package/dist/elements/{p-dc709055.entry.js.map → p-b954a40f.entry.js.map} +0 -0
  424. /package/dist/elements/{p-1fc8e557.js.map → p-bde7428a.js.map} +0 -0
  425. /package/dist/elements/{p-734e5a97.js.map → p-bf5335d4.js.map} +0 -0
  426. /package/dist/elements/{p-932de51e.js.map → p-c1df6af7.js.map} +0 -0
  427. /package/dist/elements/{p-cbae963d.js.map → p-c30eb80f.js.map} +0 -0
  428. /package/dist/elements/{p-4c078751.entry.js.map → p-c4332c66.entry.js.map} +0 -0
  429. /package/dist/elements/{p-8e1c68eb.entry.js.map → p-c466d5bf.entry.js.map} +0 -0
  430. /package/dist/elements/{p-36caf749.entry.js.map → p-c4894c44.entry.js.map} +0 -0
  431. /package/dist/elements/{p-87c81685.entry.js.map → p-c4e1867e.entry.js.map} +0 -0
  432. /package/dist/elements/{p-645632a8.entry.js.map → p-c7db2b55.entry.js.map} +0 -0
  433. /package/dist/elements/{p-a13569cf.entry.js.map → p-cb3e5072.entry.js.map} +0 -0
  434. /package/dist/elements/{p-49fcec88.entry.js.map → p-d54d552d.entry.js.map} +0 -0
  435. /package/dist/elements/{p-2a548485.entry.js.map → p-d7b597ed.entry.js.map} +0 -0
  436. /package/dist/elements/{p-c452a2e9.js.map → p-da0c771e.js.map} +0 -0
  437. /package/dist/elements/{p-7183a9ca.entry.js.map → p-dbb94429.entry.js.map} +0 -0
  438. /package/dist/elements/{p-c9604122.entry.js.map → p-de6d7967.entry.js.map} +0 -0
  439. /package/dist/elements/{p-b5f6b322.entry.js.map → p-e15ff70c.entry.js.map} +0 -0
  440. /package/dist/elements/{p-f67bba50.js.map → p-e43d654c.js.map} +0 -0
  441. /package/dist/elements/{p-01981011.entry.js.map → p-e7fbd427.entry.js.map} +0 -0
  442. /package/dist/elements/{p-d61d280b.js.map → p-e912617c.js.map} +0 -0
  443. /package/dist/elements/{p-da0d920d.js.map → p-ebe1c8ca.js.map} +0 -0
  444. /package/dist/elements/{p-d872fe3e.entry.js.map → p-ec283f66.entry.js.map} +0 -0
  445. /package/dist/elements/{p-523432d1.js.map → p-ec7a6c44.js.map} +0 -0
  446. /package/dist/elements/{p-f40b3ec6.entry.js.map → p-ed22dcc0.entry.js.map} +0 -0
  447. /package/dist/elements/{p-05fff093.entry.js.map → p-eeaffc3b.entry.js.map} +0 -0
  448. /package/dist/elements/{p-d1e7b393.js.map → p-f2c0c8a9.js.map} +0 -0
  449. /package/dist/elements/{p-c186950b.entry.js.map → p-f3bf8ff7.entry.js.map} +0 -0
  450. /package/dist/elements/{p-5441ae35.entry.js.map → p-fb740291.entry.js.map} +0 -0
  451. /package/dist/elements/{p-5bf40440.entry.js.map → p-fbff274c.entry.js.map} +0 -0
  452. /package/dist/elements/{p-266d2934.entry.js.map → p-fd84af22.entry.js.map} +0 -0
  453. /package/dist/elements/{p-a08f0446.entry.js.map → p-ff684bff.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 {
@@ -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));
@@ -3141,7 +2915,7 @@ const PosApp = class {
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 = () => {
@@ -3459,7 +3242,7 @@ const PosLoginForm = class {
3459
3242
  };
3460
3243
  PosLoginForm.style = PosLoginFormStyle0;
3461
3244
 
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";
3245
+ 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
3246
  const PosMakeFindableStyle0 = posMakeFindableCss;
3464
3247
 
3465
3248
  const PosMakeFindable = class {
@@ -3566,25 +3349,44 @@ const IconMakeFindable = () => (h("svg", { role: "presentation", xmlns: "http://
3566
3349
  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
3350
  PosMakeFindable.style = PosMakeFindableStyle0;
3568
3351
 
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;
3352
+ 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 &.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\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";
3353
+ const PosNavigationStyle0 = posNavigationCss;
3571
3354
 
3572
- const PosNavigationBar = class {
3355
+ const PosNavigation = class {
3573
3356
  constructor(hostRef) {
3574
3357
  registerInstance(this, hostRef);
3575
3358
  this.subscribePodOs = createEvent(this, "pod-os:init", 7);
3576
3359
  this.linkEmitter = createEvent(this, "pod-os:link", 7);
3360
+ /**
3361
+ * Initial value of the navigation bar
3362
+ */
3577
3363
  this.uri = '';
3578
- this.value = this.uri;
3364
+ /**
3365
+ * Current value of the input field
3366
+ */
3367
+ this.inputValue = this.uri;
3579
3368
  this.searchIndex = undefined;
3580
3369
  this.suggestions = [];
3581
3370
  this.selectedIndex = -1;
3371
+ this.resource = null;
3372
+ this.changeEvents = new Subject();
3373
+ this.debouncedSearch = null;
3582
3374
  this.receivePodOs = async (os) => {
3583
3375
  this.os = os;
3584
3376
  };
3585
3377
  }
3378
+ updateResource() {
3379
+ var _a;
3380
+ try {
3381
+ this.resource = this.uri ? (_a = this.os) === null || _a === void 0 ? void 0 : _a.store.get(this.uri) : null;
3382
+ }
3383
+ catch (_b) {
3384
+ this.resource = null;
3385
+ }
3386
+ }
3586
3387
  componentWillLoad() {
3587
3388
  subscribePodOs(this);
3389
+ this.updateResource();
3588
3390
  store.onChange('isLoggedIn', async (isLoggedIn) => {
3589
3391
  if (isLoggedIn) {
3590
3392
  await this.buildSearchIndex();
@@ -3593,6 +3395,11 @@ const PosNavigationBar = class {
3593
3395
  this.clearSearchIndex();
3594
3396
  }
3595
3397
  });
3398
+ this.debouncedSearch = this.changeEvents.pipe(debounceTime(300)).subscribe(() => this.search());
3399
+ }
3400
+ disconnectedCallback() {
3401
+ var _a;
3402
+ (_a = this.debouncedSearch) === null || _a === void 0 ? void 0 : _a.unsubscribe();
3596
3403
  }
3597
3404
  async buildSearchIndex() {
3598
3405
  this.searchIndex = await this.os.buildSearchIndex(store.state.profile);
@@ -3600,16 +3407,33 @@ const PosNavigationBar = class {
3600
3407
  rebuildSearchIndex() {
3601
3408
  this.searchIndex.rebuild();
3602
3409
  }
3410
+ openNavigationDialog(e) {
3411
+ var _a, _b;
3412
+ this.resource = e.detail;
3413
+ if (e.detail) {
3414
+ this.inputValue = e.detail.uri;
3415
+ this.search();
3416
+ }
3417
+ (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.select();
3418
+ (_b = this.dialogRef) === null || _b === void 0 ? void 0 : _b.show();
3419
+ }
3603
3420
  clearSearchIndex() {
3604
3421
  var _a;
3605
3422
  (_a = this.searchIndex) === null || _a === void 0 ? void 0 : _a.clear();
3606
3423
  }
3607
3424
  onChange(event) {
3608
- this.value = event.detail.value;
3609
- this.search();
3425
+ this.inputValue = event.target.value;
3426
+ this.changeEvents.next();
3427
+ }
3428
+ closeDialog() {
3429
+ var _a;
3430
+ (_a = this.dialogRef) === null || _a === void 0 ? void 0 : _a.close();
3431
+ this.selectedIndex = -1;
3610
3432
  }
3611
3433
  clearSuggestions() {
3434
+ var _a;
3612
3435
  this.suggestions = [];
3436
+ (_a = this.dialogRef) === null || _a === void 0 ? void 0 : _a.close();
3613
3437
  this.selectedIndex = -1;
3614
3438
  }
3615
3439
  onClickSelf(event) {
@@ -3617,7 +3441,7 @@ const PosNavigationBar = class {
3617
3441
  }
3618
3442
  handleKeyDown(ev) {
3619
3443
  if (ev.key === 'Escape') {
3620
- this.clearSuggestions();
3444
+ this.closeDialog();
3621
3445
  }
3622
3446
  else if (ev.key === 'ArrowDown') {
3623
3447
  ev.preventDefault();
@@ -3630,20 +3454,47 @@ const PosNavigationBar = class {
3630
3454
  }
3631
3455
  search() {
3632
3456
  if (this.searchIndex) {
3633
- this.suggestions = this.value ? this.searchIndex.search(this.value) : [];
3457
+ this.suggestions = this.inputValue ? this.searchIndex.search(this.inputValue) : [];
3634
3458
  }
3635
3459
  }
3636
- onSubmit(event) {
3637
- event.preventDefault();
3460
+ onSubmit() {
3638
3461
  if (this.suggestions && this.selectedIndex > -1) {
3639
3462
  this.linkEmitter.emit(this.suggestions[this.selectedIndex].ref);
3640
3463
  }
3641
3464
  else {
3642
- this.linkEmitter.emit(this.value);
3465
+ this.linkEmitter.emit(this.inputValue);
3466
+ }
3467
+ }
3468
+ render() {
3469
+ return (h("nav", { key: 'f09437fdd0bdfc5912af62658f1f32ab54c439c8' }, h("search", { key: 'fa09fec64bacfe1460a1fad256e509a480dd6a01' }, h("pos-navigation-bar", { key: '8dcd35cad5858da049ae942152f3cebe884aa761', searchIndexReady: this.searchIndex !== undefined, current: this.resource }), h("dialog", { key: '3ad61d48a6c5fcd0b010950c702e9488a9fd5160', ref: el => (this.dialogRef = el) }, h("form", { key: '1c23af28daf15f635d4c36002ca6fe153e33b48e', method: "dialog", onSubmit: () => this.onSubmit() }, h("input", { key: 'f11ff492c9333e5f6110630b9b6b3f3b5c127660', ref: el => (this.inputRef = el), enterkeyhint: "search", placeholder: "Search or enter URI", value: this.uri, onChange: e => this.onChange(e), onInput: 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)))));
3470
+ }
3471
+ static get watchers() { return {
3472
+ "uri": ["updateResource"],
3473
+ "os": ["updateResource"]
3474
+ }; }
3475
+ };
3476
+ PosNavigation.style = PosNavigationStyle0;
3477
+
3478
+ 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 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}\n";
3479
+ const PosNavigationBarStyle0 = posNavigationBarCss;
3480
+
3481
+ const PosNavigationBar = class {
3482
+ constructor(hostRef) {
3483
+ registerInstance(this, hostRef);
3484
+ this.navigate = createEvent(this, "pod-os:navigate", 7);
3485
+ }
3486
+ onClick() {
3487
+ this.navigate.emit(this.current);
3488
+ }
3489
+ activate(e) {
3490
+ if ((e.ctrlKey || e.metaKey) && e.key === 'k') {
3491
+ e.preventDefault();
3492
+ this.navigate.emit(this.current);
3643
3493
  }
3644
3494
  }
3645
3495
  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)));
3496
+ const ariaLabel = this.current ? `${this.current.label()} (Click to search or enter URI)` : 'Search or enter URI';
3497
+ return (h("section", { key: '79ac5c5dc2d6c2d44e852f9671d0895a29fb62a6', class: "current" }, this.current && this.searchIndexReady && h("pos-make-findable", { key: 'be92d99ead125c1a29520639da6dfd6e28007d85', uri: this.current.uri }), h("button", { key: '4ecdd49e46614f604c36ef760422d54f99ab00f1', "aria-label": ariaLabel, onClick: () => this.onClick() }, this.current ? this.current.label() : 'Search or enter URI')));
3647
3498
  }
3648
3499
  };
3649
3500
  PosNavigationBar.style = PosNavigationBarStyle0;
@@ -3669,7 +3520,7 @@ const PosNewThingForm = class {
3669
3520
  subscribePodOs(this);
3670
3521
  }
3671
3522
  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 })));
3523
+ 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
3524
  }
3674
3525
  handleChange(event) {
3675
3526
  this.name = event.target.value;
@@ -3799,7 +3650,7 @@ const PosResource = class {
3799
3650
  };
3800
3651
  PosResource.style = PosResourceStyle0;
3801
3652
 
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";
3653
+ 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
3654
  const PosRichLinkStyle0 = posRichLinkCss;
3804
3655
 
3805
3656
  const PosRichLink = class {
@@ -3808,10 +3659,10 @@ const PosRichLink = class {
3808
3659
  this.linkEmitter = createEvent(this, "pod-os:link", 7);
3809
3660
  }
3810
3661
  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 => {
3662
+ 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
3663
  e.preventDefault();
3813
3664
  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' }))));
3665
+ } }, h("pos-label", { key: '0ddb22c414f2e4d61cf1beabb301b723b78235e1' })), h("span", { key: 'd2730c1fcc1c1521a7527bdb7a63c091ff49746c', class: "url" }, new URL(this.uri).host), h("pos-description", { key: '53867e57b7403aed46e94a5f3df0b8389bc68244' }))));
3815
3666
  }
3816
3667
  };
3817
3668
  PosRichLink.style = PosRichLinkStyle0;
@@ -4104,7 +3955,7 @@ const DEFAULT_PARSE_URL = (url) => {
4104
3955
  return url.pathname.toLowerCase();
4105
3956
  };
4106
3957
 
4107
- const posRouterCss = ".toolbar{display:flex;flex-direction:row;gap:0;align-items:center;margin-left:0.5rem}pos-navigation-bar{flex-grow:1}";
3958
+ const posRouterCss = ".toolbar{display:flex;flex-direction:row;gap:0;align-items:center;margin-left:0.5rem}pos-navigation{flex-grow:1}";
4108
3959
  const PosRouterStyle0 = posRouterCss;
4109
3960
 
4110
3961
  const Router = createRouter();
@@ -4142,7 +3993,7 @@ const PosRouter = class {
4142
3993
  this.routeChanged.emit(this.uri);
4143
3994
  }
4144
3995
  render() {
4145
- return h("slot", { key: '221db70a52ce7ebc7e9c171142dcf94f252fa985' });
3996
+ return h("slot", { key: 'a5a451a8ddf4a30c6e5cbb2faf61d44f5a286df9' });
4146
3997
  }
4147
3998
  };
4148
3999
  PosRouter.style = PosRouterStyle0;
@@ -4172,7 +4023,7 @@ const PosSelectTerm = class {
4172
4023
  this.termSelected.emit({ uri: event.target.value });
4173
4024
  }
4174
4025
  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))))));
4026
+ 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
4027
  }
4177
4028
  static get delegatesFocus() { return true; }
4178
4029
  static get watchers() { return {
@@ -4247,6 +4098,6 @@ const PosTypeRouter = class {
4247
4098
  }
4248
4099
  };
4249
4100
 
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 };
4101
+ 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
4102
 
4252
4103
  //# sourceMappingURL=ion-icon_31.entry.js.map