@sparkle-learning/core 0.0.36 → 0.0.37

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 (245) hide show
  1. package/dist/cjs/PrivateRoute-4abc9d29.js +35 -0
  2. package/dist/cjs/{PrivateRoute-074c584e.js → auth.service-4b584cd7.js} +0 -30
  3. package/dist/cjs/dom-utils-b8befdd5.js +63 -0
  4. package/dist/cjs/header-mobile-collapse.cjs.entry.js +90 -0
  5. package/dist/cjs/index-70e63f5b.js +3071 -0
  6. package/dist/cjs/index.cjs.js +6 -5
  7. package/dist/cjs/injectHistory-7206bbb9.js +9 -0
  8. package/dist/cjs/ion-avatar.cjs.entry.js +25 -0
  9. package/dist/cjs/ion-button.cjs.entry.js +129 -0
  10. package/dist/cjs/ion-card_2.cjs.entry.js +91 -0
  11. package/dist/cjs/ion-checkbox_4.cjs.entry.js +360 -0
  12. package/dist/cjs/ion-col_3.cjs.entry.js +159 -0
  13. package/dist/cjs/ion-icon_13.cjs.entry.js +1505 -0
  14. package/dist/cjs/ion-input_2.cjs.entry.js +313 -0
  15. package/dist/cjs/ion-label_2.cjs.entry.js +126 -0
  16. package/dist/cjs/ion-spinner.cjs.entry.js +64 -0
  17. package/dist/cjs/loader.cjs.js +1 -1
  18. package/dist/cjs/match-path-84c9f7ca.js +511 -0
  19. package/dist/cjs/sparkle-card_3.cjs.entry.js +91 -0
  20. package/dist/cjs/sparkle-core.cjs.js +1 -1
  21. package/dist/cjs/sparkle-course-root.cjs.entry.js +146 -0
  22. package/dist/cjs/sparkle-dropdown.cjs.entry.js +61 -0
  23. package/dist/cjs/{header-mobile-collapse_61.cjs.entry.js → sparkle-export-lessons_6.cjs.entry.js} +8864 -17750
  24. package/dist/cjs/sparkle-facilitator-header_19.cjs.entry.js +2130 -0
  25. package/dist/cjs/sparkle-feedback.cjs.entry.js +2 -1
  26. package/dist/cjs/sparkle-goal-progress.cjs.entry.js +19 -0
  27. package/dist/cjs/sparkle-gww-item.cjs.entry.js +74 -0
  28. package/dist/cjs/sparkle-menu-toggle_3.cjs.entry.js +236 -0
  29. package/dist/cjs/sparkle-validation-error.cjs.entry.js +21 -0
  30. package/dist/cjs/stencil-router-redirect.cjs.entry.js +32 -0
  31. package/dist/cjs/student.service-d48f1c99.js +61 -0
  32. package/dist/cjs/user.store-8a049c4e.js +21 -0
  33. package/dist/collection/components/sparkle-quiz/sparkle-quiz/sparkle-quiz.js +2 -1
  34. package/dist/esm/PrivateRoute-7b526801.js +33 -0
  35. package/dist/esm/{animation-12377cb3.js → animation-e0716b39.js} +1 -1
  36. package/dist/esm/{PrivateRoute-c5441f35.js → auth.service-9fb86455.js} +4 -33
  37. package/dist/esm/{auth.store-dba2c2da.js → auth.store-633e8414.js} +1 -1
  38. package/dist/esm/dom-utils-109a7d75.js +55 -0
  39. package/dist/esm/{facilitator.service-b0292f7f.js → facilitator.service-8fd435bf.js} +2 -2
  40. package/dist/esm/{feed.service-8fbe4ce3.js → feed.service-ace049e5.js} +3 -3
  41. package/dist/esm/{framework-delegate-3e634a5c.js → framework-delegate-e4f8013b.js} +1 -1
  42. package/dist/esm/header-mobile-collapse.entry.js +86 -0
  43. package/dist/esm/{helpers-bf0e23d6.js → helpers-03073fe4.js} +1 -1
  44. package/dist/esm/{httpService-7b75b095.js → httpService-61864992.js} +2 -2
  45. package/dist/esm/{icons-9b62a1ec.js → icons-90b957ab.js} +1 -1
  46. package/dist/esm/{index-5e8971ae.js → index-37004831.js} +1 -1
  47. package/dist/esm/{index-45fec1e7.js → index-a2d2941d.js} +1 -1
  48. package/dist/esm/{index-2b84cad2.js → index-b4b4e503.js} +3 -3
  49. package/dist/esm/{index-cded2d87.js → index-dedabca0.js} +2 -2
  50. package/dist/esm/index-f9b9ba5d.js +3067 -0
  51. package/dist/esm/{index.es-e0c0f891.js → index.es-283fbd2e.js} +1 -1
  52. package/dist/esm/index.js +6 -5
  53. package/dist/esm/injectHistory-968f626d.js +7 -0
  54. package/dist/esm/{input-shims-671d8d9f.js → input-shims-cc3720a0.js} +2 -2
  55. package/dist/esm/ion-accordion.entry.js +1 -1
  56. package/dist/esm/ion-action-sheet_4.entry.js +5 -5
  57. package/dist/esm/ion-app.entry.js +3 -3
  58. package/dist/esm/ion-avatar.entry.js +21 -0
  59. package/dist/esm/ion-back-button.entry.js +1 -1
  60. package/dist/esm/ion-breadcrumb.entry.js +1 -1
  61. package/dist/esm/ion-button.entry.js +125 -0
  62. package/dist/esm/ion-card_2.entry.js +86 -0
  63. package/dist/esm/ion-checkbox_4.entry.js +353 -0
  64. package/dist/esm/ion-col_3.entry.js +153 -0
  65. package/dist/esm/ion-content_2.entry.js +2 -2
  66. package/dist/esm/ion-datetime-button.entry.js +1 -1
  67. package/dist/esm/ion-datetime.entry.js +1 -1
  68. package/dist/esm/ion-fab-button.entry.js +1 -1
  69. package/dist/esm/ion-footer.entry.js +2 -2
  70. package/dist/esm/ion-icon_13.entry.js +1489 -0
  71. package/dist/esm/ion-img.entry.js +1 -1
  72. package/dist/esm/ion-infinite-scroll.entry.js +2 -2
  73. package/dist/esm/ion-input_2.entry.js +308 -0
  74. package/dist/esm/ion-item-options.entry.js +1 -1
  75. package/dist/esm/ion-item-sliding.entry.js +2 -2
  76. package/dist/esm/ion-label_2.entry.js +121 -0
  77. package/dist/esm/ion-loading.entry.js +3 -3
  78. package/dist/esm/ion-menu-button.entry.js +4 -4
  79. package/dist/esm/ion-menu-toggle.entry.js +4 -4
  80. package/dist/esm/ion-menu.entry.js +4 -4
  81. package/dist/esm/ion-modal.entry.js +6 -6
  82. package/dist/esm/ion-nav.entry.js +4 -4
  83. package/dist/esm/ion-picker-column-internal_2.entry.js +1 -1
  84. package/dist/esm/ion-picker-column.entry.js +1 -1
  85. package/dist/esm/ion-picker.entry.js +3 -3
  86. package/dist/esm/ion-progress-bar.entry.js +1 -1
  87. package/dist/esm/ion-refresher.entry.js +3 -3
  88. package/dist/esm/ion-reorder-group.entry.js +2 -2
  89. package/dist/esm/ion-router-outlet.entry.js +4 -4
  90. package/dist/esm/ion-router.entry.js +1 -1
  91. package/dist/esm/ion-searchbar.entry.js +1 -1
  92. package/dist/esm/ion-segment-button.entry.js +1 -1
  93. package/dist/esm/ion-segment.entry.js +1 -1
  94. package/dist/esm/ion-select_2.entry.js +2 -2
  95. package/dist/esm/ion-slides.entry.js +1 -1
  96. package/dist/esm/ion-spinner.entry.js +60 -0
  97. package/dist/esm/ion-tab.entry.js +2 -2
  98. package/dist/esm/ion-textarea.entry.js +1 -1
  99. package/dist/esm/ion-toast.entry.js +3 -3
  100. package/dist/esm/ion-toggle.entry.js +1 -1
  101. package/dist/esm/ion-virtual-scroll.entry.js +1 -1
  102. package/dist/esm/{ios.transition-131d64fe.js → ios.transition-3a6179bb.js} +3 -3
  103. package/dist/esm/loader.js +1 -1
  104. package/dist/esm/match-path-36fdf5c7.js +499 -0
  105. package/dist/esm/{md.transition-f6126011.js → md.transition-cff16bf3.js} +3 -3
  106. package/dist/esm/{menu-toggle-util-bace8ae6.js → menu-toggle-util-59241733.js} +1 -1
  107. package/dist/esm/{overlays-3b4dca92.js → overlays-bdd9344a.js} +2 -2
  108. package/dist/esm/{purify-85bfcc69.js → purify-7085b248.js} +1 -1
  109. package/dist/esm/sparkle-animation-player.entry.js +1 -1
  110. package/dist/esm/sparkle-card_3.entry.js +85 -0
  111. package/dist/esm/sparkle-code.entry.js +1 -1
  112. package/dist/esm/sparkle-core.js +1 -1
  113. package/dist/esm/sparkle-course-root.entry.js +142 -0
  114. package/dist/esm/sparkle-dropdown.entry.js +57 -0
  115. package/dist/esm/{header-mobile-collapse_61.entry.js → sparkle-export-lessons_6.entry.js} +8859 -17690
  116. package/dist/esm/sparkle-facilitator-header_19.entry.js +2108 -0
  117. package/dist/esm/sparkle-facilitator-notes-form.entry.js +5 -5
  118. package/dist/esm/sparkle-feed-post.entry.js +1 -1
  119. package/dist/esm/sparkle-feedback.entry.js +6 -5
  120. package/dist/esm/sparkle-goal-form.entry.js +6 -6
  121. package/dist/esm/sparkle-goal-progress.entry.js +15 -0
  122. package/dist/esm/sparkle-gww-item.entry.js +70 -0
  123. package/dist/esm/sparkle-menu-collapsible.entry.js +1 -1
  124. package/dist/esm/sparkle-menu-toggle_3.entry.js +230 -0
  125. package/dist/esm/sparkle-validation-error.entry.js +17 -0
  126. package/dist/esm/{status-tap-dde52787.js → status-tap-463d0f87.js} +2 -2
  127. package/dist/esm/stencil-router-redirect.entry.js +28 -0
  128. package/dist/esm/{student.service-0746418b.js → student.service-e6eb1f99.js} +3 -19
  129. package/dist/esm/{swipe-back-7847a0c1.js → swipe-back-f8765ac9.js} +1 -1
  130. package/dist/esm/user.store-b8645067.js +19 -0
  131. package/dist/esm/{util-6ef753e9.js → util-a831d09d.js} +1 -1
  132. package/dist/sparkle-core/index.esm.js +1 -1
  133. package/dist/sparkle-core/{p-2c1ca854.entry.js → p-014b5707.entry.js} +1 -1
  134. package/dist/sparkle-core/p-03585916.js +1 -0
  135. package/dist/sparkle-core/{p-cabfbf22.entry.js → p-0bb0cf41.entry.js} +1 -1
  136. package/dist/sparkle-core/{p-30b810d1.entry.js → p-0c0f8acd.entry.js} +1 -1
  137. package/dist/sparkle-core/{p-de4deb61.entry.js → p-0ea2518d.entry.js} +1 -1
  138. package/dist/sparkle-core/p-1019ebc3.js +1 -0
  139. package/dist/sparkle-core/p-1728ead7.js +1 -0
  140. package/dist/sparkle-core/{p-d68092b7.js → p-17eb4633.js} +1 -1
  141. package/dist/sparkle-core/{p-e686d8b5.entry.js → p-1f0b3ff9.entry.js} +1 -1
  142. package/dist/sparkle-core/{p-a102341e.entry.js → p-25e556cc.entry.js} +1 -1
  143. package/dist/sparkle-core/{p-0c3f3ea6.entry.js → p-285ab4ed.entry.js} +1 -1
  144. package/dist/sparkle-core/{p-c60b29bd.entry.js → p-2d4a5ddf.entry.js} +2 -2
  145. package/dist/sparkle-core/{p-641bfc92.entry.js → p-2e035338.entry.js} +1 -1
  146. package/dist/sparkle-core/{p-2ff67662.js → p-2e2b813c.js} +2 -2
  147. package/dist/sparkle-core/{p-6ffd2420.entry.js → p-2f10208d.entry.js} +1 -1
  148. package/dist/sparkle-core/{p-b5f3e1bf.entry.js → p-2fba9a3a.entry.js} +1 -1
  149. package/dist/sparkle-core/{p-b3f375fb.entry.js → p-317037de.entry.js} +1 -1
  150. package/dist/sparkle-core/p-32762a44.entry.js +1 -0
  151. package/dist/sparkle-core/{p-2f569553.js → p-340754ed.js} +1 -1
  152. package/dist/sparkle-core/p-3bc68dd0.js +1 -0
  153. package/dist/sparkle-core/p-3c133235.entry.js +1 -0
  154. package/dist/sparkle-core/{p-48f72e63.js → p-3f85e1ca.js} +2 -2
  155. package/dist/sparkle-core/{p-2033cd86.js → p-405f7c58.js} +2 -2
  156. package/dist/sparkle-core/{p-9ebf0537.entry.js → p-4320dac0.entry.js} +1 -1
  157. package/dist/sparkle-core/{p-e863bf1d.entry.js → p-44f813b7.entry.js} +1 -1
  158. package/dist/sparkle-core/p-46869031.entry.js +1 -0
  159. package/dist/sparkle-core/p-4a5f2b2b.js +1 -0
  160. package/dist/sparkle-core/{p-894ff7e6.entry.js → p-4ae75caa.entry.js} +1 -1
  161. package/dist/sparkle-core/{p-935e7cfc.js → p-4bd4dab2.js} +1 -1
  162. package/dist/sparkle-core/{p-00d10dc9.js → p-539bf742.js} +2 -2
  163. package/dist/sparkle-core/p-53bcbd1d.js +1 -0
  164. package/dist/sparkle-core/p-54ada5e3.entry.js +1 -0
  165. package/dist/sparkle-core/{p-9289cdbc.entry.js → p-5519d283.entry.js} +1 -1
  166. package/dist/sparkle-core/p-554da5b8.entry.js +1 -0
  167. package/dist/sparkle-core/{p-e8073714.js → p-56a2e8a2.js} +1 -1
  168. package/dist/sparkle-core/p-5da2d95a.entry.js +1 -0
  169. package/dist/sparkle-core/{p-b0603d19.js → p-5fc26938.js} +1 -1
  170. package/dist/sparkle-core/{p-ebd4354b.entry.js → p-63f69cdc.entry.js} +1 -1
  171. package/dist/sparkle-core/{p-11356b03.entry.js → p-64e814b9.entry.js} +1 -1
  172. package/dist/sparkle-core/{p-ce4b22f7.entry.js → p-66a85393.entry.js} +1 -1
  173. package/dist/sparkle-core/p-6b05a1d3.entry.js +1 -0
  174. package/dist/sparkle-core/p-6c894fa2.entry.js +1 -0
  175. package/dist/sparkle-core/p-6ea246fe.js +4 -0
  176. package/dist/sparkle-core/p-6ed0236e.entry.js +1 -0
  177. package/dist/sparkle-core/{p-54dd894f.entry.js → p-6f0545b3.entry.js} +1 -1
  178. package/dist/sparkle-core/{p-0f1c5899.entry.js → p-727e1c28.entry.js} +1 -1
  179. package/dist/sparkle-core/{p-b96f3c84.entry.js → p-82ad4e7c.entry.js} +2 -2
  180. package/dist/sparkle-core/p-91accfc1.js +1 -0
  181. package/dist/sparkle-core/{p-af3cc111.entry.js → p-93e74f1b.entry.js} +1 -1
  182. package/dist/sparkle-core/{p-86ed13f0.js → p-a019ad0c.js} +1 -1
  183. package/dist/sparkle-core/p-a5c5da9a.entry.js +1 -0
  184. package/dist/sparkle-core/{p-1d4c7c11.js → p-a85598ad.js} +1 -1
  185. package/dist/sparkle-core/p-a8a77bec.entry.js +1 -0
  186. package/dist/sparkle-core/{p-bd80ff43.js → p-ad102371.js} +1 -1
  187. package/dist/sparkle-core/{p-377b04c2.entry.js → p-b236d258.entry.js} +1 -1
  188. package/dist/sparkle-core/{p-9abbd715.entry.js → p-b4b01fa2.entry.js} +1 -1
  189. package/dist/sparkle-core/{p-6faa194c.entry.js → p-b4bc8b02.entry.js} +1 -1
  190. package/dist/sparkle-core/{p-0fa3fd63.entry.js → p-b5ec8fb0.entry.js} +1 -1
  191. package/dist/sparkle-core/{p-fb757951.entry.js → p-b83444c7.entry.js} +1 -1
  192. package/dist/sparkle-core/{p-05c032dd.js → p-b9933822.js} +1 -1
  193. package/dist/sparkle-core/{p-0afa3a4d.entry.js → p-b9b1d4da.entry.js} +1 -1
  194. package/dist/sparkle-core/{p-3de0e00c.js → p-be28346b.js} +1 -1
  195. package/dist/sparkle-core/{p-0ad5c123.entry.js → p-c278db5f.entry.js} +1 -1
  196. package/dist/sparkle-core/{p-fb0ca75e.entry.js → p-c2bbaf55.entry.js} +1 -1
  197. package/dist/sparkle-core/p-c4af184b.entry.js +1 -0
  198. package/dist/sparkle-core/p-c71cbbf7.entry.js +1 -0
  199. package/dist/sparkle-core/p-c8c73fa7.js +4 -0
  200. package/dist/sparkle-core/{p-1e125ca5.entry.js → p-c8fe45df.entry.js} +1 -1
  201. package/dist/sparkle-core/{p-600cf6a3.js → p-c9cd4ff1.js} +1 -1
  202. package/dist/sparkle-core/{p-5cad23f1.js → p-ca4c8a10.js} +1 -1
  203. package/dist/sparkle-core/{p-1e4f65ee.entry.js → p-cab3da3c.entry.js} +1 -1
  204. package/dist/sparkle-core/p-cd832fbf.entry.js +1 -0
  205. package/dist/sparkle-core/{p-564e64fc.entry.js → p-ce94efdb.entry.js} +1 -1
  206. package/dist/sparkle-core/p-d0ac5f17.js +1 -0
  207. package/dist/sparkle-core/p-d1fcbfc2.js +4 -0
  208. package/dist/sparkle-core/p-d432d3ac.entry.js +1 -0
  209. package/dist/sparkle-core/{p-fbccd30c.js → p-d81a0680.js} +1 -1
  210. package/dist/sparkle-core/p-d969f7d0.entry.js +348 -0
  211. package/dist/sparkle-core/{p-0664370b.entry.js → p-dabc80c4.entry.js} +1 -1
  212. package/dist/sparkle-core/{p-58e4bbe5.entry.js → p-db8387eb.entry.js} +1 -1
  213. package/dist/sparkle-core/p-dca90a55.entry.js +4 -0
  214. package/dist/sparkle-core/p-dd2e7f84.js +4 -0
  215. package/dist/sparkle-core/p-e0429a19.entry.js +1 -0
  216. package/dist/sparkle-core/{p-24cb9a33.entry.js → p-e65c72cc.entry.js} +1 -1
  217. package/dist/sparkle-core/p-e7066c64.entry.js +1 -0
  218. package/dist/sparkle-core/{p-9d894ed4.js → p-e7568d4b.js} +1 -1
  219. package/dist/sparkle-core/p-eb40a191.entry.js +1 -0
  220. package/dist/sparkle-core/p-ecdea569.entry.js +1 -0
  221. package/dist/sparkle-core/{p-74864276.entry.js → p-ed9f48c4.entry.js} +1 -1
  222. package/dist/sparkle-core/p-ef6c2352.entry.js +1 -0
  223. package/dist/sparkle-core/{p-be64105c.entry.js → p-f0cf4a8f.entry.js} +1 -1
  224. package/dist/sparkle-core/{p-c0533c23.entry.js → p-f4b0b6a4.entry.js} +1 -1
  225. package/dist/sparkle-core/{p-ef4edc48.entry.js → p-fc965b88.entry.js} +1 -1
  226. package/dist/sparkle-core/{p-590266d6.entry.js → p-fd430a82.entry.js} +1 -1
  227. package/dist/sparkle-core/{p-39712c56.entry.js → p-fde382f0.entry.js} +1 -1
  228. package/dist/sparkle-core/sparkle-core.esm.js +1 -1
  229. package/package.json +1 -1
  230. package/dist/cjs/sparkle-quiz-feedback_5.cjs.entry.js +0 -117
  231. package/dist/cjs/sparkle-quiz.cjs.entry.js +0 -119
  232. package/dist/cjs/student.service-2e58f237.js +0 -78
  233. package/dist/esm/sparkle-quiz-feedback_5.entry.js +0 -109
  234. package/dist/esm/sparkle-quiz.entry.js +0 -115
  235. package/dist/sparkle-core/p-077c732b.js +0 -4
  236. package/dist/sparkle-core/p-12dd96d7.js +0 -4
  237. package/dist/sparkle-core/p-23aca7ca.js +0 -4
  238. package/dist/sparkle-core/p-3a965828.entry.js +0 -1
  239. package/dist/sparkle-core/p-462bffba.js +0 -1
  240. package/dist/sparkle-core/p-5efc6566.js +0 -1
  241. package/dist/sparkle-core/p-73721c84.js +0 -4
  242. package/dist/sparkle-core/p-80d6b0e6.entry.js +0 -1
  243. package/dist/sparkle-core/p-8492a765.entry.js +0 -1
  244. package/dist/sparkle-core/p-c3cadfc6.entry.js +0 -1
  245. package/dist/sparkle-core/p-eaf76d1d.entry.js +0 -352
@@ -0,0 +1,313 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-51e8292e.js');
6
+ const ionicGlobal = require('./ionic-global-2cde9d3a.js');
7
+ const helpers = require('./helpers-c2496722.js');
8
+ const theme = require('./theme-b0b295c1.js');
9
+
10
+ const inputIosCss = ".sc-ion-input-ios-h{--placeholder-color:initial;--placeholder-font-style:initial;--placeholder-font-weight:initial;--placeholder-opacity:.5;--padding-top:0;--padding-end:0;--padding-bottom:0;--padding-start:0;--background:transparent;--color:initial;display:flex;position:relative;flex:1;align-items:center;width:100%;padding:0 !important;background:var(--background);color:var(--color);font-family:var(--ion-font-family, inherit);z-index:2}ion-item.sc-ion-input-ios-h:not(.item-label),ion-item:not(.item-label) .sc-ion-input-ios-h{--padding-start:0}.ion-color.sc-ion-input-ios-h{color:var(--ion-color-base)}.native-input.sc-ion-input-ios{border-radius:var(--border-radius);padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;display:inline-block;flex:1;width:100%;max-width:100%;max-height:100%;border:0;outline:none;background:transparent;box-sizing:border-box;appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.native-input.sc-ion-input-ios{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)}}.native-input.sc-ion-input-ios::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.native-input.sc-ion-input-ios:-webkit-autofill{background-color:transparent}.native-input.sc-ion-input-ios:invalid{box-shadow:none}.native-input.sc-ion-input-ios::-ms-clear{display:none}.native-input[disabled].sc-ion-input-ios{opacity:0.4}.cloned-input.sc-ion-input-ios{left:0;top:0;position:absolute;pointer-events:none}[dir=rtl].sc-ion-input-ios .cloned-input.sc-ion-input-ios,[dir=rtl].sc-ion-input-ios-h .cloned-input.sc-ion-input-ios,[dir=rtl] .sc-ion-input-ios-h .cloned-input.sc-ion-input-ios{left:unset;right:unset;right:0}.input-clear-icon.sc-ion-input-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;background-position:center;border:0;outline:none;background-color:transparent;background-repeat:no-repeat;visibility:hidden;appearance:none}.input-clear-icon.sc-ion-input-ios:focus{opacity:0.5}.has-value.sc-ion-input-ios-h .input-clear-icon.sc-ion-input-ios{visibility:visible}.has-focus.sc-ion-input-ios-h{pointer-events:none}.has-focus.sc-ion-input-ios-h input.sc-ion-input-ios,.has-focus.sc-ion-input-ios-h a.sc-ion-input-ios,.has-focus.sc-ion-input-ios-h button.sc-ion-input-ios{pointer-events:auto}.item-label-floating.item-has-placeholder.sc-ion-input-ios-h:not(.item-has-value),.item-label-floating.item-has-placeholder:not(.item-has-value) .sc-ion-input-ios-h{opacity:0}.item-label-floating.item-has-placeholder.sc-ion-input-ios-h:not(.item-has-value).item-has-focus,.item-label-floating.item-has-placeholder:not(.item-has-value).item-has-focus .sc-ion-input-ios-h{transition:opacity 0.15s cubic-bezier(0.4, 0, 0.2, 1);opacity:1}.sc-ion-input-ios-h{--padding-top:10px;--padding-end:10px;--padding-bottom:10px;--padding-start:0;font-size:inherit}.item-label-stacked.sc-ion-input-ios-h,.item-label-stacked .sc-ion-input-ios-h,.item-label-floating.sc-ion-input-ios-h,.item-label-floating .sc-ion-input-ios-h{--padding-top:8px;--padding-bottom:8px;--padding-start:0px}.input-clear-icon.sc-ion-input-ios{background-image:url(\"data:image/svg+xml;charset=utf-8,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'><path%20fill='var(--ion-color-step-600,%20%23666666)'%20d='M403.1,108.9c-81.2-81.2-212.9-81.2-294.2,0s-81.2,212.9,0,294.2c81.2,81.2,212.9,81.2,294.2,0S484.3,190.1,403.1,108.9z%20M352,340.2L340.2,352l-84.4-84.2l-84,83.8L160,339.8l84-83.8l-84-83.8l11.8-11.8l84,83.8l84.4-84.2l11.8,11.8L267.6,256L352,340.2z'/></svg>\");width:30px;height:30px;background-size:18px}";
11
+
12
+ const inputMdCss = ".sc-ion-input-md-h{--placeholder-color:initial;--placeholder-font-style:initial;--placeholder-font-weight:initial;--placeholder-opacity:.5;--padding-top:0;--padding-end:0;--padding-bottom:0;--padding-start:0;--background:transparent;--color:initial;display:flex;position:relative;flex:1;align-items:center;width:100%;padding:0 !important;background:var(--background);color:var(--color);font-family:var(--ion-font-family, inherit);z-index:2}ion-item.sc-ion-input-md-h:not(.item-label),ion-item:not(.item-label) .sc-ion-input-md-h{--padding-start:0}.ion-color.sc-ion-input-md-h{color:var(--ion-color-base)}.native-input.sc-ion-input-md{border-radius:var(--border-radius);padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;display:inline-block;flex:1;width:100%;max-width:100%;max-height:100%;border:0;outline:none;background:transparent;box-sizing:border-box;appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.native-input.sc-ion-input-md{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)}}.native-input.sc-ion-input-md::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.native-input.sc-ion-input-md:-webkit-autofill{background-color:transparent}.native-input.sc-ion-input-md:invalid{box-shadow:none}.native-input.sc-ion-input-md::-ms-clear{display:none}.native-input[disabled].sc-ion-input-md{opacity:0.4}.cloned-input.sc-ion-input-md{left:0;top:0;position:absolute;pointer-events:none}[dir=rtl].sc-ion-input-md .cloned-input.sc-ion-input-md,[dir=rtl].sc-ion-input-md-h .cloned-input.sc-ion-input-md,[dir=rtl] .sc-ion-input-md-h .cloned-input.sc-ion-input-md{left:unset;right:unset;right:0}.input-clear-icon.sc-ion-input-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;background-position:center;border:0;outline:none;background-color:transparent;background-repeat:no-repeat;visibility:hidden;appearance:none}.input-clear-icon.sc-ion-input-md:focus{opacity:0.5}.has-value.sc-ion-input-md-h .input-clear-icon.sc-ion-input-md{visibility:visible}.has-focus.sc-ion-input-md-h{pointer-events:none}.has-focus.sc-ion-input-md-h input.sc-ion-input-md,.has-focus.sc-ion-input-md-h a.sc-ion-input-md,.has-focus.sc-ion-input-md-h button.sc-ion-input-md{pointer-events:auto}.item-label-floating.item-has-placeholder.sc-ion-input-md-h:not(.item-has-value),.item-label-floating.item-has-placeholder:not(.item-has-value) .sc-ion-input-md-h{opacity:0}.item-label-floating.item-has-placeholder.sc-ion-input-md-h:not(.item-has-value).item-has-focus,.item-label-floating.item-has-placeholder:not(.item-has-value).item-has-focus .sc-ion-input-md-h{transition:opacity 0.15s cubic-bezier(0.4, 0, 0.2, 1);opacity:1}.sc-ion-input-md-h{--padding-top:10px;--padding-end:0;--padding-bottom:10px;--padding-start:8px;font-size:inherit}.item-label-stacked.sc-ion-input-md-h,.item-label-stacked .sc-ion-input-md-h,.item-label-floating.sc-ion-input-md-h,.item-label-floating .sc-ion-input-md-h{--padding-top:8px;--padding-bottom:8px;--padding-start:0}.input-clear-icon.sc-ion-input-md{background-image:url(\"data:image/svg+xml;charset=utf-8,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'><polygon%20fill='var(--ion-color-step-600,%20%23666666)'%20points='405,136.798%20375.202,107%20256,226.202%20136.798,107%20107,136.798%20226.202,256%20107,375.202%20136.798,405%20256,285.798%20375.202,405%20405,375.202%20285.798,256'/></svg>\");width:30px;height:30px;background-size:22px}";
13
+
14
+ const Input = class {
15
+ constructor(hostRef) {
16
+ index.registerInstance(this, hostRef);
17
+ this.ionInput = index.createEvent(this, "ionInput", 7);
18
+ this.ionChange = index.createEvent(this, "ionChange", 7);
19
+ this.ionBlur = index.createEvent(this, "ionBlur", 7);
20
+ this.ionFocus = index.createEvent(this, "ionFocus", 7);
21
+ this.ionStyle = index.createEvent(this, "ionStyle", 7);
22
+ this.inputId = `ion-input-${inputIds++}`;
23
+ this.didBlurAfterEdit = false;
24
+ this.inheritedAttributes = {};
25
+ this.isComposing = false;
26
+ /**
27
+ * This is required for a WebKit bug which requires us to
28
+ * blur and focus an input to properly focus the input in
29
+ * an item with delegatesFocus. It will no longer be needed
30
+ * with iOS 14.
31
+ *
32
+ * @internal
33
+ */
34
+ this.fireFocusEvents = true;
35
+ this.hasFocus = false;
36
+ /**
37
+ * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
38
+ * Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
39
+ */
40
+ this.autocapitalize = 'off';
41
+ /**
42
+ * Indicates whether the value of the control can be automatically completed by the browser.
43
+ */
44
+ this.autocomplete = 'off';
45
+ /**
46
+ * Whether auto correction should be enabled when the user is entering/editing the text value.
47
+ */
48
+ this.autocorrect = 'off';
49
+ /**
50
+ * This Boolean attribute lets you specify that a form control should have input focus when the page loads.
51
+ */
52
+ this.autofocus = false;
53
+ /**
54
+ * If `true`, a clear icon will appear in the input when there is a value. Clicking it clears the input.
55
+ */
56
+ this.clearInput = false;
57
+ /**
58
+ * Set the amount of time, in milliseconds, to wait to trigger the `ionChange` event after each keystroke. This also impacts form bindings such as `ngModel` or `v-model`.
59
+ */
60
+ this.debounce = 0;
61
+ /**
62
+ * If `true`, the user cannot interact with the input.
63
+ */
64
+ this.disabled = false;
65
+ /**
66
+ * The name of the control, which is submitted with the form data.
67
+ */
68
+ this.name = this.inputId;
69
+ /**
70
+ * If `true`, the user cannot modify the value.
71
+ */
72
+ this.readonly = false;
73
+ /**
74
+ * If `true`, the user must fill in a value before submitting a form.
75
+ */
76
+ this.required = false;
77
+ /**
78
+ * If `true`, the element will have its spelling and grammar checked.
79
+ */
80
+ this.spellcheck = false;
81
+ /**
82
+ * The type of control to display. The default type is text.
83
+ */
84
+ this.type = 'text';
85
+ /**
86
+ * The value of the input.
87
+ */
88
+ this.value = '';
89
+ this.onInput = (ev) => {
90
+ const input = ev.target;
91
+ if (input) {
92
+ this.value = input.value || '';
93
+ }
94
+ this.ionInput.emit(ev);
95
+ };
96
+ this.onBlur = (ev) => {
97
+ this.hasFocus = false;
98
+ this.focusChanged();
99
+ this.emitStyle();
100
+ if (this.fireFocusEvents) {
101
+ this.ionBlur.emit(ev);
102
+ }
103
+ };
104
+ this.onFocus = (ev) => {
105
+ this.hasFocus = true;
106
+ this.focusChanged();
107
+ this.emitStyle();
108
+ if (this.fireFocusEvents) {
109
+ this.ionFocus.emit(ev);
110
+ }
111
+ };
112
+ this.onKeydown = (ev) => {
113
+ if (this.shouldClearOnEdit()) {
114
+ // Did the input value change after it was blurred and edited?
115
+ // Do not clear if user is hitting Enter to submit form
116
+ if (this.didBlurAfterEdit && this.hasValue() && ev.key !== 'Enter') {
117
+ // Clear the input
118
+ this.clearTextInput();
119
+ }
120
+ // Reset the flag
121
+ this.didBlurAfterEdit = false;
122
+ }
123
+ };
124
+ this.onCompositionStart = () => {
125
+ this.isComposing = true;
126
+ };
127
+ this.onCompositionEnd = () => {
128
+ this.isComposing = false;
129
+ };
130
+ this.clearTextOnEnter = (ev) => {
131
+ if (ev.key === 'Enter') {
132
+ this.clearTextInput(ev);
133
+ }
134
+ };
135
+ this.clearTextInput = (ev) => {
136
+ if (this.clearInput && !this.readonly && !this.disabled && ev) {
137
+ ev.preventDefault();
138
+ ev.stopPropagation();
139
+ // Attempt to focus input again after pressing clear button
140
+ this.setFocus();
141
+ }
142
+ this.value = '';
143
+ /**
144
+ * This is needed for clearOnEdit
145
+ * Otherwise the value will not be cleared
146
+ * if user is inside the input
147
+ */
148
+ if (this.nativeInput) {
149
+ this.nativeInput.value = '';
150
+ }
151
+ };
152
+ }
153
+ debounceChanged() {
154
+ this.ionChange = helpers.debounceEvent(this.ionChange, this.debounce);
155
+ }
156
+ disabledChanged() {
157
+ this.emitStyle();
158
+ }
159
+ /**
160
+ * Update the item classes when the placeholder changes
161
+ */
162
+ placeholderChanged() {
163
+ this.emitStyle();
164
+ }
165
+ /**
166
+ * Update the native input element when the value changes
167
+ */
168
+ valueChanged() {
169
+ const nativeInput = this.nativeInput;
170
+ const value = this.getValue();
171
+ if (nativeInput && nativeInput.value !== value && !this.isComposing) {
172
+ /**
173
+ * Assigning the native input's value on attribute
174
+ * value change, allows `ionInput` implementations
175
+ * to override the control's value.
176
+ *
177
+ * Used for patterns such as input trimming (removing whitespace),
178
+ * or input masking.
179
+ */
180
+ nativeInput.value = value;
181
+ }
182
+ this.emitStyle();
183
+ this.ionChange.emit({ value: this.value == null ? this.value : this.value.toString() });
184
+ }
185
+ componentWillLoad() {
186
+ this.inheritedAttributes = Object.assign(Object.assign({}, helpers.inheritAriaAttributes(this.el)), helpers.inheritAttributes(this.el, ['tabindex', 'title']));
187
+ }
188
+ connectedCallback() {
189
+ this.emitStyle();
190
+ this.debounceChanged();
191
+ {
192
+ document.dispatchEvent(new CustomEvent('ionInputDidLoad', {
193
+ detail: this.el,
194
+ }));
195
+ }
196
+ }
197
+ componentDidLoad() {
198
+ const nativeInput = this.nativeInput;
199
+ if (nativeInput) {
200
+ // TODO: FW-729 Update to JSX bindings when Stencil resolves bug with:
201
+ // https://github.com/ionic-team/stencil/issues/3235
202
+ nativeInput.addEventListener('compositionstart', this.onCompositionStart);
203
+ nativeInput.addEventListener('compositionend', this.onCompositionEnd);
204
+ }
205
+ }
206
+ disconnectedCallback() {
207
+ {
208
+ document.dispatchEvent(new CustomEvent('ionInputDidUnload', {
209
+ detail: this.el,
210
+ }));
211
+ }
212
+ const nativeInput = this.nativeInput;
213
+ if (nativeInput) {
214
+ nativeInput.removeEventListener('compositionstart', this.onCompositionStart);
215
+ nativeInput.removeEventListener('compositionEnd', this.onCompositionEnd);
216
+ }
217
+ }
218
+ /**
219
+ * Sets focus on the native `input` in `ion-input`. Use this method instead of the global
220
+ * `input.focus()`.
221
+ */
222
+ async setFocus() {
223
+ if (this.nativeInput) {
224
+ this.nativeInput.focus();
225
+ }
226
+ }
227
+ /**
228
+ * Sets blur on the native `input` in `ion-input`. Use this method instead of the global
229
+ * `input.blur()`.
230
+ * @internal
231
+ */
232
+ async setBlur() {
233
+ if (this.nativeInput) {
234
+ this.nativeInput.blur();
235
+ }
236
+ }
237
+ /**
238
+ * Returns the native `<input>` element used under the hood.
239
+ */
240
+ getInputElement() {
241
+ return Promise.resolve(this.nativeInput);
242
+ }
243
+ shouldClearOnEdit() {
244
+ const { type, clearOnEdit } = this;
245
+ return clearOnEdit === undefined ? type === 'password' : clearOnEdit;
246
+ }
247
+ getValue() {
248
+ return typeof this.value === 'number' ? this.value.toString() : (this.value || '').toString();
249
+ }
250
+ emitStyle() {
251
+ this.ionStyle.emit({
252
+ interactive: true,
253
+ input: true,
254
+ 'has-placeholder': this.placeholder !== undefined,
255
+ 'has-value': this.hasValue(),
256
+ 'has-focus': this.hasFocus,
257
+ 'interactive-disabled': this.disabled,
258
+ });
259
+ }
260
+ focusChanged() {
261
+ // If clearOnEdit is enabled and the input blurred but has a value, set a flag
262
+ if (!this.hasFocus && this.shouldClearOnEdit() && this.hasValue()) {
263
+ this.didBlurAfterEdit = true;
264
+ }
265
+ }
266
+ hasValue() {
267
+ return this.getValue().length > 0;
268
+ }
269
+ render() {
270
+ const mode = ionicGlobal.getIonMode(this);
271
+ const value = this.getValue();
272
+ const labelId = this.inputId + '-lbl';
273
+ const label = helpers.findItemLabel(this.el);
274
+ if (label) {
275
+ label.id = labelId;
276
+ }
277
+ return (index.h(index.Host, { "aria-disabled": this.disabled ? 'true' : null, class: theme.createColorClasses(this.color, {
278
+ [mode]: true,
279
+ 'has-value': this.hasValue(),
280
+ 'has-focus': this.hasFocus,
281
+ }) }, index.h("input", Object.assign({ class: "native-input", ref: (input) => (this.nativeInput = input), "aria-labelledby": label ? labelId : null, disabled: this.disabled, accept: this.accept, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, size: this.size, type: this.type, value: value, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown }, this.inheritedAttributes)), this.clearInput && !this.readonly && !this.disabled && (index.h("button", { "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: this.clearTextInput, onKeyDown: this.clearTextOnEnter }))));
282
+ }
283
+ get el() { return index.getElement(this); }
284
+ static get watchers() { return {
285
+ "debounce": ["debounceChanged"],
286
+ "disabled": ["disabledChanged"],
287
+ "placeholder": ["placeholderChanged"],
288
+ "value": ["valueChanged"]
289
+ }; }
290
+ };
291
+ let inputIds = 0;
292
+ Input.style = {
293
+ ios: inputIosCss,
294
+ md: inputMdCss
295
+ };
296
+
297
+ const textCss = ":host(.ion-color){color:var(--ion-color-base)}";
298
+
299
+ const Text = class {
300
+ constructor(hostRef) {
301
+ index.registerInstance(this, hostRef);
302
+ }
303
+ render() {
304
+ const mode = ionicGlobal.getIonMode(this);
305
+ return (index.h(index.Host, { class: theme.createColorClasses(this.color, {
306
+ [mode]: true,
307
+ }) }, index.h("slot", null)));
308
+ }
309
+ };
310
+ Text.style = textCss;
311
+
312
+ exports.ion_input = Input;
313
+ exports.ion_text = Text;
@@ -0,0 +1,126 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-51e8292e.js');
6
+ const ionicGlobal = require('./ionic-global-2cde9d3a.js');
7
+ const theme = require('./theme-b0b295c1.js');
8
+
9
+ const labelIosCss = ".item.sc-ion-label-ios-h,.item .sc-ion-label-ios-h{--color:initial;display:block;color:var(--color);font-family:var(--ion-font-family, inherit);font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;box-sizing:border-box}.ion-color.sc-ion-label-ios-h{color:var(--ion-color-base)}.ion-text-wrap.sc-ion-label-ios-h,[text-wrap].sc-ion-label-ios-h{white-space:normal}.item-interactive-disabled.sc-ion-label-ios-h:not(.item-multiple-inputs),.item-interactive-disabled:not(.item-multiple-inputs) .sc-ion-label-ios-h{cursor:default;opacity:0.3;pointer-events:none}.item-input.sc-ion-label-ios-h,.item-input .sc-ion-label-ios-h{flex:initial;max-width:200px;pointer-events:none}.item-textarea.sc-ion-label-ios-h,.item-textarea .sc-ion-label-ios-h{align-self:baseline}.label-fixed.sc-ion-label-ios-h{flex:0 0 100px;width:100px;min-width:100px;max-width:200px}.label-stacked.sc-ion-label-ios-h,.label-floating.sc-ion-label-ios-h{margin-bottom:0;align-self:stretch;width:auto;max-width:100%}.label-no-animate.label-floating.sc-ion-label-ios-h{transition:none}.sc-ion-label-ios-s h1,.sc-ion-label-ios-s h2,.sc-ion-label-ios-s h3,.sc-ion-label-ios-s h4,.sc-ion-label-ios-s h5,.sc-ion-label-ios-s h6{text-overflow:inherit;overflow:inherit}.ion-text-wrap.sc-ion-label-ios-h,[text-wrap].sc-ion-label-ios-h{font-size:14px;line-height:1.5}.label-stacked.sc-ion-label-ios-h{margin-bottom:4px;font-size:14px}.label-floating.sc-ion-label-ios-h{margin-bottom:0;transform:translate(0, 29px);transform-origin:left top;transition:transform 150ms ease-in-out}[dir=rtl].sc-ion-label-ios-h -no-combinator.label-floating.sc-ion-label-ios-h,[dir=rtl] .sc-ion-label-ios-h -no-combinator.label-floating.sc-ion-label-ios-h,[dir=rtl].label-floating.sc-ion-label-ios-h,[dir=rtl] .label-floating.sc-ion-label-ios-h{transform-origin:right top}.item-textarea.label-floating.sc-ion-label-ios-h,.item-textarea .label-floating.sc-ion-label-ios-h{transform:translate(0, 28px)}.item-has-focus.label-floating.sc-ion-label-ios-h,.item-has-focus .label-floating.sc-ion-label-ios-h,.item-has-placeholder.sc-ion-label-ios-h:not(.item-input).label-floating,.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-ios-h,.item-has-value.label-floating.sc-ion-label-ios-h,.item-has-value .label-floating.sc-ion-label-ios-h{transform:scale(0.82)}.sc-ion-label-ios-s h1{margin-left:0;margin-right:0;margin-top:3px;margin-bottom:2px;font-size:22px;font-weight:normal}.sc-ion-label-ios-s h2{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:17px;font-weight:normal}.sc-ion-label-ios-s h3,.sc-ion-label-ios-s h4,.sc-ion-label-ios-s h5,.sc-ion-label-ios-s h6{margin-left:0;margin-right:0;margin-top:0;margin-bottom:3px;font-size:14px;font-weight:normal;line-height:normal}.sc-ion-label-ios-s p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px;line-height:normal;text-overflow:inherit;overflow:inherit}.sc-ion-label-ios-s>p{color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.4)}.sc-ion-label-ios-h.in-item-color.sc-ion-label-ios-s>p{color:inherit}.sc-ion-label-ios-s h2:last-child,.sc-ion-label-ios-s h3:last-child,.sc-ion-label-ios-s h4:last-child,.sc-ion-label-ios-s h5:last-child,.sc-ion-label-ios-s h6:last-child,.sc-ion-label-ios-s p:last-child{margin-bottom:0}";
10
+
11
+ const labelMdCss = ".item.sc-ion-label-md-h,.item .sc-ion-label-md-h{--color:initial;display:block;color:var(--color);font-family:var(--ion-font-family, inherit);font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;box-sizing:border-box}.ion-color.sc-ion-label-md-h{color:var(--ion-color-base)}.ion-text-wrap.sc-ion-label-md-h,[text-wrap].sc-ion-label-md-h{white-space:normal}.item-interactive-disabled.sc-ion-label-md-h:not(.item-multiple-inputs),.item-interactive-disabled:not(.item-multiple-inputs) .sc-ion-label-md-h{cursor:default;opacity:0.3;pointer-events:none}.item-input.sc-ion-label-md-h,.item-input .sc-ion-label-md-h{flex:initial;max-width:200px;pointer-events:none}.item-textarea.sc-ion-label-md-h,.item-textarea .sc-ion-label-md-h{align-self:baseline}.label-fixed.sc-ion-label-md-h{flex:0 0 100px;width:100px;min-width:100px;max-width:200px}.label-stacked.sc-ion-label-md-h,.label-floating.sc-ion-label-md-h{margin-bottom:0;align-self:stretch;width:auto;max-width:100%}.label-no-animate.label-floating.sc-ion-label-md-h{transition:none}.sc-ion-label-md-s h1,.sc-ion-label-md-s h2,.sc-ion-label-md-s h3,.sc-ion-label-md-s h4,.sc-ion-label-md-s h5,.sc-ion-label-md-s h6{text-overflow:inherit;overflow:inherit}.ion-text-wrap.sc-ion-label-md-h,[text-wrap].sc-ion-label-md-h{line-height:1.5}.label-stacked.sc-ion-label-md-h,.label-floating.sc-ion-label-md-h{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;transform-origin:top left}.label-stacked.label-rtl.sc-ion-label-md-h,.label-floating.label-rtl.sc-ion-label-md-h{transform-origin:top right}.label-stacked.sc-ion-label-md-h{transform:translateY(50%) scale(0.75);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.label-floating.sc-ion-label-md-h{transform:translateY(96%);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1)}.ion-focused.label-floating.sc-ion-label-md-h,.ion-focused .label-floating.sc-ion-label-md-h,.item-has-focus.label-floating.sc-ion-label-md-h,.item-has-focus .label-floating.sc-ion-label-md-h,.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating,.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h,.item-has-value.label-floating.sc-ion-label-md-h,.item-has-value .label-floating.sc-ion-label-md-h{transform:translateY(50%) scale(0.75)}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h{transform:translateY(-6px) scale(0.75);position:relative;max-width:min-content;background-color:var(--ion-item-background, var(--ion-background-color, #fff));overflow:visible;z-index:3}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::after,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::before,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::after,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::after{position:absolute;width:4px;height:100%;background-color:var(--ion-item-background, var(--ion-background-color, #fff));content:\"\"}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::before,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::before{left:calc(-1 * 4px)}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::after,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::after,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::after{right:calc(-1 * 4px)}.item-fill-outline.ion-focused.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.ion-focused.item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).item-has-start-slot.label-floating,.item-fill-outline.item-has-placeholder:not(.item-input).item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot .label-floating.sc-ion-label-md-h{transform:translateX(-32px) translateY(-6px) scale(0.75)}.item-fill-outline.ion-focused.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.ion-focused.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).item-has-start-slot.label-floating.label-rtl,.item-fill-outline.item-has-placeholder:not(.item-input).item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h{transform:translateX(calc(-1 * -32px)) translateY(-6px) scale(0.75)}.ion-focused.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-focused .label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-primary, #3880ff)}.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-contrast)}.item-fill-solid.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-base)}.ion-invalid.ion-touched.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--highlight-color-invalid)}.sc-ion-label-md-s h1{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:24px;font-weight:normal}.sc-ion-label-md-s h2{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:16px;font-weight:normal}.sc-ion-label-md-s h3,.sc-ion-label-md-s h4,.sc-ion-label-md-s h5,.sc-ion-label-md-s h6{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:14px;font-weight:normal;line-height:normal}.sc-ion-label-md-s p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px;line-height:20px;text-overflow:inherit;overflow:inherit}.sc-ion-label-md-s>p{color:var(--ion-color-step-600, #666666)}.sc-ion-label-md-h.in-item-color.sc-ion-label-md-s>p{color:inherit}";
12
+
13
+ const Label = class {
14
+ constructor(hostRef) {
15
+ index.registerInstance(this, hostRef);
16
+ this.ionColor = index.createEvent(this, "ionColor", 7);
17
+ this.ionStyle = index.createEvent(this, "ionStyle", 7);
18
+ this.inRange = false;
19
+ this.noAnimate = false;
20
+ }
21
+ componentWillLoad() {
22
+ this.inRange = !!this.el.closest('ion-range');
23
+ this.noAnimate = this.position === 'floating';
24
+ this.emitStyle();
25
+ this.emitColor();
26
+ }
27
+ componentDidLoad() {
28
+ if (this.noAnimate) {
29
+ setTimeout(() => {
30
+ this.noAnimate = false;
31
+ }, 1000);
32
+ }
33
+ }
34
+ colorChanged() {
35
+ this.emitColor();
36
+ }
37
+ positionChanged() {
38
+ this.emitStyle();
39
+ }
40
+ emitColor() {
41
+ const { color } = this;
42
+ this.ionColor.emit({
43
+ 'item-label-color': color !== undefined,
44
+ [`ion-color-${color}`]: color !== undefined,
45
+ });
46
+ }
47
+ emitStyle() {
48
+ const { inRange, position } = this;
49
+ // If the label is inside of a range we don't want
50
+ // to override the classes added by the label that
51
+ // is a direct child of the item
52
+ if (!inRange) {
53
+ this.ionStyle.emit({
54
+ label: true,
55
+ [`label-${position}`]: position !== undefined,
56
+ });
57
+ }
58
+ }
59
+ render() {
60
+ const position = this.position;
61
+ const mode = ionicGlobal.getIonMode(this);
62
+ return (index.h(index.Host, { class: theme.createColorClasses(this.color, {
63
+ [mode]: true,
64
+ 'in-item-color': theme.hostContext('ion-item.ion-color', this.el),
65
+ [`label-${position}`]: position !== undefined,
66
+ [`label-no-animate`]: this.noAnimate,
67
+ 'label-rtl': document.dir === 'rtl',
68
+ }) }));
69
+ }
70
+ get el() { return index.getElement(this); }
71
+ static get watchers() { return {
72
+ "color": ["colorChanged"],
73
+ "position": ["positionChanged"]
74
+ }; }
75
+ };
76
+ Label.style = {
77
+ ios: labelIosCss,
78
+ md: labelMdCss
79
+ };
80
+
81
+ const listIosCss = "ion-list{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:block;contain:content;list-style-type:none}ion-list.list-inset{transform:translateZ(0);overflow:hidden}.list-ios{background:var(--ion-item-background, var(--ion-background-color, #fff))}.list-ios.list-inset{margin-left:16px;margin-right:16px;margin-top:16px;margin-bottom:16px;border-radius:10px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.list-ios.list-inset{margin-left:unset;margin-right:unset;-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px}}.list-ios.list-inset ion-item{--border-width:0 0 1px 0;--inner-border-width:0}.list-ios.list-inset ion-item:last-child{--border-width:0;--inner-border-width:0}.list-ios.list-inset+ion-list.list-inset{margin-top:0}.list-ios-lines-none .item{--border-width:0;--inner-border-width:0}.list-ios-lines-full .item,.list-ios .item-lines-full{--border-width:0 0 0.55px 0}.list-ios-lines-full .item{--inner-border-width:0}.list-ios-lines-inset .item,.list-ios .item-lines-inset{--inner-border-width:0 0 0.55px 0}.list-ios .item-lines-inset{--border-width:0}.list-ios .item-lines-full{--inner-border-width:0}.list-ios .item-lines-none{--border-width:0;--inner-border-width:0}ion-card .list-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}";
82
+
83
+ const listMdCss = "ion-list{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:block;contain:content;list-style-type:none}ion-list.list-inset{transform:translateZ(0);overflow:hidden}.list-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:8px;padding-bottom:8px;background:var(--ion-item-background, var(--ion-background-color, #fff))}.list-md>.input:last-child::after{left:0}[dir=rtl] .list-md>.input:last-child::after,:host-context([dir=rtl]) .list-md>.input:last-child::after{left:unset;right:unset;right:0}.list-md.list-inset{margin-left:16px;margin-right:16px;margin-top:16px;margin-bottom:16px;border-radius:2px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.list-md.list-inset{margin-left:unset;margin-right:unset;-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px}}.list-md.list-inset ion-item:first-child{--border-radius:2px 2px 0 0;--border-width:0 0 1px 0}.list-md.list-inset ion-item:last-child{--border-radius:0 0 2px, 2px;--border-width:0}.list-md.list-inset .item-interactive{--padding-start:0;--padding-end:0}.list-md.list-inset+ion-list.list-inset{margin-top:0}.list-md-lines-none .item{--border-width:0;--inner-border-width:0}.list-md-lines-full .item,.list-md .item-lines-full{--border-width:0 0 1px 0}.list-md-lines-full .item{--inner-border-width:0}.list-md-lines-inset .item,.list-md .item-lines-inset{--inner-border-width:0 0 1px 0}.list-md .item-lines-inset{--border-width:0}.list-md .item-lines-full{--inner-border-width:0}.list-md .item-lines-none{--border-width:0;--inner-border-width:0}ion-card .list-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}";
84
+
85
+ const List = class {
86
+ constructor(hostRef) {
87
+ index.registerInstance(this, hostRef);
88
+ /**
89
+ * If `true`, the list will have margin around it and rounded corners.
90
+ */
91
+ this.inset = false;
92
+ }
93
+ /**
94
+ * If `ion-item-sliding` are used inside the list, this method closes
95
+ * any open sliding item.
96
+ *
97
+ * Returns `true` if an actual `ion-item-sliding` is closed.
98
+ */
99
+ async closeSlidingItems() {
100
+ const item = this.el.querySelector('ion-item-sliding');
101
+ if (item === null || item === void 0 ? void 0 : item.closeOpened) {
102
+ return item.closeOpened();
103
+ }
104
+ return false;
105
+ }
106
+ render() {
107
+ const mode = ionicGlobal.getIonMode(this);
108
+ const { lines, inset } = this;
109
+ return (index.h(index.Host, { role: "list", class: {
110
+ [mode]: true,
111
+ // Used internally for styling
112
+ [`list-${mode}`]: true,
113
+ 'list-inset': inset,
114
+ [`list-lines-${lines}`]: lines !== undefined,
115
+ [`list-${mode}-lines-${lines}`]: lines !== undefined,
116
+ } }));
117
+ }
118
+ get el() { return index.getElement(this); }
119
+ };
120
+ List.style = {
121
+ ios: listIosCss,
122
+ md: listMdCss
123
+ };
124
+
125
+ exports.ion_label = Label;
126
+ exports.ion_list = List;
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-51e8292e.js');
6
+ const ionicGlobal = require('./ionic-global-2cde9d3a.js');
7
+ const theme = require('./theme-b0b295c1.js');
8
+ const spinnerConfigs = require('./spinner-configs-0ac05f2d.js');
9
+
10
+ const spinnerCss = ":host{display:inline-block;position:relative;width:28px;height:28px;color:var(--color);user-select:none}:host(.ion-color){color:var(--ion-color-base)}svg{transform-origin:center;position:absolute;top:0;left:0;width:100%;height:100%;transform:translateZ(0)}[dir=rtl] svg,:host-context([dir=rtl]) svg{transform-origin:calc(100% - center)}:host(.spinner-lines) line,:host(.spinner-lines-small) line{stroke-width:7px}:host(.spinner-lines-sharp) line,:host(.spinner-lines-sharp-small) line{stroke-width:4px}:host(.spinner-lines) line,:host(.spinner-lines-small) line,:host(.spinner-lines-sharp) line,:host(.spinner-lines-sharp-small) line{stroke-linecap:round;stroke:currentColor}:host(.spinner-lines) svg,:host(.spinner-lines-small) svg,:host(.spinner-lines-sharp) svg,:host(.spinner-lines-sharp-small) svg{animation:spinner-fade-out 1s linear infinite}:host(.spinner-bubbles) svg{animation:spinner-scale-out 1s linear infinite;fill:currentColor}:host(.spinner-circles) svg{animation:spinner-fade-out 1s linear infinite;fill:currentColor}:host(.spinner-crescent) circle{fill:transparent;stroke-width:4px;stroke-dasharray:128px;stroke-dashoffset:82px;stroke:currentColor}:host(.spinner-crescent) svg{animation:spinner-rotate 1s linear infinite}:host(.spinner-dots) circle{stroke-width:0;fill:currentColor}:host(.spinner-dots) svg{animation:spinner-dots 1s linear infinite}:host(.spinner-circular) svg{animation:spinner-circular linear infinite}:host(.spinner-circular) circle{animation:spinner-circular-inner ease-in-out infinite;stroke:currentColor;stroke-dasharray:80px, 200px;stroke-dashoffset:0px;stroke-width:5.6;fill:none}:host(.spinner-paused),:host(.spinner-paused) svg,:host(.spinner-paused) circle{animation-play-state:paused}@keyframes spinner-fade-out{0%{opacity:1}100%{opacity:0}}@keyframes spinner-scale-out{0%{transform:scale(1, 1)}100%{transform:scale(0, 0)}}@keyframes spinner-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes spinner-dots{0%{transform:scale(1, 1);opacity:0.9}50%{transform:scale(0.4, 0.4);opacity:0.3}100%{transform:scale(1, 1);opacity:0.9}}@keyframes spinner-circular{100%{transform:rotate(360deg)}}@keyframes spinner-circular-inner{0%{stroke-dasharray:1px, 200px;stroke-dashoffset:0px}50%{stroke-dasharray:100px, 200px;stroke-dashoffset:-15px}100%{stroke-dasharray:100px, 200px;stroke-dashoffset:-125px}}";
11
+
12
+ const Spinner = class {
13
+ constructor(hostRef) {
14
+ index.registerInstance(this, hostRef);
15
+ /**
16
+ * If `true`, the spinner's animation will be paused.
17
+ */
18
+ this.paused = false;
19
+ }
20
+ getName() {
21
+ const spinnerName = this.name || ionicGlobal.config.get('spinner');
22
+ const mode = ionicGlobal.getIonMode(this);
23
+ if (spinnerName) {
24
+ return spinnerName;
25
+ }
26
+ return mode === 'ios' ? 'lines' : 'circular';
27
+ }
28
+ render() {
29
+ const self = this;
30
+ const mode = ionicGlobal.getIonMode(self);
31
+ const spinnerName = self.getName();
32
+ const spinner = spinnerConfigs.SPINNERS[spinnerName] || spinnerConfigs.SPINNERS['lines'];
33
+ const duration = typeof self.duration === 'number' && self.duration > 10 ? self.duration : spinner.dur;
34
+ const svgs = [];
35
+ if (spinner.circles !== undefined) {
36
+ for (let i = 0; i < spinner.circles; i++) {
37
+ svgs.push(buildCircle(spinner, duration, i, spinner.circles));
38
+ }
39
+ }
40
+ else if (spinner.lines !== undefined) {
41
+ for (let i = 0; i < spinner.lines; i++) {
42
+ svgs.push(buildLine(spinner, duration, i, spinner.lines));
43
+ }
44
+ }
45
+ return (index.h(index.Host, { class: theme.createColorClasses(self.color, {
46
+ [mode]: true,
47
+ [`spinner-${spinnerName}`]: true,
48
+ 'spinner-paused': self.paused || ionicGlobal.config.getBoolean('_testing'),
49
+ }), role: "progressbar", style: spinner.elmDuration ? { animationDuration: duration + 'ms' } : {} }, svgs));
50
+ }
51
+ };
52
+ const buildCircle = (spinner, duration, index$1, total) => {
53
+ const data = spinner.fn(duration, index$1, total);
54
+ data.style['animation-duration'] = duration + 'ms';
55
+ return (index.h("svg", { viewBox: data.viewBox || '0 0 64 64', style: data.style }, index.h("circle", { transform: data.transform || 'translate(32,32)', cx: data.cx, cy: data.cy, r: data.r, style: spinner.elmDuration ? { animationDuration: duration + 'ms' } : {} })));
56
+ };
57
+ const buildLine = (spinner, duration, index$1, total) => {
58
+ const data = spinner.fn(duration, index$1, total);
59
+ data.style['animation-duration'] = duration + 'ms';
60
+ return (index.h("svg", { viewBox: data.viewBox || '0 0 64 64', style: data.style }, index.h("line", { transform: "translate(32,32)", y1: data.y1, y2: data.y2 })));
61
+ };
62
+ Spinner.style = spinnerCss;
63
+
64
+ exports.ion_spinner = Spinner;