@venite/components 0.16.2 → 0.16.6

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 (253) hide show
  1. package/dist/cjs/ion-button_13.cjs.entry.js +1787 -0
  2. package/dist/cjs/ion-checkbox_3.cjs.entry.js +235 -0
  3. package/dist/cjs/ion-segment_16.cjs.entry.js +5 -4
  4. package/dist/cjs/ldf-day-name_5.cjs.entry.js +1 -2
  5. package/dist/cjs/ldf-editable-add-block-menu.cjs.entry.js +2 -2
  6. package/dist/cjs/ldf-editable-filter-documents.cjs.entry.js +1 -1
  7. package/dist/cjs/ldf-editable-lookup_2.cjs.entry.js +3 -3
  8. package/dist/cjs/ldf-editable-metadata.cjs.entry.js +3 -3
  9. package/dist/cjs/ldf.cjs.js +1 -1
  10. package/dist/cjs/loader.cjs.js +1 -1
  11. package/dist/cjs/{option-a9f12c93.js → option-1ebd4514.js} +6 -2
  12. package/dist/cjs/{rubric-85fc7418.js → rubric-662d8baa.js} +44 -5
  13. package/dist/cjs/{specific-class-acf1bb37.js → specific-class-d80d272a.js} +2 -2
  14. package/dist/collection/components/liturgical-document/dist/liturgical-document.js +6 -1
  15. package/dist/collection/components/liturgical-document/liturgical-document.js +21 -1
  16. package/dist/collection/components/option/dist/option.js +318 -0
  17. package/dist/collection/components/prayers-and-thanksgivings/dist/prayers-and-thanksgivings.js +258 -0
  18. package/dist/collection/components/prayers-and-thanksgivings/prayers-and-thanksgivings.js +55 -36
  19. package/dist/collection/components/psalm/dist/psalm.js +0 -1
  20. package/dist/collection/components/psalm/psalm.js +0 -1
  21. package/dist/collection/components/string/dist/string.js +0 -1
  22. package/dist/collection/components/string/string.js +0 -1
  23. package/dist/collection/components/text/dist/text.js +1 -1
  24. package/dist/collection/components/text/text.js +1 -1
  25. package/dist/esm/{app-globals-2b41bd8d.js → app-globals-729b03cf.js} +1 -1
  26. package/dist/esm/{index-1885f1b8.js → index-734a6b69.js} +1 -1
  27. package/dist/esm/{index-8b9e221a.js → index-9579282b.js} +3 -3
  28. package/dist/esm/{index-dcd553ac.js → index-f0f6a379.js} +1 -1
  29. package/dist/esm/ion-action-sheet.entry.js +3 -3
  30. package/dist/esm/ion-alert.entry.js +3 -3
  31. package/dist/esm/ion-app.entry.js +3 -3
  32. package/dist/esm/ion-avatar.entry.js +2 -2
  33. package/dist/esm/ion-back-button.entry.js +2 -2
  34. package/dist/esm/ion-backdrop.entry.js +2 -2
  35. package/dist/esm/ion-badge.entry.js +2 -2
  36. package/dist/esm/ion-button_13.entry.js +1771 -0
  37. package/dist/esm/ion-card-content_6.entry.js +3 -3
  38. package/dist/esm/ion-card-subtitle.entry.js +2 -2
  39. package/dist/esm/ion-card_2.entry.js +2 -2
  40. package/dist/esm/ion-checkbox_3.entry.js +229 -0
  41. package/dist/esm/ion-chip.entry.js +2 -2
  42. package/dist/esm/ion-datetime_2.entry.js +3 -3
  43. package/dist/esm/ion-fab-button.entry.js +2 -2
  44. package/dist/esm/ion-fab-list.entry.js +2 -2
  45. package/dist/esm/ion-fab.entry.js +2 -2
  46. package/dist/esm/ion-footer.entry.js +2 -2
  47. package/dist/esm/ion-img.entry.js +2 -2
  48. package/dist/esm/ion-infinite-scroll-content.entry.js +2 -2
  49. package/dist/esm/ion-infinite-scroll.entry.js +2 -2
  50. package/dist/esm/ion-input_2.entry.js +2 -2
  51. package/dist/esm/ion-item-divider.entry.js +2 -2
  52. package/dist/esm/ion-item-group.entry.js +2 -2
  53. package/dist/esm/ion-item-option.entry.js +2 -2
  54. package/dist/esm/ion-item-options.entry.js +2 -2
  55. package/dist/esm/ion-item-sliding.entry.js +2 -2
  56. package/dist/esm/ion-list-header.entry.js +2 -2
  57. package/dist/esm/ion-loading.entry.js +3 -3
  58. package/dist/esm/ion-menu-button.entry.js +4 -4
  59. package/dist/esm/ion-menu-toggle.entry.js +4 -4
  60. package/dist/esm/ion-menu.entry.js +3 -3
  61. package/dist/esm/ion-modal.entry.js +4 -4
  62. package/dist/esm/ion-nav-link.entry.js +1 -1
  63. package/dist/esm/ion-nav.entry.js +3 -3
  64. package/dist/esm/ion-note.entry.js +2 -2
  65. package/dist/esm/ion-picker-column.entry.js +2 -2
  66. package/dist/esm/ion-picker.entry.js +3 -3
  67. package/dist/esm/ion-popover.entry.js +4 -4
  68. package/dist/esm/ion-progress-bar.entry.js +2 -2
  69. package/dist/esm/ion-radio_2.entry.js +2 -2
  70. package/dist/esm/ion-range.entry.js +2 -2
  71. package/dist/esm/ion-refresher-content.entry.js +2 -2
  72. package/dist/esm/ion-refresher.entry.js +2 -2
  73. package/dist/esm/ion-reorder-group.entry.js +2 -2
  74. package/dist/esm/ion-reorder.entry.js +2 -2
  75. package/dist/esm/ion-route-redirect.entry.js +1 -1
  76. package/dist/esm/ion-route.entry.js +1 -1
  77. package/dist/esm/ion-router-link.entry.js +2 -2
  78. package/dist/esm/ion-router-outlet.entry.js +3 -3
  79. package/dist/esm/ion-router.entry.js +1 -1
  80. package/dist/esm/ion-segment_16.entry.js +8 -7
  81. package/dist/esm/ion-select-popover.entry.js +3 -3
  82. package/dist/esm/ion-select_2.entry.js +3 -3
  83. package/dist/esm/ion-slide.entry.js +2 -2
  84. package/dist/esm/ion-slides.entry.js +2 -2
  85. package/dist/esm/ion-spinner.entry.js +2 -2
  86. package/dist/esm/ion-split-pane.entry.js +2 -2
  87. package/dist/esm/ion-tab-bar.entry.js +2 -2
  88. package/dist/esm/ion-tab-button.entry.js +2 -2
  89. package/dist/esm/ion-tab.entry.js +1 -1
  90. package/dist/esm/ion-tabs.entry.js +1 -1
  91. package/dist/esm/ion-text.entry.js +2 -2
  92. package/dist/esm/ion-textarea.entry.js +2 -2
  93. package/dist/esm/ion-thumbnail.entry.js +2 -2
  94. package/dist/esm/ion-toast.entry.js +3 -3
  95. package/dist/esm/ion-virtual-scroll.entry.js +1 -1
  96. package/dist/esm/{ionic-global-fef4299f.js → ionic-global-ef89a0a5.js} +1 -1
  97. package/dist/esm/{ios.transition-2460f61e.js → ios.transition-b1be0863.js} +2 -2
  98. package/dist/esm/ldf-day-name_5.entry.js +4 -5
  99. package/dist/esm/ldf-editable-add-block-menu.entry.js +3 -3
  100. package/dist/esm/ldf-editable-condition-piece.entry.js +1 -1
  101. package/dist/esm/ldf-editable-condition.entry.js +1 -1
  102. package/dist/esm/ldf-editable-filter-documents.entry.js +2 -2
  103. package/dist/esm/ldf-editable-lookup_2.entry.js +4 -4
  104. package/dist/esm/ldf-editable-metadata.entry.js +4 -4
  105. package/dist/esm/ldf-editable-preference-option.entry.js +1 -1
  106. package/dist/esm/ldf-editable-preference.entry.js +1 -1
  107. package/dist/esm/ldf-editable-preferences.entry.js +3 -3
  108. package/dist/esm/ldf-editable-string-list.entry.js +1 -1
  109. package/dist/esm/ldf-editor-cursors.entry.js +1 -1
  110. package/dist/esm/ldf-editor.entry.js +1 -1
  111. package/dist/esm/ldf.js +4 -4
  112. package/dist/esm/loader.js +4 -4
  113. package/dist/esm/{md.transition-7eb37dd1.js → md.transition-1763f475.js} +2 -2
  114. package/dist/esm/{menu-toggle-util-d6bed342.js → menu-toggle-util-29e61ff3.js} +1 -1
  115. package/dist/esm/{option-042c9673.js → option-47d50244.js} +6 -2
  116. package/dist/esm/{overlays-e1d5aa58.js → overlays-06b43b65.js} +2 -2
  117. package/dist/esm/{rubric-9c750946.js → rubric-2330a030.js} +44 -5
  118. package/dist/esm/{specific-class-2df4b72a.js → specific-class-28e26e40.js} +2 -2
  119. package/dist/esm/{status-tap-900b721a.js → status-tap-7458bd71.js} +1 -1
  120. package/dist/ldf/ldf.esm.js +1 -1
  121. package/dist/ldf/{p-a7a10747.entry.js → p-018e57db.entry.js} +1 -1
  122. package/dist/ldf/p-02ef484e.entry.js +1 -0
  123. package/dist/ldf/{p-5bfa9969.entry.js → p-04715bf0.entry.js} +1 -1
  124. package/dist/ldf/{p-8cb241a8.entry.js → p-0651768a.entry.js} +1 -1
  125. package/dist/ldf/{p-a80bce6a.entry.js → p-07d6d3ad.entry.js} +1 -1
  126. package/dist/ldf/p-08584ccc.entry.js +1 -0
  127. package/dist/ldf/{p-d3a17399.entry.js → p-0873a34a.entry.js} +1 -1
  128. package/dist/ldf/{p-5febfbde.entry.js → p-0f69db87.entry.js} +1 -1
  129. package/dist/ldf/{p-6b6b9f77.entry.js → p-1504379f.entry.js} +1 -1
  130. package/dist/ldf/{p-110c6e85.entry.js → p-1a8e2899.entry.js} +1 -1
  131. package/dist/ldf/p-21e2f0a3.entry.js +1 -0
  132. package/dist/ldf/{p-6c3d4341.entry.js → p-25a736f1.entry.js} +1 -1
  133. package/dist/ldf/{p-43d7a734.entry.js → p-2c36a583.entry.js} +1 -1
  134. package/dist/ldf/{p-4c8f895f.entry.js → p-2fa1c501.entry.js} +1 -1
  135. package/dist/ldf/{p-a0b9b689.entry.js → p-302dc0d5.entry.js} +1 -1
  136. package/dist/ldf/{p-54f83929.entry.js → p-327b14ac.entry.js} +1 -1
  137. package/dist/ldf/{p-4d5b52ad.entry.js → p-32f7ba8e.entry.js} +1 -1
  138. package/dist/ldf/{p-8a064810.entry.js → p-3545fcdc.entry.js} +1 -1
  139. package/dist/ldf/{p-8c8bf861.entry.js → p-374118d7.entry.js} +1 -1
  140. package/dist/ldf/p-37f356a4.entry.js +1 -0
  141. package/dist/ldf/{p-7f7de09a.entry.js → p-380f8655.entry.js} +1 -1
  142. package/dist/ldf/{p-7df0687c.entry.js → p-3c9930ff.entry.js} +1 -1
  143. package/dist/ldf/{p-dbdb2b0a.entry.js → p-3f39c2ad.entry.js} +1 -1
  144. package/dist/ldf/{p-35680ca6.entry.js → p-430c418a.entry.js} +1 -1
  145. package/dist/ldf/{p-986921d2.js → p-48e44122.js} +1 -1
  146. package/dist/ldf/{p-4b154310.entry.js → p-4a4380fa.entry.js} +1 -1
  147. package/dist/ldf/p-4b80de48.js +1 -0
  148. package/dist/ldf/{p-06bc76d9.entry.js → p-4d392128.entry.js} +1 -1
  149. package/dist/ldf/p-4e0b3c0f.entry.js +1 -0
  150. package/dist/ldf/{p-b631cadf.entry.js → p-52656429.entry.js} +1 -1
  151. package/dist/ldf/p-53c807a4.js +1 -0
  152. package/dist/ldf/{p-91969280.js → p-55d797c1.js} +1 -1
  153. package/dist/ldf/{p-71ed0c0f.entry.js → p-59340423.entry.js} +1 -1
  154. package/dist/ldf/{p-0c8f1542.entry.js → p-5be7ff17.entry.js} +1 -1
  155. package/dist/ldf/p-5bf20b51.js +1 -0
  156. package/dist/ldf/{p-ae3cd06a.entry.js → p-63b5daf6.entry.js} +1 -1
  157. package/dist/ldf/{p-0afd3d32.entry.js → p-66a7385e.entry.js} +1 -1
  158. package/dist/ldf/p-698a3399.entry.js +1 -0
  159. package/dist/ldf/{p-4d92e32b.entry.js → p-69f85ad3.entry.js} +1 -1
  160. package/dist/ldf/{p-0cb749f6.entry.js → p-6fe24d85.entry.js} +1 -1
  161. package/dist/ldf/{p-ceb4c199.entry.js → p-70e47f8b.entry.js} +1 -1
  162. package/dist/ldf/{p-e778bf3c.entry.js → p-73a16936.entry.js} +1 -1
  163. package/dist/ldf/{p-bacac874.entry.js → p-79a526a1.entry.js} +1 -1
  164. package/dist/ldf/{p-20f5f7c0.entry.js → p-7abeb82c.entry.js} +1 -1
  165. package/dist/ldf/{p-79997a72.entry.js → p-7df11f48.entry.js} +1 -1
  166. package/dist/ldf/{p-91cef52f.entry.js → p-7efa633b.entry.js} +1 -1
  167. package/dist/ldf/{p-8ed588f7.entry.js → p-84f38db6.entry.js} +1 -1
  168. package/dist/ldf/{p-5a74ad40.entry.js → p-8767a74e.entry.js} +1 -1
  169. package/dist/ldf/{p-7fba586d.entry.js → p-8932ec85.entry.js} +1 -1
  170. package/dist/ldf/{p-74e1596c.entry.js → p-8c2727db.entry.js} +1 -1
  171. package/dist/ldf/{p-913c92ca.entry.js → p-972e4f2a.entry.js} +1 -1
  172. package/dist/ldf/{p-0ce10dcd.js → p-978e2c6d.js} +1 -1
  173. package/dist/ldf/p-9bd5d1d4.entry.js +1 -0
  174. package/dist/ldf/{p-5fa1dcfb.entry.js → p-9c397c49.entry.js} +1 -1
  175. package/dist/ldf/p-9e2c172e.entry.js +1 -0
  176. package/dist/ldf/{p-6b0fab5d.js → p-9e82b403.js} +2 -2
  177. package/dist/ldf/{p-2b9556d3.entry.js → p-a98c89d1.entry.js} +1 -1
  178. package/dist/ldf/{p-c3dbb344.entry.js → p-ac7a17ce.entry.js} +1 -1
  179. package/dist/ldf/{p-3b236b73.js → p-acbbd1ec.js} +1 -1
  180. package/dist/ldf/p-b1242016.js +1 -0
  181. package/dist/ldf/{p-50d56c76.entry.js → p-b7388aec.entry.js} +1 -1
  182. package/dist/ldf/{p-37ead536.entry.js → p-b78336d7.entry.js} +1 -1
  183. package/dist/ldf/{p-9282f514.entry.js → p-ba021918.entry.js} +1 -1
  184. package/dist/ldf/{p-65c80b87.entry.js → p-c1bcd0a9.entry.js} +1 -1
  185. package/dist/ldf/{p-4c825920.entry.js → p-c1df632d.entry.js} +1 -1
  186. package/dist/ldf/{p-a467efd9.entry.js → p-c3042920.entry.js} +1 -1
  187. package/dist/ldf/{p-860e2e8c.entry.js → p-c3807857.entry.js} +1 -1
  188. package/dist/ldf/{p-faf3cb15.entry.js → p-c3841978.entry.js} +1 -1
  189. package/dist/ldf/{p-b7fe7b29.entry.js → p-c41e055c.entry.js} +1 -1
  190. package/dist/ldf/{p-5cefe450.entry.js → p-c6163f81.entry.js} +1 -1
  191. package/dist/ldf/{p-944c44a7.entry.js → p-c6b42618.entry.js} +1 -1
  192. package/dist/ldf/{p-1d8e06c7.entry.js → p-c74d3fd0.entry.js} +1 -1
  193. package/dist/ldf/{p-741e1b4e.entry.js → p-c82dd468.entry.js} +1 -1
  194. package/dist/ldf/{p-342e45c0.entry.js → p-ca698b8f.entry.js} +1 -1
  195. package/dist/ldf/p-ca7e0de9.entry.js +1 -0
  196. package/dist/ldf/{p-059fcd05.entry.js → p-cbfbb80c.entry.js} +1 -1
  197. package/dist/ldf/{p-a8264864.entry.js → p-d195c957.entry.js} +1 -1
  198. package/dist/ldf/{p-664b2872.js → p-d282d4f9.js} +1 -1
  199. package/dist/ldf/{p-bc59e89e.entry.js → p-d7966e9b.entry.js} +1 -1
  200. package/dist/ldf/{p-f562ae50.js → p-d7f8c770.js} +1 -1
  201. package/dist/ldf/{p-396025ba.entry.js → p-d7fa99cc.entry.js} +1 -1
  202. package/dist/ldf/{p-ae136041.entry.js → p-db435131.entry.js} +1 -1
  203. package/dist/ldf/{p-ae287f67.entry.js → p-dc445c36.entry.js} +1 -1
  204. package/dist/ldf/{p-385a3ecf.entry.js → p-dd99e42a.entry.js} +1 -1
  205. package/dist/ldf/{p-b8a8f9c8.js → p-de5bb5ad.js} +1 -1
  206. package/dist/ldf/{p-7e388cb7.entry.js → p-e0e12ae3.entry.js} +1 -1
  207. package/dist/ldf/{p-128ac9e9.entry.js → p-e215fd02.entry.js} +1 -1
  208. package/dist/ldf/{p-4b7027b1.entry.js → p-e4be11ad.entry.js} +1 -1
  209. package/dist/ldf/{p-8d6f1d6b.entry.js → p-ea66c343.entry.js} +1 -1
  210. package/dist/ldf/{p-ac9a93aa.entry.js → p-ec5eecdc.entry.js} +1 -1
  211. package/dist/ldf/{p-64c46765.js → p-f2ce126e.js} +1 -1
  212. package/dist/ldf/{p-186eed18.entry.js → p-fe59a676.entry.js} +1 -1
  213. package/dist/ldf/p-ff51dbd0.entry.js +1 -0
  214. package/dist/types/components/liturgical-document/liturgical-document.d.ts +2 -0
  215. package/dist/types/components/prayers-and-thanksgivings/prayers-and-thanksgivings.d.ts +1 -1
  216. package/dist/types/components.d.ts +8 -0
  217. package/package.json +2 -2
  218. package/dist/cjs/ion-button_3.cjs.entry.js +0 -413
  219. package/dist/cjs/ion-buttons_6.cjs.entry.js +0 -584
  220. package/dist/cjs/ion-content.cjs.entry.js +0 -303
  221. package/dist/cjs/ion-item_2.cjs.entry.js +0 -168
  222. package/dist/cjs/ion-ripple-effect.cjs.entry.js +0 -93
  223. package/dist/cjs/ion-searchbar.cjs.entry.js +0 -330
  224. package/dist/cjs/ion-title.cjs.entry.js +0 -48
  225. package/dist/cjs/ldf-prayers-and-thanksgivings.cjs.entry.js +0 -108
  226. package/dist/esm/ion-button_3.entry.js +0 -407
  227. package/dist/esm/ion-buttons_6.entry.js +0 -575
  228. package/dist/esm/ion-content.entry.js +0 -299
  229. package/dist/esm/ion-item_2.entry.js +0 -163
  230. package/dist/esm/ion-ripple-effect.entry.js +0 -89
  231. package/dist/esm/ion-searchbar.entry.js +0 -326
  232. package/dist/esm/ion-title.entry.js +0 -44
  233. package/dist/esm/ldf-prayers-and-thanksgivings.entry.js +0 -104
  234. package/dist/ldf/p-01655d40.js +0 -1
  235. package/dist/ldf/p-07e48862.entry.js +0 -1
  236. package/dist/ldf/p-2471a9c7.entry.js +0 -1
  237. package/dist/ldf/p-356f9ee6.entry.js +0 -1
  238. package/dist/ldf/p-68f963c7.entry.js +0 -1
  239. package/dist/ldf/p-72718314.entry.js +0 -1
  240. package/dist/ldf/p-78ed7ef0.entry.js +0 -1
  241. package/dist/ldf/p-7aecb410.js +0 -1
  242. package/dist/ldf/p-7ccf2257.entry.js +0 -1
  243. package/dist/ldf/p-867f7c02.js +0 -1
  244. package/dist/ldf/p-8e1286c3.entry.js +0 -1
  245. package/dist/ldf/p-92461769.entry.js +0 -1
  246. package/dist/ldf/p-9382bbe1.entry.js +0 -1
  247. package/dist/ldf/p-96967103.entry.js +0 -1
  248. package/dist/ldf/p-accacaed.entry.js +0 -1
  249. package/dist/ldf/p-bcb82c8e.js +0 -1
  250. package/dist/ldf/p-c7c0acf1.entry.js +0 -1
  251. package/dist/ldf/p-cee7604d.entry.js +0 -1
  252. package/dist/ldf/p-e3ce57d7.entry.js +0 -1
  253. package/dist/ldf/p-ecb2e631.entry.js +0 -1
@@ -1,584 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-8fe0df8d.js');
6
- const ionicGlobal = require('./ionic-global-581fb4f8.js');
7
- const helpers = require('./helpers-41dfb43a.js');
8
- const theme = require('./theme-81caa5b0.js');
9
- require('./index-5e2cc9e9.js');
10
- const change = require('./change-cdb1e8c0.js');
11
- const overlays = require('./overlays-eb464d6d.js');
12
- const locale = require('./locale-d4e925b1.js');
13
- require('./_commonjsHelpers-bcc1208a.js');
14
- require('./hardware-back-button-8c2f48d2.js');
15
-
16
- const buttonsIosCss = ".sc-ion-buttons-ios-h{display:flex;align-items:center;transform:translateZ(0);z-index:99}.sc-ion-buttons-ios-s ion-button{--padding-top:0;--padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-buttons-ios-s ion-button{--padding-start:5px;--padding-end:5px;margin-left:2px;margin-right:2px;height:32px;font-size:17px;font-weight:400}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.sc-ion-buttons-ios-s ion-button{margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px}}.sc-ion-buttons-ios-s ion-button:not(.button-round){--border-radius:4px}.sc-ion-buttons-ios-h.ion-color.sc-ion-buttons-ios-s .button,.ion-color .sc-ion-buttons-ios-h.sc-ion-buttons-ios-s .button{--color:initial;--border-color:initial;--background-focused:var(--ion-color-contrast)}.sc-ion-buttons-ios-h.ion-color.sc-ion-buttons-ios-s .button-solid,.ion-color .sc-ion-buttons-ios-h.sc-ion-buttons-ios-s .button-solid{--background:var(--ion-color-contrast);--background-focused:#000;--background-focused-opacity:.12;--background-activated:#000;--background-activated-opacity:.12;--background-hover:var(--ion-color-base);--background-hover-opacity:0.45;--color:var(--ion-color-base);--color-focused:var(--ion-color-base)}.sc-ion-buttons-ios-h.ion-color.sc-ion-buttons-ios-s .button-clear,.ion-color .sc-ion-buttons-ios-h.sc-ion-buttons-ios-s .button-clear{--color-activated:var(--ion-color-contrast);--color-focused:var(--ion-color-contrast)}.sc-ion-buttons-ios-h.ion-color.sc-ion-buttons-ios-s .button-outline,.ion-color .sc-ion-buttons-ios-h.sc-ion-buttons-ios-s .button-outline{--color-activated:var(--ion-color-base);--color-focused:var(--ion-color-contrast)}.sc-ion-buttons-ios-s .button-clear,.sc-ion-buttons-ios-s .button-outline{--background-activated:transparent;--background-focused:currentColor;--background-hover:transparent}.sc-ion-buttons-ios-s .button-solid:not(.ion-color){--background-focused:#000;--background-focused-opacity:.12;--background-activated:#000;--background-activated-opacity:.12}.sc-ion-buttons-ios-s ion-icon[slot=start]{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;margin-right:0.3em;font-size:24px;line-height:0.67}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.sc-ion-buttons-ios-s ion-icon[slot=start]{margin-right:unset;-webkit-margin-end:0.3em;margin-inline-end:0.3em}}.sc-ion-buttons-ios-s ion-icon[slot=end]{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;margin-left:0.4em;font-size:24px;line-height:0.67}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.sc-ion-buttons-ios-s ion-icon[slot=end]{margin-left:unset;-webkit-margin-start:0.4em;margin-inline-start:0.4em}}.sc-ion-buttons-ios-s ion-icon[slot=icon-only]{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;font-size:28px;line-height:0.67}";
17
-
18
- const buttonsMdCss = ".sc-ion-buttons-md-h{display:flex;align-items:center;transform:translateZ(0);z-index:99}.sc-ion-buttons-md-s ion-button{--padding-top:0;--padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-buttons-md-s ion-button{--padding-top:0;--padding-bottom:0;--padding-start:8px;--padding-end:8px;--box-shadow:none;margin-left:2px;margin-right:2px;height:32px;font-size:14px;font-weight:500}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.sc-ion-buttons-md-s ion-button{margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px}}.sc-ion-buttons-md-s ion-button:not(.button-round){--border-radius:2px}.sc-ion-buttons-md-h.ion-color.sc-ion-buttons-md-s .button,.ion-color .sc-ion-buttons-md-h.sc-ion-buttons-md-s .button{--color:initial;--color-focused:var(--ion-color-contrast);--color-hover:var(--ion-color-contrast);--background-activated:transparent;--background-focused:var(--ion-color-contrast);--background-hover:var(--ion-color-contrast)}.sc-ion-buttons-md-h.ion-color.sc-ion-buttons-md-s .button-solid,.ion-color .sc-ion-buttons-md-h.sc-ion-buttons-md-s .button-solid{--background:var(--ion-color-contrast);--background-activated:transparent;--background-focused:var(--ion-color-shade);--background-hover:var(--ion-color-base);--color:var(--ion-color-base);--color-focused:var(--ion-color-base);--color-hover:var(--ion-color-base)}.sc-ion-buttons-md-h.ion-color.sc-ion-buttons-md-s .button-outline,.ion-color .sc-ion-buttons-md-h.sc-ion-buttons-md-s .button-outline{--border-color:var(--ion-color-contrast)}.sc-ion-buttons-md-s .button-has-icon-only.button-clear{--padding-top:12px;--padding-end:12px;--padding-bottom:12px;--padding-start:12px;--border-radius:50%;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:48px;height:48px}.sc-ion-buttons-md-s .button{--background-hover:currentColor}.sc-ion-buttons-md-s .button-solid{--color:var(--ion-toolbar-background, var(--ion-background-color, #fff));--background:var(--ion-toolbar-color, var(--ion-text-color, #424242));--background-activated:transparent;--background-focused:currentColor}.sc-ion-buttons-md-s .button-outline{--color:initial;--background:transparent;--background-activated:transparent;--background-focused:currentColor;--background-hover:currentColor;--border-color:currentColor}.sc-ion-buttons-md-s .button-clear{--color:initial;--background:transparent;--background-activated:transparent;--background-focused:currentColor;--background-hover:currentColor}.sc-ion-buttons-md-s ion-icon[slot=start]{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;margin-right:0.3em;font-size:1.4em}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.sc-ion-buttons-md-s ion-icon[slot=start]{margin-right:unset;-webkit-margin-end:0.3em;margin-inline-end:0.3em}}.sc-ion-buttons-md-s ion-icon[slot=end]{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;margin-left:0.4em;font-size:1.4em}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.sc-ion-buttons-md-s ion-icon[slot=end]{margin-left:unset;-webkit-margin-start:0.4em;margin-inline-start:0.4em}}.sc-ion-buttons-md-s ion-icon[slot=icon-only]{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;font-size:1.8em}";
19
-
20
- const Buttons = class {
21
- constructor(hostRef) {
22
- index.registerInstance(this, hostRef);
23
- /**
24
- * If true, buttons will disappear when its
25
- * parent toolbar has fully collapsed if the toolbar
26
- * is not the first toolbar. If the toolbar is the
27
- * first toolbar, the buttons will be hidden and will
28
- * only be shown once all toolbars have fully collapsed.
29
- *
30
- * Only applies in `ios` mode with `collapse` set to
31
- * `true` on `ion-header`.
32
- *
33
- * Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
34
- */
35
- this.collapse = false;
36
- }
37
- render() {
38
- const mode = ionicGlobal.getIonMode(this);
39
- return (index.h(index.Host, { class: {
40
- [mode]: true,
41
- ['buttons-collapse']: this.collapse
42
- } }));
43
- }
44
- };
45
- Buttons.style = {
46
- ios: buttonsIosCss,
47
- md: buttonsMdCss
48
- };
49
-
50
- const checkboxIosCss = ":host{--background-checked:var(--ion-color-primary, #3880ff);--border-color-checked:var(--ion-color-primary, #3880ff);--checkmark-color:var(--ion-color-primary-contrast, #fff);--checkmark-width:1;--transition:none;display:inline-block;position:relative;user-select:none;z-index:2}:host(.ion-color){--background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}button{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none}[dir=rtl] button,:host-context([dir=rtl]) button{left:unset;right:unset;right:0}button::-moz-focus-inner{border:0}.checkbox-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:1px;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--background:var(--ion-item-background, var(--ion-background-color, #fff));--size:26px;width:var(--size);height:var(--size)}:host(.checkbox-disabled){opacity:0.3}:host(.in-item){margin-left:0;margin-right:8px;margin-top:10px;margin-bottom:9px;display:block;position:static}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item){margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:8px;margin-inline-end:8px}}:host(.in-item[slot=start]){margin-left:2px;margin-right:20px;margin-top:8px;margin-bottom:8px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:20px;margin-inline-end:20px}}";
51
-
52
- const checkboxMdCss = ":host{--background-checked:var(--ion-color-primary, #3880ff);--border-color-checked:var(--ion-color-primary, #3880ff);--checkmark-color:var(--ion-color-primary-contrast, #fff);--checkmark-width:1;--transition:none;display:inline-block;position:relative;user-select:none;z-index:2}:host(.ion-color){--background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}button{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none}[dir=rtl] button,:host-context([dir=rtl]) button{left:unset;right:unset;right:0}button::-moz-focus-inner{border:0}.checkbox-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:calc(var(--size) * .125);--border-width:2px;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.51);--checkmark-width:3;--background:var(--ion-item-background, var(--ion-background-color, #fff));--transition:background 180ms cubic-bezier(0.4, 0, 0.2, 1);--size:18px;width:var(--size);height:var(--size)}.checkbox-icon path{stroke-dasharray:30;stroke-dashoffset:30}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{stroke-dashoffset:0;transition:stroke-dashoffset 90ms linear 90ms}:host(.checkbox-disabled){opacity:0.3}:host(.in-item){margin-left:0;margin-right:0;margin-top:18px;margin-bottom:18px;display:block;position:static}:host(.in-item[slot=start]){margin-left:4px;margin-right:36px;margin-top:18px;margin-bottom:18px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:36px;margin-inline-end:36px}}";
53
-
54
- const Checkbox = class {
55
- constructor(hostRef) {
56
- index.registerInstance(this, hostRef);
57
- this.ionChange = index.createEvent(this, "ionChange", 7);
58
- this.ionFocus = index.createEvent(this, "ionFocus", 7);
59
- this.ionBlur = index.createEvent(this, "ionBlur", 7);
60
- this.ionStyle = index.createEvent(this, "ionStyle", 7);
61
- this.inputId = `ion-cb-${checkboxIds++}`;
62
- /**
63
- * The name of the control, which is submitted with the form data.
64
- */
65
- this.name = this.inputId;
66
- /**
67
- * If `true`, the checkbox is selected.
68
- */
69
- this.checked = false;
70
- /**
71
- * If `true`, the checkbox will visually appear as indeterminate.
72
- */
73
- this.indeterminate = false;
74
- /**
75
- * If `true`, the user cannot interact with the checkbox.
76
- */
77
- this.disabled = false;
78
- /**
79
- * The value of the toggle does not mean if it's checked or not, use the `checked`
80
- * property for that.
81
- *
82
- * The value of a toggle is analogous to the value of a `<input type="checkbox">`,
83
- * it's only used when the toggle participates in a native `<form>`.
84
- */
85
- this.value = 'on';
86
- this.onClick = () => {
87
- this.setFocus();
88
- this.checked = !this.checked;
89
- this.indeterminate = false;
90
- };
91
- this.onFocus = () => {
92
- this.ionFocus.emit();
93
- };
94
- this.onBlur = () => {
95
- this.ionBlur.emit();
96
- };
97
- }
98
- componentWillLoad() {
99
- this.emitStyle();
100
- }
101
- checkedChanged(isChecked) {
102
- this.ionChange.emit({
103
- checked: isChecked,
104
- value: this.value
105
- });
106
- this.emitStyle();
107
- }
108
- disabledChanged() {
109
- this.emitStyle();
110
- }
111
- emitStyle() {
112
- this.ionStyle.emit({
113
- 'checkbox-checked': this.checked,
114
- 'interactive-disabled': this.disabled,
115
- });
116
- }
117
- setFocus() {
118
- if (this.buttonEl) {
119
- this.buttonEl.focus();
120
- }
121
- }
122
- render() {
123
- const { inputId, indeterminate, disabled, checked, value, color, el } = this;
124
- const labelId = inputId + '-lbl';
125
- const mode = ionicGlobal.getIonMode(this);
126
- const label = helpers.findItemLabel(el);
127
- if (label) {
128
- label.id = labelId;
129
- }
130
- helpers.renderHiddenInput(true, el, this.name, (checked ? value : ''), disabled);
131
- let path = indeterminate
132
- ? index.h("path", { d: "M6 12L18 12", part: "mark" })
133
- : index.h("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" });
134
- if (mode === 'md') {
135
- path = indeterminate
136
- ? index.h("path", { d: "M2 12H22", part: "mark" })
137
- : index.h("path", { d: "M1.73,12.91 8.1,19.28 22.79,4.59", part: "mark" });
138
- }
139
- return (index.h(index.Host, { onClick: this.onClick, role: "checkbox", "aria-disabled": disabled ? 'true' : null, "aria-checked": `${checked}`, "aria-labelledby": labelId, class: Object.assign(Object.assign({}, theme.createColorClasses(color)), { [mode]: true, 'in-item': theme.hostContext('ion-item', el), 'checkbox-checked': checked, 'checkbox-disabled': disabled, 'checkbox-indeterminate': indeterminate, 'interactive': true }) }, index.h("svg", { class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path), index.h("button", { type: "button", onFocus: this.onFocus, onBlur: this.onBlur, disabled: this.disabled, ref: btnEl => this.buttonEl = btnEl })));
140
- }
141
- get el() { return index.getElement(this); }
142
- static get watchers() { return {
143
- "checked": ["checkedChanged"],
144
- "disabled": ["disabledChanged"]
145
- }; }
146
- };
147
- let checkboxIds = 0;
148
- Checkbox.style = {
149
- ios: checkboxIosCss,
150
- md: checkboxMdCss
151
- };
152
-
153
- const TRANSITION = 'all 0.2s ease-in-out';
154
- const cloneElement = (tagName) => {
155
- const getCachedEl = document.querySelector(`${tagName}.ion-cloned-element`);
156
- if (getCachedEl !== null) {
157
- return getCachedEl;
158
- }
159
- const clonedEl = document.createElement(tagName);
160
- clonedEl.classList.add('ion-cloned-element');
161
- clonedEl.style.setProperty('display', 'none');
162
- document.body.appendChild(clonedEl);
163
- return clonedEl;
164
- };
165
- const createHeaderIndex = (headerEl) => {
166
- if (!headerEl) {
167
- return;
168
- }
169
- const toolbars = headerEl.querySelectorAll('ion-toolbar');
170
- return {
171
- el: headerEl,
172
- toolbars: Array.from(toolbars).map((toolbar) => {
173
- const ionTitleEl = toolbar.querySelector('ion-title');
174
- return {
175
- el: toolbar,
176
- background: toolbar.shadowRoot.querySelector('.toolbar-background'),
177
- ionTitleEl,
178
- innerTitleEl: (ionTitleEl) ? ionTitleEl.shadowRoot.querySelector('.toolbar-title') : null,
179
- ionButtonsEl: Array.from(toolbar.querySelectorAll('ion-buttons')) || []
180
- };
181
- }) || []
182
- };
183
- };
184
- const handleContentScroll = (scrollEl, scrollHeaderIndex, contentEl) => {
185
- index.readTask(() => {
186
- const scrollTop = scrollEl.scrollTop;
187
- const scale = helpers.clamp(1, 1 + (-scrollTop / 500), 1.1);
188
- // Native refresher should not cause titles to scale
189
- const nativeRefresher = contentEl.querySelector('ion-refresher.refresher-native');
190
- if (nativeRefresher === null) {
191
- index.writeTask(() => {
192
- scaleLargeTitles(scrollHeaderIndex.toolbars, scale);
193
- });
194
- }
195
- });
196
- };
197
- const setToolbarBackgroundOpacity = (toolbar, opacity) => {
198
- if (opacity === undefined) {
199
- toolbar.background.style.removeProperty('--opacity');
200
- }
201
- else {
202
- toolbar.background.style.setProperty('--opacity', opacity.toString());
203
- }
204
- };
205
- const handleToolbarBorderIntersection = (ev, mainHeaderIndex) => {
206
- if (!ev[0].isIntersecting) {
207
- return;
208
- }
209
- /**
210
- * There is a bug in Safari where overflow scrolling on a non-body element
211
- * does not always reset the scrollTop position to 0 when letting go. It will
212
- * set to 1 once the rubber band effect has ended. This causes the background to
213
- * appear slightly on certain app setups.
214
- */
215
- const scale = (ev[0].intersectionRatio > 0.9) ? 0 : ((1 - ev[0].intersectionRatio) * 100) / 75;
216
- mainHeaderIndex.toolbars.forEach(toolbar => {
217
- setToolbarBackgroundOpacity(toolbar, (scale === 1) ? undefined : scale);
218
- });
219
- };
220
- /**
221
- * If toolbars are intersecting, hide the scrollable toolbar content
222
- * and show the primary toolbar content. If the toolbars are not intersecting,
223
- * hide the primary toolbar content and show the scrollable toolbar content
224
- */
225
- const handleToolbarIntersection = (ev, mainHeaderIndex, scrollHeaderIndex) => {
226
- index.writeTask(() => {
227
- handleToolbarBorderIntersection(ev, mainHeaderIndex);
228
- const event = ev[0];
229
- const intersection = event.intersectionRect;
230
- const intersectionArea = intersection.width * intersection.height;
231
- const rootArea = event.rootBounds.width * event.rootBounds.height;
232
- const isPageHidden = intersectionArea === 0 && rootArea === 0;
233
- const leftDiff = Math.abs(intersection.left - event.boundingClientRect.left);
234
- const rightDiff = Math.abs(intersection.right - event.boundingClientRect.right);
235
- const isPageTransitioning = intersectionArea > 0 && (leftDiff >= 5 || rightDiff >= 5);
236
- if (isPageHidden || isPageTransitioning) {
237
- return;
238
- }
239
- if (event.isIntersecting) {
240
- setHeaderActive(mainHeaderIndex, false);
241
- setHeaderActive(scrollHeaderIndex);
242
- }
243
- else {
244
- /**
245
- * There is a bug with IntersectionObserver on Safari
246
- * where `event.isIntersecting === false` when cancelling
247
- * a swipe to go back gesture. Checking the intersection
248
- * x, y, width, and height provides a workaround. This bug
249
- * does not happen when using Safari + Web Animations,
250
- * only Safari + CSS Animations.
251
- */
252
- const hasValidIntersection = (intersection.x === 0 && intersection.y === 0) || (intersection.width !== 0 && intersection.height !== 0);
253
- if (hasValidIntersection) {
254
- setHeaderActive(mainHeaderIndex);
255
- setHeaderActive(scrollHeaderIndex, false);
256
- setToolbarBackgroundOpacity(mainHeaderIndex.toolbars[0]);
257
- }
258
- }
259
- });
260
- };
261
- const setHeaderActive = (headerIndex, active = true) => {
262
- if (active) {
263
- headerIndex.el.classList.remove('header-collapse-condense-inactive');
264
- }
265
- else {
266
- headerIndex.el.classList.add('header-collapse-condense-inactive');
267
- }
268
- };
269
- const scaleLargeTitles = (toolbars = [], scale = 1, transition = false) => {
270
- toolbars.forEach(toolbar => {
271
- const ionTitle = toolbar.ionTitleEl;
272
- const titleDiv = toolbar.innerTitleEl;
273
- if (!ionTitle || ionTitle.size !== 'large') {
274
- return;
275
- }
276
- titleDiv.style.transformOrigin = 'left center';
277
- titleDiv.style.transition = (transition) ? TRANSITION : '';
278
- titleDiv.style.transform = `scale3d(${scale}, ${scale}, 1)`;
279
- });
280
- };
281
-
282
- const headerIosCss = "ion-header{display:block;position:relative;order:-1;width:100%;z-index:10}ion-header ion-toolbar:first-of-type{padding-top:var(--ion-safe-area-top, 0)}.header-ios ion-toolbar:last-of-type{--border-width:0 0 0.55px}@supports (backdrop-filter: blur(0)){.header-background{left:0;right:0;top:0;bottom:0;position:absolute;backdrop-filter:saturate(180%) blur(20px)}.header-translucent-ios ion-toolbar{--opacity:.8}.header-collapse-condense-inactive .header-background{backdrop-filter:blur(20px)}}.header-ios.ion-no-border ion-toolbar:last-of-type{--border-width:0}.header-collapse-condense{z-index:9}.header-collapse-condense ion-toolbar{position:sticky;top:0}.header-collapse-condense ion-toolbar:first-of-type{padding-top:7px;z-index:1}.header-collapse-condense ion-toolbar{--background:var(--ion-background-color, #fff);z-index:0}.header-collapse-condense ion-toolbar ion-searchbar{height:48px;padding-top:0px;padding-bottom:13px}.header-collapse-main ion-toolbar.in-toolbar ion-title,.header-collapse-main ion-toolbar.in-toolbar ion-buttons{transition:all 0.2s ease-in-out}.header-collapse-condense-inactive:not(.header-collapse-condense) ion-toolbar.in-toolbar ion-title,.header-collapse-condense-inactive:not(.header-collapse-condense) ion-toolbar.in-toolbar ion-buttons.buttons-collapse{opacity:0;pointer-events:none}.header-collapse-condense-inactive.header-collapse-condense ion-toolbar.in-toolbar ion-title,.header-collapse-condense-inactive.header-collapse-condense ion-toolbar.in-toolbar ion-buttons.buttons-collapse{visibility:hidden}";
283
-
284
- const headerMdCss = "ion-header{display:block;position:relative;order:-1;width:100%;z-index:10}ion-header ion-toolbar:first-of-type{padding-top:var(--ion-safe-area-top, 0)}.header-md::after{left:0;bottom:-5px;background-position:left 0 top -2px;position:absolute;width:100%;height:5px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAHBAMAAADzDtBxAAAAD1BMVEUAAAAAAAAAAAAAAAAAAABPDueNAAAABXRSTlMUCS0gBIh/TXEAAAAaSURBVAjXYxCEAgY4UIICBmMogMsgFLtAAQCNSwXZKOdPxgAAAABJRU5ErkJggg==);background-repeat:repeat-x;content:\"\"}[dir=rtl] .header-md::after,:host-context([dir=rtl]) .header-md::after{left:unset;right:unset;right:0}[dir=rtl] .header-md::after,:host-context([dir=rtl]) .header-md::after{background-position:right 0 top -2px}.header-collapse-condense{display:none}.header-md.ion-no-border::after{display:none}";
285
-
286
- const Header = class {
287
- constructor(hostRef) {
288
- index.registerInstance(this, hostRef);
289
- this.collapsibleHeaderInitialized = false;
290
- /**
291
- * If `true`, the header will be translucent.
292
- * Only applies when the mode is `"ios"` and the device supports
293
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
294
- *
295
- * Note: In order to scroll content behind the header, the `fullscreen`
296
- * attribute needs to be set on the content.
297
- */
298
- this.translucent = false;
299
- }
300
- async componentDidLoad() {
301
- await this.checkCollapsibleHeader();
302
- }
303
- async componentDidUpdate() {
304
- await this.checkCollapsibleHeader();
305
- }
306
- componentDidUnload() {
307
- this.destroyCollapsibleHeader();
308
- }
309
- async checkCollapsibleHeader() {
310
- // Determine if the header can collapse
311
- const hasCollapse = this.collapse === 'condense';
312
- const canCollapse = (hasCollapse && ionicGlobal.getIonMode(this) === 'ios') ? hasCollapse : false;
313
- if (!canCollapse && this.collapsibleHeaderInitialized) {
314
- this.destroyCollapsibleHeader();
315
- }
316
- else if (canCollapse && !this.collapsibleHeaderInitialized) {
317
- const pageEl = this.el.closest('ion-app,ion-page,.ion-page,page-inner');
318
- const contentEl = (pageEl) ? pageEl.querySelector('ion-content') : null;
319
- await this.setupCollapsibleHeader(contentEl, pageEl);
320
- }
321
- }
322
- destroyCollapsibleHeader() {
323
- if (this.intersectionObserver) {
324
- this.intersectionObserver.disconnect();
325
- this.intersectionObserver = undefined;
326
- }
327
- if (this.scrollEl && this.contentScrollCallback) {
328
- this.scrollEl.removeEventListener('scroll', this.contentScrollCallback);
329
- this.contentScrollCallback = undefined;
330
- }
331
- if (this.collapsibleMainHeader) {
332
- this.collapsibleMainHeader.classList.remove('header-collapse-main');
333
- this.collapsibleMainHeader = undefined;
334
- }
335
- }
336
- async setupCollapsibleHeader(contentEl, pageEl) {
337
- if (!contentEl || !pageEl) {
338
- console.error('ion-header requires a content to collapse, make sure there is an ion-content.');
339
- return;
340
- }
341
- this.scrollEl = await contentEl.getScrollElement();
342
- const headers = pageEl.querySelectorAll('ion-header');
343
- this.collapsibleMainHeader = Array.from(headers).find((header) => header.collapse !== 'condense');
344
- if (!this.collapsibleMainHeader) {
345
- return;
346
- }
347
- const mainHeaderIndex = createHeaderIndex(this.collapsibleMainHeader);
348
- const scrollHeaderIndex = createHeaderIndex(this.el);
349
- if (!mainHeaderIndex || !scrollHeaderIndex) {
350
- return;
351
- }
352
- setHeaderActive(mainHeaderIndex, false);
353
- mainHeaderIndex.toolbars.forEach(toolbar => {
354
- setToolbarBackgroundOpacity(toolbar, 0);
355
- });
356
- /**
357
- * Handle interaction between toolbar collapse and
358
- * showing/hiding content in the primary ion-header
359
- * as well as progressively showing/hiding the main header
360
- * border as the top-most toolbar collapses or expands.
361
- */
362
- const toolbarIntersection = (ev) => { handleToolbarIntersection(ev, mainHeaderIndex, scrollHeaderIndex); };
363
- this.intersectionObserver = new IntersectionObserver(toolbarIntersection, { root: contentEl, threshold: [0.25, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1] });
364
- this.intersectionObserver.observe(scrollHeaderIndex.toolbars[scrollHeaderIndex.toolbars.length - 1].el);
365
- /**
366
- * Handle scaling of large iOS titles and
367
- * showing/hiding border on last toolbar
368
- * in primary header
369
- */
370
- this.contentScrollCallback = () => { handleContentScroll(this.scrollEl, scrollHeaderIndex, contentEl); };
371
- this.scrollEl.addEventListener('scroll', this.contentScrollCallback);
372
- index.writeTask(() => {
373
- const title = cloneElement('ion-title');
374
- title.size = 'large';
375
- cloneElement('ion-back-button');
376
- if (this.collapsibleMainHeader !== undefined) {
377
- this.collapsibleMainHeader.classList.add('header-collapse-main');
378
- }
379
- });
380
- this.collapsibleHeaderInitialized = true;
381
- }
382
- render() {
383
- const { translucent } = this;
384
- const mode = ionicGlobal.getIonMode(this);
385
- const collapse = this.collapse || 'none';
386
- return (index.h(index.Host, { role: "banner", class: {
387
- [mode]: true,
388
- // Used internally for styling
389
- [`header-${mode}`]: true,
390
- [`header-translucent`]: this.translucent,
391
- [`header-collapse-${collapse}`]: true,
392
- [`header-translucent-${mode}`]: this.translucent,
393
- } }, mode === 'ios' && translucent &&
394
- index.h("div", { class: "header-background" }), index.h("slot", null)));
395
- }
396
- get el() { return index.getElement(this); }
397
- };
398
- Header.style = {
399
- ios: headerIosCss,
400
- md: headerMdCss
401
- };
402
-
403
- const toolbarIosCss = ":host{--border-width:0;--border-style:solid;--opacity:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;padding-left:var(--ion-safe-area-left);padding-right:var(--ion-safe-area-right);display:block;position:relative;width:100%;color:var(--color);font-family:var(--ion-font-family, inherit);contain:content;z-index:10;box-sizing:border-box}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--ion-safe-area-left);padding-inline-start:var(--ion-safe-area-left);-webkit-padding-end:var(--ion-safe-area-right);padding-inline-end:var(--ion-safe-area-right)}}:host(.ion-color){color:var(--ion-color-contrast)}:host(.ion-color) .toolbar-background{background:var(--ion-color-base)}.toolbar-container{padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:flex;position:relative;flex-direction:row;align-items:center;justify-content:space-between;width:100%;min-height:var(--min-height);contain:content;overflow:hidden;z-index:10;box-sizing:border-box}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.toolbar-container{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.toolbar-background{left:0;right:0;top:0;bottom:0;position:absolute;transform:translateZ(0);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;opacity:var(--opacity);z-index:-1;pointer-events:none}::slotted(ion-progress-bar){left:0;right:0;bottom:0;position:absolute}:host{--background:var(--ion-toolbar-background, var(--ion-color-step-50, #fff));--color:var(--ion-toolbar-color, var(--ion-text-color, #000));--border-color:var(--ion-toolbar-border-color, var(--ion-border-color, var(--ion-color-step-150, rgba(0, 0, 0, 0.2))));--padding-top:3px;--padding-bottom:3px;--padding-start:4px;--padding-end:4px;--min-height:44px}.toolbar-content{flex:1;order:4;min-width:0}:host(.toolbar-segment) .toolbar-content{display:inline-flex}:host(.toolbar-searchbar) .toolbar-container{padding-top:0;padding-bottom:0}:host(.toolbar-searchbar) ::slotted(*){align-self:start}:host(.toolbar-searchbar) ::slotted(ion-chip){margin-top:3px}:host(.toolbar-searchbar) ::slotted(ion-back-button){height:38px}::slotted(ion-buttons){min-height:38px}::slotted([slot=start]){order:2}::slotted([slot=secondary]){order:3}::slotted([slot=primary]){order:5;text-align:end}::slotted([slot=end]){order:6;text-align:end}:host(.toolbar-title-large) .toolbar-container{flex-wrap:wrap;align-items:flex-start}:host(.toolbar-title-large) .toolbar-content ion-title{flex:1;order:8;min-width:100%}";
404
-
405
- const toolbarMdCss = ":host{--border-width:0;--border-style:solid;--opacity:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;padding-left:var(--ion-safe-area-left);padding-right:var(--ion-safe-area-right);display:block;position:relative;width:100%;color:var(--color);font-family:var(--ion-font-family, inherit);contain:content;z-index:10;box-sizing:border-box}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--ion-safe-area-left);padding-inline-start:var(--ion-safe-area-left);-webkit-padding-end:var(--ion-safe-area-right);padding-inline-end:var(--ion-safe-area-right)}}:host(.ion-color){color:var(--ion-color-contrast)}:host(.ion-color) .toolbar-background{background:var(--ion-color-base)}.toolbar-container{padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:flex;position:relative;flex-direction:row;align-items:center;justify-content:space-between;width:100%;min-height:var(--min-height);contain:content;overflow:hidden;z-index:10;box-sizing:border-box}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.toolbar-container{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.toolbar-background{left:0;right:0;top:0;bottom:0;position:absolute;transform:translateZ(0);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;opacity:var(--opacity);z-index:-1;pointer-events:none}::slotted(ion-progress-bar){left:0;right:0;bottom:0;position:absolute}:host{--background:var(--ion-toolbar-background, var(--ion-background-color, #fff));--color:var(--ion-toolbar-color, var(--ion-text-color, #424242));--border-color:var(--ion-toolbar-border-color, var(--ion-border-color, var(--ion-color-step-150, #c1c4cd)));--padding-top:0;--padding-bottom:0;--padding-start:0;--padding-end:0;--min-height:56px}.toolbar-content{flex:1;order:3;min-width:0;max-width:100%}::slotted(ion-segment){min-height:var(--min-height)}::slotted(.buttons-first-slot){margin-left:4px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(.buttons-first-slot){margin-left:unset;-webkit-margin-start:4px;margin-inline-start:4px}}::slotted(.buttons-last-slot){margin-right:4px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(.buttons-last-slot){margin-right:unset;-webkit-margin-end:4px;margin-inline-end:4px}}::slotted([slot=start]){order:2}::slotted([slot=secondary]){order:4}::slotted([slot=primary]){order:5;text-align:end}::slotted([slot=end]){order:6;text-align:end}";
406
-
407
- const Toolbar = class {
408
- constructor(hostRef) {
409
- index.registerInstance(this, hostRef);
410
- this.childrenStyles = new Map();
411
- }
412
- componentWillLoad() {
413
- const buttons = Array.from(this.el.querySelectorAll('ion-buttons'));
414
- const firstButtons = buttons.find(button => {
415
- return button.slot === 'start';
416
- });
417
- if (firstButtons) {
418
- firstButtons.classList.add('buttons-first-slot');
419
- }
420
- const buttonsReversed = buttons.reverse();
421
- const lastButtons = buttonsReversed.find(button => button.slot === 'end') ||
422
- buttonsReversed.find(button => button.slot === 'primary') ||
423
- buttonsReversed.find(button => button.slot === 'secondary');
424
- if (lastButtons) {
425
- lastButtons.classList.add('buttons-last-slot');
426
- }
427
- }
428
- childrenStyle(ev) {
429
- ev.stopPropagation();
430
- const tagName = ev.target.tagName;
431
- const updatedStyles = ev.detail;
432
- const newStyles = {};
433
- const childStyles = this.childrenStyles.get(tagName) || {};
434
- let hasStyleChange = false;
435
- Object.keys(updatedStyles).forEach(key => {
436
- const childKey = `toolbar-${key}`;
437
- const newValue = updatedStyles[key];
438
- if (newValue !== childStyles[childKey]) {
439
- hasStyleChange = true;
440
- }
441
- if (newValue) {
442
- newStyles[childKey] = true;
443
- }
444
- });
445
- if (hasStyleChange) {
446
- this.childrenStyles.set(tagName, newStyles);
447
- index.forceUpdate(this);
448
- }
449
- }
450
- render() {
451
- const mode = ionicGlobal.getIonMode(this);
452
- const childStyles = {};
453
- this.childrenStyles.forEach(value => {
454
- Object.assign(childStyles, value);
455
- });
456
- return (index.h(index.Host, { class: Object.assign(Object.assign({ 'in-toolbar': theme.hostContext('ion-toolbar', this.el), [mode]: true }, childStyles), theme.createColorClasses(this.color)) }, index.h("div", { class: "toolbar-background" }), index.h("div", { class: "toolbar-container" }, index.h("slot", { name: "start" }), index.h("slot", { name: "secondary" }), index.h("div", { class: "toolbar-content" }, index.h("slot", null)), index.h("slot", { name: "primary" }), index.h("slot", { name: "end" }))));
457
- }
458
- get el() { return index.getElement(this); }
459
- };
460
- Toolbar.style = {
461
- ios: toolbarIosCss,
462
- md: toolbarMdCss
463
- };
464
-
465
- const EditableBooleanComponent = class {
466
- constructor(hostRef) {
467
- index.registerInstance(this, hostRef);
468
- this.ldfDocShouldChange = index.createEvent(this, "ldfDocShouldChange", 7);
469
- }
470
- // Lifecycle methods
471
- componentWillLoad() {
472
- if (this.value == undefined) {
473
- this.ldfDocShouldChange.emit(new change.Change({
474
- path: this.path,
475
- op: [{
476
- type: 'set',
477
- index: this.property,
478
- oldValue: undefined,
479
- value: false
480
- }]
481
- }));
482
- }
483
- }
484
- // Listeners
485
- onChange(ev) {
486
- const oldValue = this.value, value = ev.detail.checked;
487
- if (value !== oldValue) {
488
- this.ldfDocShouldChange.emit(new change.Change({
489
- path: this.path,
490
- op: [
491
- { type: 'set', index: this.property, oldValue: oldValue === undefined ? false : oldValue, value }
492
- ]
493
- }));
494
- }
495
- }
496
- render() {
497
- return (index.h("ion-checkbox", { checked: this.value }));
498
- }
499
- get element() { return index.getElement(this); }
500
- };
501
-
502
- const cancel = "Cancel";
503
- const confirm_header = "Confirm Deletion";
504
- const confirm_message = "Are you sure you want to delete this item?";
505
- const EN = {
506
- cancel: cancel,
507
- confirm_header: confirm_header,
508
- confirm_message: confirm_message,
509
- "delete": "Delete"
510
- };
511
-
512
- const LOCALE = {
513
- 'en': EN
514
- };
515
- const EditableDeleteComponent = class {
516
- constructor(hostRef) {
517
- index.registerInstance(this, hostRef);
518
- this.ldfDocShouldChange = index.createEvent(this, "ldfDocShouldChange", 7);
519
- this.type = 'array';
520
- }
521
- // Listeners
522
- async onClick() {
523
- // show a confirmation alert
524
- const alert = await overlays.alertController.create({
525
- header: this.localeStrings.confirm_header,
526
- message: this.localeStrings.confirm_message,
527
- buttons: [
528
- {
529
- text: this.localeStrings.cancel,
530
- role: 'cancel',
531
- cssClass: 'secondary'
532
- }, {
533
- text: this.localeStrings.delete,
534
- role: 'submit',
535
- cssClass: 'danger',
536
- handler: () => {
537
- this.delete();
538
- }
539
- }
540
- ]
541
- });
542
- // show the alert
543
- return alert.present();
544
- }
545
- delete() {
546
- if (this.type === 'array') {
547
- this.ldfDocShouldChange.emit(new change.Change({
548
- path: this.base,
549
- op: [{ type: 'deleteAt', index: this.index, oldValue: this.obj }]
550
- }));
551
- }
552
- else {
553
- this.ldfDocShouldChange.emit(new change.Change({
554
- path: this.base,
555
- op: [{ type: 'delete', index: this.index, oldValue: this.obj }]
556
- }));
557
- }
558
- }
559
- // Lifecycle events
560
- async componentWillLoad() {
561
- this.loadLocaleStrings();
562
- }
563
- // Methods
564
- async loadLocaleStrings() {
565
- try {
566
- this.localeStrings = LOCALE[locale.getComponentClosestLanguage(this.element)];
567
- }
568
- catch (e) {
569
- console.warn(e);
570
- }
571
- }
572
- render() {
573
- const localeStrings = this.localeStrings || {};
574
- return (index.h("ion-buttons", null, index.h("ion-button", { "aria-role": 'button', "aria-label": localeStrings.delete, size: 'small' }, index.h("ion-icon", { name: 'trash', slot: 'icon-only' }))));
575
- }
576
- get element() { return index.getElement(this); }
577
- };
578
-
579
- exports.ion_buttons = Buttons;
580
- exports.ion_checkbox = Checkbox;
581
- exports.ion_header = Header;
582
- exports.ion_toolbar = Toolbar;
583
- exports.ldf_editable_boolean = EditableBooleanComponent;
584
- exports.ldf_editable_delete = EditableDeleteComponent;