@pod-os/elements 0.26.0 → 0.26.1-rc.52f6cf9.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 +306 -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 +87 -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 +17 -111
  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-111699ee.entry.js +20 -0
  61. package/dist/elements/p-111699ee.entry.js.map +1 -0
  62. package/dist/elements/{p-6cc9961e.entry.js → p-11466af2.entry.js} +2 -2
  63. package/dist/elements/{p-3e6ffc13.entry.js → p-11845ff3.entry.js} +2 -2
  64. package/dist/elements/p-13b1d6fe.entry.js +2 -0
  65. package/dist/elements/{p-d358565a.entry.js.map → p-13b1d6fe.entry.js.map} +1 -1
  66. package/dist/elements/p-14bf4c7a.entry.js +2 -0
  67. package/dist/elements/{p-66a58eb0.entry.js.map → p-14bf4c7a.entry.js.map} +1 -1
  68. package/dist/elements/{p-a507d627.entry.js → p-151d1ec8.entry.js} +2 -2
  69. package/dist/elements/{p-89aef852.js → p-1930ffd5.js} +2 -2
  70. package/dist/elements/{p-aa7d93f1.entry.js → p-1a1222a3.entry.js} +2 -2
  71. package/dist/elements/{p-4dd65d40.entry.js → p-1e05efd7.entry.js} +2 -2
  72. package/dist/elements/{p-f50c3045.entry.js → p-1faf2d02.entry.js} +2 -2
  73. package/dist/elements/{p-a421bbe5.entry.js → p-21e90439.entry.js} +2 -2
  74. package/dist/elements/p-220cce23.entry.js +2 -0
  75. package/dist/{components/searchbar.js.map → elements/p-220cce23.entry.js.map} +1 -1
  76. package/dist/elements/{p-552a9992.entry.js → p-22c21319.entry.js} +2 -2
  77. package/dist/elements/{p-66973c59.entry.js → p-24d93ddd.entry.js} +2 -2
  78. package/dist/elements/p-2551eb06.entry.js +2 -0
  79. package/dist/elements/{p-bca341ba.entry.js.map → p-2551eb06.entry.js.map} +1 -1
  80. package/dist/elements/p-258f2385.entry.js +2 -0
  81. package/dist/elements/{p-72a9cbdc.entry.js → p-27bd8113.entry.js} +2 -2
  82. package/dist/elements/{p-c350af00.entry.js → p-2948d57b.entry.js} +2 -2
  83. package/dist/elements/{p-41bb9792.entry.js → p-2cdaf88b.entry.js} +2 -2
  84. package/dist/elements/{p-fa0be1d8.entry.js → p-2e08ee3a.entry.js} +2 -2
  85. package/dist/elements/{p-239442f9.entry.js → p-2e0c20e7.entry.js} +2 -2
  86. package/dist/elements/p-2ec92ff9.entry.js +2 -0
  87. package/dist/elements/p-2f3623f1.entry.js +2 -0
  88. package/dist/elements/{p-c01a4a79.entry.js.map → p-2f3623f1.entry.js.map} +1 -1
  89. package/dist/elements/{p-8e8881a8.entry.js → p-30834f34.entry.js} +2 -2
  90. package/dist/elements/p-30cd90ec.js +6 -0
  91. package/dist/elements/{p-ae984107.entry.js → p-3585f786.entry.js} +2 -2
  92. package/dist/elements/{p-d08312dd.entry.js → p-35f84573.entry.js} +2 -2
  93. package/dist/elements/p-3e130681.entry.js +2 -0
  94. package/dist/elements/{p-bdea20c4.entry.js.map → p-3e130681.entry.js.map} +1 -1
  95. package/dist/elements/{p-ffa8c481.entry.js → p-3f02cc92.entry.js} +2 -2
  96. package/dist/elements/{p-71ee259b.js → p-3f316fc4.js} +2 -2
  97. package/dist/elements/{p-bc675b21.entry.js → p-3f3b74e6.entry.js} +2 -2
  98. package/dist/elements/p-40a2d567.entry.js +2 -0
  99. package/dist/elements/{p-e78cf007.entry.js → p-4dc7c524.entry.js} +2 -2
  100. package/dist/elements/{p-c191e6df.js → p-4e8c31fa.js} +8 -8
  101. package/dist/elements/{p-a45b1964.entry.js → p-5051d2a6.entry.js} +2 -2
  102. package/dist/elements/{p-e0de7c6a.entry.js → p-5a061ddb.entry.js} +2 -2
  103. package/dist/elements/{p-061819d1.js → p-5a8e7149.js} +3 -3
  104. package/dist/elements/p-5bf4c45a.js +5 -0
  105. package/dist/elements/{p-b9dcf3b2.js → p-5e8a3893.js} +2 -2
  106. package/dist/elements/{p-300ec095.entry.js → p-602861f4.entry.js} +3 -3
  107. package/dist/elements/{p-4a370bdc.entry.js → p-627d5e73.entry.js} +2 -2
  108. package/dist/elements/{p-406df11a.entry.js → p-648dac6c.entry.js} +2 -2
  109. package/dist/elements/{p-07d2bd5a.entry.js → p-650db824.entry.js} +2 -2
  110. package/dist/elements/{p-cb550d04.entry.js → p-682dd0f9.entry.js} +2 -2
  111. package/dist/elements/{p-59ec8b76.entry.js → p-689a5c54.entry.js} +3 -3
  112. package/dist/elements/{p-d6394ee4.entry.js → p-6a701de0.entry.js} +2 -2
  113. package/dist/elements/{p-f4035b4a.entry.js → p-6ca9bad7.entry.js} +2 -2
  114. package/dist/elements/{p-25926b66.entry.js → p-6cae9207.entry.js} +2 -2
  115. package/dist/elements/{p-6119b57a.entry.js → p-6e5c902a.entry.js} +2 -2
  116. package/dist/elements/{p-0ddcbecd.entry.js → p-72ba182e.entry.js} +2 -2
  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 +296 -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 +9 -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 +1 @@
1
- {"file":"ion-searchbar.js","mappings":";;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
1
+ {"file":"ion-searchbar.js","mappings":"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","names":[],"sources":["../node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.ios.css?tag=ion-searchbar&mode=ios&encapsulation=scoped","../node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.md.css?tag=ion-searchbar&mode=md&encapsulation=scoped","../node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.js"],"sourcesContent":["/**\n * Convert a font size to a dynamic font size.\n * Fonts that participate in Dynamic Type should use\n * dynamic font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param unit (optional) - The unit to convert to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a maximum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a minimum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * maximum and minimum font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n:host {\n /**\n * @prop --background: Background of the searchbar input\n * @prop --box-shadow: Box shadow of the searchbar input\n * @prop --border-radius: Border radius of the searchbar input\n * @prop --cancel-button-color: Color of the searchbar cancel button\n * @prop --clear-button-color: Color of the searchbar clear button\n * @prop --color: Color of the searchbar text\n * @prop --icon-color: Color of the searchbar icon\n * @prop --placeholder-color: Color of the searchbar placeholder\n * @prop --placeholder-font-style: Font style of the searchbar placeholder\n * @prop --placeholder-font-weight: Font weight of the searchbar placeholder\n * @prop --placeholder-opacity: Opacity of the searchbar placeholder\n */\n --placeholder-color: initial;\n --placeholder-font-style: initial;\n --placeholder-font-weight: initial;\n --placeholder-opacity: 0.6;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n display: flex;\n position: relative;\n align-items: center;\n width: 100%;\n color: var(--color);\n font-family: var(--ion-font-family, inherit);\n box-sizing: border-box;\n}\n\n:host(.ion-color) {\n color: var(--ion-color-contrast);\n}\n\n:host(.ion-color) .searchbar-input {\n background: var(--ion-color-base);\n}\n\n:host(.ion-color) .searchbar-clear-button,\n:host(.ion-color) .searchbar-cancel-button,\n:host(.ion-color) .searchbar-search-icon {\n color: inherit;\n}\n\n.searchbar-search-icon {\n color: var(--icon-color);\n pointer-events: none;\n}\n\n.searchbar-input-container {\n display: block;\n position: relative;\n flex-shrink: 1;\n width: 100%;\n}\n\n.searchbar-input {\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n border-radius: var(--border-radius);\n display: block;\n width: 100%;\n min-height: inherit;\n border: 0;\n outline: none;\n background: var(--background);\n font-family: inherit;\n box-shadow: var(--box-shadow);\n box-sizing: border-box;\n appearance: none;\n}\n.searchbar-input::placeholder {\n color: var(--placeholder-color);\n font-family: inherit;\n font-style: var(--placeholder-font-style);\n font-weight: var(--placeholder-font-weight);\n opacity: var(--placeholder-opacity);\n}\n.searchbar-input::-webkit-search-cancel-button, .searchbar-input::-ms-clear {\n display: none;\n}\n\n.searchbar-cancel-button {\n margin-left: 0;\n margin-right: 0;\n margin-top: 0;\n margin-bottom: 0;\n display: none;\n height: 100%;\n border: 0;\n outline: none;\n color: var(--cancel-button-color);\n cursor: pointer;\n appearance: none;\n}\n\n.searchbar-cancel-button > div {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n.searchbar-clear-button {\n margin-left: 0;\n margin-right: 0;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n padding-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n display: none;\n min-height: 0;\n outline: none;\n color: var(--clear-button-color);\n appearance: none;\n}\n\n/**\n * Normally, we would not want to use :focus\n * here because that would mean tapping the button\n * on mobile would focus it (and keep it focused).\n * However, the clear button always disappears after\n * being activated, so we never get to that state.\n */\n.searchbar-clear-button:focus {\n opacity: 0.5;\n}\n\n:host(.searchbar-has-value.searchbar-should-show-clear) .searchbar-clear-button {\n display: block;\n}\n\n:host(.searchbar-disabled) {\n cursor: default;\n opacity: 0.4;\n pointer-events: none;\n}\n\n/**\n * Convert a font size to a dynamic font size.\n * Fonts that participate in Dynamic Type should use\n * dynamic font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param unit (optional) - The unit to convert to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a maximum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a minimum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * maximum and minimum font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n:host {\n --background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.07);\n --border-radius: 10px;\n --box-shadow: none;\n --cancel-button-color: var(--ion-color-primary, #3880ff);\n --clear-button-color: var(--ion-color-step-600, #666666);\n --color: var(--ion-text-color, #000);\n --icon-color: var(--ion-color-step-600, #666666);\n -webkit-padding-start: 12px;\n padding-inline-start: 12px;\n -webkit-padding-end: 12px;\n padding-inline-end: 12px;\n padding-top: 12px;\n padding-bottom: 12px;\n min-height: 60px;\n contain: content;\n}\n\n.searchbar-input-container {\n min-height: 36px;\n}\n\n.searchbar-search-icon {\n -webkit-margin-start: calc(50% - 60px);\n margin-inline-start: calc(50% - 60px);\n top: 0;\n position: absolute;\n width: 1.375rem;\n height: 100%;\n contain: strict;\n}\n@supports (inset-inline-start: 0) {\n .searchbar-search-icon {\n inset-inline-start: 5px;\n }\n}\n@supports not (inset-inline-start: 0) {\n .searchbar-search-icon {\n left: 5px;\n }\n :host-context([dir=rtl]) .searchbar-search-icon {\n left: unset;\n right: unset;\n right: 5px;\n }\n [dir=rtl] .searchbar-search-icon {\n left: unset;\n right: unset;\n right: 5px;\n }\n @supports selector(:dir(rtl)) {\n .searchbar-search-icon:dir(rtl) {\n left: unset;\n right: unset;\n right: 5px;\n }\n }\n}\n\n.searchbar-input {\n -webkit-padding-start: 0px;\n padding-inline-start: 0px;\n -webkit-padding-end: 0px;\n padding-inline-end: 0px;\n padding-top: 6px;\n padding-bottom: 6px;\n height: 100%;\n font-size: 1.0625rem;\n font-weight: 400;\n contain: strict;\n}\n\n/**\n * We should only account for the clear button\n * if the clear button is actually visible. Otherwise\n * long text in an input can get cut off when it does not need to.\n */\n:host(.searchbar-has-value.searchbar-should-show-clear) .searchbar-input {\n -webkit-padding-start: 1.75rem;\n padding-inline-start: 1.75rem;\n -webkit-padding-end: 1.75rem;\n padding-inline-end: 1.75rem;\n}\n\n.searchbar-clear-button {\n top: 0;\n background-position: center;\n position: absolute;\n width: 1.875rem;\n height: 100%;\n border: 0;\n background-color: transparent;\n}\n@supports (inset-inline-start: 0) {\n .searchbar-clear-button {\n inset-inline-end: 0;\n }\n}\n@supports not (inset-inline-start: 0) {\n .searchbar-clear-button {\n right: 0;\n }\n :host-context([dir=rtl]) .searchbar-clear-button {\n left: unset;\n right: unset;\n left: 0;\n }\n [dir=rtl] .searchbar-clear-button {\n left: unset;\n right: unset;\n left: 0;\n }\n @supports selector(:dir(rtl)) {\n .searchbar-clear-button:dir(rtl) {\n left: unset;\n right: unset;\n left: 0;\n }\n }\n}\n\n.searchbar-clear-icon {\n width: 1.125rem;\n height: 100%;\n}\n\n.searchbar-cancel-button {\n -webkit-padding-start: 8px;\n padding-inline-start: 8px;\n -webkit-padding-end: 0;\n padding-inline-end: 0;\n padding-top: 0;\n padding-bottom: 0;\n flex-shrink: 0;\n background-color: transparent;\n font-size: 16px;\n}\n\n:host(.searchbar-left-aligned) .searchbar-search-icon {\n -webkit-margin-start: 0;\n margin-inline-start: 0;\n}\n\n:host(.searchbar-left-aligned) .searchbar-input {\n -webkit-padding-start: 1.875rem;\n padding-inline-start: 1.875rem;\n}\n\n:host(.searchbar-has-focus) .searchbar-cancel-button,\n:host(.searchbar-should-show-cancel) .searchbar-cancel-button,\n:host(.searchbar-animated) .searchbar-cancel-button {\n display: block;\n}\n\n:host(.searchbar-animated) .searchbar-search-icon,\n:host(.searchbar-animated) .searchbar-input {\n transition: all 300ms ease;\n}\n\n:host(.searchbar-animated.searchbar-has-focus) .searchbar-cancel-button,\n:host(.searchbar-animated.searchbar-should-show-cancel) .searchbar-cancel-button {\n opacity: 1;\n pointer-events: auto;\n}\n\n:host(.searchbar-animated) .searchbar-cancel-button {\n -webkit-margin-end: -100%;\n margin-inline-end: -100%;\n transform: translate3d(0, 0, 0);\n transition: all 300ms ease;\n opacity: 0;\n pointer-events: none;\n}\n\n:host(.searchbar-no-animate) .searchbar-search-icon,\n:host(.searchbar-no-animate) .searchbar-input,\n:host(.searchbar-no-animate) .searchbar-cancel-button {\n transition-duration: 0ms;\n}\n\n:host(.ion-color) .searchbar-cancel-button {\n color: var(--ion-color-base);\n}\n\n@media (any-hover: hover) {\n :host(.ion-color) .searchbar-cancel-button:hover {\n color: var(--ion-color-tint);\n }\n}\n:host-context(ion-toolbar) {\n padding-top: 1px;\n padding-bottom: 15px;\n min-height: 52px;\n}\n\n:host-context(ion-toolbar.ion-color):not(.ion-color) {\n color: inherit;\n}\n\n:host-context(ion-toolbar.ion-color):not(.ion-color) .searchbar-cancel-button {\n color: currentColor;\n}\n\n:host-context(ion-toolbar.ion-color) .searchbar-search-icon {\n color: currentColor;\n opacity: 0.5;\n}\n\n:host-context(ion-toolbar.ion-color):not(.ion-color) .searchbar-input {\n background: rgba(var(--ion-color-contrast-rgb), 0.07);\n color: currentColor;\n}\n\n:host-context(ion-toolbar.ion-color):not(.ion-color) .searchbar-clear-button {\n color: currentColor;\n opacity: 0.5;\n}","/**\n * Convert a font size to a dynamic font size.\n * Fonts that participate in Dynamic Type should use\n * dynamic font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param unit (optional) - The unit to convert to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a maximum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a minimum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * maximum and minimum font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n:host {\n /**\n * @prop --background: Background of the searchbar input\n * @prop --box-shadow: Box shadow of the searchbar input\n * @prop --border-radius: Border radius of the searchbar input\n * @prop --cancel-button-color: Color of the searchbar cancel button\n * @prop --clear-button-color: Color of the searchbar clear button\n * @prop --color: Color of the searchbar text\n * @prop --icon-color: Color of the searchbar icon\n * @prop --placeholder-color: Color of the searchbar placeholder\n * @prop --placeholder-font-style: Font style of the searchbar placeholder\n * @prop --placeholder-font-weight: Font weight of the searchbar placeholder\n * @prop --placeholder-opacity: Opacity of the searchbar placeholder\n */\n --placeholder-color: initial;\n --placeholder-font-style: initial;\n --placeholder-font-weight: initial;\n --placeholder-opacity: 0.6;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n display: flex;\n position: relative;\n align-items: center;\n width: 100%;\n color: var(--color);\n font-family: var(--ion-font-family, inherit);\n box-sizing: border-box;\n}\n\n:host(.ion-color) {\n color: var(--ion-color-contrast);\n}\n\n:host(.ion-color) .searchbar-input {\n background: var(--ion-color-base);\n}\n\n:host(.ion-color) .searchbar-clear-button,\n:host(.ion-color) .searchbar-cancel-button,\n:host(.ion-color) .searchbar-search-icon {\n color: inherit;\n}\n\n.searchbar-search-icon {\n color: var(--icon-color);\n pointer-events: none;\n}\n\n.searchbar-input-container {\n display: block;\n position: relative;\n flex-shrink: 1;\n width: 100%;\n}\n\n.searchbar-input {\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n border-radius: var(--border-radius);\n display: block;\n width: 100%;\n min-height: inherit;\n border: 0;\n outline: none;\n background: var(--background);\n font-family: inherit;\n box-shadow: var(--box-shadow);\n box-sizing: border-box;\n appearance: none;\n}\n.searchbar-input::placeholder {\n color: var(--placeholder-color);\n font-family: inherit;\n font-style: var(--placeholder-font-style);\n font-weight: var(--placeholder-font-weight);\n opacity: var(--placeholder-opacity);\n}\n.searchbar-input::-webkit-search-cancel-button, .searchbar-input::-ms-clear {\n display: none;\n}\n\n.searchbar-cancel-button {\n margin-left: 0;\n margin-right: 0;\n margin-top: 0;\n margin-bottom: 0;\n display: none;\n height: 100%;\n border: 0;\n outline: none;\n color: var(--cancel-button-color);\n cursor: pointer;\n appearance: none;\n}\n\n.searchbar-cancel-button > div {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n.searchbar-clear-button {\n margin-left: 0;\n margin-right: 0;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n padding-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n display: none;\n min-height: 0;\n outline: none;\n color: var(--clear-button-color);\n appearance: none;\n}\n\n/**\n * Normally, we would not want to use :focus\n * here because that would mean tapping the button\n * on mobile would focus it (and keep it focused).\n * However, the clear button always disappears after\n * being activated, so we never get to that state.\n */\n.searchbar-clear-button:focus {\n opacity: 0.5;\n}\n\n:host(.searchbar-has-value.searchbar-should-show-clear) .searchbar-clear-button {\n display: block;\n}\n\n:host(.searchbar-disabled) {\n cursor: default;\n opacity: 0.4;\n pointer-events: none;\n}\n\n/**\n * Convert a font size to a dynamic font size.\n * Fonts that participate in Dynamic Type should use\n * dynamic font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param unit (optional) - The unit to convert to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a maximum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * a minimum font size.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * Convert a font size to a dynamic font size but impose\n * maximum and minimum font sizes.\n * @param size - The initial font size including the unit (i.e. px or pt)\n * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).\n * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).\n * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to\n * convert to a unit other than $baselineUnit.\n */\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n:host {\n --background: var(--ion-background-color, #fff);\n --border-radius: 2px;\n --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);\n --cancel-button-color: var(--ion-color-step-900, #1a1a1a);\n --clear-button-color: initial;\n --color: var(--ion-color-step-850, #262626);\n --icon-color: var(--ion-color-step-600, #666666);\n -webkit-padding-start: 8px;\n padding-inline-start: 8px;\n -webkit-padding-end: 8px;\n padding-inline-end: 8px;\n padding-top: 8px;\n padding-bottom: 8px;\n background: inherit;\n}\n\n.searchbar-search-icon {\n top: 11px;\n width: 1.3125rem;\n height: 1.3125rem;\n}\n@supports (inset-inline-start: 0) {\n .searchbar-search-icon {\n inset-inline-start: 16px;\n }\n}\n@supports not (inset-inline-start: 0) {\n .searchbar-search-icon {\n left: 16px;\n }\n :host-context([dir=rtl]) .searchbar-search-icon {\n left: unset;\n right: unset;\n right: 16px;\n }\n [dir=rtl] .searchbar-search-icon {\n left: unset;\n right: unset;\n right: 16px;\n }\n @supports selector(:dir(rtl)) {\n .searchbar-search-icon:dir(rtl) {\n left: unset;\n right: unset;\n right: 16px;\n }\n }\n}\n\n.searchbar-cancel-button {\n /**\n * The left edge of the cancel button\n * should align with the left edge\n * of the back button if the searchbar\n * is used in a toolbar.\n */\n top: 0;\n background-color: transparent;\n font-size: 1.5em;\n}\n@supports (inset-inline-start: 0) {\n .searchbar-cancel-button {\n inset-inline-start: 9px;\n }\n}\n@supports not (inset-inline-start: 0) {\n .searchbar-cancel-button {\n left: 9px;\n }\n :host-context([dir=rtl]) .searchbar-cancel-button {\n left: unset;\n right: unset;\n right: 9px;\n }\n [dir=rtl] .searchbar-cancel-button {\n left: unset;\n right: unset;\n right: 9px;\n }\n @supports selector(:dir(rtl)) {\n .searchbar-cancel-button:dir(rtl) {\n left: unset;\n right: unset;\n right: 9px;\n }\n }\n}\n\n.searchbar-search-icon,\n.searchbar-cancel-button {\n position: absolute;\n}\n\n.searchbar-search-icon.ion-activated,\n.searchbar-cancel-button.ion-activated {\n background-color: transparent;\n}\n\n.searchbar-input {\n -webkit-padding-start: 3.4375rem;\n padding-inline-start: 3.4375rem;\n -webkit-padding-end: 3.4375rem;\n padding-inline-end: 3.4375rem;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n background-position: left 8px center;\n height: auto;\n font-size: 1rem;\n font-weight: 400;\n line-height: 30px;\n}\n:host-context([dir=rtl]) .searchbar-input {\n background-position: right 8px center;\n}\n\n[dir=rtl] .searchbar-input {\n background-position: right 8px center;\n}\n\n@supports selector(:dir(rtl)) {\n .searchbar-input:dir(rtl) {\n background-position: right 8px center;\n }\n}\n\n.searchbar-clear-button {\n top: 0;\n padding-left: 0;\n padding-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n position: absolute;\n height: 100%;\n border: 0;\n background-color: transparent;\n}\n@supports (inset-inline-start: 0) {\n .searchbar-clear-button {\n inset-inline-end: 13px;\n }\n}\n@supports not (inset-inline-start: 0) {\n .searchbar-clear-button {\n right: 13px;\n }\n :host-context([dir=rtl]) .searchbar-clear-button {\n left: unset;\n right: unset;\n left: 13px;\n }\n [dir=rtl] .searchbar-clear-button {\n left: unset;\n right: unset;\n left: 13px;\n }\n @supports selector(:dir(rtl)) {\n .searchbar-clear-button:dir(rtl) {\n left: unset;\n right: unset;\n left: 13px;\n }\n }\n}\n\n.searchbar-clear-button.ion-activated {\n background-color: transparent;\n}\n\n.searchbar-clear-icon {\n width: 1.375rem;\n height: 100%;\n}\n\n:host(.searchbar-has-focus) .searchbar-search-icon {\n display: block;\n}\n\n:host(.searchbar-has-focus) .searchbar-cancel-button,\n:host(.searchbar-should-show-cancel) .searchbar-cancel-button {\n display: block;\n}\n\n:host(.searchbar-has-focus) .searchbar-cancel-button + .searchbar-search-icon,\n:host(.searchbar-should-show-cancel) .searchbar-cancel-button + .searchbar-search-icon {\n display: none;\n}\n\n:host-context(ion-toolbar) {\n -webkit-padding-start: 7px;\n padding-inline-start: 7px;\n -webkit-padding-end: 7px;\n padding-inline-end: 7px;\n padding-top: 3px;\n padding-bottom: 3px;\n}","/*!\n * (C) Ionic http://ionicframework.com - MIT License\n */\nimport { Host, forceUpdate, h } from \"@stencil/core\";\nimport { debounceEvent, raf, componentOnReady, inheritAttributes } from \"../../utils/helpers\";\nimport { isRTL } from \"../../utils/rtl/index\";\nimport { createColorClasses } from \"../../utils/theme\";\nimport { arrowBackSharp, closeCircle, closeSharp, searchOutline, searchSharp } from \"ionicons/icons\";\nimport { config } from \"../../global/config\";\nimport { getIonMode } from \"../../global/ionic-global\";\n/**\n * @virtualProp {\"ios\" | \"md\"} mode - The mode determines which platform styles to use.\n */\nexport class Searchbar {\n constructor() {\n this.isCancelVisible = false;\n this.shouldAlignLeft = true;\n this.inputId = `ion-searchbar-${searchbarIds++}`;\n this.inheritedAttributes = {};\n /**\n * Clears the input field and triggers the control change.\n */\n this.onClearInput = async (shouldFocus) => {\n this.ionClear.emit();\n return new Promise((resolve) => {\n // setTimeout() fixes https://github.com/ionic-team/ionic/issues/7527\n // wait for 4 frames\n setTimeout(() => {\n const value = this.getValue();\n if (value !== '') {\n this.value = '';\n this.emitInputChange();\n /**\n * When tapping clear button\n * ensure input is focused after\n * clearing input so users\n * can quickly start typing.\n */\n if (shouldFocus && !this.focused) {\n this.setFocus();\n /**\n * The setFocus call above will clear focusedValue,\n * but ionChange will never have gotten a chance to\n * fire. Manually revert focusedValue so onBlur can\n * compare against what was in the box before the clear.\n */\n this.focusedValue = value;\n }\n }\n resolve();\n }, 16 * 4);\n });\n };\n /**\n * Clears the input field and tells the input to blur since\n * the clearInput function doesn't want the input to blur\n * then calls the custom cancel function if the user passed one in.\n */\n this.onCancelSearchbar = async (ev) => {\n if (ev) {\n ev.preventDefault();\n ev.stopPropagation();\n }\n this.ionCancel.emit();\n // get cached values before clearing the input\n const value = this.getValue();\n const focused = this.focused;\n await this.onClearInput();\n /**\n * If there used to be something in the box, and we weren't focused\n * beforehand (meaning no blur fired that would already handle this),\n * manually fire ionChange.\n */\n if (value && !focused) {\n this.emitValueChange(ev);\n }\n if (this.nativeInput) {\n this.nativeInput.blur();\n }\n };\n /**\n * Update the Searchbar input value when the input changes\n */\n this.onInput = (ev) => {\n const input = ev.target;\n if (input) {\n this.value = input.value;\n }\n this.emitInputChange(ev);\n };\n this.onChange = (ev) => {\n this.emitValueChange(ev);\n };\n /**\n * Sets the Searchbar to not focused and checks if it should align left\n * based on whether there is a value in the searchbar or not.\n */\n this.onBlur = (ev) => {\n this.focused = false;\n this.ionBlur.emit();\n this.positionElements();\n if (this.focusedValue !== this.value) {\n this.emitValueChange(ev);\n }\n this.focusedValue = undefined;\n };\n /**\n * Sets the Searchbar to focused and active on input focus.\n */\n this.onFocus = () => {\n this.focused = true;\n this.focusedValue = this.value;\n this.ionFocus.emit();\n this.positionElements();\n };\n this.focused = false;\n this.noAnimate = true;\n this.color = undefined;\n this.animated = false;\n this.autocapitalize = 'default';\n this.autocomplete = 'off';\n this.autocorrect = 'off';\n this.cancelButtonIcon = config.get('backButtonIcon', arrowBackSharp);\n this.cancelButtonText = 'Cancel';\n this.clearIcon = undefined;\n this.debounce = undefined;\n this.disabled = false;\n this.inputmode = undefined;\n this.enterkeyhint = undefined;\n this.maxlength = undefined;\n this.minlength = undefined;\n this.name = this.inputId;\n this.placeholder = 'Search';\n this.searchIcon = undefined;\n this.showCancelButton = 'never';\n this.showClearButton = 'always';\n this.spellcheck = false;\n this.type = 'search';\n this.value = '';\n }\n /**\n * lang and dir are globally enumerated attributes.\n * As a result, creating these as properties\n * can have unintended side effects. Instead, we\n * listen for attribute changes and inherit them\n * to the inner `<input>` element.\n */\n onLangChanged(newValue) {\n this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { lang: newValue });\n forceUpdate(this);\n }\n onDirChanged(newValue) {\n this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { dir: newValue });\n forceUpdate(this);\n }\n debounceChanged() {\n const { ionInput, debounce, originalIonInput } = this;\n /**\n * If debounce is undefined, we have to manually revert the ionInput emitter in case\n * debounce used to be set to a number. Otherwise, the event would stay debounced.\n */\n this.ionInput = debounce === undefined ? originalIonInput !== null && originalIonInput !== void 0 ? originalIonInput : ionInput : debounceEvent(ionInput, debounce);\n }\n valueChanged() {\n const inputEl = this.nativeInput;\n const value = this.getValue();\n if (inputEl && inputEl.value !== value) {\n inputEl.value = value;\n }\n }\n showCancelButtonChanged() {\n requestAnimationFrame(() => {\n this.positionElements();\n forceUpdate(this);\n });\n }\n connectedCallback() {\n this.emitStyle();\n }\n componentWillLoad() {\n this.inheritedAttributes = Object.assign({}, inheritAttributes(this.el, ['lang', 'dir']));\n }\n componentDidLoad() {\n this.originalIonInput = this.ionInput;\n this.positionElements();\n this.debounceChanged();\n setTimeout(() => {\n this.noAnimate = false;\n }, 300);\n }\n emitStyle() {\n this.ionStyle.emit({\n searchbar: true,\n });\n }\n /**\n * Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global\n * `input.focus()`.\n *\n * Developers who wish to focus an input when a page enters\n * should call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\n *\n * Developers who wish to focus an input when an overlay is presented\n * should call `setFocus` after `didPresent` has resolved.\n *\n * See [managing focus](/docs/developing/managing-focus) for more information.\n */\n async setFocus() {\n if (this.nativeInput) {\n this.nativeInput.focus();\n }\n }\n /**\n * Returns the native `<input>` element used under the hood.\n */\n async getInputElement() {\n /**\n * If this gets called in certain early lifecycle hooks (ex: Vue onMounted),\n * nativeInput won't be defined yet with the custom elements build, so wait for it to load in.\n */\n if (!this.nativeInput) {\n await new Promise((resolve) => componentOnReady(this.el, resolve));\n }\n return Promise.resolve(this.nativeInput);\n }\n /**\n * Emits an `ionChange` event.\n *\n * This API should be called for user committed changes.\n * This API should not be used for external value changes.\n */\n emitValueChange(event) {\n const { value } = this;\n // Checks for both null and undefined values\n const newValue = value == null ? value : value.toString();\n // Emitting a value change should update the internal state for tracking the focused value\n this.focusedValue = newValue;\n this.ionChange.emit({ value: newValue, event });\n }\n /**\n * Emits an `ionInput` event.\n */\n emitInputChange(event) {\n const { value } = this;\n this.ionInput.emit({ value, event });\n }\n /**\n * Positions the input search icon, placeholder, and the cancel button\n * based on the input value and if it is focused. (ios only)\n */\n positionElements() {\n const value = this.getValue();\n const prevAlignLeft = this.shouldAlignLeft;\n const mode = getIonMode(this);\n const shouldAlignLeft = !this.animated || value.trim() !== '' || !!this.focused;\n this.shouldAlignLeft = shouldAlignLeft;\n if (mode !== 'ios') {\n return;\n }\n if (prevAlignLeft !== shouldAlignLeft) {\n this.positionPlaceholder();\n }\n if (this.animated) {\n this.positionCancelButton();\n }\n }\n /**\n * Positions the input placeholder\n */\n positionPlaceholder() {\n const inputEl = this.nativeInput;\n if (!inputEl) {\n return;\n }\n const rtl = isRTL(this.el);\n const iconEl = (this.el.shadowRoot || this.el).querySelector('.searchbar-search-icon');\n if (this.shouldAlignLeft) {\n inputEl.removeAttribute('style');\n iconEl.removeAttribute('style');\n }\n else {\n // Create a dummy span to get the placeholder width\n const doc = document;\n const tempSpan = doc.createElement('span');\n tempSpan.innerText = this.placeholder || '';\n doc.body.appendChild(tempSpan);\n // Get the width of the span then remove it\n raf(() => {\n const textWidth = tempSpan.offsetWidth;\n tempSpan.remove();\n // Calculate the input padding\n const inputLeft = 'calc(50% - ' + textWidth / 2 + 'px)';\n // Calculate the icon margin\n /**\n * We take the icon width to account\n * for any text scales applied to the icon\n * such as Dynamic Type on iOS as well as 8px\n * of padding.\n */\n const iconLeft = 'calc(50% - ' + (textWidth / 2 + iconEl.clientWidth + 8) + 'px)';\n // Set the input padding start and icon margin start\n if (rtl) {\n inputEl.style.paddingRight = inputLeft;\n iconEl.style.marginRight = iconLeft;\n }\n else {\n inputEl.style.paddingLeft = inputLeft;\n iconEl.style.marginLeft = iconLeft;\n }\n });\n }\n }\n /**\n * Show the iOS Cancel button on focus, hide it offscreen otherwise\n */\n positionCancelButton() {\n const rtl = isRTL(this.el);\n const cancelButton = (this.el.shadowRoot || this.el).querySelector('.searchbar-cancel-button');\n const shouldShowCancel = this.shouldShowCancelButton();\n if (cancelButton !== null && shouldShowCancel !== this.isCancelVisible) {\n const cancelStyle = cancelButton.style;\n this.isCancelVisible = shouldShowCancel;\n if (shouldShowCancel) {\n if (rtl) {\n cancelStyle.marginLeft = '0';\n }\n else {\n cancelStyle.marginRight = '0';\n }\n }\n else {\n const offset = cancelButton.offsetWidth;\n if (offset > 0) {\n if (rtl) {\n cancelStyle.marginLeft = -offset + 'px';\n }\n else {\n cancelStyle.marginRight = -offset + 'px';\n }\n }\n }\n }\n }\n getValue() {\n return this.value || '';\n }\n hasValue() {\n return this.getValue() !== '';\n }\n /**\n * Determines whether or not the cancel button should be visible onscreen.\n * Cancel button should be shown if one of two conditions applies:\n * 1. `showCancelButton` is set to `always`.\n * 2. `showCancelButton` is set to `focus`, and the searchbar has been focused.\n */\n shouldShowCancelButton() {\n if (this.showCancelButton === 'never' || (this.showCancelButton === 'focus' && !this.focused)) {\n return false;\n }\n return true;\n }\n /**\n * Determines whether or not the clear button should be visible onscreen.\n * Clear button should be shown if one of two conditions applies:\n * 1. `showClearButton` is set to `always`.\n * 2. `showClearButton` is set to `focus`, and the searchbar has been focused.\n */\n shouldShowClearButton() {\n if (this.showClearButton === 'never' || (this.showClearButton === 'focus' && !this.focused)) {\n return false;\n }\n return true;\n }\n render() {\n const { cancelButtonText, autocapitalize } = this;\n const animated = this.animated && config.getBoolean('animated', true);\n const mode = getIonMode(this);\n const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);\n const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);\n const shouldShowCancelButton = this.shouldShowCancelButton();\n 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))));\n return (h(Host, { key: 'feef9fc7e405656e134a76dc037aaaa1a4ce36b4', role: \"search\", \"aria-disabled\": this.disabled ? 'true' : null, class: createColorClasses(this.color, {\n [mode]: true,\n 'searchbar-animated': animated,\n 'searchbar-disabled': this.disabled,\n 'searchbar-no-animate': animated && this.noAnimate,\n 'searchbar-has-value': this.hasValue(),\n 'searchbar-left-aligned': this.shouldAlignLeft,\n 'searchbar-has-focus': this.focused,\n 'searchbar-should-show-clear': this.shouldShowClearButton(),\n 'searchbar-should-show-cancel': this.shouldShowCancelButton(),\n }) }, 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) => {\n /**\n * This prevents mobile browsers from\n * blurring the input when the clear\n * button is activated.\n */\n ev.preventDefault();\n }, 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));\n }\n static get is() { return \"ion-searchbar\"; }\n static get encapsulation() { return \"scoped\"; }\n static get originalStyleUrls() {\n return {\n \"ios\": [\"searchbar.ios.scss\"],\n \"md\": [\"searchbar.md.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"ios\": [\"searchbar.ios.css\"],\n \"md\": [\"searchbar.md.css\"]\n };\n }\n static get properties() {\n return {\n \"color\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"Color\",\n \"resolved\": \"\\\"danger\\\" | \\\"dark\\\" | \\\"light\\\" | \\\"medium\\\" | \\\"primary\\\" | \\\"secondary\\\" | \\\"success\\\" | \\\"tertiary\\\" | \\\"warning\\\" | string & Record<never, never> | undefined\",\n \"references\": {\n \"Color\": {\n \"location\": \"import\",\n \"path\": \"../../interface\",\n \"id\": \"src/interface.d.ts::Color\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The color to use from your application's color palette.\\nDefault options are: `\\\"primary\\\"`, `\\\"secondary\\\"`, `\\\"tertiary\\\"`, `\\\"success\\\"`, `\\\"warning\\\"`, `\\\"danger\\\"`, `\\\"light\\\"`, `\\\"medium\\\"`, and `\\\"dark\\\"`.\\nFor more information on colors, see [theming](/docs/theming/basics).\"\n },\n \"attribute\": \"color\",\n \"reflect\": true\n },\n \"animated\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, enable searchbar animation.\"\n },\n \"attribute\": \"animated\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"autocapitalize\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.\\nAvailable options: `\\\"off\\\"`, `\\\"none\\\"`, `\\\"on\\\"`, `\\\"sentences\\\"`, `\\\"words\\\"`, `\\\"characters\\\"`.\"\n },\n \"attribute\": \"autocapitalize\",\n \"reflect\": false,\n \"defaultValue\": \"'default'\"\n },\n \"autocomplete\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"AutocompleteTypes\",\n \"resolved\": \"\\\"name\\\" | \\\"email\\\" | \\\"tel\\\" | \\\"url\\\" | \\\"on\\\" | \\\"off\\\" | \\\"honorific-prefix\\\" | \\\"given-name\\\" | \\\"additional-name\\\" | \\\"family-name\\\" | \\\"honorific-suffix\\\" | \\\"nickname\\\" | \\\"username\\\" | \\\"new-password\\\" | \\\"current-password\\\" | \\\"one-time-code\\\" | \\\"organization-title\\\" | \\\"organization\\\" | \\\"street-address\\\" | \\\"address-line1\\\" | \\\"address-line2\\\" | \\\"address-line3\\\" | \\\"address-level4\\\" | \\\"address-level3\\\" | \\\"address-level2\\\" | \\\"address-level1\\\" | \\\"country\\\" | \\\"country-name\\\" | \\\"postal-code\\\" | \\\"cc-name\\\" | \\\"cc-given-name\\\" | \\\"cc-additional-name\\\" | \\\"cc-family-name\\\" | \\\"cc-number\\\" | \\\"cc-exp\\\" | \\\"cc-exp-month\\\" | \\\"cc-exp-year\\\" | \\\"cc-csc\\\" | \\\"cc-type\\\" | \\\"transaction-currency\\\" | \\\"transaction-amount\\\" | \\\"language\\\" | \\\"bday\\\" | \\\"bday-day\\\" | \\\"bday-month\\\" | \\\"bday-year\\\" | \\\"sex\\\" | \\\"tel-country-code\\\" | \\\"tel-national\\\" | \\\"tel-area-code\\\" | \\\"tel-local\\\" | \\\"tel-extension\\\" | \\\"impp\\\" | \\\"photo\\\"\",\n \"references\": {\n \"AutocompleteTypes\": {\n \"location\": \"import\",\n \"path\": \"../../interface\",\n \"id\": \"src/interface.d.ts::AutocompleteTypes\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the input's autocomplete property.\"\n },\n \"attribute\": \"autocomplete\",\n \"reflect\": false,\n \"defaultValue\": \"'off'\"\n },\n \"autocorrect\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"'on' | 'off'\",\n \"resolved\": \"\\\"off\\\" | \\\"on\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the input's autocorrect property.\"\n },\n \"attribute\": \"autocorrect\",\n \"reflect\": false,\n \"defaultValue\": \"'off'\"\n },\n \"cancelButtonIcon\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the cancel button icon. Only applies to `md` mode.\\nDefaults to `arrow-back-sharp`.\"\n },\n \"attribute\": \"cancel-button-icon\",\n \"reflect\": false,\n \"defaultValue\": \"config.get('backButtonIcon', arrowBackSharp) as string\"\n },\n \"cancelButtonText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the the cancel button text. Only applies to `ios` mode.\"\n },\n \"attribute\": \"cancel-button-text\",\n \"reflect\": false,\n \"defaultValue\": \"'Cancel'\"\n },\n \"clearIcon\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.\"\n },\n \"attribute\": \"clear-icon\",\n \"reflect\": false\n },\n \"debounce\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the amount of time, in milliseconds, to wait to trigger the `ionInput` event after each keystroke.\"\n },\n \"attribute\": \"debounce\",\n \"reflect\": false\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the user cannot interact with the input.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"inputmode\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search'\",\n \"resolved\": \"\\\"decimal\\\" | \\\"email\\\" | \\\"none\\\" | \\\"numeric\\\" | \\\"search\\\" | \\\"tel\\\" | \\\"text\\\" | \\\"url\\\" | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"A hint to the browser for which keyboard to display.\\nPossible values: `\\\"none\\\"`, `\\\"text\\\"`, `\\\"tel\\\"`, `\\\"url\\\"`,\\n`\\\"email\\\"`, `\\\"numeric\\\"`, `\\\"decimal\\\"`, and `\\\"search\\\"`.\"\n },\n \"attribute\": \"inputmode\",\n \"reflect\": false\n },\n \"enterkeyhint\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'\",\n \"resolved\": \"\\\"done\\\" | \\\"enter\\\" | \\\"go\\\" | \\\"next\\\" | \\\"previous\\\" | \\\"search\\\" | \\\"send\\\" | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"A hint to the browser for which enter key to display.\\nPossible values: `\\\"enter\\\"`, `\\\"done\\\"`, `\\\"go\\\"`, `\\\"next\\\"`,\\n`\\\"previous\\\"`, `\\\"search\\\"`, and `\\\"send\\\"`.\"\n },\n \"attribute\": \"enterkeyhint\",\n \"reflect\": false\n },\n \"maxlength\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"This attribute specifies the maximum number of characters that the user can enter.\"\n },\n \"attribute\": \"maxlength\",\n \"reflect\": false\n },\n \"minlength\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"This attribute specifies the minimum number of characters that the user can enter.\"\n },\n \"attribute\": \"minlength\",\n \"reflect\": false\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If used in a form, set the name of the control, which is submitted with the form data.\"\n },\n \"attribute\": \"name\",\n \"reflect\": false,\n \"defaultValue\": \"this.inputId\"\n },\n \"placeholder\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the input's placeholder.\\n`placeholder` can accept either plaintext or HTML as a string.\\nTo display characters normally reserved for HTML, they\\nmust be escaped. For example `<Ionic>` would become\\n`&lt;Ionic&gt;`\\n\\nFor more information: [Security Documentation](https://ionicframework.com/docs/faq/security)\"\n },\n \"attribute\": \"placeholder\",\n \"reflect\": false,\n \"defaultValue\": \"'Search'\"\n },\n \"searchIcon\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The icon to use as the search icon. Defaults to `search-outline` in\\n`ios` mode and `search-sharp` in `md` mode.\"\n },\n \"attribute\": \"search-icon\",\n \"reflect\": false\n },\n \"showCancelButton\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"'never' | 'focus' | 'always'\",\n \"resolved\": \"\\\"always\\\" | \\\"focus\\\" | \\\"never\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the behavior for the cancel button. Defaults to `\\\"never\\\"`.\\nSetting to `\\\"focus\\\"` shows the cancel button on focus.\\nSetting to `\\\"never\\\"` hides the cancel button.\\nSetting to `\\\"always\\\"` shows the cancel button regardless\\nof focus state.\"\n },\n \"attribute\": \"show-cancel-button\",\n \"reflect\": false,\n \"defaultValue\": \"'never'\"\n },\n \"showClearButton\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"'never' | 'focus' | 'always'\",\n \"resolved\": \"\\\"always\\\" | \\\"focus\\\" | \\\"never\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the behavior for the clear button. Defaults to `\\\"focus\\\"`.\\nSetting to `\\\"focus\\\"` shows the clear button on focus if the\\ninput is not empty.\\nSetting to `\\\"never\\\"` hides the clear button.\\nSetting to `\\\"always\\\"` shows the clear button regardless\\nof focus state, but only if the input is not empty.\"\n },\n \"attribute\": \"show-clear-button\",\n \"reflect\": false,\n \"defaultValue\": \"'always'\"\n },\n \"spellcheck\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, enable spellcheck on the input.\"\n },\n \"attribute\": \"spellcheck\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"type\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"'text' | 'password' | 'email' | 'number' | 'search' | 'tel' | 'url'\",\n \"resolved\": \"\\\"email\\\" | \\\"number\\\" | \\\"password\\\" | \\\"search\\\" | \\\"tel\\\" | \\\"text\\\" | \\\"url\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Set the type of the input.\"\n },\n \"attribute\": \"type\",\n \"reflect\": false,\n \"defaultValue\": \"'search'\"\n },\n \"value\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"string | null\",\n \"resolved\": \"null | string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"the value of the searchbar.\"\n },\n \"attribute\": \"value\",\n \"reflect\": false,\n \"defaultValue\": \"''\"\n }\n };\n }\n static get states() {\n return {\n \"focused\": {},\n \"noAnimate\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"ionInput\",\n \"name\": \"ionInput\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the `value` of the `ion-searchbar` element has changed.\"\n },\n \"complexType\": {\n \"original\": \"SearchbarInputEventDetail\",\n \"resolved\": \"SearchbarInputEventDetail\",\n \"references\": {\n \"SearchbarInputEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./searchbar-interface\",\n \"id\": \"src/components/searchbar/searchbar-interface.ts::SearchbarInputEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"ionChange\",\n \"name\": \"ionChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The `ionChange` event is fired for `<ion-searchbar>` elements when the user\\nmodifies the element's value. Unlike the `ionInput` event, the `ionChange`\\nevent is not necessarily fired for each alteration to an element's value.\\n\\nThe `ionChange` event is fired when the value has been committed\\nby the user. This can happen when the element loses focus or\\nwhen the \\\"Enter\\\" key is pressed. `ionChange` can also fire\\nwhen clicking the clear or cancel buttons.\"\n },\n \"complexType\": {\n \"original\": \"SearchbarChangeEventDetail\",\n \"resolved\": \"SearchbarChangeEventDetail\",\n \"references\": {\n \"SearchbarChangeEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./searchbar-interface\",\n \"id\": \"src/components/searchbar/searchbar-interface.ts::SearchbarChangeEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"ionCancel\",\n \"name\": \"ionCancel\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the cancel button is clicked.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"ionClear\",\n \"name\": \"ionClear\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the clear input button is clicked.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"ionBlur\",\n \"name\": \"ionBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the input loses focus.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"ionFocus\",\n \"name\": \"ionFocus\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the input has focus.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"ionStyle\",\n \"name\": \"ionStyle\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": undefined\n }],\n \"text\": \"Emitted when the styles change.\"\n },\n \"complexType\": {\n \"original\": \"StyleEventDetail\",\n \"resolved\": \"StyleEventDetail\",\n \"references\": {\n \"StyleEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../interface\",\n \"id\": \"src/interface.d.ts::StyleEventDetail\"\n }\n }\n }\n }];\n }\n static get methods() {\n return {\n \"setFocus\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global\\n`input.focus()`.\\n\\nDevelopers who wish to focus an input when a page enters\\nshould call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\\n\\nDevelopers who wish to focus an input when an overlay is presented\\nshould call `setFocus` after `didPresent` has resolved.\\n\\nSee [managing focus](/docs/developing/managing-focus) for more information.\",\n \"tags\": []\n }\n },\n \"getInputElement\": {\n \"complexType\": {\n \"signature\": \"() => Promise<HTMLInputElement>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n },\n \"HTMLInputElement\": {\n \"location\": \"global\",\n \"id\": \"global::HTMLInputElement\"\n }\n },\n \"return\": \"Promise<HTMLInputElement>\"\n },\n \"docs\": {\n \"text\": \"Returns the native `<input>` element used under the hood.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"lang\",\n \"methodName\": \"onLangChanged\"\n }, {\n \"propName\": \"dir\",\n \"methodName\": \"onDirChanged\"\n }, {\n \"propName\": \"debounce\",\n \"methodName\": \"debounceChanged\"\n }, {\n \"propName\": \"value\",\n \"methodName\": \"valueChanged\"\n }, {\n \"propName\": \"showCancelButton\",\n \"methodName\": \"showCancelButtonChanged\"\n }];\n }\n}\nlet searchbarIds = 0;\n"],"version":3}
@@ -4,7 +4,7 @@ import { d as defineCustomElement$3 } from './pos-dialog2.js';
4
4
  import { d as defineCustomElement$2 } from './pos-new-thing-form2.js';
5
5
  import { d as defineCustomElement$1 } from './pos-select-term2.js';
6
6
 
7
- 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)}";
7
+ 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)}";
8
8
  const PosAddNewThingStyle0 = posAddNewThingCss;
9
9
 
10
10
  const PosAddNewThing = /*@__PURE__*/ proxyCustomElement(class PosAddNewThing extends HTMLElement {
@@ -1 +1 @@
1
- {"file":"pos-add-new-thing2.js","mappings":";;;;;;AAAA,MAAM,iBAAiB,GAAG,6cAA6c,CAAC;AACxe,6BAAe,iBAAiB;;MCMnB,cAAc;;;;;;IAKzB,UAAU;QACR,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;KACzB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,+DAAQ,EAAE,EAAC,KAAK,EAAC,KAAK,EAAC,iBAAiB,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,IACvE,iEAAU,IAAI,EAAC,oBAAoB,GAAY,CACxC,EACT,mEAAY,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,MAAM,GAAG,EAA0B,CAAC,IAC/D,6DAAM,IAAI,EAAC,OAAO,sBAAuB,EACzC,2EAAoB,IAAI,EAAC,SAAS,EAAC,YAAY,EAAE,IAAI,CAAC,YAAY,GAAI,CAC3D,CACR,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/pos-add-new-thing/pos-add-new-thing.css?tag=pos-add-new-thing&encapsulation=shadow","src/components/pos-add-new-thing/pos-add-new-thing.tsx"],"sourcesContent":[":host {\n font-family: var(--font-sans);\n display: block;\n}\n\nbutton#new {\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n width: var(--scale-5);\n height: var(--scale-5);\n background-color: var(--pos-primary-color);\n color: var(--pos-primary-text-color);\n font-size: var(--scale-6);\n border-radius: var(--radius-xs);\n}\n\nbutton#new:hover,\nbutton#new:focus {\n outline: none;\n filter: brightness(110%);\n box-shadow: var(--shadow-sm);\n}\n\npos-new-thing-form {\n margin: var(--scale-3);\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pos-add-new-thing',\n styleUrl: 'pos-add-new-thing.css',\n shadow: true,\n})\nexport class PosAddNewThing {\n @Prop() referenceUri!: string;\n\n private dialog: HTMLPosDialogElement;\n\n openDialog() {\n this.dialog.showModal();\n }\n\n render() {\n return (\n <Host>\n <button id=\"new\" title=\"Add a new thing\" onClick={() => this.openDialog()}>\n <ion-icon name=\"add-circle-outline\"></ion-icon>\n </button>\n <pos-dialog ref={el => (this.dialog = el as HTMLPosDialogElement)}>\n <span slot=\"title\">Add a new thing</span>\n <pos-new-thing-form slot=\"content\" referenceUri={this.referenceUri} />\n </pos-dialog>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pos-add-new-thing2.js","mappings":";;;;;;AAAA,MAAM,iBAAiB,GAAG,6cAA6c,CAAC;AACxe,6BAAe,iBAAiB;;MCMnB,cAAc;;;;;;IAKzB,UAAU;QACR,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;KACzB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,+DAAQ,EAAE,EAAC,KAAK,EAAC,KAAK,EAAC,iBAAiB,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,IACvE,iEAAU,IAAI,EAAC,oBAAoB,GAAY,CACxC,EACT,mEAAY,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,MAAM,GAAG,EAA0B,CAAC,IAC/D,6DAAM,IAAI,EAAC,OAAO,sBAAuB,EACzC,2EAAoB,IAAI,EAAC,SAAS,EAAC,YAAY,EAAE,IAAI,CAAC,YAAY,GAAI,CAC3D,CACR,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/pos-add-new-thing/pos-add-new-thing.css?tag=pos-add-new-thing&encapsulation=shadow","src/components/pos-add-new-thing/pos-add-new-thing.tsx"],"sourcesContent":[":host {\n font-family: var(--font-sans);\n display: block;\n}\n\nbutton#new {\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n width: var(--size-10);\n height: var(--size-10);\n background-color: var(--pos-primary-color);\n color: var(--pos-primary-text-color);\n font-size: var(--scale-6);\n border-radius: var(--radius-xs);\n}\n\nbutton#new:hover,\nbutton#new:focus {\n outline: none;\n filter: brightness(110%);\n box-shadow: var(--shadow-sm);\n}\n\npos-new-thing-form {\n margin: var(--scale-3);\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pos-add-new-thing',\n styleUrl: 'pos-add-new-thing.css',\n shadow: true,\n})\nexport class PosAddNewThing {\n @Prop() referenceUri!: string;\n\n private dialog: HTMLPosDialogElement;\n\n openDialog() {\n this.dialog.showModal();\n }\n\n render() {\n return (\n <Host>\n <button id=\"new\" title=\"Add a new thing\" onClick={() => this.openDialog()}>\n <ion-icon name=\"add-circle-outline\"></ion-icon>\n </button>\n <pos-dialog ref={el => (this.dialog = el as HTMLPosDialogElement)}>\n <span slot=\"title\">Add a new thing</span>\n <pos-new-thing-form slot=\"content\" referenceUri={this.referenceUri} />\n </pos-dialog>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -2,24 +2,24 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
2
2
  import { d as defineCustomElement$v } from './icon.js';
3
3
  import { d as defineCustomElement$u } from './progress-bar.js';
4
4
  import { d as defineCustomElement$t } from './ripple-effect.js';
5
- import { d as defineCustomElement$s } from './searchbar.js';
6
- import { d as defineCustomElement$r } from './skeleton-text.js';
7
- import { d as defineCustomElement$q } from './toast.js';
8
- import { d as defineCustomElement$p } from './pos-add-new-thing2.js';
9
- import { d as defineCustomElement$o } from './pos-app2.js';
10
- import { d as defineCustomElement$n } from './pos-app-dashboard2.js';
11
- import { d as defineCustomElement$m } from './pos-app-settings2.js';
12
- import { d as defineCustomElement$l } from './pos-description2.js';
13
- import { d as defineCustomElement$k } from './pos-dialog2.js';
14
- import { d as defineCustomElement$j } from './pos-error-toast2.js';
15
- import { d as defineCustomElement$i } from './pos-example-resources2.js';
16
- import { d as defineCustomElement$h } from './pos-getting-started2.js';
17
- import { d as defineCustomElement$g } from './pos-image2.js';
18
- import { d as defineCustomElement$f } from './pos-internal-router2.js';
19
- import { d as defineCustomElement$e } from './pos-label2.js';
20
- import { d as defineCustomElement$d } from './pos-login2.js';
21
- import { d as defineCustomElement$c } from './pos-login-form2.js';
22
- import { d as defineCustomElement$b } from './pos-make-findable2.js';
5
+ import { d as defineCustomElement$s } from './skeleton-text.js';
6
+ import { d as defineCustomElement$r } from './toast.js';
7
+ import { d as defineCustomElement$q } from './pos-add-new-thing2.js';
8
+ import { d as defineCustomElement$p } from './pos-app2.js';
9
+ import { d as defineCustomElement$o } from './pos-app-dashboard2.js';
10
+ import { d as defineCustomElement$n } from './pos-app-settings2.js';
11
+ import { d as defineCustomElement$m } from './pos-description2.js';
12
+ import { d as defineCustomElement$l } from './pos-dialog2.js';
13
+ import { d as defineCustomElement$k } from './pos-error-toast2.js';
14
+ import { d as defineCustomElement$j } from './pos-example-resources2.js';
15
+ import { d as defineCustomElement$i } from './pos-getting-started2.js';
16
+ import { d as defineCustomElement$h } from './pos-image2.js';
17
+ import { d as defineCustomElement$g } from './pos-internal-router2.js';
18
+ import { d as defineCustomElement$f } from './pos-label2.js';
19
+ import { d as defineCustomElement$e } from './pos-login2.js';
20
+ import { d as defineCustomElement$d } from './pos-login-form2.js';
21
+ import { d as defineCustomElement$c } from './pos-make-findable2.js';
22
+ import { d as defineCustomElement$b } from './pos-navigation2.js';
23
23
  import { d as defineCustomElement$a } from './pos-navigation-bar2.js';
24
24
  import { d as defineCustomElement$9 } from './pos-new-thing-form2.js';
25
25
  import { d as defineCustomElement$8 } from './pos-picture2.js';
@@ -30,7 +30,7 @@ import { d as defineCustomElement$4 } from './pos-select-term2.js';
30
30
  import { d as defineCustomElement$3 } from './pos-setting-offline-cache2.js';
31
31
  import { d as defineCustomElement$2 } from './pos-type-router2.js';
32
32
 
33
- 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";
33
+ 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";
34
34
  const PosAppBrowserStyle0 = posAppBrowserCss;
35
35
 
36
36
  const PosAppBrowser$1 = /*@__PURE__*/ proxyCustomElement(class PosAppBrowser extends HTMLElement {
@@ -41,14 +41,23 @@ const PosAppBrowser$1 = /*@__PURE__*/ proxyCustomElement(class PosAppBrowser ext
41
41
  /**
42
42
  * The mode the app is running in:
43
43
  *
44
- * - standalone: use this when you deploy it as a standalone web application
44
+ * - standalone: use this when you deploy it as a standalone web application
45
45
  * - pod: use this when you host this app as a default interface for you pod
46
46
  */
47
47
  this.mode = 'standalone';
48
48
  this.uri = '';
49
49
  }
50
50
  render() {
51
- 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")))))));
51
+ 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")))))));
52
+ }
53
+ mainContent() {
54
+ if (this.uri === '') {
55
+ return null;
56
+ }
57
+ if (this.uri.startsWith('pod-os:')) {
58
+ return h("pos-internal-router", { uri: this.uri });
59
+ }
60
+ return (h("pos-resource", { key: this.uri, uri: this.uri }, h("pos-type-router", null)));
52
61
  }
53
62
  static get style() { return PosAppBrowserStyle0; }
54
63
  }, [0, "pos-app-browser", {
@@ -75,7 +84,7 @@ function defineCustomElement$1() {
75
84
  if (typeof customElements === "undefined") {
76
85
  return;
77
86
  }
78
- const components = ["pos-app-browser", "ion-icon", "ion-progress-bar", "ion-ripple-effect", "ion-searchbar", "ion-skeleton-text", "ion-toast", "pos-add-new-thing", "pos-app", "pos-app-dashboard", "pos-app-settings", "pos-description", "pos-dialog", "pos-error-toast", "pos-example-resources", "pos-getting-started", "pos-image", "pos-internal-router", "pos-label", "pos-login", "pos-login-form", "pos-make-findable", "pos-navigation-bar", "pos-new-thing-form", "pos-picture", "pos-resource", "pos-rich-link", "pos-router", "pos-select-term", "pos-setting-offline-cache", "pos-type-router"];
87
+ const components = ["pos-app-browser", "ion-icon", "ion-progress-bar", "ion-ripple-effect", "ion-skeleton-text", "ion-toast", "pos-add-new-thing", "pos-app", "pos-app-dashboard", "pos-app-settings", "pos-description", "pos-dialog", "pos-error-toast", "pos-example-resources", "pos-getting-started", "pos-image", "pos-internal-router", "pos-label", "pos-login", "pos-login-form", "pos-make-findable", "pos-navigation", "pos-navigation-bar", "pos-new-thing-form", "pos-picture", "pos-resource", "pos-rich-link", "pos-router", "pos-select-term", "pos-setting-offline-cache", "pos-type-router"];
79
88
  components.forEach(tagName => { switch (tagName) {
80
89
  case "pos-app-browser":
81
90
  if (!customElements.get(tagName)) {
@@ -97,92 +106,92 @@ function defineCustomElement$1() {
97
106
  defineCustomElement$t();
98
107
  }
99
108
  break;
100
- case "ion-searchbar":
109
+ case "ion-skeleton-text":
101
110
  if (!customElements.get(tagName)) {
102
111
  defineCustomElement$s();
103
112
  }
104
113
  break;
105
- case "ion-skeleton-text":
114
+ case "ion-toast":
106
115
  if (!customElements.get(tagName)) {
107
116
  defineCustomElement$r();
108
117
  }
109
118
  break;
110
- case "ion-toast":
119
+ case "pos-add-new-thing":
111
120
  if (!customElements.get(tagName)) {
112
121
  defineCustomElement$q();
113
122
  }
114
123
  break;
115
- case "pos-add-new-thing":
124
+ case "pos-app":
116
125
  if (!customElements.get(tagName)) {
117
126
  defineCustomElement$p();
118
127
  }
119
128
  break;
120
- case "pos-app":
129
+ case "pos-app-dashboard":
121
130
  if (!customElements.get(tagName)) {
122
131
  defineCustomElement$o();
123
132
  }
124
133
  break;
125
- case "pos-app-dashboard":
134
+ case "pos-app-settings":
126
135
  if (!customElements.get(tagName)) {
127
136
  defineCustomElement$n();
128
137
  }
129
138
  break;
130
- case "pos-app-settings":
139
+ case "pos-description":
131
140
  if (!customElements.get(tagName)) {
132
141
  defineCustomElement$m();
133
142
  }
134
143
  break;
135
- case "pos-description":
144
+ case "pos-dialog":
136
145
  if (!customElements.get(tagName)) {
137
146
  defineCustomElement$l();
138
147
  }
139
148
  break;
140
- case "pos-dialog":
149
+ case "pos-error-toast":
141
150
  if (!customElements.get(tagName)) {
142
151
  defineCustomElement$k();
143
152
  }
144
153
  break;
145
- case "pos-error-toast":
154
+ case "pos-example-resources":
146
155
  if (!customElements.get(tagName)) {
147
156
  defineCustomElement$j();
148
157
  }
149
158
  break;
150
- case "pos-example-resources":
159
+ case "pos-getting-started":
151
160
  if (!customElements.get(tagName)) {
152
161
  defineCustomElement$i();
153
162
  }
154
163
  break;
155
- case "pos-getting-started":
164
+ case "pos-image":
156
165
  if (!customElements.get(tagName)) {
157
166
  defineCustomElement$h();
158
167
  }
159
168
  break;
160
- case "pos-image":
169
+ case "pos-internal-router":
161
170
  if (!customElements.get(tagName)) {
162
171
  defineCustomElement$g();
163
172
  }
164
173
  break;
165
- case "pos-internal-router":
174
+ case "pos-label":
166
175
  if (!customElements.get(tagName)) {
167
176
  defineCustomElement$f();
168
177
  }
169
178
  break;
170
- case "pos-label":
179
+ case "pos-login":
171
180
  if (!customElements.get(tagName)) {
172
181
  defineCustomElement$e();
173
182
  }
174
183
  break;
175
- case "pos-login":
184
+ case "pos-login-form":
176
185
  if (!customElements.get(tagName)) {
177
186
  defineCustomElement$d();
178
187
  }
179
188
  break;
180
- case "pos-login-form":
189
+ case "pos-make-findable":
181
190
  if (!customElements.get(tagName)) {
182
191
  defineCustomElement$c();
183
192
  }
184
193
  break;
185
- case "pos-make-findable":
194
+ case "pos-navigation":
186
195
  if (!customElements.get(tagName)) {
187
196
  defineCustomElement$b();
188
197
  }
@@ -1 +1 @@
1
- {"file":"pos-app-browser.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,gBAAgB,GAAG,60CAA60C,CAAC;AACv2C,4BAAe,gBAAgB;;MCKlBA,eAAa;IAJ1B;;;QAKU,2BAAsB,GAAY,KAAK,CAAC;;;;;;;QAQxC,SAAI,GAAyB,YAAY,CAAC;QAEzC,QAAG,GAAG,EAAE,CAAC;KAoCnB;IAlCC,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,gEAAS,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,IAC1D,0EACE,mEAAY,IAAI,EAAE,IAAI,CAAC,IAAI,4BAA0B,CAAC,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,IAC7E,iEACE,0EAAmB,YAAY,EAAE,IAAI,CAAC,GAAG,GAAsB,EAC/D,2EAAoB,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAuB,EAC/F,mEAAuB,CAChB,EACT,+DACG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAC7B,2BAAqB,GAAG,EAAE,IAAI,CAAC,GAAG,GAAI,KAEtC,oBAAc,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IACxC,0BAAmB,CACN,CAChB,CACI,EACP,iEACE,EAAC,IAAI,sDAAG,EACR,+EAA0B,EAC1B,mEAAc,EACd,0DAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,wBAAwB,sBAE7C,CACG,CACE,CACG,CACV,CACL,EACP;KACH;;;;;;;AAGH,MAAM,IAAI,GAAG;IACX,QACE,WAAK,OAAO,EAAC,aAAa,EAAC,KAAK,EAAC,4BAA4B,IAC3D,YACE,CAAC,EAAC,6CAA6C,EAC/C,KAAK,EAAE;YACL,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,IAAI;SACrB,qBACe,OAAO,GACvB,EAEF,YACE,CAAC,EAAC,0EAA0E,EAC5E,KAAK,EAAE;YACL,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,OAAO;YACjB,cAAc,EAAE,IAAI;SACrB,qBACe,OAAO,GACvB,EAEF,YACE,CAAC,EAAC,gDAAgD,EAClD,KAAK,EAAE;YACL,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,IAAI;SACrB,qBACe,OAAO,GACvB,CACE,EACN;AACJ,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PosAppBrowser"],"sources":["src/apps/pos-app-browser/pos-app-browser.css?tag=pos-app-browser","src/apps/pos-app-browser/pos-app-browser.tsx"],"sourcesContent":["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","import { Component, h, Host, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'pos-app-browser',\n styleUrl: 'pos-app-browser.css',\n})\nexport class PosAppBrowser {\n @Prop() restorePreviousSession: boolean = false;\n\n /**\n * The mode the app is running in:\n *\n * - standalone: use this when you deploy it as a standalone web application\n * - pod: use this when you host this app as a default interface for you pod\n */\n @Prop() mode: 'standalone' | 'pod' = 'standalone';\n\n @State() uri = '';\n\n render() {\n return (\n <Host>\n <pos-app restorePreviousSession={this.restorePreviousSession}>\n <pos-error-toast>\n <pos-router mode={this.mode} onPod-os:route-changed={e => (this.uri = e.detail)}>\n <header>\n <pos-add-new-thing referenceUri={this.uri}></pos-add-new-thing>\n <pos-navigation-bar uri={this.uri === 'pod-os:dashboard' ? '' : this.uri}></pos-navigation-bar>\n <pos-login></pos-login>\n </header>\n <main>\n {this.uri.startsWith('pod-os:') ? (\n <pos-internal-router uri={this.uri} />\n ) : (\n <pos-resource key={this.uri} uri={this.uri}>\n <pos-type-router />\n </pos-resource>\n )}\n </main>\n <footer>\n <Logo />\n <span>PodOS Browser</span>\n <span>|</span>\n <a class=\"settings\" href=\"?uri=pod-os%3Asettings\">\n ⚙ Settings\n </a>\n </footer>\n </pos-router>\n </pos-error-toast>\n </pos-app>\n </Host>\n );\n }\n}\n\nconst Logo = () => {\n return (\n <svg viewBox=\"0 0 400 400\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M50 350 L50 100 L200 50 L350 100 L350 350 Z\"\n style={{\n 'fill': '#008BF8',\n 'stroke': '#008BF8',\n 'stroke-width': '70',\n }}\n stroke-linejoin=\"round\"\n />\n\n <path\n d=\"M100 300 L100 150 L200 120 L300 150 L300 300 L130 300 L130 370 L100 370Z\"\n style={{\n 'fill': 'white',\n 'stroke': 'white',\n 'stroke-width': '45',\n }}\n stroke-linejoin=\"round\"\n />\n\n <path\n d=\"M150 250 L150 200 L200 180 L250 200 L250 250 Z\"\n style={{\n 'fill': '#DC0073',\n 'stroke': '#DC0073',\n 'stroke-width': '20',\n }}\n stroke-linejoin=\"round\"\n />\n </svg>\n );\n};\n"],"version":3}
1
+ {"file":"pos-app-browser.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,gBAAgB,GAAG,4yCAA4yC,CAAC;AACt0C,4BAAe,gBAAgB;;MCKlBA,eAAa;IAJ1B;;;QAKU,2BAAsB,GAAY,KAAK,CAAC;;;;;;;QAQxC,SAAI,GAAyB,YAAY,CAAC;QAEzC,QAAG,GAAG,EAAE,CAAC;KA0CnB;IAxCC,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,gEAAS,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,IAC1D,0EACE,mEAAY,IAAI,EAAE,IAAI,CAAC,IAAI,4BAA0B,CAAC,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,IAC7E,iEACE,0EAAmB,YAAY,EAAE,IAAI,CAAC,GAAG,GAAsB,EAC/D,uEAAgB,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAmB,EACvF,mEAAuB,CAChB,EACT,+DAAO,IAAI,CAAC,WAAW,EAAE,CAAQ,EACjC,iEACE,EAAC,IAAI,sDAAG,EACR,+EAA0B,EAC1B,mEAAc,EACd,0DAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,wBAAwB,sBAE7C,CACG,CACE,CACG,CACV,CACL,EACP;KACH;IAEO,WAAW;QACjB,IAAI,IAAI,CAAC,GAAG,KAAK,EAAE,EAAE;YACnB,OAAO,IAAI,CAAC;SACb;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAClC,OAAO,2BAAqB,GAAG,EAAE,IAAI,CAAC,GAAG,GAAI,CAAC;SAC/C;QACD,QACE,oBAAc,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IACxC,0BAAmB,CACN,EACf;KACH;;;;;;;AAGH,MAAM,IAAI,GAAG;IACX,QACE,WAAK,OAAO,EAAC,aAAa,EAAC,KAAK,EAAC,4BAA4B,IAC3D,YACE,CAAC,EAAC,6CAA6C,EAC/C,KAAK,EAAE;YACL,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,IAAI;SACrB,qBACe,OAAO,GACvB,EAEF,YACE,CAAC,EAAC,0EAA0E,EAC5E,KAAK,EAAE;YACL,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,OAAO;YACjB,cAAc,EAAE,IAAI;SACrB,qBACe,OAAO,GACvB,EAEF,YACE,CAAC,EAAC,gDAAgD,EAClD,KAAK,EAAE;YACL,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,IAAI;SACrB,qBACe,OAAO,GACvB,CACE,EACN;AACJ,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PosAppBrowser"],"sources":["src/apps/pos-app-browser/pos-app-browser.css?tag=pos-app-browser","src/apps/pos-app-browser/pos-app-browser.tsx"],"sourcesContent":["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","import { Component, h, Host, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'pos-app-browser',\n styleUrl: 'pos-app-browser.css',\n})\nexport class PosAppBrowser {\n @Prop() restorePreviousSession: boolean = false;\n\n /**\n * The mode the app is running in:\n *\n * - standalone: use this when you deploy it as a standalone web application\n * - pod: use this when you host this app as a default interface for you pod\n */\n @Prop() mode: 'standalone' | 'pod' = 'standalone';\n\n @State() uri = '';\n\n render() {\n return (\n <Host>\n <pos-app restorePreviousSession={this.restorePreviousSession}>\n <pos-error-toast>\n <pos-router mode={this.mode} onPod-os:route-changed={e => (this.uri = e.detail)}>\n <header>\n <pos-add-new-thing referenceUri={this.uri}></pos-add-new-thing>\n <pos-navigation uri={this.uri === 'pod-os:dashboard' ? '' : this.uri}></pos-navigation>\n <pos-login></pos-login>\n </header>\n <main>{this.mainContent()}</main>\n <footer>\n <Logo />\n <span>PodOS Browser</span>\n <span>|</span>\n <a class=\"settings\" href=\"?uri=pod-os%3Asettings\">\n ⚙ Settings\n </a>\n </footer>\n </pos-router>\n </pos-error-toast>\n </pos-app>\n </Host>\n );\n }\n\n private mainContent() {\n if (this.uri === '') {\n return null;\n }\n if (this.uri.startsWith('pod-os:')) {\n return <pos-internal-router uri={this.uri} />;\n }\n return (\n <pos-resource key={this.uri} uri={this.uri}>\n <pos-type-router />\n </pos-resource>\n );\n }\n}\n\nconst Logo = () => {\n return (\n <svg viewBox=\"0 0 400 400\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M50 350 L50 100 L200 50 L350 100 L350 350 Z\"\n style={{\n 'fill': '#008BF8',\n 'stroke': '#008BF8',\n 'stroke-width': '70',\n }}\n stroke-linejoin=\"round\"\n />\n\n <path\n d=\"M100 300 L100 150 L200 120 L300 150 L300 300 L130 300 L130 370 L100 370Z\"\n style={{\n 'fill': 'white',\n 'stroke': 'white',\n 'stroke-width': '45',\n }}\n stroke-linejoin=\"round\"\n />\n\n <path\n d=\"M150 250 L150 200 L200 180 L250 200 L250 250 Z\"\n style={{\n 'fill': '#DC0073',\n 'stroke': '#DC0073',\n 'stroke-width': '20',\n }}\n stroke-linejoin=\"round\"\n />\n </svg>\n );\n};\n"],"version":3}