@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,16 +1,10 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
- import { s as store } from './session.js';
3
- import { s as subscribePodOs } from './PodOsAware.js';
4
- import { d as defineCustomElement$8 } from './icon.js';
5
- import { d as defineCustomElement$7 } from './progress-bar.js';
6
- import { d as defineCustomElement$6 } from './searchbar.js';
7
- import { d as defineCustomElement$5 } from './pos-description2.js';
8
- import { d as defineCustomElement$4 } from './pos-label2.js';
9
- import { d as defineCustomElement$3 } from './pos-make-findable2.js';
10
- import { d as defineCustomElement$2 } from './pos-resource2.js';
11
- import { d as defineCustomElement$1 } from './pos-rich-link2.js';
2
+ import { d as defineCustomElement$4 } from './progress-bar.js';
3
+ import { d as defineCustomElement$3 } from './pos-label2.js';
4
+ import { d as defineCustomElement$2 } from './pos-make-findable2.js';
5
+ import { d as defineCustomElement$1 } from './pos-resource2.js';
12
6
 
13
- 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";
7
+ 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";
14
8
  const PosNavigationBarStyle0 = posNavigationBarCss;
15
9
 
16
10
  const PosNavigationBar = /*@__PURE__*/ proxyCustomElement(class PosNavigationBar extends HTMLElement {
@@ -18,135 +12,53 @@ const PosNavigationBar = /*@__PURE__*/ proxyCustomElement(class PosNavigationBar
18
12
  super();
19
13
  this.__registerHost();
20
14
  this.__attachShadow();
21
- this.subscribePodOs = createEvent(this, "pod-os:init", 7);
22
- this.linkEmitter = createEvent(this, "pod-os:link", 7);
23
- this.uri = '';
24
- this.value = this.uri;
25
- this.searchIndex = undefined;
26
- this.suggestions = [];
27
- this.selectedIndex = -1;
28
- this.receivePodOs = async (os) => {
29
- this.os = os;
30
- };
15
+ this.navigate = createEvent(this, "pod-os:navigate", 7);
31
16
  }
32
- componentWillLoad() {
33
- subscribePodOs(this);
34
- store.onChange('isLoggedIn', async (isLoggedIn) => {
35
- if (isLoggedIn) {
36
- await this.buildSearchIndex();
37
- }
38
- else {
39
- this.clearSearchIndex();
40
- }
41
- });
42
- }
43
- async buildSearchIndex() {
44
- this.searchIndex = await this.os.buildSearchIndex(store.state.profile);
45
- }
46
- rebuildSearchIndex() {
47
- this.searchIndex.rebuild();
48
- }
49
- clearSearchIndex() {
50
- var _a;
51
- (_a = this.searchIndex) === null || _a === void 0 ? void 0 : _a.clear();
17
+ onClick() {
18
+ this.navigate.emit(this.current);
52
19
  }
53
- onChange(event) {
54
- this.value = event.detail.value;
55
- this.search();
56
- }
57
- clearSuggestions() {
58
- this.suggestions = [];
59
- this.selectedIndex = -1;
60
- }
61
- onClickSelf(event) {
62
- event.stopPropagation();
63
- }
64
- handleKeyDown(ev) {
65
- if (ev.key === 'Escape') {
66
- this.clearSuggestions();
67
- }
68
- else if (ev.key === 'ArrowDown') {
69
- ev.preventDefault();
70
- this.selectedIndex = Math.min(this.selectedIndex + 1, this.suggestions.length - 1);
71
- }
72
- else if (ev.key === 'ArrowUp') {
73
- ev.preventDefault();
74
- this.selectedIndex = Math.max(this.selectedIndex - 1, 0);
75
- }
76
- }
77
- search() {
78
- if (this.searchIndex) {
79
- this.suggestions = this.value ? this.searchIndex.search(this.value) : [];
80
- }
81
- }
82
- onSubmit(event) {
83
- event.preventDefault();
84
- if (this.suggestions && this.selectedIndex > -1) {
85
- this.linkEmitter.emit(this.suggestions[this.selectedIndex].ref);
86
- }
87
- else {
88
- this.linkEmitter.emit(this.value);
20
+ activate(e) {
21
+ if ((e.ctrlKey || e.metaKey) && e.key === 'k') {
22
+ e.preventDefault();
23
+ this.navigate.emit(this.current);
89
24
  }
90
25
  }
91
26
  render() {
92
- 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)));
27
+ const ariaLabel = this.current ? `${this.current.label()} (Click to search or enter URI)` : 'Search or enter URI';
28
+ 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')));
93
29
  }
94
30
  static get style() { return PosNavigationBarStyle0; }
95
31
  }, [1, "pos-navigation-bar", {
96
- "uri": [1],
97
- "os": [32],
98
- "value": [32],
99
- "searchIndex": [32],
100
- "suggestions": [32],
101
- "selectedIndex": [32]
102
- }, [[0, "pod-os:search:index-created", "buildSearchIndex"], [0, "pod-os:search:index-updated", "rebuildSearchIndex"], [4, "click", "clearSuggestions"], [0, "pod-os:link", "clearSuggestions"], [0, "click", "onClickSelf"], [0, "keydown", "handleKeyDown"]]]);
32
+ "current": [16],
33
+ "searchIndexReady": [4, "search-index-ready"]
34
+ }, [[4, "keydown", "activate"]]]);
103
35
  function defineCustomElement() {
104
36
  if (typeof customElements === "undefined") {
105
37
  return;
106
38
  }
107
- const components = ["pos-navigation-bar", "ion-icon", "ion-progress-bar", "ion-searchbar", "pos-description", "pos-label", "pos-make-findable", "pos-resource", "pos-rich-link"];
39
+ const components = ["pos-navigation-bar", "ion-progress-bar", "pos-label", "pos-make-findable", "pos-resource"];
108
40
  components.forEach(tagName => { switch (tagName) {
109
41
  case "pos-navigation-bar":
110
42
  if (!customElements.get(tagName)) {
111
43
  customElements.define(tagName, PosNavigationBar);
112
44
  }
113
45
  break;
114
- case "ion-icon":
115
- if (!customElements.get(tagName)) {
116
- defineCustomElement$8();
117
- }
118
- break;
119
46
  case "ion-progress-bar":
120
- if (!customElements.get(tagName)) {
121
- defineCustomElement$7();
122
- }
123
- break;
124
- case "ion-searchbar":
125
- if (!customElements.get(tagName)) {
126
- defineCustomElement$6();
127
- }
128
- break;
129
- case "pos-description":
130
- if (!customElements.get(tagName)) {
131
- defineCustomElement$5();
132
- }
133
- break;
134
- case "pos-label":
135
47
  if (!customElements.get(tagName)) {
136
48
  defineCustomElement$4();
137
49
  }
138
50
  break;
139
- case "pos-make-findable":
51
+ case "pos-label":
140
52
  if (!customElements.get(tagName)) {
141
53
  defineCustomElement$3();
142
54
  }
143
55
  break;
144
- case "pos-resource":
56
+ case "pos-make-findable":
145
57
  if (!customElements.get(tagName)) {
146
58
  defineCustomElement$2();
147
59
  }
148
60
  break;
149
- case "pos-rich-link":
61
+ case "pos-resource":
150
62
  if (!customElements.get(tagName)) {
151
63
  defineCustomElement$1();
152
64
  }
@@ -1 +1 @@
1
- {"file":"pos-navigation-bar2.js","mappings":";;;;;;;;;;;;AAAA,MAAM,mBAAmB,GAAG,89BAA89B,CAAC;AAC3/B,+BAAe,mBAAmB;;MCUrB,gBAAgB;IAL7B;;;;;;QASU,QAAG,GAAW,EAAE,CAAC;QAEhB,UAAK,GAAW,IAAI,CAAC,GAAG,CAAC;QAIzB,gBAAW,GAAiB,SAAS,CAAC;QAEtC,gBAAW,GAAG,EAAE,CAAC;QAEjB,kBAAa,GAAG,CAAC,CAAC,CAAC;QA2B5B,iBAAY,GAAG,OAAO,EAAS;YAC7B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd,CAAC;KA2EH;IAtGC,iBAAiB;QACf,cAAc,CAAC,IAAI,CAAC,CAAC;QACrBA,KAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAM,UAAU;YAC7C,IAAI,UAAU,EAAE;gBACd,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;aAC/B;iBAAM;gBACL,IAAI,CAAC,gBAAgB,EAAE,CAAC;aACzB;SACF,CAAC,CAAC;KACJ;IAGO,MAAM,gBAAgB;QAC5B,IAAI,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAACA,KAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAC1E;IAGD,kBAAkB;QAChB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;KAC5B;IAEO,gBAAgB;;QACtB,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,EAAE,CAAC;KAC3B;IAMO,QAAQ,CAAC,KAAK;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;KACf;IAID,gBAAgB;QACd,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;KACzB;IAGD,WAAW,CAAC,KAAK;QACf,KAAK,CAAC,eAAe,EAAE,CAAC;KACzB;IAGD,aAAa,CAAC,EAAiB;QAC7B,IAAI,EAAE,CAAC,GAAG,KAAK,QAAQ,EAAE;YACvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;SACzB;aAAM,IAAI,EAAE,CAAC,GAAG,KAAK,WAAW,EAAE;YACjC,EAAE,CAAC,cAAc,EAAE,CAAC;YACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SACpF;aAAM,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE;YAC/B,EAAE,CAAC,cAAc,EAAE,CAAC;YACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;SAC1D;KACF;IAEO,MAAM;QACZ,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;SAC1E;KACF;IAEO,QAAQ,CAAC,KAAK;QACpB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,EAAE;YAC/C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC;SACjE;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnC;KACF;IAED,MAAM;QACJ,QACE,6DAAM,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAClC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,GAAG,yBAAmB,GAAG,EAAE,IAAI,CAAC,GAAG,GAAsB,GAAG,EAAE,EAC3F,4DAAK,KAAK,EAAC,KAAK,IACd,sEACE,YAAY,EAAC,QAAQ,EACrB,WAAW,EAAC,qBAAqB,EACjC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,QAAQ,EAAE,GAAG,EACb,WAAW,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAClC,UAAU,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GACjC,EACD,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAC1B,WAAK,KAAK,EAAC,aAAa,IACtB,cACG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,MAC9B,UAAI,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,aAAa,GAAG,UAAU,GAAG,EAAE,IACvD,qBAAe,GAAG,EAAE,EAAE,CAAC,GAAG,GAAkB,CACzC,CACN,CAAC,CACC,CACD,IACJ,IAAI,CACJ,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["session"],"sources":["src/components/pos-navigation-bar/pos-navigation-bar.css?tag=pos-navigation-bar&encapsulation=shadow","src/components/pos-navigation-bar/pos-navigation-bar.tsx"],"sourcesContent":[".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","import { PodOS, SearchIndex } from '@pod-os/core';\nimport { Component, Event, EventEmitter, h, Listen, Prop, State } from '@stencil/core';\n\nimport session from '../../store/session';\nimport { PodOsAware, PodOsEventEmitter, subscribePodOs } from '../events/PodOsAware';\n\n@Component({\n tag: 'pos-navigation-bar',\n shadow: true,\n styleUrl: 'pos-navigation-bar.css',\n})\nexport class PosNavigationBar implements PodOsAware {\n @State() os: PodOS;\n\n @Event({ eventName: 'pod-os:init' }) subscribePodOs: PodOsEventEmitter;\n @Prop() uri: string = '';\n\n @State() value: string = this.uri;\n\n @Event({ eventName: 'pod-os:link' }) linkEmitter: EventEmitter;\n\n @State() searchIndex?: SearchIndex = undefined;\n\n @State() suggestions = [];\n\n @State() selectedIndex = -1;\n\n componentWillLoad() {\n subscribePodOs(this);\n session.onChange('isLoggedIn', async isLoggedIn => {\n if (isLoggedIn) {\n await this.buildSearchIndex();\n } else {\n this.clearSearchIndex();\n }\n });\n }\n\n @Listen('pod-os:search:index-created')\n private async buildSearchIndex() {\n this.searchIndex = await this.os.buildSearchIndex(session.state.profile);\n }\n\n @Listen('pod-os:search:index-updated')\n rebuildSearchIndex() {\n this.searchIndex.rebuild();\n }\n\n private clearSearchIndex() {\n this.searchIndex?.clear();\n }\n\n receivePodOs = async (os: PodOS) => {\n this.os = os;\n };\n\n private onChange(event) {\n this.value = event.detail.value;\n this.search();\n }\n\n @Listen('click', { target: 'document' })\n @Listen('pod-os:link')\n clearSuggestions() {\n this.suggestions = [];\n this.selectedIndex = -1;\n }\n\n @Listen('click')\n onClickSelf(event) {\n event.stopPropagation();\n }\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Escape') {\n this.clearSuggestions();\n } else if (ev.key === 'ArrowDown') {\n ev.preventDefault();\n this.selectedIndex = Math.min(this.selectedIndex + 1, this.suggestions.length - 1);\n } else if (ev.key === 'ArrowUp') {\n ev.preventDefault();\n this.selectedIndex = Math.max(this.selectedIndex - 1, 0);\n }\n }\n\n private search() {\n if (this.searchIndex) {\n this.suggestions = this.value ? this.searchIndex.search(this.value) : [];\n }\n }\n\n private onSubmit(event) {\n event.preventDefault();\n if (this.suggestions && this.selectedIndex > -1) {\n this.linkEmitter.emit(this.suggestions[this.selectedIndex].ref);\n } else {\n this.linkEmitter.emit(this.value);\n }\n }\n\n render() {\n return (\n <form onSubmit={e => this.onSubmit(e)}>\n {this.searchIndex && this.uri ? <pos-make-findable uri={this.uri}></pos-make-findable> : ''}\n <div class=\"bar\">\n <ion-searchbar\n enterkeyhint=\"search\"\n placeholder=\"Search or enter URI\"\n value={this.uri}\n debounce={300}\n onIonChange={e => this.onChange(e)}\n onIonInput={e => this.onChange(e)}\n />\n {this.suggestions.length > 0 ? (\n <div class=\"suggestions\">\n <ol>\n {this.suggestions.map((it, index) => (\n <li class={index === this.selectedIndex ? 'selected' : ''}>\n <pos-rich-link uri={it.ref}></pos-rich-link>\n </li>\n ))}\n </ol>\n </div>\n ) : null}\n </div>\n </form>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pos-navigation-bar2.js","mappings":";;;;;;AAAA,MAAM,mBAAmB,GAAG,omBAAomB,CAAC;AACjoB,+BAAe,mBAAmB;;MCOrB,gBAAgB;;;;;;;IAMnB,OAAO;QACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAClC;IAGD,QAAQ,CAAC,CAAgB;QACvB,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;YAC7C,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAClC;KACF;IAED,MAAM;QACJ,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,iCAAiC,GAAG,qBAAqB,CAAC;QAElH,QACE,gEAAS,KAAK,EAAC,SAAS,IACrB,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,gBAAgB,IAAI,0EAAmB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,GAAsB,EACxG,6EAAoB,SAAS,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,IACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,qBAAqB,CACrD,CACD,EACV;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/pos-navigation/bar/pos-navigation-bar.css?tag=pos-navigation-bar&encapsulation=shadow","src/components/pos-navigation/bar/pos-navigation-bar.tsx"],"sourcesContent":["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","import { Component, Event, EventEmitter, h, Listen, Prop } from '@stencil/core';\nimport { Thing } from '@pod-os/core';\n\n@Component({\n tag: 'pos-navigation-bar',\n shadow: true,\n styleUrl: 'pos-navigation-bar.css',\n})\nexport class PosNavigationBar {\n @Prop() current?: Thing;\n @Prop() searchIndexReady: boolean;\n\n @Event({ eventName: 'pod-os:navigate' }) navigate: EventEmitter;\n\n private onClick() {\n this.navigate.emit(this.current);\n }\n\n @Listen('keydown', { target: 'document' })\n activate(e: KeyboardEvent) {\n if ((e.ctrlKey || e.metaKey) && e.key === 'k') {\n e.preventDefault();\n this.navigate.emit(this.current);\n }\n }\n\n render() {\n const ariaLabel = this.current ? `${this.current.label()} (Click to search or enter URI)` : 'Search or enter URI';\n\n return (\n <section class=\"current\">\n {this.current && this.searchIndexReady && <pos-make-findable uri={this.current.uri}></pos-make-findable>}\n <button aria-label={ariaLabel} onClick={() => this.onClick()}>\n {this.current ? this.current.label() : 'Search or enter URI'}\n </button>\n </section>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface PosNavigation extends Components.PosNavigation, HTMLElement {}
4
+ export const PosNavigation: {
5
+ prototype: PosNavigation;
6
+ new (): PosNavigation;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,8 @@
1
+ import { P as PosNavigation$1, d as defineCustomElement$1 } from './pos-navigation2.js';
2
+
3
+ const PosNavigation = PosNavigation$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { PosNavigation, defineCustomElement };
7
+
8
+ //# sourceMappingURL=pos-navigation.js.map
@@ -0,0 +1 @@
1
+ {"file":"pos-navigation.js","mappings":";;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
@@ -0,0 +1,394 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
+ import { s as store } from './session.js';
3
+ import { s as subscribePodOs } from './PodOsAware.js';
4
+ import { d as defineCustomElement$7 } from './progress-bar.js';
5
+ import { d as defineCustomElement$6 } from './pos-description2.js';
6
+ import { d as defineCustomElement$5 } from './pos-label2.js';
7
+ import { d as defineCustomElement$4 } from './pos-make-findable2.js';
8
+ import { d as defineCustomElement$3 } from './pos-navigation-bar2.js';
9
+ import { d as defineCustomElement$2 } from './pos-resource2.js';
10
+ import { d as defineCustomElement$1 } from './pos-rich-link2.js';
11
+ import { b as Subscription, d as arrRemove, a as operate, c as createOperatorSubscriber, S as Subject } from './Subject.js';
12
+
13
+ const dateTimestampProvider = {
14
+ now() {
15
+ return (dateTimestampProvider.delegate || Date).now();
16
+ },
17
+ delegate: undefined,
18
+ };
19
+
20
+ class Action extends Subscription {
21
+ constructor(scheduler, work) {
22
+ super();
23
+ }
24
+ schedule(state, delay = 0) {
25
+ return this;
26
+ }
27
+ }
28
+
29
+ const intervalProvider = {
30
+ setInterval(handler, timeout, ...args) {
31
+ const { delegate } = intervalProvider;
32
+ if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) {
33
+ return delegate.setInterval(handler, timeout, ...args);
34
+ }
35
+ return setInterval(handler, timeout, ...args);
36
+ },
37
+ clearInterval(handle) {
38
+ const { delegate } = intervalProvider;
39
+ return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle);
40
+ },
41
+ delegate: undefined,
42
+ };
43
+
44
+ class AsyncAction extends Action {
45
+ constructor(scheduler, work) {
46
+ super(scheduler, work);
47
+ this.scheduler = scheduler;
48
+ this.work = work;
49
+ this.pending = false;
50
+ }
51
+ schedule(state, delay = 0) {
52
+ var _a;
53
+ if (this.closed) {
54
+ return this;
55
+ }
56
+ this.state = state;
57
+ const id = this.id;
58
+ const scheduler = this.scheduler;
59
+ if (id != null) {
60
+ this.id = this.recycleAsyncId(scheduler, id, delay);
61
+ }
62
+ this.pending = true;
63
+ this.delay = delay;
64
+ this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay);
65
+ return this;
66
+ }
67
+ requestAsyncId(scheduler, _id, delay = 0) {
68
+ return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);
69
+ }
70
+ recycleAsyncId(_scheduler, id, delay = 0) {
71
+ if (delay != null && this.delay === delay && this.pending === false) {
72
+ return id;
73
+ }
74
+ if (id != null) {
75
+ intervalProvider.clearInterval(id);
76
+ }
77
+ return undefined;
78
+ }
79
+ execute(state, delay) {
80
+ if (this.closed) {
81
+ return new Error('executing a cancelled action');
82
+ }
83
+ this.pending = false;
84
+ const error = this._execute(state, delay);
85
+ if (error) {
86
+ return error;
87
+ }
88
+ else if (this.pending === false && this.id != null) {
89
+ this.id = this.recycleAsyncId(this.scheduler, this.id, null);
90
+ }
91
+ }
92
+ _execute(state, _delay) {
93
+ let errored = false;
94
+ let errorValue;
95
+ try {
96
+ this.work(state);
97
+ }
98
+ catch (e) {
99
+ errored = true;
100
+ errorValue = e ? e : new Error('Scheduled action threw falsy error');
101
+ }
102
+ if (errored) {
103
+ this.unsubscribe();
104
+ return errorValue;
105
+ }
106
+ }
107
+ unsubscribe() {
108
+ if (!this.closed) {
109
+ const { id, scheduler } = this;
110
+ const { actions } = scheduler;
111
+ this.work = this.state = this.scheduler = null;
112
+ this.pending = false;
113
+ arrRemove(actions, this);
114
+ if (id != null) {
115
+ this.id = this.recycleAsyncId(scheduler, id, null);
116
+ }
117
+ this.delay = null;
118
+ super.unsubscribe();
119
+ }
120
+ }
121
+ }
122
+
123
+ class Scheduler {
124
+ constructor(schedulerActionCtor, now = Scheduler.now) {
125
+ this.schedulerActionCtor = schedulerActionCtor;
126
+ this.now = now;
127
+ }
128
+ schedule(work, delay = 0, state) {
129
+ return new this.schedulerActionCtor(this, work).schedule(state, delay);
130
+ }
131
+ }
132
+ Scheduler.now = dateTimestampProvider.now;
133
+
134
+ class AsyncScheduler extends Scheduler {
135
+ constructor(SchedulerAction, now = Scheduler.now) {
136
+ super(SchedulerAction, now);
137
+ this.actions = [];
138
+ this._active = false;
139
+ }
140
+ flush(action) {
141
+ const { actions } = this;
142
+ if (this._active) {
143
+ actions.push(action);
144
+ return;
145
+ }
146
+ let error;
147
+ this._active = true;
148
+ do {
149
+ if ((error = action.execute(action.state, action.delay))) {
150
+ break;
151
+ }
152
+ } while ((action = actions.shift()));
153
+ this._active = false;
154
+ if (error) {
155
+ while ((action = actions.shift())) {
156
+ action.unsubscribe();
157
+ }
158
+ throw error;
159
+ }
160
+ }
161
+ }
162
+
163
+ const asyncScheduler = new AsyncScheduler(AsyncAction);
164
+
165
+ function debounceTime(dueTime, scheduler = asyncScheduler) {
166
+ return operate((source, subscriber) => {
167
+ let activeTask = null;
168
+ let lastValue = null;
169
+ let lastTime = null;
170
+ const emit = () => {
171
+ if (activeTask) {
172
+ activeTask.unsubscribe();
173
+ activeTask = null;
174
+ const value = lastValue;
175
+ lastValue = null;
176
+ subscriber.next(value);
177
+ }
178
+ };
179
+ function emitWhenIdle() {
180
+ const targetTime = lastTime + dueTime;
181
+ const now = scheduler.now();
182
+ if (now < targetTime) {
183
+ activeTask = this.schedule(undefined, targetTime - now);
184
+ subscriber.add(activeTask);
185
+ return;
186
+ }
187
+ emit();
188
+ }
189
+ source.subscribe(createOperatorSubscriber(subscriber, (value) => {
190
+ lastValue = value;
191
+ lastTime = scheduler.now();
192
+ if (!activeTask) {
193
+ activeTask = scheduler.schedule(emitWhenIdle, dueTime);
194
+ subscriber.add(activeTask);
195
+ }
196
+ }, () => {
197
+ emit();
198
+ subscriber.complete();
199
+ }, undefined, () => {
200
+ lastValue = activeTask = null;
201
+ }));
202
+ });
203
+ }
204
+
205
+ 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";
206
+ const PosNavigationStyle0 = posNavigationCss;
207
+
208
+ const PosNavigation = /*@__PURE__*/ proxyCustomElement(class PosNavigation extends HTMLElement {
209
+ constructor() {
210
+ super();
211
+ this.__registerHost();
212
+ this.__attachShadow();
213
+ this.subscribePodOs = createEvent(this, "pod-os:init", 7);
214
+ this.linkEmitter = createEvent(this, "pod-os:link", 7);
215
+ /**
216
+ * Initial value of the navigation bar
217
+ */
218
+ this.uri = '';
219
+ /**
220
+ * Current value of the input field
221
+ */
222
+ this.inputValue = this.uri;
223
+ this.searchIndex = undefined;
224
+ this.suggestions = [];
225
+ this.selectedIndex = -1;
226
+ this.resource = null;
227
+ this.changeEvents = new Subject();
228
+ this.debouncedSearch = null;
229
+ this.receivePodOs = async (os) => {
230
+ this.os = os;
231
+ };
232
+ }
233
+ updateResource() {
234
+ var _a;
235
+ try {
236
+ this.resource = this.uri ? (_a = this.os) === null || _a === void 0 ? void 0 : _a.store.get(this.uri) : null;
237
+ }
238
+ catch (_b) {
239
+ this.resource = null;
240
+ }
241
+ }
242
+ componentWillLoad() {
243
+ subscribePodOs(this);
244
+ this.updateResource();
245
+ store.onChange('isLoggedIn', async (isLoggedIn) => {
246
+ if (isLoggedIn) {
247
+ await this.buildSearchIndex();
248
+ }
249
+ else {
250
+ this.clearSearchIndex();
251
+ }
252
+ });
253
+ this.debouncedSearch = this.changeEvents.pipe(debounceTime(300)).subscribe(() => this.search());
254
+ }
255
+ disconnectedCallback() {
256
+ var _a;
257
+ (_a = this.debouncedSearch) === null || _a === void 0 ? void 0 : _a.unsubscribe();
258
+ }
259
+ async buildSearchIndex() {
260
+ this.searchIndex = await this.os.buildSearchIndex(store.state.profile);
261
+ }
262
+ rebuildSearchIndex() {
263
+ this.searchIndex.rebuild();
264
+ }
265
+ openNavigationDialog(e) {
266
+ var _a, _b;
267
+ this.resource = e.detail;
268
+ if (e.detail) {
269
+ this.inputValue = e.detail.uri;
270
+ this.search();
271
+ }
272
+ (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.select();
273
+ (_b = this.dialogRef) === null || _b === void 0 ? void 0 : _b.show();
274
+ }
275
+ clearSearchIndex() {
276
+ var _a;
277
+ (_a = this.searchIndex) === null || _a === void 0 ? void 0 : _a.clear();
278
+ }
279
+ onChange(event) {
280
+ this.inputValue = event.target.value;
281
+ this.changeEvents.next();
282
+ }
283
+ closeDialog() {
284
+ var _a;
285
+ (_a = this.dialogRef) === null || _a === void 0 ? void 0 : _a.close();
286
+ this.selectedIndex = -1;
287
+ }
288
+ clearSuggestions() {
289
+ var _a;
290
+ this.suggestions = [];
291
+ (_a = this.dialogRef) === null || _a === void 0 ? void 0 : _a.close();
292
+ this.selectedIndex = -1;
293
+ }
294
+ onClickSelf(event) {
295
+ event.stopPropagation();
296
+ }
297
+ handleKeyDown(ev) {
298
+ if (ev.key === 'Escape') {
299
+ this.closeDialog();
300
+ }
301
+ else if (ev.key === 'ArrowDown') {
302
+ ev.preventDefault();
303
+ this.selectedIndex = Math.min(this.selectedIndex + 1, this.suggestions.length - 1);
304
+ }
305
+ else if (ev.key === 'ArrowUp') {
306
+ ev.preventDefault();
307
+ this.selectedIndex = Math.max(this.selectedIndex - 1, 0);
308
+ }
309
+ }
310
+ search() {
311
+ if (this.searchIndex) {
312
+ this.suggestions = this.inputValue ? this.searchIndex.search(this.inputValue) : [];
313
+ }
314
+ }
315
+ onSubmit() {
316
+ if (this.suggestions && this.selectedIndex > -1) {
317
+ this.linkEmitter.emit(this.suggestions[this.selectedIndex].ref);
318
+ }
319
+ else {
320
+ this.linkEmitter.emit(this.inputValue);
321
+ }
322
+ }
323
+ render() {
324
+ 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)))));
325
+ }
326
+ static get watchers() { return {
327
+ "uri": ["updateResource"],
328
+ "os": ["updateResource"]
329
+ }; }
330
+ static get style() { return PosNavigationStyle0; }
331
+ }, [1, "pos-navigation", {
332
+ "uri": [1],
333
+ "os": [32],
334
+ "inputValue": [32],
335
+ "searchIndex": [32],
336
+ "suggestions": [32],
337
+ "selectedIndex": [32],
338
+ "resource": [32]
339
+ }, [[0, "pod-os:search:index-created", "buildSearchIndex"], [0, "pod-os:search:index-updated", "rebuildSearchIndex"], [0, "pod-os:navigate", "openNavigationDialog"], [4, "click", "closeDialog"], [0, "pod-os:link", "clearSuggestions"], [0, "click", "onClickSelf"], [0, "keydown", "handleKeyDown"]], {
340
+ "uri": ["updateResource"],
341
+ "os": ["updateResource"]
342
+ }]);
343
+ function defineCustomElement() {
344
+ if (typeof customElements === "undefined") {
345
+ return;
346
+ }
347
+ const components = ["pos-navigation", "ion-progress-bar", "pos-description", "pos-label", "pos-make-findable", "pos-navigation-bar", "pos-resource", "pos-rich-link"];
348
+ components.forEach(tagName => { switch (tagName) {
349
+ case "pos-navigation":
350
+ if (!customElements.get(tagName)) {
351
+ customElements.define(tagName, PosNavigation);
352
+ }
353
+ break;
354
+ case "ion-progress-bar":
355
+ if (!customElements.get(tagName)) {
356
+ defineCustomElement$7();
357
+ }
358
+ break;
359
+ case "pos-description":
360
+ if (!customElements.get(tagName)) {
361
+ defineCustomElement$6();
362
+ }
363
+ break;
364
+ case "pos-label":
365
+ if (!customElements.get(tagName)) {
366
+ defineCustomElement$5();
367
+ }
368
+ break;
369
+ case "pos-make-findable":
370
+ if (!customElements.get(tagName)) {
371
+ defineCustomElement$4();
372
+ }
373
+ break;
374
+ case "pos-navigation-bar":
375
+ if (!customElements.get(tagName)) {
376
+ defineCustomElement$3();
377
+ }
378
+ break;
379
+ case "pos-resource":
380
+ if (!customElements.get(tagName)) {
381
+ defineCustomElement$2();
382
+ }
383
+ break;
384
+ case "pos-rich-link":
385
+ if (!customElements.get(tagName)) {
386
+ defineCustomElement$1();
387
+ }
388
+ break;
389
+ } });
390
+ }
391
+
392
+ export { PosNavigation as P, defineCustomElement as d };
393
+
394
+ //# sourceMappingURL=pos-navigation2.js.map