@sparkle-learning/core 0.0.34 → 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 (635) hide show
  1. package/dist/cjs/{PrivateRoute-482697a6.js → PrivateRoute-4abc9d29.js} +2 -2
  2. package/dist/cjs/{active-router-eedb3bfe.js → active-router-f9e18bd8.js} +1 -1
  3. package/dist/cjs/{animation-6132e37f.js → animation-ee586546.js} +83 -78
  4. package/dist/cjs/{app-globals-9869bf67.js → app-globals-33c9f31b.js} +1 -1
  5. package/dist/cjs/{auth.service-f878f6ab.js → auth.service-4b584cd7.js} +4 -3
  6. package/dist/cjs/{auth.store-ff3fda09.js → auth.store-1e630a7d.js} +48 -725
  7. package/dist/cjs/compass-svg.cjs.entry.js +1 -1
  8. package/dist/cjs/context-consumer.cjs.entry.js +1 -1
  9. package/dist/cjs/course-select.cjs.entry.js +1 -1
  10. package/dist/cjs/{cubic-bezier-293f4663.js → cubic-bezier-53d26d05.js} +10 -11
  11. package/dist/cjs/{facilitator.service-faac5c0c.js → facilitator.service-9e990274.js} +8 -7
  12. package/dist/cjs/{feed.service-66405969.js → feed.service-b4f09441.js} +8 -7
  13. package/dist/cjs/{focus-visible-ad3828a7.js → focus-visible-b0b07ba6.js} +19 -6
  14. package/dist/cjs/{framework-delegate-2470a246.js → framework-delegate-59a98abd.js} +11 -13
  15. package/dist/cjs/{gesture-controller-07c31f70.js → gesture-controller-0eb5579e.js} +1 -1
  16. package/dist/cjs/{haptic-91e86eb7.js → haptic-780f33c4.js} +3 -2
  17. package/dist/cjs/{hardware-back-button-f7b5d99e.js → hardware-back-button-92d97ff8.js} +8 -8
  18. package/dist/cjs/{header-mobile-collapse_2.cjs.entry.js → header-mobile-collapse.cjs.entry.js} +2 -24
  19. package/dist/cjs/{helpers-7e28976c.js → helpers-c2496722.js} +81 -14
  20. package/dist/cjs/httpService-7211d93b.js +685 -0
  21. package/dist/cjs/{icons-80d477f6.js → icons-c61db785.js} +1 -1
  22. package/dist/cjs/{index-43642662.js → index-12082cba.js} +21 -18
  23. package/dist/cjs/{index-459a5fa9.js → index-15ea05f5.js} +19 -28
  24. package/dist/cjs/{index-bae2a754.js → index-51e8292e.js} +18 -11
  25. package/dist/cjs/{index-07e8aa51.js → index-70e63f5b.js} +2 -2
  26. package/dist/cjs/{index-b12edb26.js → index-787d4498.js} +17 -25
  27. package/dist/cjs/{tap-click-1caf1780.js → index-8b5629a6.js} +30 -20
  28. package/dist/cjs/{index-8540d72e.js → index-975586fd.js} +7 -1
  29. package/dist/cjs/index-9c7b27e4.js +140 -0
  30. package/dist/cjs/{index-185f9c5a.js → index-af080b50.js} +9 -8
  31. package/dist/cjs/index-e56e09b8.js +38 -0
  32. package/dist/cjs/index.cjs.js +9 -8
  33. package/dist/cjs/{index.es-ef3efdfb.js → index.es-38cbcdbe.js} +2 -7
  34. package/dist/cjs/{injectHistory-77d41284.js → injectHistory-7206bbb9.js} +1 -1
  35. package/dist/cjs/{input-shims-6c442c9f.js → input-shims-eff63b88.js} +21 -24
  36. package/dist/cjs/ion-accordion-group.cjs.entry.js +17 -9
  37. package/dist/cjs/ion-accordion.cjs.entry.js +19 -23
  38. package/dist/cjs/ion-action-sheet_4.cjs.entry.js +216 -212
  39. package/dist/cjs/ion-app.cjs.entry.js +8 -8
  40. package/dist/cjs/ion-avatar.cjs.entry.js +2 -2
  41. package/dist/cjs/ion-back-button.cjs.entry.js +11 -11
  42. package/dist/cjs/ion-backdrop.cjs.entry.js +4 -4
  43. package/dist/cjs/ion-badge.cjs.entry.js +3 -3
  44. package/dist/cjs/ion-breadcrumb.cjs.entry.js +13 -21
  45. package/dist/cjs/ion-breadcrumbs.cjs.entry.js +12 -14
  46. package/dist/cjs/ion-button.cjs.entry.js +129 -0
  47. package/dist/cjs/ion-buttons_3.cjs.entry.js +13 -13
  48. package/dist/cjs/ion-card-header.cjs.entry.js +4 -4
  49. package/dist/cjs/ion-card-subtitle.cjs.entry.js +4 -4
  50. package/dist/cjs/ion-card-title.cjs.entry.js +4 -4
  51. package/dist/cjs/ion-card_2.cjs.entry.js +9 -11
  52. package/dist/cjs/ion-checkbox_4.cjs.entry.js +22 -32
  53. package/dist/cjs/ion-chip.cjs.entry.js +3 -3
  54. package/dist/cjs/ion-col_3.cjs.entry.js +29 -25
  55. package/dist/cjs/ion-content_2.cjs.entry.js +59 -52
  56. package/dist/cjs/ion-datetime-button.cjs.entry.js +312 -0
  57. package/dist/cjs/ion-datetime.cjs.entry.js +752 -1245
  58. package/dist/cjs/ion-fab-button.cjs.entry.js +25 -9
  59. package/dist/cjs/ion-fab-list.cjs.entry.js +4 -4
  60. package/dist/cjs/ion-fab.cjs.entry.js +15 -13
  61. package/dist/cjs/ion-footer.cjs.entry.js +16 -14
  62. package/dist/cjs/ion-icon_13.cjs.entry.js +1505 -0
  63. package/dist/cjs/ion-img.cjs.entry.js +4 -4
  64. package/dist/cjs/ion-infinite-scroll-content.cjs.entry.js +5 -5
  65. package/dist/cjs/ion-infinite-scroll.cjs.entry.js +13 -15
  66. package/dist/cjs/ion-input_2.cjs.entry.js +13 -16
  67. package/dist/cjs/ion-item-divider.cjs.entry.js +4 -4
  68. package/dist/cjs/ion-item-group.cjs.entry.js +3 -3
  69. package/dist/cjs/ion-item-option.cjs.entry.js +8 -8
  70. package/dist/cjs/ion-item-options.cjs.entry.js +5 -5
  71. package/dist/cjs/ion-item-sliding.cjs.entry.js +41 -46
  72. package/dist/cjs/ion-label_2.cjs.entry.js +13 -13
  73. package/dist/cjs/ion-loading.cjs.entry.js +23 -35
  74. package/dist/cjs/ion-menu-button.cjs.entry.js +13 -13
  75. package/dist/cjs/ion-menu-toggle.cjs.entry.js +7 -7
  76. package/dist/cjs/ion-menu.cjs.entry.js +47 -40
  77. package/dist/cjs/ion-modal.cjs.entry.js +935 -282
  78. package/dist/cjs/ion-nav-link.cjs.entry.js +2 -2
  79. package/dist/cjs/ion-nav.cjs.entry.js +45 -35
  80. package/dist/cjs/ion-picker-column-internal_2.cjs.entry.js +151 -43
  81. package/dist/cjs/ion-picker-column.cjs.entry.js +23 -25
  82. package/dist/cjs/ion-picker.cjs.entry.js +15 -17
  83. package/dist/cjs/ion-progress-bar.cjs.entry.js +6 -8
  84. package/dist/cjs/ion-refresher-content.cjs.entry.js +6 -12
  85. package/dist/cjs/ion-refresher.cjs.entry.js +68 -50
  86. package/dist/cjs/ion-reorder-group.cjs.entry.js +15 -16
  87. package/dist/cjs/ion-reorder.cjs.entry.js +3 -3
  88. package/dist/cjs/ion-route-redirect.cjs.entry.js +1 -1
  89. package/dist/cjs/ion-route.cjs.entry.js +1 -1
  90. package/dist/cjs/ion-router-link.cjs.entry.js +5 -5
  91. package/dist/cjs/ion-router-outlet.cjs.entry.js +22 -20
  92. package/dist/cjs/ion-router.cjs.entry.js +32 -31
  93. package/dist/cjs/ion-searchbar.cjs.entry.js +14 -16
  94. package/dist/cjs/ion-segment-button.cjs.entry.js +8 -8
  95. package/dist/cjs/ion-segment.cjs.entry.js +24 -26
  96. package/dist/cjs/ion-select_2.cjs.entry.js +59 -56
  97. package/dist/cjs/ion-skeleton-text.cjs.entry.js +4 -4
  98. package/dist/cjs/ion-slide.cjs.entry.js +3 -3
  99. package/dist/cjs/ion-slides.cjs.entry.js +23 -23
  100. package/dist/cjs/ion-spinner.cjs.entry.js +8 -8
  101. package/dist/cjs/ion-split-pane.cjs.entry.js +10 -11
  102. package/dist/cjs/ion-tab-bar.cjs.entry.js +5 -5
  103. package/dist/cjs/ion-tab-button.cjs.entry.js +6 -6
  104. package/dist/cjs/ion-tab.cjs.entry.js +4 -4
  105. package/dist/cjs/ion-tabs.cjs.entry.js +4 -5
  106. package/dist/cjs/ion-textarea.cjs.entry.js +29 -28
  107. package/dist/cjs/ion-thumbnail.cjs.entry.js +2 -2
  108. package/dist/cjs/ion-toast.cjs.entry.js +23 -43
  109. package/dist/cjs/ion-toggle.cjs.entry.js +36 -19
  110. package/dist/cjs/ion-virtual-scroll.cjs.entry.js +29 -28
  111. package/dist/cjs/{ionic-global-878073d1.js → ionic-global-2cde9d3a.js} +27 -31
  112. package/dist/cjs/{ios.transition-c3bfb096.js → ios.transition-da235483.js} +71 -51
  113. package/dist/cjs/{keyboard-dfd76ac3.js → keyboard-91096619.js} +3 -3
  114. package/dist/cjs/loader.cjs.js +5 -5
  115. package/dist/cjs/{md.transition-7eb9a1a7.js → md.transition-be429e07.js} +9 -16
  116. package/dist/cjs/{menu-toggle-util-cb549c2c.js → menu-toggle-util-7a01448c.js} +2 -2
  117. package/dist/cjs/{overlays-0a748609.js → overlays-32df265a.js} +29 -29
  118. package/dist/cjs/parse-d0071120.js +1237 -0
  119. package/dist/cjs/{purify-d0ad2883.js → purify-fb9c107e.js} +1 -1
  120. package/dist/cjs/sparkle-animation-player.cjs.entry.js +1 -1
  121. package/dist/cjs/sparkle-card_3.cjs.entry.js +2 -2
  122. package/dist/cjs/sparkle-character-intro.cjs.entry.js +1 -1
  123. package/dist/cjs/sparkle-code.cjs.entry.js +2 -2
  124. package/dist/cjs/sparkle-compass-post.cjs.entry.js +1 -1
  125. package/dist/cjs/sparkle-compass.cjs.entry.js +1 -1
  126. package/dist/cjs/sparkle-core.cjs.js +5 -5
  127. package/dist/cjs/sparkle-course-root.cjs.entry.js +12 -11
  128. package/dist/cjs/sparkle-dropdown.cjs.entry.js +2 -2
  129. package/dist/cjs/sparkle-emoji.cjs.entry.js +1 -1
  130. package/dist/cjs/sparkle-export-lessons_6.cjs.entry.js +12 -11
  131. package/dist/cjs/sparkle-facilitator-header_19.cjs.entry.js +23 -22
  132. package/dist/cjs/sparkle-facilitator-notes-form.cjs.entry.js +8 -7
  133. package/dist/cjs/sparkle-feed-post.cjs.entry.js +104 -3
  134. package/dist/cjs/sparkle-feedback.cjs.entry.js +9 -8
  135. package/dist/cjs/sparkle-goal-form.cjs.entry.js +8 -7
  136. package/dist/cjs/sparkle-goal-progress.cjs.entry.js +1 -1
  137. package/dist/cjs/sparkle-gww-comment-list.cjs.entry.js +1 -1
  138. package/dist/cjs/sparkle-gww-graph.cjs.entry.js +1 -1
  139. package/dist/cjs/sparkle-gww-item.cjs.entry.js +5 -5
  140. package/dist/cjs/sparkle-intro.cjs.entry.js +1 -1
  141. package/dist/cjs/sparkle-lower-content-nav.cjs.entry.js +1 -1
  142. package/dist/cjs/sparkle-menu-collapsible.cjs.entry.js +2 -2
  143. package/dist/cjs/sparkle-menu-toggle_3.cjs.entry.js +3 -3
  144. package/dist/cjs/sparkle-modal-image.cjs.entry.js +1 -1
  145. package/dist/cjs/sparkle-notfound-page.cjs.entry.js +1 -1
  146. package/dist/cjs/sparkle-overlay.cjs.entry.js +1 -1
  147. package/dist/cjs/sparkle-poll.cjs.entry.js +1 -1
  148. package/dist/cjs/sparkle-quiz-container.cjs.entry.js +1 -1
  149. package/dist/cjs/{sparkle-quiz.cjs.entry.js → sparkle-quiz-v1.cjs.entry.js} +5 -5
  150. package/dist/cjs/sparkle-select.cjs.entry.js +1 -1
  151. package/dist/cjs/sparkle-sidebar.cjs.entry.js +1 -1
  152. package/dist/cjs/sparkle-tab.cjs.entry.js +1 -1
  153. package/dist/cjs/sparkle-table-of-contents.cjs.entry.js +1 -1
  154. package/dist/cjs/sparkle-tabs.cjs.entry.js +1 -1
  155. package/dist/cjs/sparkle-validation-error.cjs.entry.js +1 -1
  156. package/dist/cjs/sparkle-youtube.cjs.entry.js +1 -1
  157. package/dist/cjs/{spinner-configs-6f6b7ef0.js → spinner-configs-0ac05f2d.js} +43 -43
  158. package/dist/cjs/{status-tap-8697433c.js → status-tap-033befa2.js} +7 -5
  159. package/dist/cjs/stencil-async-content.cjs.entry.js +1 -1
  160. package/dist/cjs/stencil-route-title.cjs.entry.js +2 -2
  161. package/dist/cjs/stencil-router-prompt.cjs.entry.js +2 -2
  162. package/dist/cjs/stencil-router-redirect.cjs.entry.js +2 -2
  163. package/dist/cjs/{student.service-7af424fe.js → student.service-d48f1c99.js} +7 -7
  164. package/dist/cjs/{swipe-back-7e08b5e0.js → swipe-back-4a826f9b.js} +5 -5
  165. package/dist/cjs/{theme-4252ac15.js → theme-b0b295c1.js} +6 -5
  166. package/dist/cjs/{user.store-3d29139d.js → user.store-8a049c4e.js} +1 -1
  167. package/dist/collection/collection-manifest.json +4 -2
  168. package/dist/collection/components/sparkle-feed-post/sparkle-feed-post.css +16 -0
  169. package/dist/collection/components/sparkle-feed-post/sparkle-feed-post.js +197 -3
  170. package/dist/collection/components/sparkle-quiz/{sparkle-quiz.css → sparkle-quiz/sparkle-quiz.css} +0 -0
  171. package/dist/collection/components/sparkle-quiz/sparkle-quiz/sparkle-quiz.js +327 -0
  172. package/dist/collection/components/sparkle-quiz/sparkle-quiz-v1.css +48 -0
  173. package/dist/collection/components/sparkle-quiz/{sparkle-quiz.js → sparkle-quiz-v1.js} +4 -4
  174. package/dist/esm/{PrivateRoute-f59ba6b5.js → PrivateRoute-7b526801.js} +2 -2
  175. package/dist/esm/{active-router-909088d6.js → active-router-fc9e4e06.js} +1 -1
  176. package/dist/esm/{animation-7b083379.js → animation-e0716b39.js} +83 -78
  177. package/dist/esm/{app-globals-5c736ae5.js → app-globals-3f0347b0.js} +1 -1
  178. package/dist/esm/{auth.service-7ab0ac58.js → auth.service-9fb86455.js} +3 -2
  179. package/dist/esm/{auth.store-98fad96d.js → auth.store-633e8414.js} +45 -725
  180. package/dist/esm/compass-svg.entry.js +1 -1
  181. package/dist/esm/context-consumer.entry.js +1 -1
  182. package/dist/esm/course-select.entry.js +1 -1
  183. package/dist/esm/{cubic-bezier-a7ad9c8e.js → cubic-bezier-4c0db14f.js} +10 -11
  184. package/dist/esm/{dom-utils-8e73e88b.js → dom-utils-109a7d75.js} +1 -1
  185. package/dist/esm/{facilitator.service-1524bf89.js → facilitator.service-8fd435bf.js} +2 -1
  186. package/dist/esm/{feed.service-4900fc62.js → feed.service-ace049e5.js} +2 -1
  187. package/dist/esm/{focus-visible-40cda868.js → focus-visible-4e9a0764.js} +19 -6
  188. package/dist/esm/{framework-delegate-518bd233.js → framework-delegate-e4f8013b.js} +11 -13
  189. package/dist/esm/{gesture-controller-686622ba.js → gesture-controller-7be18351.js} +1 -1
  190. package/dist/esm/{haptic-99c9e346.js → haptic-522f76f2.js} +3 -2
  191. package/dist/esm/{hardware-back-button-b6ccf74a.js → hardware-back-button-fa04d6e9.js} +8 -8
  192. package/dist/esm/{header-mobile-collapse_2.entry.js → header-mobile-collapse.entry.js} +3 -24
  193. package/dist/esm/{helpers-9d0930de.js → helpers-03073fe4.js} +81 -15
  194. package/dist/esm/httpService-61864992.js +683 -0
  195. package/dist/esm/{icons-05b6ce86.js → icons-90b957ab.js} +1 -1
  196. package/dist/esm/{index-a12c14bd.js → index-21661af2.js} +22 -19
  197. package/dist/esm/index-37004831.js +128 -0
  198. package/dist/esm/{index-ea26196a.js → index-4044fde9.js} +5 -2
  199. package/dist/esm/{tap-click-cca25060.js → index-a2d2941d.js} +30 -20
  200. package/dist/esm/{index-8de9446b.js → index-b4b4e503.js} +17 -25
  201. package/dist/esm/{index-435af8e6.js → index-be6112f8.js} +9 -8
  202. package/dist/esm/{index-5568e3fa.js → index-c04b9ed5.js} +18 -11
  203. package/dist/esm/index-dad75b83.js +34 -0
  204. package/dist/esm/{index-fa5e93c5.js → index-dedabca0.js} +19 -28
  205. package/dist/esm/{index-c92f99d4.js → index-f9b9ba5d.js} +2 -2
  206. package/dist/esm/{index.es-89cff481.js → index.es-283fbd2e.js} +2 -7
  207. package/dist/esm/index.js +9 -8
  208. package/dist/esm/{injectHistory-52d0c7eb.js → injectHistory-968f626d.js} +1 -1
  209. package/dist/esm/{input-shims-7f04e044.js → input-shims-cc3720a0.js} +21 -24
  210. package/dist/esm/ion-accordion-group.entry.js +17 -9
  211. package/dist/esm/ion-accordion.entry.js +19 -23
  212. package/dist/esm/ion-action-sheet_4.entry.js +216 -212
  213. package/dist/esm/ion-app.entry.js +8 -8
  214. package/dist/esm/ion-avatar.entry.js +2 -2
  215. package/dist/esm/ion-back-button.entry.js +11 -11
  216. package/dist/esm/ion-backdrop.entry.js +4 -4
  217. package/dist/esm/ion-badge.entry.js +3 -3
  218. package/dist/esm/ion-breadcrumb.entry.js +13 -21
  219. package/dist/esm/ion-breadcrumbs.entry.js +12 -14
  220. package/dist/esm/ion-button.entry.js +125 -0
  221. package/dist/esm/ion-buttons_3.entry.js +13 -13
  222. package/dist/esm/ion-card-header.entry.js +4 -4
  223. package/dist/esm/ion-card-subtitle.entry.js +4 -4
  224. package/dist/esm/ion-card-title.entry.js +4 -4
  225. package/dist/esm/ion-card_2.entry.js +9 -11
  226. package/dist/esm/ion-checkbox_4.entry.js +22 -32
  227. package/dist/esm/ion-chip.entry.js +3 -3
  228. package/dist/esm/ion-col_3.entry.js +29 -25
  229. package/dist/esm/ion-content_2.entry.js +59 -52
  230. package/dist/esm/ion-datetime-button.entry.js +308 -0
  231. package/dist/esm/ion-datetime.entry.js +723 -1216
  232. package/dist/esm/ion-fab-button.entry.js +25 -9
  233. package/dist/esm/ion-fab-list.entry.js +4 -4
  234. package/dist/esm/ion-fab.entry.js +15 -13
  235. package/dist/esm/ion-footer.entry.js +16 -14
  236. package/dist/esm/ion-icon_13.entry.js +1489 -0
  237. package/dist/esm/ion-img.entry.js +4 -4
  238. package/dist/esm/ion-infinite-scroll-content.entry.js +5 -5
  239. package/dist/esm/ion-infinite-scroll.entry.js +13 -15
  240. package/dist/esm/ion-input_2.entry.js +13 -16
  241. package/dist/esm/ion-item-divider.entry.js +4 -4
  242. package/dist/esm/ion-item-group.entry.js +3 -3
  243. package/dist/esm/ion-item-option.entry.js +8 -8
  244. package/dist/esm/ion-item-options.entry.js +5 -5
  245. package/dist/esm/ion-item-sliding.entry.js +41 -46
  246. package/dist/esm/ion-label_2.entry.js +13 -13
  247. package/dist/esm/ion-loading.entry.js +23 -35
  248. package/dist/esm/ion-menu-button.entry.js +13 -13
  249. package/dist/esm/ion-menu-toggle.entry.js +7 -7
  250. package/dist/esm/ion-menu.entry.js +47 -40
  251. package/dist/esm/ion-modal.entry.js +921 -268
  252. package/dist/esm/ion-nav-link.entry.js +2 -2
  253. package/dist/esm/ion-nav.entry.js +45 -35
  254. package/dist/esm/ion-picker-column-internal_2.entry.js +151 -43
  255. package/dist/esm/ion-picker-column.entry.js +23 -25
  256. package/dist/esm/ion-picker.entry.js +15 -17
  257. package/dist/esm/ion-progress-bar.entry.js +6 -8
  258. package/dist/esm/ion-refresher-content.entry.js +6 -12
  259. package/dist/esm/ion-refresher.entry.js +68 -50
  260. package/dist/esm/ion-reorder-group.entry.js +15 -16
  261. package/dist/esm/ion-reorder.entry.js +3 -3
  262. package/dist/esm/ion-route-redirect.entry.js +1 -1
  263. package/dist/esm/ion-route.entry.js +1 -1
  264. package/dist/esm/ion-router-link.entry.js +5 -5
  265. package/dist/esm/ion-router-outlet.entry.js +22 -20
  266. package/dist/esm/ion-router.entry.js +32 -31
  267. package/dist/esm/ion-searchbar.entry.js +14 -16
  268. package/dist/esm/ion-segment-button.entry.js +8 -8
  269. package/dist/esm/ion-segment.entry.js +24 -26
  270. package/dist/esm/ion-select_2.entry.js +59 -56
  271. package/dist/esm/ion-skeleton-text.entry.js +4 -4
  272. package/dist/esm/ion-slide.entry.js +3 -3
  273. package/dist/esm/ion-slides.entry.js +23 -23
  274. package/dist/esm/ion-spinner.entry.js +8 -8
  275. package/dist/esm/ion-split-pane.entry.js +10 -11
  276. package/dist/esm/ion-tab-bar.entry.js +5 -5
  277. package/dist/esm/ion-tab-button.entry.js +6 -6
  278. package/dist/esm/ion-tab.entry.js +4 -4
  279. package/dist/esm/ion-tabs.entry.js +4 -5
  280. package/dist/esm/ion-textarea.entry.js +29 -28
  281. package/dist/esm/ion-thumbnail.entry.js +2 -2
  282. package/dist/esm/ion-toast.entry.js +23 -43
  283. package/dist/esm/ion-toggle.entry.js +36 -19
  284. package/dist/esm/ion-virtual-scroll.entry.js +29 -28
  285. package/dist/esm/{ionic-global-0939c477.js → ionic-global-4903e23e.js} +27 -31
  286. package/dist/esm/{ios.transition-db4f4ca6.js → ios.transition-3a6179bb.js} +71 -51
  287. package/dist/esm/{keyboard-2503e874.js → keyboard-7e8329b3.js} +3 -3
  288. package/dist/esm/loader.js +5 -5
  289. package/dist/esm/{md.transition-8294b503.js → md.transition-cff16bf3.js} +9 -16
  290. package/dist/esm/{menu-toggle-util-06adade3.js → menu-toggle-util-59241733.js} +2 -2
  291. package/dist/esm/{overlays-5c777f10.js → overlays-bdd9344a.js} +29 -29
  292. package/dist/esm/parse-1ae3a9bb.js +1196 -0
  293. package/dist/esm/polyfills/css-shim.js +1 -1
  294. package/dist/esm/{purify-eb68cf1d.js → purify-7085b248.js} +1 -1
  295. package/dist/esm/sparkle-animation-player.entry.js +1 -1
  296. package/dist/esm/sparkle-card_3.entry.js +2 -2
  297. package/dist/esm/sparkle-character-intro.entry.js +1 -1
  298. package/dist/esm/sparkle-code.entry.js +2 -2
  299. package/dist/esm/sparkle-compass-post.entry.js +1 -1
  300. package/dist/esm/sparkle-compass.entry.js +1 -1
  301. package/dist/esm/sparkle-core.js +5 -5
  302. package/dist/esm/sparkle-course-root.entry.js +12 -11
  303. package/dist/esm/sparkle-dropdown.entry.js +2 -2
  304. package/dist/esm/sparkle-emoji.entry.js +1 -1
  305. package/dist/esm/sparkle-export-lessons_6.entry.js +12 -11
  306. package/dist/esm/sparkle-facilitator-header_19.entry.js +18 -17
  307. package/dist/esm/sparkle-facilitator-notes-form.entry.js +8 -7
  308. package/dist/esm/sparkle-feed-post.entry.js +104 -3
  309. package/dist/esm/sparkle-feedback.entry.js +9 -8
  310. package/dist/esm/sparkle-goal-form.entry.js +8 -7
  311. package/dist/esm/sparkle-goal-progress.entry.js +1 -1
  312. package/dist/esm/sparkle-gww-comment-list.entry.js +1 -1
  313. package/dist/esm/sparkle-gww-graph.entry.js +1 -1
  314. package/dist/esm/sparkle-gww-item.entry.js +5 -5
  315. package/dist/esm/sparkle-intro.entry.js +1 -1
  316. package/dist/esm/sparkle-lower-content-nav.entry.js +1 -1
  317. package/dist/esm/sparkle-menu-collapsible.entry.js +2 -2
  318. package/dist/esm/sparkle-menu-toggle_3.entry.js +3 -3
  319. package/dist/esm/sparkle-modal-image.entry.js +1 -1
  320. package/dist/esm/sparkle-notfound-page.entry.js +1 -1
  321. package/dist/esm/sparkle-overlay.entry.js +1 -1
  322. package/dist/esm/sparkle-poll.entry.js +1 -1
  323. package/dist/esm/sparkle-quiz-container.entry.js +1 -1
  324. package/dist/esm/{sparkle-quiz.entry.js → sparkle-quiz-v1.entry.js} +5 -5
  325. package/dist/esm/sparkle-select.entry.js +1 -1
  326. package/dist/esm/sparkle-sidebar.entry.js +1 -1
  327. package/dist/esm/sparkle-tab.entry.js +1 -1
  328. package/dist/esm/sparkle-table-of-contents.entry.js +1 -1
  329. package/dist/esm/sparkle-tabs.entry.js +1 -1
  330. package/dist/esm/sparkle-validation-error.entry.js +1 -1
  331. package/dist/esm/sparkle-youtube.entry.js +1 -1
  332. package/dist/esm/{spinner-configs-f609a655.js → spinner-configs-a37e628a.js} +43 -43
  333. package/dist/esm/{status-tap-e8c0c752.js → status-tap-463d0f87.js} +7 -5
  334. package/dist/esm/stencil-async-content.entry.js +1 -1
  335. package/dist/esm/stencil-route-title.entry.js +2 -2
  336. package/dist/esm/stencil-router-prompt.entry.js +2 -2
  337. package/dist/esm/stencil-router-redirect.entry.js +2 -2
  338. package/dist/esm/{student.service-c2f44f3a.js → student.service-e6eb1f99.js} +2 -2
  339. package/dist/esm/{swipe-back-9a3b2cdd.js → swipe-back-f8765ac9.js} +5 -5
  340. package/dist/esm/{theme-c336c9d9.js → theme-7ef00c83.js} +6 -5
  341. package/dist/esm/{user.store-e6ff7558.js → user.store-b8645067.js} +1 -1
  342. package/dist/node_modules/@ionic/core/dist/collection/components/content/content.css +8 -1
  343. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.ios.css +46 -22
  344. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.md.css +43 -19
  345. package/dist/node_modules/@ionic/core/dist/collection/components/datetime-button/datetime-button.css +60 -0
  346. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.ios.css +2 -1
  347. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.md.css +2 -2
  348. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.ios.css +6 -6
  349. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.md.css +6 -6
  350. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.ios.css +3 -3
  351. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.ios.css +1 -6
  352. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.md.css +1 -6
  353. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.ios.css +1 -5
  354. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.md.css +1 -5
  355. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.ios.css +31 -3
  356. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.md.css +29 -1
  357. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +24 -1
  358. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.md.css +24 -1
  359. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.ios.css +4 -0
  360. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.md.css +4 -0
  361. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.ios.css +2 -2
  362. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.md.css +2 -2
  363. package/dist/node_modules/@ionic/core/dist/collection/components/spinner/spinner.css +8 -8
  364. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.ios.css +34 -17
  365. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.md.css +34 -17
  366. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.ios.css +50 -1
  367. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.md.css +27 -0
  368. package/dist/sparkle-core/index.esm.js +1 -1
  369. package/dist/sparkle-core/p-0147266a.js +1 -0
  370. package/dist/sparkle-core/{p-c8ae9e47.entry.js → p-014b5707.entry.js} +1 -1
  371. package/dist/sparkle-core/p-03585916.js +1 -0
  372. package/dist/sparkle-core/{p-797c23ed.entry.js → p-04c7b276.entry.js} +1 -1
  373. package/dist/sparkle-core/{p-5f45d206.entry.js → p-06642405.entry.js} +1 -1
  374. package/dist/sparkle-core/{p-39e5a90f.entry.js → p-06c7d0f2.entry.js} +1 -1
  375. package/dist/sparkle-core/{p-703ca87c.js → p-076f0239.js} +0 -0
  376. package/dist/sparkle-core/p-0bb0cf41.entry.js +1 -0
  377. package/dist/sparkle-core/p-0c0f8acd.entry.js +4 -0
  378. package/dist/sparkle-core/{p-69e7783d.js → p-0e4de1d0.js} +0 -0
  379. package/dist/sparkle-core/p-0ea2518d.entry.js +1 -0
  380. package/dist/sparkle-core/p-1019ebc3.js +1 -0
  381. package/dist/sparkle-core/{p-21db4e8e.entry.js → p-162bff1a.entry.js} +1 -1
  382. package/dist/sparkle-core/p-17eb4633.js +4 -0
  383. package/dist/sparkle-core/p-1b1ba156.entry.js +1 -0
  384. package/dist/sparkle-core/{p-5b40aae5.entry.js → p-1e4782af.entry.js} +1 -1
  385. package/dist/sparkle-core/p-1f0b3ff9.entry.js +4 -0
  386. package/dist/sparkle-core/{p-ed0e9d29.entry.js → p-214d1229.entry.js} +1 -1
  387. package/dist/sparkle-core/p-25e556cc.entry.js +1 -0
  388. package/dist/sparkle-core/{p-37c00e39.entry.js → p-27fbabc3.entry.js} +1 -1
  389. package/dist/sparkle-core/{p-52f1d1ca.entry.js → p-285ab4ed.entry.js} +1 -1
  390. package/dist/sparkle-core/{p-7d61177b.entry.js → p-2ba70507.entry.js} +1 -1
  391. package/dist/sparkle-core/p-2d4a5ddf.entry.js +4 -0
  392. package/dist/sparkle-core/{p-23a9f7d1.entry.js → p-2d9659e2.entry.js} +1 -1
  393. package/dist/sparkle-core/p-2e035338.entry.js +1 -0
  394. package/dist/sparkle-core/p-2e2b813c.js +4 -0
  395. package/dist/sparkle-core/p-2f10208d.entry.js +1 -0
  396. package/dist/sparkle-core/p-2fba9a3a.entry.js +1 -0
  397. package/dist/sparkle-core/p-317037de.entry.js +1 -0
  398. package/dist/sparkle-core/{p-d48e95c1.entry.js → p-32762a44.entry.js} +1 -1
  399. package/dist/sparkle-core/p-32f4e565.entry.js +1 -0
  400. package/dist/sparkle-core/p-340754ed.js +1 -0
  401. package/dist/sparkle-core/{p-057f6a23.entry.js → p-352677e6.entry.js} +1 -1
  402. package/dist/sparkle-core/{p-b49ca0ea.entry.js → p-370609ba.entry.js} +1 -1
  403. package/dist/sparkle-core/{p-aa9ebc39.entry.js → p-38b7cf68.entry.js} +1 -1
  404. package/dist/sparkle-core/{p-667accac.entry.js → p-3963e02b.entry.js} +1 -1
  405. package/dist/sparkle-core/p-3bc68dd0.js +1 -0
  406. package/dist/sparkle-core/p-3c133235.entry.js +1 -0
  407. package/dist/sparkle-core/p-3f85e1ca.js +4 -0
  408. package/dist/sparkle-core/{p-04583c51.entry.js → p-4053ecdb.entry.js} +1 -1
  409. package/dist/sparkle-core/{p-f6bafe1d.js → p-405f7c58.js} +2 -2
  410. package/dist/sparkle-core/p-4320dac0.entry.js +1 -0
  411. package/dist/sparkle-core/p-44f813b7.entry.js +1 -0
  412. package/dist/sparkle-core/p-46869031.entry.js +1 -0
  413. package/dist/sparkle-core/{p-232cc3bc.js → p-4a5f2b2b.js} +1 -1
  414. package/dist/sparkle-core/p-4ae75caa.entry.js +1 -0
  415. package/dist/sparkle-core/p-4c6a7e52.js +1 -0
  416. package/dist/sparkle-core/{p-8c6b6038.js → p-4d4077ea.js} +0 -0
  417. package/dist/sparkle-core/{p-3a202a38.entry.js → p-5096739e.entry.js} +1 -1
  418. package/dist/sparkle-core/p-5322c920.entry.js +1 -0
  419. package/dist/sparkle-core/p-539bf742.js +4 -0
  420. package/dist/sparkle-core/{p-2bd4c60e.js → p-53bcbd1d.js} +1 -1
  421. package/dist/sparkle-core/{p-6c5b5ea2.entry.js → p-54ada5e3.entry.js} +1 -1
  422. package/dist/sparkle-core/p-5519d283.entry.js +1 -0
  423. package/dist/sparkle-core/p-554da5b8.entry.js +1 -0
  424. package/dist/sparkle-core/{p-401feeb0.js → p-56a2e8a2.js} +1 -1
  425. package/dist/sparkle-core/{p-b3909012.entry.js → p-5893bbe5.entry.js} +1 -1
  426. package/dist/sparkle-core/p-594a6982.entry.js +1 -0
  427. package/dist/sparkle-core/{p-e1aee41e.entry.js → p-5c435d5a.entry.js} +1 -1
  428. package/dist/sparkle-core/{p-f61ca75c.entry.js → p-5da2d95a.entry.js} +1 -1
  429. package/dist/sparkle-core/{p-0ad99881.js → p-5fc26938.js} +1 -1
  430. package/dist/sparkle-core/{p-a9ee3f6d.entry.js → p-601397df.entry.js} +1 -1
  431. package/dist/sparkle-core/p-604a7987.js +4 -0
  432. package/dist/sparkle-core/{p-11cf398a.entry.js → p-616941c6.entry.js} +1 -1
  433. package/dist/sparkle-core/{p-aa87c7f0.entry.js → p-6316d124.entry.js} +1 -1
  434. package/dist/sparkle-core/p-63f69cdc.entry.js +1 -0
  435. package/dist/sparkle-core/p-63f71ada.entry.js +1 -0
  436. package/dist/sparkle-core/p-64e814b9.entry.js +1 -0
  437. package/dist/sparkle-core/{p-b21d0d9f.entry.js → p-66a85393.entry.js} +2 -2
  438. package/dist/sparkle-core/p-69487d90.entry.js +1 -0
  439. package/dist/sparkle-core/{p-848fe770.entry.js → p-6b05a1d3.entry.js} +1 -1
  440. package/dist/sparkle-core/{p-c4104929.entry.js → p-6c894fa2.entry.js} +1 -1
  441. package/dist/sparkle-core/p-6ea246fe.js +4 -0
  442. package/dist/sparkle-core/{p-021fde3c.entry.js → p-6ed0236e.entry.js} +1 -1
  443. package/dist/sparkle-core/{p-c748f64e.entry.js → p-6f0545b3.entry.js} +1 -1
  444. package/dist/sparkle-core/{p-337f92b0.entry.js → p-727e1c28.entry.js} +5 -5
  445. package/dist/sparkle-core/p-7d8427eb.js +4 -0
  446. package/dist/sparkle-core/{p-5264da79.js → p-7e7ce516.js} +0 -0
  447. package/dist/sparkle-core/{p-c5b9bdd6.entry.js → p-81714d94.entry.js} +1 -1
  448. package/dist/sparkle-core/{p-90466494.entry.js → p-82ad4e7c.entry.js} +1 -1
  449. package/dist/sparkle-core/p-859563db.entry.js +1 -0
  450. package/dist/sparkle-core/{p-4dc3ef96.entry.js → p-865f36a8.entry.js} +1 -1
  451. package/dist/sparkle-core/p-871106e0.js +4 -0
  452. package/dist/sparkle-core/{p-7493ee15.entry.js → p-8a41b502.entry.js} +1 -1
  453. package/dist/sparkle-core/p-8c74cbb6.entry.js +1 -0
  454. package/dist/sparkle-core/p-91accfc1.js +1 -0
  455. package/dist/sparkle-core/{p-d4c07aca.js → p-924b2917.js} +0 -0
  456. package/dist/sparkle-core/p-93e74f1b.entry.js +1 -0
  457. package/dist/sparkle-core/{p-d7baf31e.entry.js → p-975b99ee.entry.js} +1 -1
  458. package/dist/sparkle-core/p-99ee9919.js +1 -0
  459. package/dist/sparkle-core/{p-fbd7eeca.entry.js → p-9e309b3e.entry.js} +1 -1
  460. package/dist/sparkle-core/{p-996361f9.entry.js → p-9e7fee8f.entry.js} +1 -1
  461. package/dist/sparkle-core/{p-52d4715a.js → p-a019ad0c.js} +1 -1
  462. package/dist/sparkle-core/p-a208ab2d.js +4 -0
  463. package/dist/sparkle-core/p-a2638250.entry.js +1 -0
  464. package/dist/sparkle-core/{p-016a7aaf.entry.js → p-a2ebcf0a.entry.js} +1 -1
  465. package/dist/sparkle-core/p-a5c5da9a.entry.js +1 -0
  466. package/dist/sparkle-core/p-a85598ad.js +1 -0
  467. package/dist/sparkle-core/{p-954c89c2.entry.js → p-a8a77bec.entry.js} +1 -1
  468. package/dist/sparkle-core/{p-6823e6c1.entry.js → p-a98d7ebe.entry.js} +1 -1
  469. package/dist/sparkle-core/p-ad102371.js +4 -0
  470. package/dist/sparkle-core/p-add30d46.js +4 -0
  471. package/dist/sparkle-core/p-b236d258.entry.js +10 -0
  472. package/dist/sparkle-core/p-b4b01fa2.entry.js +1 -0
  473. package/dist/sparkle-core/{p-5a98d42e.entry.js → p-b4bc8b02.entry.js} +2 -2
  474. package/dist/sparkle-core/{p-5e4ec238.entry.js → p-b5ec8fb0.entry.js} +1 -1
  475. package/dist/sparkle-core/p-b83444c7.entry.js +1 -0
  476. package/dist/sparkle-core/p-b9933822.js +4 -0
  477. package/dist/sparkle-core/{p-beb401e3.entry.js → p-b9b1d4da.entry.js} +1 -1
  478. package/dist/sparkle-core/p-be28346b.js +4 -0
  479. package/dist/sparkle-core/p-c278db5f.entry.js +1 -0
  480. package/dist/sparkle-core/p-c2990b24.entry.js +1 -0
  481. package/dist/sparkle-core/p-c2bbaf55.entry.js +5 -0
  482. package/dist/sparkle-core/p-c4af184b.entry.js +1 -0
  483. package/dist/sparkle-core/p-c71cbbf7.entry.js +1 -0
  484. package/dist/sparkle-core/p-c8c73fa7.js +4 -0
  485. package/dist/sparkle-core/{p-11234d0f.entry.js → p-c8fe45df.entry.js} +1 -1
  486. package/dist/sparkle-core/p-c9cd4ff1.js +1 -0
  487. package/dist/sparkle-core/{p-a7832a51.js → p-ca4c8a10.js} +1 -1
  488. package/dist/sparkle-core/{p-4550e10f.entry.js → p-cab3da3c.entry.js} +1 -1
  489. package/dist/sparkle-core/p-cc518c36.entry.js +1 -0
  490. package/dist/sparkle-core/p-cd832fbf.entry.js +1 -0
  491. package/dist/sparkle-core/p-ce94efdb.entry.js +4 -0
  492. package/dist/sparkle-core/p-cffd4817.entry.js +1 -0
  493. package/dist/sparkle-core/{p-034306e2.js → p-d0ac5f17.js} +1 -1
  494. package/dist/sparkle-core/{p-c69b0a7a.entry.js → p-d0adf726.entry.js} +1 -1
  495. package/dist/sparkle-core/p-d1fcbfc2.js +4 -0
  496. package/dist/sparkle-core/{p-03ec54a8.entry.js → p-d20e4fcf.entry.js} +1 -1
  497. package/dist/sparkle-core/p-d24e53ab.entry.js +1 -0
  498. package/dist/sparkle-core/p-d288e6c1.entry.js +1 -0
  499. package/dist/sparkle-core/p-d432d3ac.entry.js +1 -0
  500. package/dist/sparkle-core/{p-ee0d7f19.entry.js → p-d601810e.entry.js} +1 -1
  501. package/dist/sparkle-core/p-d81a0680.js +1 -0
  502. package/dist/sparkle-core/{p-2f437793.entry.js → p-d969f7d0.entry.js} +14 -14
  503. package/dist/sparkle-core/p-dabc80c4.entry.js +1 -0
  504. package/dist/sparkle-core/p-db8387eb.entry.js +1 -0
  505. package/dist/sparkle-core/{p-67f71099.entry.js → p-dca90a55.entry.js} +1 -1
  506. package/dist/sparkle-core/p-dd2e7f84.js +4 -0
  507. package/dist/sparkle-core/p-e0429a19.entry.js +1 -0
  508. package/dist/sparkle-core/{p-b07a2cf2.entry.js → p-e249aebf.entry.js} +1 -1
  509. package/dist/sparkle-core/p-e3e36ce9.entry.js +1 -0
  510. package/dist/sparkle-core/{p-1726da2f.entry.js → p-e421d638.entry.js} +1 -1
  511. package/dist/sparkle-core/{p-85429b12.entry.js → p-e65c72cc.entry.js} +1 -1
  512. package/dist/sparkle-core/p-e7066c64.entry.js +1 -0
  513. package/dist/sparkle-core/{p-ff4d6858.js → p-e7568d4b.js} +2 -2
  514. package/dist/sparkle-core/{p-3defe550.entry.js → p-e8988989.entry.js} +1 -1
  515. package/dist/sparkle-core/p-e9431eeb.js +7 -0
  516. package/dist/sparkle-core/p-ea962e1b.entry.js +1 -0
  517. package/dist/sparkle-core/p-eaa8bbee.js +4 -0
  518. package/dist/sparkle-core/p-eb40a191.entry.js +1 -0
  519. package/dist/sparkle-core/{p-330ccc7c.entry.js → p-ecdea569.entry.js} +1 -1
  520. package/dist/sparkle-core/p-ed9f48c4.entry.js +1 -0
  521. package/dist/sparkle-core/p-ee1e0eb4.js +2 -0
  522. package/dist/sparkle-core/{p-d394eed1.entry.js → p-ef6c2352.entry.js} +1 -1
  523. package/dist/sparkle-core/p-f0cf4a8f.entry.js +1 -0
  524. package/dist/sparkle-core/{p-a9ccb0df.js → p-f3cba72a.js} +0 -0
  525. package/dist/sparkle-core/{p-08923b40.entry.js → p-f4b0b6a4.entry.js} +1 -1
  526. package/dist/sparkle-core/{p-d00f550b.entry.js → p-fc965b88.entry.js} +1 -1
  527. package/dist/sparkle-core/p-fd430a82.entry.js +1 -0
  528. package/dist/sparkle-core/p-fd8d0738.entry.js +4 -0
  529. package/dist/sparkle-core/{p-90389886.entry.js → p-fda95b6e.entry.js} +1 -1
  530. package/dist/sparkle-core/p-fde382f0.entry.js +4 -0
  531. package/dist/sparkle-core/{p-350adbaa.entry.js → p-fe6dc976.entry.js} +1 -1
  532. package/dist/sparkle-core/{p-ecd39170.entry.js → p-ff0e0d4e.entry.js} +1 -1
  533. package/dist/sparkle-core/sparkle-core.css +1 -1
  534. package/dist/sparkle-core/sparkle-core.esm.js +1 -1
  535. package/dist/types/components/sparkle-feed-post/sparkle-feed-post.d.ts +16 -0
  536. package/dist/types/components/sparkle-quiz/sparkle-quiz/sparkle-quiz.d.ts +42 -0
  537. package/dist/types/components/sparkle-quiz/sparkle-quiz-v1.d.ts +41 -0
  538. package/dist/types/components/sparkle-quiz/sparkle-quiz.d.ts +36 -36
  539. package/dist/types/components.d.ts +96 -11
  540. package/package.json +3 -3
  541. package/dist/cjs/ion-button_3.cjs.entry.js +0 -383
  542. package/dist/cjs/ion-icon_2.cjs.entry.js +0 -397
  543. package/dist/cjs/ion-range.cjs.entry.js +0 -445
  544. package/dist/cjs/sparkle-quiz-feedback_5.cjs.entry.js +0 -117
  545. package/dist/cjs/stencil-route-link.cjs.entry.js +0 -77
  546. package/dist/esm/ion-button_3.entry.js +0 -377
  547. package/dist/esm/ion-icon_2.entry.js +0 -392
  548. package/dist/esm/ion-range.entry.js +0 -441
  549. package/dist/esm/sparkle-quiz-feedback_5.entry.js +0 -109
  550. package/dist/esm/stencil-route-link.entry.js +0 -73
  551. package/dist/sparkle-core/p-034aa29f.entry.js +0 -5
  552. package/dist/sparkle-core/p-052caa63.js +0 -1
  553. package/dist/sparkle-core/p-0580419b.entry.js +0 -1
  554. package/dist/sparkle-core/p-063cd168.js +0 -4
  555. package/dist/sparkle-core/p-06c0cce3.entry.js +0 -1
  556. package/dist/sparkle-core/p-081968cc.entry.js +0 -1
  557. package/dist/sparkle-core/p-0934f5dd.entry.js +0 -1
  558. package/dist/sparkle-core/p-1133fcbd.js +0 -4
  559. package/dist/sparkle-core/p-1551190a.entry.js +0 -1
  560. package/dist/sparkle-core/p-1e8c22e0.entry.js +0 -1
  561. package/dist/sparkle-core/p-21bf4ca0.entry.js +0 -1
  562. package/dist/sparkle-core/p-28950db0.entry.js +0 -1
  563. package/dist/sparkle-core/p-2af82cc1.entry.js +0 -1
  564. package/dist/sparkle-core/p-35a7bd6c.entry.js +0 -1
  565. package/dist/sparkle-core/p-35c5c110.entry.js +0 -1
  566. package/dist/sparkle-core/p-3ff617d5.js +0 -1
  567. package/dist/sparkle-core/p-4028676b.js +0 -4
  568. package/dist/sparkle-core/p-41124baa.js +0 -4
  569. package/dist/sparkle-core/p-41af3793.entry.js +0 -1
  570. package/dist/sparkle-core/p-43a7391b.entry.js +0 -1
  571. package/dist/sparkle-core/p-44c23f72.js +0 -1
  572. package/dist/sparkle-core/p-45e6db62.entry.js +0 -1
  573. package/dist/sparkle-core/p-48f9b960.entry.js +0 -1
  574. package/dist/sparkle-core/p-4a72626a.js +0 -1
  575. package/dist/sparkle-core/p-4ba57978.entry.js +0 -4
  576. package/dist/sparkle-core/p-4ef4b8bd.entry.js +0 -5
  577. package/dist/sparkle-core/p-4f144efa.js +0 -4
  578. package/dist/sparkle-core/p-58e98f89.entry.js +0 -1
  579. package/dist/sparkle-core/p-59f7bf6e.entry.js +0 -1
  580. package/dist/sparkle-core/p-5ec7fd67.entry.js +0 -1
  581. package/dist/sparkle-core/p-618f6f82.entry.js +0 -1
  582. package/dist/sparkle-core/p-62a6c96f.entry.js +0 -1
  583. package/dist/sparkle-core/p-65ca1fb2.entry.js +0 -1
  584. package/dist/sparkle-core/p-663fafa9.entry.js +0 -1
  585. package/dist/sparkle-core/p-680663a2.entry.js +0 -1
  586. package/dist/sparkle-core/p-6a16b9ef.entry.js +0 -4
  587. package/dist/sparkle-core/p-6b6a8f0a.entry.js +0 -1
  588. package/dist/sparkle-core/p-6ebf52fb.entry.js +0 -1
  589. package/dist/sparkle-core/p-6f45db93.js +0 -1
  590. package/dist/sparkle-core/p-6fd4985d.js +0 -4
  591. package/dist/sparkle-core/p-7052c43a.entry.js +0 -1
  592. package/dist/sparkle-core/p-70b2452c.js +0 -4
  593. package/dist/sparkle-core/p-74106ca8.entry.js +0 -1
  594. package/dist/sparkle-core/p-75572037.js +0 -1
  595. package/dist/sparkle-core/p-7568dcab.entry.js +0 -1
  596. package/dist/sparkle-core/p-768bcc9e.entry.js +0 -1
  597. package/dist/sparkle-core/p-7703bae9.entry.js +0 -1
  598. package/dist/sparkle-core/p-77c23496.entry.js +0 -1
  599. package/dist/sparkle-core/p-79606a41.entry.js +0 -1
  600. package/dist/sparkle-core/p-7976e88c.entry.js +0 -1
  601. package/dist/sparkle-core/p-7c1f59ec.js +0 -1
  602. package/dist/sparkle-core/p-7de0a22b.entry.js +0 -1
  603. package/dist/sparkle-core/p-86d099f1.js +0 -4
  604. package/dist/sparkle-core/p-87549bb7.js +0 -4
  605. package/dist/sparkle-core/p-8c470e28.entry.js +0 -1
  606. package/dist/sparkle-core/p-95d01c4c.js +0 -4
  607. package/dist/sparkle-core/p-987c64eb.js +0 -1
  608. package/dist/sparkle-core/p-9babd345.js +0 -1
  609. package/dist/sparkle-core/p-a89dea80.entry.js +0 -1
  610. package/dist/sparkle-core/p-b17dd6df.js +0 -4
  611. package/dist/sparkle-core/p-b3e6427d.js +0 -7
  612. package/dist/sparkle-core/p-b7dafaae.entry.js +0 -1
  613. package/dist/sparkle-core/p-bd062288.entry.js +0 -1
  614. package/dist/sparkle-core/p-bef34cfe.entry.js +0 -1
  615. package/dist/sparkle-core/p-c1c59771.js +0 -1
  616. package/dist/sparkle-core/p-c3d3d5c4.entry.js +0 -1
  617. package/dist/sparkle-core/p-c48bbc7c.entry.js +0 -4
  618. package/dist/sparkle-core/p-c753207f.entry.js +0 -1
  619. package/dist/sparkle-core/p-c8ed0575.js +0 -1
  620. package/dist/sparkle-core/p-c96b24bd.entry.js +0 -4
  621. package/dist/sparkle-core/p-ce13171b.entry.js +0 -1
  622. package/dist/sparkle-core/p-d4b1a14a.entry.js +0 -1
  623. package/dist/sparkle-core/p-d56efeac.entry.js +0 -4
  624. package/dist/sparkle-core/p-d59a5984.entry.js +0 -1
  625. package/dist/sparkle-core/p-d8aff730.entry.js +0 -1
  626. package/dist/sparkle-core/p-da8921d0.entry.js +0 -1
  627. package/dist/sparkle-core/p-e08059b6.js +0 -4
  628. package/dist/sparkle-core/p-e3fdd0a8.entry.js +0 -1
  629. package/dist/sparkle-core/p-ec4d22e3.entry.js +0 -1
  630. package/dist/sparkle-core/p-ed3eed72.entry.js +0 -1
  631. package/dist/sparkle-core/p-ee0717e1.entry.js +0 -4
  632. package/dist/sparkle-core/p-ef2dace6.js +0 -4
  633. package/dist/sparkle-core/p-f1106984.entry.js +0 -1
  634. package/dist/sparkle-core/p-f9b73032.entry.js +0 -1
  635. package/dist/sparkle-core/p-fef04ab5.js +0 -4
@@ -1,441 +0,0 @@
1
- import { r as registerInstance, i as createEvent, h, H as Host, e as getElement } from './index-5568e3fa.js';
2
- import { g as getIonMode } from './ionic-global-0939c477.js';
3
- import { e as clamp, l as debounceEvent, i as inheritAttributes, n as getAriaLabel, d as renderHiddenInput } from './helpers-9d0930de.js';
4
- import { i as isRTL } from './dir-03012648.js';
5
- import { c as createColorClasses, h as hostContext } from './theme-c336c9d9.js';
6
-
7
- const rangeIosCss = ":host{--knob-handle-size:calc(var(--knob-size) * 2);display:flex;position:relative;flex:3;align-items:center;font-family:var(--ion-font-family, inherit);user-select:none;z-index:2}:host(.range-disabled){pointer-events:none}::slotted(ion-label){flex:initial}::slotted(ion-icon[slot]){font-size:24px}.range-slider{position:relative;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:grab;touch-action:pan-y}:host(.range-pressed) .range-slider{cursor:grabbing}.range-pin{position:absolute;background:var(--ion-color-base);color:var(--ion-color-contrast);text-align:center;box-sizing:border-box}.range-knob-handle{left:0;top:calc((var(--height) - var(--knob-handle-size)) / 2);margin-left:calc(0px - var(--knob-handle-size) / 2);position:absolute;width:var(--knob-handle-size);height:var(--knob-handle-size);text-align:center}[dir=rtl] .range-knob-handle,:host-context([dir=rtl]) .range-knob-handle{left:unset;right:unset;right:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.range-knob-handle{margin-left:unset;-webkit-margin-start:calc(0px - var(--knob-handle-size) / 2);margin-inline-start:calc(0px - var(--knob-handle-size) / 2)}}[dir=rtl] .range-knob-handle,:host-context([dir=rtl]) .range-knob-handle{left:unset}.range-knob-handle:active,.range-knob-handle:focus{outline:none}.range-bar{border-radius:var(--bar-border-radius);left:0;top:calc((var(--height) - var(--bar-height)) / 2);position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}[dir=rtl] .range-bar,:host-context([dir=rtl]) .range-bar{left:unset;right:unset;right:0}[dir=rtl] .range-bar,:host-context([dir=rtl]) .range-bar{left:unset}.range-knob{border-radius:var(--knob-border-radius);left:calc(50% - var(--knob-size) / 2);top:calc(50% - var(--knob-size) / 2);position:absolute;width:var(--knob-size);height:var(--knob-size);background:var(--knob-background);box-shadow:var(--knob-box-shadow);z-index:2;pointer-events:none}[dir=rtl] .range-knob,:host-context([dir=rtl]) .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}[dir=rtl] .range-knob,:host-context([dir=rtl]) .range-knob{left:unset}:host(.range-pressed) .range-bar-active{will-change:left, right}:host(.in-item){width:100%}:host(.in-item) ::slotted(ion-label){align-self:center}:host{--knob-border-radius:50%;--knob-background:#ffffff;--knob-box-shadow:0 3px 1px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.13), 0 0 0 1px rgba(0, 0, 0, 0.02);--knob-size:28px;--bar-height:2px;--bar-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.1);--bar-background-active:var(--ion-color-primary, #3880ff);--bar-border-radius:0;--height:42px;padding-left:16px;padding-right:16px;padding-top:8px;padding-bottom:8px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}:host(.ion-color) .range-bar-active,:host(.ion-color) .range-tick-active{background:var(--ion-color-base)}::slotted([slot=start]){margin-left:0;margin-right:16px;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted([slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}}::slotted([slot=end]){margin-left:16px;margin-right:0;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted([slot=end]){margin-left:unset;margin-right:unset;-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}}:host(.range-has-pin){padding-top:20px}.range-bar-active{bottom:0;width:auto;background:var(--bar-background-active)}.range-tick{margin-left:-1px;border-radius:0;position:absolute;top:18px;width:2px;height:8px;background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.1);pointer-events:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.range-tick{margin-left:unset;-webkit-margin-start:-1px;margin-inline-start:-1px}}.range-tick-active{background:var(--bar-background-active)}.range-pin{transform:translate3d(0, 28px, 0) scale(0.01);padding-left:8px;padding-right:8px;padding-top:8px;padding-bottom:8px;display:inline-block;position:relative;top:-20px;min-width:28px;transition:transform 120ms ease;background:transparent;color:var(--ion-text-color, #000);font-size:12px;text-align:center}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.range-pin{padding-left:unset;padding-right:unset;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px}}.range-knob-pressed .range-pin{transform:translate3d(0, 0, 0) scale(1)}:host(.range-disabled){opacity:0.5}";
8
-
9
- const rangeMdCss = ":host{--knob-handle-size:calc(var(--knob-size) * 2);display:flex;position:relative;flex:3;align-items:center;font-family:var(--ion-font-family, inherit);user-select:none;z-index:2}:host(.range-disabled){pointer-events:none}::slotted(ion-label){flex:initial}::slotted(ion-icon[slot]){font-size:24px}.range-slider{position:relative;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:grab;touch-action:pan-y}:host(.range-pressed) .range-slider{cursor:grabbing}.range-pin{position:absolute;background:var(--ion-color-base);color:var(--ion-color-contrast);text-align:center;box-sizing:border-box}.range-knob-handle{left:0;top:calc((var(--height) - var(--knob-handle-size)) / 2);margin-left:calc(0px - var(--knob-handle-size) / 2);position:absolute;width:var(--knob-handle-size);height:var(--knob-handle-size);text-align:center}[dir=rtl] .range-knob-handle,:host-context([dir=rtl]) .range-knob-handle{left:unset;right:unset;right:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.range-knob-handle{margin-left:unset;-webkit-margin-start:calc(0px - var(--knob-handle-size) / 2);margin-inline-start:calc(0px - var(--knob-handle-size) / 2)}}[dir=rtl] .range-knob-handle,:host-context([dir=rtl]) .range-knob-handle{left:unset}.range-knob-handle:active,.range-knob-handle:focus{outline:none}.range-bar{border-radius:var(--bar-border-radius);left:0;top:calc((var(--height) - var(--bar-height)) / 2);position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}[dir=rtl] .range-bar,:host-context([dir=rtl]) .range-bar{left:unset;right:unset;right:0}[dir=rtl] .range-bar,:host-context([dir=rtl]) .range-bar{left:unset}.range-knob{border-radius:var(--knob-border-radius);left:calc(50% - var(--knob-size) / 2);top:calc(50% - var(--knob-size) / 2);position:absolute;width:var(--knob-size);height:var(--knob-size);background:var(--knob-background);box-shadow:var(--knob-box-shadow);z-index:2;pointer-events:none}[dir=rtl] .range-knob,:host-context([dir=rtl]) .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}[dir=rtl] .range-knob,:host-context([dir=rtl]) .range-knob{left:unset}:host(.range-pressed) .range-bar-active{will-change:left, right}:host(.in-item){width:100%}:host(.in-item) ::slotted(ion-label){align-self:center}:host{--knob-border-radius:50%;--knob-background:var(--bar-background-active);--knob-box-shadow:none;--knob-size:18px;--bar-height:2px;--bar-background:rgba(var(--ion-color-primary-rgb, 56, 128, 255), 0.26);--bar-background-active:var(--ion-color-primary, #3880ff);--bar-border-radius:0;--height:42px;--pin-background:var(--ion-color-primary, #3880ff);--pin-color:var(--ion-color-primary-contrast, #fff);padding-left:14px;padding-right:14px;padding-top:8px;padding-bottom:8px;font-size:12px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:14px;padding-inline-start:14px;-webkit-padding-end:14px;padding-inline-end:14px}}:host(.ion-color) .range-bar{background:rgba(var(--ion-color-base-rgb), 0.26)}:host(.ion-color) .range-bar-active,:host(.ion-color) .range-knob,:host(.ion-color) .range-pin,:host(.ion-color) .range-pin::before,:host(.ion-color) .range-tick{background:var(--ion-color-base);color:var(--ion-color-contrast)}::slotted([slot=start]){margin-left:0;margin-right:14px;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted([slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:14px;margin-inline-end:14px}}::slotted([slot=end]){margin-left:14px;margin-right:0;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted([slot=end]){margin-left:unset;margin-right:unset;-webkit-margin-start:14px;margin-inline-start:14px;-webkit-margin-end:0;margin-inline-end:0}}:host(.range-has-pin){padding-top:28px}.range-bar-active{bottom:0;width:auto;background:var(--bar-background-active)}.range-knob{transform:scale(0.67);transition-duration:120ms;transition-property:transform, background-color, border;transition-timing-function:ease;z-index:2}.range-tick{position:absolute;top:calc((var(--height) - var(--bar-height)) / 2);width:var(--bar-height);height:var(--bar-height);background:var(--bar-background-active);z-index:1;pointer-events:none}.range-tick-active{background:transparent}.range-pin{padding-left:0;padding-right:0;padding-top:8px;padding-bottom:8px;border-radius:50%;transform:translate3d(0, 0, 0) scale(0.01);display:inline-block;position:relative;min-width:28px;height:28px;transition:transform 120ms ease, background 120ms ease;background:var(--pin-background);color:var(--pin-color);text-align:center}.range-pin::before{left:50%;top:3px;margin-left:-13px;border-radius:50% 50% 50% 0;position:absolute;width:26px;height:26px;transform:rotate(-45deg);transition:background 120ms ease;background:var(--pin-background);content:\"\";z-index:-1}[dir=rtl] .range-pin::before,:host-context([dir=rtl]) .range-pin::before{left:unset;right:unset;right:50%}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.range-pin::before{margin-left:unset;-webkit-margin-start:-13px;margin-inline-start:-13px}}[dir=rtl] .range-pin::before,:host-context([dir=rtl]) .range-pin::before{left:unset}.range-knob-pressed .range-pin{transform:translate3d(0, -24px, 0) scale(1)}:host(:not(.range-has-pin)) .range-knob-pressed .range-knob{transform:scale(1)}:host(.range-disabled) .range-bar-active,:host(.range-disabled) .range-bar,:host(.range-disabled) .range-tick{background-color:var(--ion-color-step-250, #bfbfbf)}:host(.range-disabled) .range-knob{transform:scale(0.55);outline:5px solid #fff;background-color:var(--ion-color-step-250, #bfbfbf)}";
10
-
11
- const Range = class {
12
- constructor(hostRef) {
13
- registerInstance(this, hostRef);
14
- this.ionChange = createEvent(this, "ionChange", 7);
15
- this.ionStyle = createEvent(this, "ionStyle", 7);
16
- this.ionFocus = createEvent(this, "ionFocus", 7);
17
- this.ionBlur = createEvent(this, "ionBlur", 7);
18
- this.didLoad = false;
19
- this.noUpdate = false;
20
- this.hasFocus = false;
21
- this.inheritedAttributes = {};
22
- this.ratioA = 0;
23
- this.ratioB = 0;
24
- /**
25
- * How long, in milliseconds, to wait to trigger the
26
- * `ionChange` event after each change in the range value.
27
- * This also impacts form bindings such as `ngModel` or `v-model`.
28
- */
29
- this.debounce = 0;
30
- // TODO: In Ionic Framework v6 this should initialize to this.rangeId like the other form components do.
31
- /**
32
- * The name of the control, which is submitted with the form data.
33
- */
34
- this.name = '';
35
- /**
36
- * Show two knobs.
37
- */
38
- this.dualKnobs = false;
39
- /**
40
- * Minimum integer value of the range.
41
- */
42
- this.min = 0;
43
- /**
44
- * Maximum integer value of the range.
45
- */
46
- this.max = 100;
47
- /**
48
- * If `true`, a pin with integer value is shown when the knob
49
- * is pressed.
50
- */
51
- this.pin = false;
52
- /**
53
- * A callback used to format the pin text.
54
- * By default the pin text is set to `Math.round(value)`.
55
- */
56
- this.pinFormatter = (value) => Math.round(value);
57
- /**
58
- * If `true`, the knob snaps to tick marks evenly spaced based
59
- * on the step property value.
60
- */
61
- this.snaps = false;
62
- /**
63
- * Specifies the value granularity.
64
- */
65
- this.step = 1;
66
- /**
67
- * If `true`, tick marks are displayed based on the step value.
68
- * Only applies when `snaps` is `true`.
69
- */
70
- this.ticks = true;
71
- /**
72
- * If `true`, the user cannot interact with the range.
73
- */
74
- this.disabled = false;
75
- /**
76
- * the value of the range.
77
- */
78
- this.value = 0;
79
- this.clampBounds = (value) => {
80
- return clamp(this.min, value, this.max);
81
- };
82
- this.ensureValueInBounds = (value) => {
83
- if (this.dualKnobs) {
84
- return {
85
- lower: this.clampBounds(value.lower),
86
- upper: this.clampBounds(value.upper)
87
- };
88
- }
89
- else {
90
- return this.clampBounds(value);
91
- }
92
- };
93
- this.setupGesture = async () => {
94
- const rangeSlider = this.rangeSlider;
95
- if (rangeSlider) {
96
- this.gesture = (await import('./index-a12c14bd.js')).createGesture({
97
- el: rangeSlider,
98
- gestureName: 'range',
99
- gesturePriority: 100,
100
- threshold: 0,
101
- onStart: ev => this.onStart(ev),
102
- onMove: ev => this.onMove(ev),
103
- onEnd: ev => this.onEnd(ev),
104
- });
105
- this.gesture.enable(!this.disabled);
106
- }
107
- };
108
- this.handleKeyboard = (knob, isIncrease) => {
109
- let step = this.step;
110
- step = step > 0 ? step : 1;
111
- step = step / (this.max - this.min);
112
- if (!isIncrease) {
113
- step *= -1;
114
- }
115
- if (knob === 'A') {
116
- this.ratioA = clamp(0, this.ratioA + step, 1);
117
- }
118
- else {
119
- this.ratioB = clamp(0, this.ratioB + step, 1);
120
- }
121
- this.updateValue();
122
- };
123
- this.onBlur = () => {
124
- if (this.hasFocus) {
125
- this.hasFocus = false;
126
- this.ionBlur.emit();
127
- this.emitStyle();
128
- }
129
- };
130
- this.onFocus = () => {
131
- if (!this.hasFocus) {
132
- this.hasFocus = true;
133
- this.ionFocus.emit();
134
- this.emitStyle();
135
- }
136
- };
137
- }
138
- debounceChanged() {
139
- this.ionChange = debounceEvent(this.ionChange, this.debounce);
140
- }
141
- minChanged() {
142
- if (!this.noUpdate) {
143
- this.updateRatio();
144
- }
145
- }
146
- maxChanged() {
147
- if (!this.noUpdate) {
148
- this.updateRatio();
149
- }
150
- }
151
- disabledChanged() {
152
- if (this.gesture) {
153
- this.gesture.enable(!this.disabled);
154
- }
155
- this.emitStyle();
156
- }
157
- valueChanged(value) {
158
- if (!this.noUpdate) {
159
- this.updateRatio();
160
- }
161
- value = this.ensureValueInBounds(value);
162
- this.ionChange.emit({ value });
163
- }
164
- componentWillLoad() {
165
- /**
166
- * If user has custom ID set then we should
167
- * not assign the default incrementing ID.
168
- */
169
- this.rangeId = (this.el.hasAttribute('id')) ? this.el.getAttribute('id') : `ion-r-${rangeIds++}`;
170
- this.inheritedAttributes = inheritAttributes(this.el, ['aria-label']);
171
- }
172
- componentDidLoad() {
173
- this.setupGesture();
174
- this.didLoad = true;
175
- }
176
- connectedCallback() {
177
- this.updateRatio();
178
- this.debounceChanged();
179
- this.disabledChanged();
180
- /**
181
- * If we have not yet rendered
182
- * ion-range, then rangeSlider is not defined.
183
- * But if we are moving ion-range via appendChild,
184
- * then rangeSlider will be defined.
185
- */
186
- if (this.didLoad) {
187
- this.setupGesture();
188
- }
189
- }
190
- disconnectedCallback() {
191
- if (this.gesture) {
192
- this.gesture.destroy();
193
- this.gesture = undefined;
194
- }
195
- }
196
- getValue() {
197
- const value = this.value || 0;
198
- if (this.dualKnobs) {
199
- if (typeof value === 'object') {
200
- return value;
201
- }
202
- return {
203
- lower: 0,
204
- upper: value
205
- };
206
- }
207
- else {
208
- if (typeof value === 'object') {
209
- return value.upper;
210
- }
211
- return value;
212
- }
213
- }
214
- emitStyle() {
215
- this.ionStyle.emit({
216
- 'interactive': true,
217
- 'interactive-disabled': this.disabled
218
- });
219
- }
220
- onStart(detail) {
221
- const rect = this.rect = this.rangeSlider.getBoundingClientRect();
222
- const currentX = detail.currentX;
223
- // figure out which knob they started closer to
224
- let ratio = clamp(0, (currentX - rect.left) / rect.width, 1);
225
- if (isRTL(this.el)) {
226
- ratio = 1 - ratio;
227
- }
228
- this.pressedKnob =
229
- !this.dualKnobs ||
230
- Math.abs(this.ratioA - ratio) < Math.abs(this.ratioB - ratio)
231
- ? 'A'
232
- : 'B';
233
- this.setFocus(this.pressedKnob);
234
- // update the active knob's position
235
- this.update(currentX);
236
- }
237
- onMove(detail) {
238
- this.update(detail.currentX);
239
- }
240
- onEnd(detail) {
241
- this.update(detail.currentX);
242
- this.pressedKnob = undefined;
243
- }
244
- update(currentX) {
245
- // figure out where the pointer is currently at
246
- // update the knob being interacted with
247
- const rect = this.rect;
248
- let ratio = clamp(0, (currentX - rect.left) / rect.width, 1);
249
- if (isRTL(this.el)) {
250
- ratio = 1 - ratio;
251
- }
252
- if (this.snaps) {
253
- // snaps the ratio to the current value
254
- ratio = valueToRatio(ratioToValue(ratio, this.min, this.max, this.step), this.min, this.max);
255
- }
256
- // update which knob is pressed
257
- if (this.pressedKnob === 'A') {
258
- this.ratioA = ratio;
259
- }
260
- else {
261
- this.ratioB = ratio;
262
- }
263
- // Update input value
264
- this.updateValue();
265
- }
266
- get valA() {
267
- return ratioToValue(this.ratioA, this.min, this.max, this.step);
268
- }
269
- get valB() {
270
- return ratioToValue(this.ratioB, this.min, this.max, this.step);
271
- }
272
- get ratioLower() {
273
- if (this.dualKnobs) {
274
- return Math.min(this.ratioA, this.ratioB);
275
- }
276
- return 0;
277
- }
278
- get ratioUpper() {
279
- if (this.dualKnobs) {
280
- return Math.max(this.ratioA, this.ratioB);
281
- }
282
- return this.ratioA;
283
- }
284
- updateRatio() {
285
- const value = this.getValue();
286
- const { min, max } = this;
287
- if (this.dualKnobs) {
288
- this.ratioA = valueToRatio(value.lower, min, max);
289
- this.ratioB = valueToRatio(value.upper, min, max);
290
- }
291
- else {
292
- this.ratioA = valueToRatio(value, min, max);
293
- }
294
- }
295
- updateValue() {
296
- this.noUpdate = true;
297
- const { valA, valB } = this;
298
- this.value = !this.dualKnobs
299
- ? valA
300
- : {
301
- lower: Math.min(valA, valB),
302
- upper: Math.max(valA, valB)
303
- };
304
- this.noUpdate = false;
305
- }
306
- setFocus(knob) {
307
- if (this.el.shadowRoot) {
308
- const knobEl = this.el.shadowRoot.querySelector(knob === 'A' ? '.range-knob-a' : '.range-knob-b');
309
- if (knobEl) {
310
- knobEl.focus();
311
- }
312
- }
313
- }
314
- render() {
315
- const { min, max, step, el, handleKeyboard, pressedKnob, disabled, pin, ratioLower, ratioUpper, inheritedAttributes, rangeId, pinFormatter } = this;
316
- /**
317
- * Look for external label, ion-label, or aria-labelledby.
318
- * If none, see if user placed an aria-label on the host
319
- * and use that instead.
320
- */
321
- let { labelText } = getAriaLabel(el, rangeId);
322
- if (labelText === undefined || labelText === null) {
323
- labelText = inheritedAttributes['aria-label'];
324
- }
325
- const mode = getIonMode(this);
326
- const barStart = `${ratioLower * 100}%`;
327
- const barEnd = `${100 - ratioUpper * 100}%`;
328
- const rtl = isRTL(this.el);
329
- const start = rtl ? 'right' : 'left';
330
- const end = rtl ? 'left' : 'right';
331
- const tickStyle = (tick) => {
332
- return {
333
- [start]: tick[start]
334
- };
335
- };
336
- const barStyle = {
337
- [start]: barStart,
338
- [end]: barEnd
339
- };
340
- const ticks = [];
341
- if (this.snaps && this.ticks) {
342
- for (let value = min; value <= max; value += step) {
343
- const ratio = valueToRatio(value, min, max);
344
- const tick = {
345
- ratio,
346
- active: ratio >= ratioLower && ratio <= ratioUpper,
347
- };
348
- tick[start] = `${ratio * 100}%`;
349
- ticks.push(tick);
350
- }
351
- }
352
- renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
353
- return (h(Host, { onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses(this.color, {
354
- [mode]: true,
355
- 'in-item': hostContext('ion-item', el),
356
- 'range-disabled': disabled,
357
- 'range-pressed': pressedKnob !== undefined,
358
- 'range-has-pin': pin
359
- }) }, h("slot", { name: "start" }), h("div", { class: "range-slider", ref: rangeEl => this.rangeSlider = rangeEl }, ticks.map(tick => (h("div", { style: tickStyle(tick), role: "presentation", class: {
360
- 'range-tick': true,
361
- 'range-tick-active': tick.active
362
- }, part: tick.active ? 'tick-active' : 'tick' }))), h("div", { class: "range-bar", role: "presentation", part: "bar" }), h("div", { class: "range-bar range-bar-active", role: "presentation", style: barStyle, part: "bar-active" }), renderKnob(rtl, {
363
- knob: 'A',
364
- pressed: pressedKnob === 'A',
365
- value: this.valA,
366
- ratio: this.ratioA,
367
- pin,
368
- pinFormatter,
369
- disabled,
370
- handleKeyboard,
371
- min,
372
- max,
373
- labelText
374
- }), this.dualKnobs && renderKnob(rtl, {
375
- knob: 'B',
376
- pressed: pressedKnob === 'B',
377
- value: this.valB,
378
- ratio: this.ratioB,
379
- pin,
380
- pinFormatter,
381
- disabled,
382
- handleKeyboard,
383
- min,
384
- max,
385
- labelText
386
- })), h("slot", { name: "end" })));
387
- }
388
- get el() { return getElement(this); }
389
- static get watchers() { return {
390
- "debounce": ["debounceChanged"],
391
- "min": ["minChanged"],
392
- "max": ["maxChanged"],
393
- "disabled": ["disabledChanged"],
394
- "value": ["valueChanged"]
395
- }; }
396
- };
397
- const renderKnob = (rtl, { knob, value, ratio, min, max, disabled, pressed, pin, handleKeyboard, labelText, pinFormatter }) => {
398
- const start = rtl ? 'right' : 'left';
399
- const knobStyle = () => {
400
- const style = {};
401
- style[start] = `${ratio * 100}%`;
402
- return style;
403
- };
404
- return (h("div", { onKeyDown: (ev) => {
405
- const key = ev.key;
406
- if (key === 'ArrowLeft' || key === 'ArrowDown') {
407
- handleKeyboard(knob, false);
408
- ev.preventDefault();
409
- ev.stopPropagation();
410
- }
411
- else if (key === 'ArrowRight' || key === 'ArrowUp') {
412
- handleKeyboard(knob, true);
413
- ev.preventDefault();
414
- ev.stopPropagation();
415
- }
416
- }, class: {
417
- 'range-knob-handle': true,
418
- 'range-knob-a': knob === 'A',
419
- 'range-knob-b': knob === 'B',
420
- 'range-knob-pressed': pressed,
421
- 'range-knob-min': value === min,
422
- 'range-knob-max': value === max
423
- }, style: knobStyle(), role: "slider", tabindex: disabled ? -1 : 0, "aria-label": labelText, "aria-valuemin": min, "aria-valuemax": max, "aria-disabled": disabled ? 'true' : null, "aria-valuenow": value }, pin && h("div", { class: "range-pin", role: "presentation", part: "pin" }, pinFormatter(value)), h("div", { class: "range-knob", role: "presentation", part: "knob" })));
424
- };
425
- const ratioToValue = (ratio, min, max, step) => {
426
- let value = (max - min) * ratio;
427
- if (step > 0) {
428
- value = Math.round(value / step) * step + min;
429
- }
430
- return clamp(min, value, max);
431
- };
432
- const valueToRatio = (value, min, max) => {
433
- return clamp(0, (value - min) / (max - min), 1);
434
- };
435
- let rangeIds = 0;
436
- Range.style = {
437
- ios: rangeIosCss,
438
- md: rangeMdCss
439
- };
440
-
441
- export { Range as ion_range };
@@ -1,109 +0,0 @@
1
- import { r as registerInstance, i as createEvent, h, H as Host, e as getElement } from './index-5568e3fa.js';
2
-
3
- function GetSelectOptionId(questionId, index) {
4
- return "question-" + questionId + "-option-" + index;
5
- }
6
-
7
- const sparkleQuizFeedbackCss = ":host{display:block}";
8
-
9
- const SparkleQuizFeedback = class {
10
- constructor(hostRef) {
11
- registerInstance(this, hostRef);
12
- this.quizFeedbackChange = createEvent(this, "quizFeedbackChange", 7);
13
- this.displayOptions = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
14
- }
15
- render() {
16
- return (h(Host, { class: "quiz__feedback" }, h("div", { class: "question-container" }, h("div", { class: "question-text" }, this.question.questionText), h("div", null, this.displayOptions.map((option, index) => h("div", { class: "option" }, h("input", { type: "radio", id: GetSelectOptionId(this.question.questionId, index), name: "question-" + this.question.questionId, value: option, onChange: (e) => this.quizFeedbackChange.emit({ value: e.target.value, question: this.question }) }), h("label", { htmlFor: GetSelectOptionId(this.question.questionId, index) }, h("span", { class: "number" }, this.displayOptions[index]), " ", option), h("br", null)))))));
17
- }
18
- };
19
- SparkleQuizFeedback.style = sparkleQuizFeedbackCss;
20
-
21
- const sparkleQuizInputCss = ":host{display:block}";
22
-
23
- const SparkleQuizInput = class {
24
- constructor(hostRef) {
25
- registerInstance(this, hostRef);
26
- this.quizInputChange = createEvent(this, "quizInputChange", 7);
27
- }
28
- render() {
29
- return (h(Host, { class: "quiz__input" }, h("div", { class: "question-container" }, h("label", { htmlFor: "question-" + this.question.questionId, class: "form-label" }, this.question.questionText), h("input", { type: "text", class: "form-control", id: "question-" + this.question.questionId, name: "question-" + this.question.questionId, onInput: (e) => this.quizInputChange.emit({ value: e.target.value, question: this.question }) }))));
30
- }
31
- };
32
- SparkleQuizInput.style = sparkleQuizInputCss;
33
-
34
- const sparkleQuizOpinionCss = "sparkle-quiz-opinion .scale{display:flex;justify-content:space-between}sparkle-quiz-opinion .scale>p{margin:0}sparkle-quiz-opinion .scale>p.selected{color:var(--ion-color-primary)}sparkle-quiz-opinion ion-icon{font-size:30px}sparkle-quiz-opinion .icon-group{min-width:70px;text-align:right;padding-right:10px}";
35
-
36
- const SparkleQuizOpinion = class {
37
- constructor(hostRef) {
38
- registerInstance(this, hostRef);
39
- this.quizOpinionChange = createEvent(this, "quizOpinionChange", 7);
40
- this.fivePointsDisplayOptions = ['Strongly agree', 'Agree', 'Not sure', 'Disagree', 'Strongly disagree'];
41
- this.tenPointsDisplayOptions = ["Never",
42
- "Never",
43
- "Sometimes",
44
- "Sometimes",
45
- "Half of the time",
46
- "Half of the time",
47
- "Most of the time",
48
- "Most of the time",
49
- "Always",
50
- "Always",
51
- "Always"];
52
- this.tenPointsDefaultValue = 5;
53
- }
54
- optionChanged(index, answer) {
55
- this.selectedIndex = index;
56
- this.quizOpinionChange.emit({ value: answer, question: this.question });
57
- }
58
- renderFivePointScale() {
59
- return (this.fivePointsDisplayOptions.map((option, index) => h("div", { class: "option" }, h("input", { id: GetSelectOptionId(this.question.questionId, index), type: "radio", name: "question-" + this.question.questionId, value: option, onChange: (e) => this.optionChanged(index, this.fivePointsDisplayOptions[index]) }), h("label", { htmlFor: GetSelectOptionId(this.question.questionId, index) }, h("span", { class: "number" }, index + 1), option), h("br", null))));
60
- }
61
- renderTenPointScale() {
62
- return (h("div", null, h("ion-item", null, h("ion-range", { class: "opinion-range", onIonChange: (e) => this.optionChanged(+e.detail.value, this.tenPointsDisplayOptions[+e.detail.value]), min: 0, max: 10, value: this.tenPointsDefaultValue, step: 1, pin: true, snaps: true }, h("ion-icon", { size: "small", slot: "start", name: "star-outline" }), h("ion-icon", { slot: "end", name: "star" }))), h("div", { class: "scale" }, h("p", null, "Never"), h("p", { class: "selected" }, this.tenPointsDisplayOptions[this.selectedIndex] || this.tenPointsDisplayOptions[this.tenPointsDefaultValue]), h("p", null, "Always")), h("br", null), h("hr", null)));
63
- }
64
- render() {
65
- return (h(Host, { class: "quiz__opinion" }, h("div", { class: "opinion-container" }, h("div", { class: "question-text" }, this.question.questionText), h("div", null, this.question.scale == "FIVE-POINTS" && this.renderFivePointScale(), this.question.scale == "TEN-POINTS" && this.renderTenPointScale()))));
66
- }
67
- get el() { return getElement(this); }
68
- };
69
- SparkleQuizOpinion.style = sparkleQuizOpinionCss;
70
-
71
- const sparkleQuizPollCss = ":host{display:block}";
72
-
73
- const SparkleQuizPoll = class {
74
- constructor(hostRef) {
75
- registerInstance(this, hostRef);
76
- this.quizInputChange = createEvent(this, "quizInputChange", 7);
77
- }
78
- render() {
79
- return (h(Host, { class: "quiz__input" }, h("div", { class: "question-container" }, h("label", { htmlFor: "question-" + this.question.questionId, class: "form-label" }, this.question.questionText), h("input", { type: "text", class: "form-control", id: "question-" + this.question.questionId, name: "question-" + this.question.questionId, onInput: (e) => this.quizInputChange.emit({ value: e.target.value, question: this.question }) }))));
80
- }
81
- };
82
- SparkleQuizPoll.style = sparkleQuizPollCss;
83
-
84
- const sparkleQuizSelectCss = ":host{display:block}";
85
-
86
- const SparkleQuizSelect = class {
87
- constructor(hostRef) {
88
- registerInstance(this, hostRef);
89
- this.quizSelectChange = createEvent(this, "quizSelectChange", 7);
90
- this.allowMultiple = false;
91
- this.values = [];
92
- this.displayOptions = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
93
- }
94
- optionChanged(e) {
95
- if (e.target.checked) {
96
- this.values = [...this.values, e.target.value];
97
- }
98
- else {
99
- this.values = this.values.filter(x => x !== e.target.value);
100
- }
101
- this.quizSelectChange.emit({ value: this.values, question: this.question });
102
- }
103
- render() {
104
- return (h(Host, { class: "quiz__select" }, h("div", { class: "question-container" }, h("div", { class: "question-text" }, this.question.questionText), h("div", null, this.question.options.map((option, index) => h("div", { class: "option" }, h("input", { type: this.allowMultiple ? "checkbox" : "radio", id: GetSelectOptionId(this.question.questionId, index), name: "question-" + this.question.questionId, value: option.option, onChange: (e) => this.optionChanged(e) }), h("label", { htmlFor: GetSelectOptionId(this.question.questionId, index) }, h("span", { class: "number" }, this.displayOptions[index]), option.option), h("br", null)))))));
105
- }
106
- };
107
- SparkleQuizSelect.style = sparkleQuizSelectCss;
108
-
109
- export { SparkleQuizFeedback as sparkle_quiz_feedback, SparkleQuizInput as sparkle_quiz_input, SparkleQuizOpinion as sparkle_quiz_opinion, SparkleQuizPoll as sparkle_quiz_poll, SparkleQuizSelect as sparkle_quiz_select };
@@ -1,73 +0,0 @@
1
- import { r as registerInstance, h, e as getElement } from './index-5568e3fa.js';
2
- import { m as matchPath } from './match-path-36fdf5c7.js';
3
- import { d as isModifiedEvent } from './dom-utils-8e73e88b.js';
4
- import { A as ActiveRouter } from './active-router-909088d6.js';
5
-
6
- const getUrl = (url, root) => {
7
- // Don't allow double slashes
8
- if (url.charAt(0) == '/' && root.charAt(root.length - 1) == '/') {
9
- return root.slice(0, root.length - 1) + url;
10
- }
11
- return root + url;
12
- };
13
- const RouteLink = class {
14
- constructor(hostRef) {
15
- registerInstance(this, hostRef);
16
- this.unsubscribe = () => { return; };
17
- this.activeClass = 'link-active';
18
- this.exact = false;
19
- this.strict = true;
20
- /**
21
- * Custom tag to use instead of an anchor
22
- */
23
- this.custom = 'a';
24
- this.match = null;
25
- }
26
- componentWillLoad() {
27
- this.computeMatch();
28
- }
29
- // Identify if the current route is a match.
30
- computeMatch() {
31
- if (this.location) {
32
- this.match = matchPath(this.location.pathname, {
33
- path: this.urlMatch || this.url,
34
- exact: this.exact,
35
- strict: this.strict
36
- });
37
- }
38
- }
39
- handleClick(e) {
40
- if (isModifiedEvent(e) || !this.history || !this.url || !this.root) {
41
- return;
42
- }
43
- e.preventDefault();
44
- return this.history.push(getUrl(this.url, this.root));
45
- }
46
- // Get the URL for this route link without the root from the router
47
- render() {
48
- let anchorAttributes = {
49
- class: {
50
- [this.activeClass]: this.match !== null,
51
- },
52
- onClick: this.handleClick.bind(this)
53
- };
54
- if (this.anchorClass) {
55
- anchorAttributes.class[this.anchorClass] = true;
56
- }
57
- if (this.custom === 'a') {
58
- anchorAttributes = Object.assign({}, anchorAttributes, { href: this.url, title: this.anchorTitle, role: this.anchorRole, tabindex: this.anchorTabIndex, 'aria-haspopup': this.ariaHaspopup, id: this.anchorId, 'aria-posinset': this.ariaPosinset, 'aria-setsize': this.ariaSetsize, 'aria-label': this.ariaLabel });
59
- }
60
- return (h(this.custom, Object.assign({}, anchorAttributes), h("slot", null)));
61
- }
62
- get el() { return getElement(this); }
63
- static get watchers() { return {
64
- "location": ["computeMatch"]
65
- }; }
66
- };
67
- ActiveRouter.injectProps(RouteLink, [
68
- 'history',
69
- 'location',
70
- 'root'
71
- ]);
72
-
73
- export { RouteLink as stencil_route_link };