@sparkle-learning/core 0.0.56 → 0.0.57

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 (1100) hide show
  1. package/dist/sparkle-core/PrivateRoute-a12e7ee5.js +37 -0
  2. package/dist/sparkle-core/account.service-e711795d.js +63 -0
  3. package/dist/sparkle-core/active-router-af86c9b4.js +73 -0
  4. package/dist/sparkle-core/animation-676a644d.js +984 -0
  5. package/dist/sparkle-core/app-globals-9ffa9ec3.js +10 -0
  6. package/dist/sparkle-core/appdata.service-703dff70.js +69 -0
  7. package/dist/sparkle-core/assets/user.png +0 -0
  8. package/dist/sparkle-core/assets.service-6508aae6.js +71 -0
  9. package/dist/sparkle-core/assignment.service-e42e9368.js +17 -0
  10. package/dist/sparkle-core/button-active-d68c5eb7.js +67 -0
  11. package/dist/sparkle-core/compass-svg.entry.js +128 -0
  12. package/dist/sparkle-core/context-consumer.entry.js +25 -0
  13. package/dist/sparkle-core/course-select.entry.js +26 -0
  14. package/dist/sparkle-core/css-shim-04165e59.js +4 -0
  15. package/dist/sparkle-core/dom-26e7cb2c.js +73 -0
  16. package/dist/sparkle-core/dom-utils-8e73e88b.js +55 -0
  17. package/dist/sparkle-core/facilitator.service-00a88935.js +79 -0
  18. package/dist/sparkle-core/facilitator.store-01be0386.js +18 -0
  19. package/dist/sparkle-core/feed.service-d495f3e1.js +53 -0
  20. package/dist/sparkle-core/framework-delegate-d3fa493f.js +107 -0
  21. package/dist/sparkle-core/haptic-a9e94599.js +124 -0
  22. package/dist/sparkle-core/header-mobile-collapse.entry.js +86 -0
  23. package/dist/sparkle-core/helpers-f11f0674.js +406 -0
  24. package/dist/sparkle-core/icons-758d1417.js +41 -0
  25. package/dist/sparkle-core/index-05b398c2.js +34 -0
  26. package/dist/sparkle-core/index-0af0deac.js +312 -0
  27. package/dist/sparkle-core/index-0df264ee.js +4518 -0
  28. package/dist/sparkle-core/index-183cda39.js +223 -0
  29. package/dist/sparkle-core/index-18a69883.js +1336 -0
  30. package/dist/sparkle-core/index-1d7a6fa0.js +269 -0
  31. package/dist/sparkle-core/index-1dec9544.js +3064 -0
  32. package/dist/sparkle-core/index-81dab78f.js +85 -0
  33. package/dist/sparkle-core/index-9b5bcea1.js +22 -0
  34. package/dist/sparkle-core/index-bb469fe3.js +128 -0
  35. package/dist/sparkle-core/index-d2990a48.js +184 -0
  36. package/dist/sparkle-core/index-dd414b33.js +653 -0
  37. package/dist/sparkle-core/index-faeec85a.js +8 -0
  38. package/dist/sparkle-core/index.es-1f6eedc5.js +11066 -0
  39. package/dist/sparkle-core/index.esm.js +19 -1
  40. package/dist/sparkle-core/input-shims-0b2f5522.js +418 -0
  41. package/dist/sparkle-core/ion-accordion-group.entry.js +201 -0
  42. package/dist/sparkle-core/ion-accordion.entry.js +332 -0
  43. package/dist/sparkle-core/ion-action-sheet.entry.js +263 -0
  44. package/dist/sparkle-core/ion-alert.entry.js +448 -0
  45. package/dist/sparkle-core/ion-app.entry.js +75 -0
  46. package/dist/sparkle-core/ion-avatar.entry.js +21 -0
  47. package/dist/sparkle-core/ion-back-button.entry.js +90 -0
  48. package/dist/sparkle-core/ion-backdrop.entry.js +63 -0
  49. package/dist/sparkle-core/ion-badge.entry.js +25 -0
  50. package/dist/sparkle-core/ion-breadcrumb.entry.js +91 -0
  51. package/dist/sparkle-core/ion-breadcrumbs.entry.js +129 -0
  52. package/dist/sparkle-core/ion-button.entry.js +125 -0
  53. package/dist/sparkle-core/ion-buttons.entry.js +38 -0
  54. package/dist/sparkle-core/ion-card-content.entry.js +26 -0
  55. package/dist/sparkle-core/ion-card-header.entry.js +33 -0
  56. package/dist/sparkle-core/ion-card-subtitle.entry.js +26 -0
  57. package/dist/sparkle-core/ion-card-title.entry.js +26 -0
  58. package/dist/sparkle-core/ion-card.entry.js +64 -0
  59. package/dist/sparkle-core/ion-checkbox.entry.js +109 -0
  60. package/dist/sparkle-core/ion-chip.entry.js +36 -0
  61. package/dist/sparkle-core/ion-col.entry.js +121 -0
  62. package/dist/sparkle-core/ion-content.entry.js +319 -0
  63. package/dist/sparkle-core/ion-datetime-button.entry.js +308 -0
  64. package/dist/sparkle-core/ion-datetime.entry.js +1619 -0
  65. package/dist/sparkle-core/ion-fab-button.entry.js +104 -0
  66. package/dist/sparkle-core/ion-fab-list.entry.js +41 -0
  67. package/dist/sparkle-core/ion-fab.entry.js +72 -0
  68. package/dist/sparkle-core/ion-footer.entry.js +116 -0
  69. package/dist/sparkle-core/ion-grid.entry.js +24 -0
  70. package/dist/sparkle-core/ion-header.entry.js +341 -0
  71. package/dist/sparkle-core/ion-icon.entry.js +200 -0
  72. package/dist/sparkle-core/ion-img.entry.js +97 -0
  73. package/dist/sparkle-core/ion-infinite-scroll-content.entry.js +33 -0
  74. package/dist/sparkle-core/ion-infinite-scroll.entry.js +202 -0
  75. package/dist/sparkle-core/ion-input.entry.js +293 -0
  76. package/dist/sparkle-core/ion-item-divider.entry.js +36 -0
  77. package/dist/sparkle-core/ion-item-group.entry.js +27 -0
  78. package/dist/sparkle-core/ion-item-option.entry.js +56 -0
  79. package/dist/sparkle-core/ion-item-options.entry.js +43 -0
  80. package/dist/sparkle-core/ion-item-sliding.entry.js +394 -0
  81. package/dist/sparkle-core/ion-item.entry.js +267 -0
  82. package/dist/sparkle-core/ion-label.entry.js +77 -0
  83. package/dist/sparkle-core/ion-list-header.entry.js +27 -0
  84. package/dist/sparkle-core/ion-list.entry.js +48 -0
  85. package/dist/sparkle-core/ion-loading.entry.js +211 -0
  86. package/dist/sparkle-core/ion-menu-button.entry.js +72 -0
  87. package/dist/sparkle-core/ion-menu-toggle.entry.js +43 -0
  88. package/dist/sparkle-core/ion-menu.entry.js +575 -0
  89. package/dist/sparkle-core/ion-modal.entry.js +1706 -0
  90. package/dist/sparkle-core/ion-nav-link.entry.js +43 -0
  91. package/dist/sparkle-core/ion-nav.entry.js +872 -0
  92. package/dist/sparkle-core/ion-note.entry.js +25 -0
  93. package/dist/sparkle-core/ion-picker-column-internal.entry.js +363 -0
  94. package/dist/sparkle-core/ion-picker-column.entry.js +327 -0
  95. package/dist/sparkle-core/ion-picker-internal.entry.js +454 -0
  96. package/dist/sparkle-core/ion-picker.entry.js +217 -0
  97. package/dist/sparkle-core/ion-popover.entry.js +1362 -0
  98. package/dist/sparkle-core/ion-progress-bar.entry.js +70 -0
  99. package/dist/sparkle-core/ion-radio-group.entry.js +121 -0
  100. package/dist/sparkle-core/ion-radio.entry.js +111 -0
  101. package/dist/sparkle-core/ion-range.entry.js +511 -0
  102. package/dist/sparkle-core/ion-refresher-content.entry.js +31 -0
  103. package/dist/sparkle-core/ion-refresher.entry.js +798 -0
  104. package/dist/sparkle-core/ion-reorder-group.entry.js +277 -0
  105. package/dist/sparkle-core/ion-reorder.entry.js +34 -0
  106. package/dist/sparkle-core/ion-ripple-effect.entry.js +89 -0
  107. package/dist/sparkle-core/ion-route-redirect.entry.js +20 -0
  108. package/dist/sparkle-core/ion-route.entry.js +45 -0
  109. package/dist/sparkle-core/ion-router-link.entry.js +34 -0
  110. package/dist/sparkle-core/ion-router-outlet.entry.js +196 -0
  111. package/dist/sparkle-core/ion-router.entry.js +827 -0
  112. package/dist/sparkle-core/ion-row.entry.js +16 -0
  113. package/dist/sparkle-core/ion-searchbar.entry.js +366 -0
  114. package/dist/sparkle-core/ion-segment-button.entry.js +98 -0
  115. package/dist/sparkle-core/ion-segment.entry.js +415 -0
  116. package/dist/sparkle-core/ion-select-option.entry.js +23 -0
  117. package/dist/sparkle-core/ion-select-popover.entry.js +96 -0
  118. package/dist/sparkle-core/ion-select.entry.js +510 -0
  119. package/dist/sparkle-core/ion-skeleton-text.entry.js +29 -0
  120. package/dist/sparkle-core/ion-slide.entry.js +21 -0
  121. package/dist/sparkle-core/ion-slides.entry.js +387 -0
  122. package/dist/sparkle-core/ion-spinner.entry.js +60 -0
  123. package/dist/sparkle-core/ion-split-pane.entry.js +156 -0
  124. package/dist/sparkle-core/ion-tab-bar.entry.js +71 -0
  125. package/dist/sparkle-core/ion-tab-button.entry.js +99 -0
  126. package/dist/sparkle-core/ion-tab.entry.js +63 -0
  127. package/dist/sparkle-core/ion-tabs.entry.js +150 -0
  128. package/dist/sparkle-core/ion-text.entry.js +20 -0
  129. package/dist/sparkle-core/ion-textarea.entry.js +244 -0
  130. package/dist/sparkle-core/ion-thumbnail.entry.js +16 -0
  131. package/dist/sparkle-core/ion-title.entry.js +48 -0
  132. package/dist/sparkle-core/ion-toast.entry.js +268 -0
  133. package/dist/sparkle-core/ion-toggle.entry.js +173 -0
  134. package/dist/sparkle-core/ion-toolbar.entry.js +70 -0
  135. package/dist/sparkle-core/ion-virtual-scroll.entry.js +551 -0
  136. package/dist/sparkle-core/ionic-global-127576f6.js +226 -0
  137. package/dist/sparkle-core/ios.transition-02531dda.js +479 -0
  138. package/dist/sparkle-core/location-utils-fea12957.js +229 -0
  139. package/dist/sparkle-core/match-path-760e1797.js +343 -0
  140. package/dist/sparkle-core/md.transition-f8765467.js +55 -0
  141. package/dist/sparkle-core/media.service-2609406e.js +36 -0
  142. package/dist/sparkle-core/menu-toggle-util-6cc13cbd.js +12 -0
  143. package/dist/sparkle-core/overlays-fd3cfa13.js +493 -0
  144. package/dist/sparkle-core/parse-60474840.js +1196 -0
  145. package/dist/sparkle-core/purify-d9093094.js +1469 -0
  146. package/dist/sparkle-core/quiz.model-1cff62e4.js +5 -0
  147. package/dist/sparkle-core/shadow-css-1257b266.js +387 -0
  148. package/dist/sparkle-core/signalR.service-2b7645c1.js +2983 -0
  149. package/dist/sparkle-core/sparkle-animation-player.entry.js +513 -0
  150. package/dist/sparkle-core/sparkle-assignment.entry.js +114 -0
  151. package/dist/sparkle-core/sparkle-button.entry.js +24 -0
  152. package/dist/sparkle-core/sparkle-card.entry.js +61 -0
  153. package/dist/sparkle-core/sparkle-cards.entry.js +15 -0
  154. package/dist/sparkle-core/sparkle-character-intro.entry.js +22 -0
  155. package/dist/sparkle-core/sparkle-code.entry.js +39 -0
  156. package/dist/sparkle-core/sparkle-compass-post.entry.js +129 -0
  157. package/dist/sparkle-core/sparkle-compass.entry.js +122 -0
  158. package/dist/sparkle-core/sparkle-core.css +2660 -1
  159. package/dist/sparkle-core/sparkle-core.esm.js +130 -1
  160. package/dist/sparkle-core/sparkle-course-root.entry.js +155 -0
  161. package/dist/sparkle-core/sparkle-discussion-questions.entry.js +122 -0
  162. package/dist/sparkle-core/sparkle-discussion-results.entry.js +189 -0
  163. package/dist/sparkle-core/sparkle-discussion.entry.js +52 -0
  164. package/dist/sparkle-core/sparkle-dropdown.entry.js +57 -0
  165. package/dist/sparkle-core/sparkle-emoji.entry.js +77 -0
  166. package/dist/sparkle-core/sparkle-export-lessons.entry.js +10081 -0
  167. package/dist/sparkle-core/sparkle-facilitator-dashboard.entry.js +93 -0
  168. package/dist/sparkle-core/sparkle-facilitator-header.entry.js +60 -0
  169. package/dist/sparkle-core/sparkle-facilitator-notes-form.entry.js +160 -0
  170. package/dist/sparkle-core/sparkle-facilitator-notes.entry.js +65 -0
  171. package/dist/sparkle-core/sparkle-facilitator-page.entry.js +198 -0
  172. package/dist/sparkle-core/sparkle-feed-post.entry.js +131 -0
  173. package/dist/sparkle-core/sparkle-feedback.entry.js +106 -0
  174. package/dist/sparkle-core/sparkle-file-upload.entry.js +57 -0
  175. package/dist/sparkle-core/sparkle-forgot-password.entry.js +80 -0
  176. package/dist/sparkle-core/sparkle-goal-form.entry.js +182 -0
  177. package/dist/sparkle-core/sparkle-goal-item.entry.js +15 -0
  178. package/dist/sparkle-core/sparkle-goal-progress.entry.js +15 -0
  179. package/dist/sparkle-core/sparkle-goals.entry.js +47 -0
  180. package/dist/sparkle-core/sparkle-gww-comment-list.entry.js +22 -0
  181. package/dist/sparkle-core/sparkle-gww-graph.entry.js +15 -0
  182. package/dist/sparkle-core/sparkle-gww-item.entry.js +80 -0
  183. package/dist/sparkle-core/sparkle-gww.entry.js +44 -0
  184. package/dist/sparkle-core/sparkle-header.entry.js +97 -0
  185. package/dist/sparkle-core/sparkle-health.entry.js +70 -0
  186. package/dist/sparkle-core/sparkle-input.entry.js +52 -0
  187. package/dist/sparkle-core/sparkle-intro.entry.js +22 -0
  188. package/dist/sparkle-core/sparkle-login.entry.js +116 -0
  189. package/dist/sparkle-core/sparkle-lower-content-nav.entry.js +18 -0
  190. package/dist/sparkle-core/sparkle-menu-collapsible.entry.js +42 -0
  191. package/dist/sparkle-core/sparkle-menu-toggle.entry.js +24 -0
  192. package/dist/sparkle-core/sparkle-menu.entry.js +26 -0
  193. package/dist/sparkle-core/sparkle-modal-image.entry.js +33 -0
  194. package/dist/sparkle-core/sparkle-mood.entry.js +76 -0
  195. package/dist/sparkle-core/sparkle-nav.entry.js +113 -0
  196. package/dist/sparkle-core/sparkle-notfound-page.entry.js +25 -0
  197. package/dist/sparkle-core/sparkle-online-students.entry.js +55 -0
  198. package/dist/sparkle-core/sparkle-overlay.entry.js +90 -0
  199. package/dist/sparkle-core/sparkle-page-footer.entry.js +24 -0
  200. package/dist/sparkle-core/sparkle-page.entry.js +245 -0
  201. package/dist/sparkle-core/sparkle-pagination.entry.js +67 -0
  202. package/dist/sparkle-core/sparkle-poll.entry.js +15 -0
  203. package/dist/sparkle-core/sparkle-quiz-container.entry.js +43 -0
  204. package/dist/sparkle-core/sparkle-quiz-feedback.entry.js +18 -0
  205. package/dist/sparkle-core/sparkle-quiz-input.entry.js +16 -0
  206. package/dist/sparkle-core/sparkle-quiz-old.entry.js +116 -0
  207. package/dist/sparkle-core/sparkle-quiz-opinion.entry.js +41 -0
  208. package/dist/sparkle-core/sparkle-quiz-poll.entry.js +16 -0
  209. package/dist/sparkle-core/sparkle-quiz-select.entry.js +29 -0
  210. package/dist/sparkle-core/sparkle-quiz.entry.js +98 -0
  211. package/dist/sparkle-core/sparkle-reset-password.entry.js +96 -0
  212. package/dist/sparkle-core/sparkle-root.entry.js +79 -0
  213. package/dist/sparkle-core/sparkle-select.entry.js +57 -0
  214. package/dist/sparkle-core/sparkle-sidebar.entry.js +39 -0
  215. package/dist/sparkle-core/sparkle-signup.entry.js +144 -0
  216. package/dist/sparkle-core/sparkle-tab.entry.js +22 -0
  217. package/dist/sparkle-core/sparkle-table-of-contents.entry.js +67 -0
  218. package/dist/sparkle-core/sparkle-tabs.entry.js +62 -0
  219. package/dist/sparkle-core/sparkle-unauthorized.entry.js +17 -0
  220. package/dist/sparkle-core/sparkle-user-enrollment.entry.js +85 -0
  221. package/dist/sparkle-core/sparkle-user-profile.entry.js +129 -0
  222. package/dist/sparkle-core/sparkle-validation-error.entry.js +17 -0
  223. package/dist/sparkle-core/sparkle-video-player.entry.js +18 -0
  224. package/dist/sparkle-core/sparkle-youtube.entry.js +35 -0
  225. package/dist/sparkle-core/status-tap-52feb1b1.js +40 -0
  226. package/dist/sparkle-core/stencil-async-content.entry.js +28 -0
  227. package/dist/sparkle-core/stencil-route-link.entry.js +74 -0
  228. package/dist/sparkle-core/stencil-route-switch.entry.js +100 -0
  229. package/dist/sparkle-core/stencil-route-title.entry.js +28 -0
  230. package/dist/sparkle-core/stencil-route.entry.js +93 -0
  231. package/dist/sparkle-core/stencil-router-prompt.entry.js +55 -0
  232. package/dist/sparkle-core/stencil-router-redirect.entry.js +28 -0
  233. package/dist/sparkle-core/stencil-router.entry.js +636 -0
  234. package/dist/sparkle-core/store.service-0f7d998b.js +16 -0
  235. package/dist/sparkle-core/student.service-f0375229.js +59 -0
  236. package/dist/sparkle-core/swipe-back-9a614189.js +73 -0
  237. package/dist/sparkle-core/swiper.bundle-4274e115.js +6418 -0
  238. package/dist/sparkle-core/user.store-3d052406.js +19 -0
  239. package/dist/sparkle-core/util-ba470e54.js +14683 -0
  240. package/dist/sparkle-core/utils-cae23bce.js +114 -0
  241. package/package.json +1 -1
  242. package/dist/cjs/PrivateRoute-f97245ce.js +0 -217
  243. package/dist/cjs/active-router-f9e18bd8.js +0 -75
  244. package/dist/cjs/animation-ee586546.js +0 -986
  245. package/dist/cjs/app-globals-33c9f31b.js +0 -9
  246. package/dist/cjs/appdata.service-c8d71e05.js +0 -73
  247. package/dist/cjs/assets.service-bfa75092.js +0 -50
  248. package/dist/cjs/assignment.service-690fb59c.js +0 -19
  249. package/dist/cjs/auth.store-1e630a7d.js +0 -3392
  250. package/dist/cjs/compass-svg.cjs.entry.js +0 -132
  251. package/dist/cjs/context-consumer.cjs.entry.js +0 -29
  252. package/dist/cjs/course-select.cjs.entry.js +0 -30
  253. package/dist/cjs/cubic-bezier-53d26d05.js +0 -93
  254. package/dist/cjs/dir-5af5259a.js +0 -20
  255. package/dist/cjs/environment-config.service-c8ff1f3d.js +0 -28
  256. package/dist/cjs/facilitator.service-ff0e1659.js +0 -95
  257. package/dist/cjs/feed.service-8eca4de6.js +0 -57
  258. package/dist/cjs/focus-visible-b0b07ba6.js +0 -76
  259. package/dist/cjs/framework-delegate-59a98abd.js +0 -111
  260. package/dist/cjs/gesture-controller-0eb5579e.js +0 -196
  261. package/dist/cjs/haptic-780f33c4.js +0 -116
  262. package/dist/cjs/hardware-back-button-92d97ff8.js +0 -76
  263. package/dist/cjs/header-mobile-collapse_61.cjs.entry.js +0 -15124
  264. package/dist/cjs/helpers-c2496722.js +0 -425
  265. package/dist/cjs/httpService-d2e7bf8f.js +0 -687
  266. package/dist/cjs/icons-fda820af.js +0 -26
  267. package/dist/cjs/index-12082cba.js +0 -465
  268. package/dist/cjs/index-15ea05f5.js +0 -314
  269. package/dist/cjs/index-51e8292e.js +0 -1928
  270. package/dist/cjs/index-787d4498.js +0 -232
  271. package/dist/cjs/index-8b5629a6.js +0 -186
  272. package/dist/cjs/index-975586fd.js +0 -48
  273. package/dist/cjs/index-9c7b27e4.js +0 -140
  274. package/dist/cjs/index-af080b50.js +0 -139
  275. package/dist/cjs/index-e56e09b8.js +0 -38
  276. package/dist/cjs/index.cjs.js +0 -26
  277. package/dist/cjs/index.es-38cbcdbe.js +0 -10666
  278. package/dist/cjs/input-shims-eff63b88.js +0 -418
  279. package/dist/cjs/ion-accordion-group.cjs.entry.js +0 -205
  280. package/dist/cjs/ion-accordion.cjs.entry.js +0 -336
  281. package/dist/cjs/ion-action-sheet_7.cjs.entry.js +0 -2935
  282. package/dist/cjs/ion-app.cjs.entry.js +0 -79
  283. package/dist/cjs/ion-back-button.cjs.entry.js +0 -94
  284. package/dist/cjs/ion-backdrop.cjs.entry.js +0 -67
  285. package/dist/cjs/ion-badge.cjs.entry.js +0 -29
  286. package/dist/cjs/ion-breadcrumb.cjs.entry.js +0 -95
  287. package/dist/cjs/ion-breadcrumbs.cjs.entry.js +0 -133
  288. package/dist/cjs/ion-buttons_3.cjs.entry.js +0 -153
  289. package/dist/cjs/ion-card-header.cjs.entry.js +0 -37
  290. package/dist/cjs/ion-card-subtitle.cjs.entry.js +0 -30
  291. package/dist/cjs/ion-card-title.cjs.entry.js +0 -30
  292. package/dist/cjs/ion-chip.cjs.entry.js +0 -40
  293. package/dist/cjs/ion-content_2.cjs.entry.js +0 -659
  294. package/dist/cjs/ion-datetime-button.cjs.entry.js +0 -312
  295. package/dist/cjs/ion-datetime.cjs.entry.js +0 -1623
  296. package/dist/cjs/ion-fab-button.cjs.entry.js +0 -108
  297. package/dist/cjs/ion-fab-list.cjs.entry.js +0 -45
  298. package/dist/cjs/ion-fab.cjs.entry.js +0 -76
  299. package/dist/cjs/ion-footer.cjs.entry.js +0 -120
  300. package/dist/cjs/ion-img.cjs.entry.js +0 -101
  301. package/dist/cjs/ion-infinite-scroll-content.cjs.entry.js +0 -37
  302. package/dist/cjs/ion-infinite-scroll.cjs.entry.js +0 -206
  303. package/dist/cjs/ion-item-divider.cjs.entry.js +0 -40
  304. package/dist/cjs/ion-item-group.cjs.entry.js +0 -31
  305. package/dist/cjs/ion-item-option.cjs.entry.js +0 -60
  306. package/dist/cjs/ion-item-options.cjs.entry.js +0 -47
  307. package/dist/cjs/ion-item-sliding.cjs.entry.js +0 -398
  308. package/dist/cjs/ion-loading.cjs.entry.js +0 -215
  309. package/dist/cjs/ion-menu-button.cjs.entry.js +0 -76
  310. package/dist/cjs/ion-menu-toggle.cjs.entry.js +0 -47
  311. package/dist/cjs/ion-menu.cjs.entry.js +0 -575
  312. package/dist/cjs/ion-modal.cjs.entry.js +0 -1711
  313. package/dist/cjs/ion-nav-link.cjs.entry.js +0 -47
  314. package/dist/cjs/ion-nav.cjs.entry.js +0 -872
  315. package/dist/cjs/ion-picker-column-internal_2.cjs.entry.js +0 -808
  316. package/dist/cjs/ion-picker-column.cjs.entry.js +0 -331
  317. package/dist/cjs/ion-picker.cjs.entry.js +0 -221
  318. package/dist/cjs/ion-progress-bar.cjs.entry.js +0 -74
  319. package/dist/cjs/ion-refresher-content.cjs.entry.js +0 -35
  320. package/dist/cjs/ion-refresher.cjs.entry.js +0 -802
  321. package/dist/cjs/ion-reorder-group.cjs.entry.js +0 -281
  322. package/dist/cjs/ion-reorder.cjs.entry.js +0 -38
  323. package/dist/cjs/ion-route-redirect.cjs.entry.js +0 -24
  324. package/dist/cjs/ion-route.cjs.entry.js +0 -49
  325. package/dist/cjs/ion-router-link.cjs.entry.js +0 -38
  326. package/dist/cjs/ion-router-outlet.cjs.entry.js +0 -200
  327. package/dist/cjs/ion-router.cjs.entry.js +0 -831
  328. package/dist/cjs/ion-searchbar.cjs.entry.js +0 -370
  329. package/dist/cjs/ion-segment-button.cjs.entry.js +0 -102
  330. package/dist/cjs/ion-segment.cjs.entry.js +0 -417
  331. package/dist/cjs/ion-skeleton-text.cjs.entry.js +0 -33
  332. package/dist/cjs/ion-slide.cjs.entry.js +0 -25
  333. package/dist/cjs/ion-slides.cjs.entry.js +0 -391
  334. package/dist/cjs/ion-split-pane.cjs.entry.js +0 -154
  335. package/dist/cjs/ion-tab-bar.cjs.entry.js +0 -75
  336. package/dist/cjs/ion-tab-button.cjs.entry.js +0 -103
  337. package/dist/cjs/ion-tab.cjs.entry.js +0 -59
  338. package/dist/cjs/ion-tabs.cjs.entry.js +0 -154
  339. package/dist/cjs/ion-thumbnail.cjs.entry.js +0 -20
  340. package/dist/cjs/ion-toast.cjs.entry.js +0 -272
  341. package/dist/cjs/ion-toggle.cjs.entry.js +0 -177
  342. package/dist/cjs/ion-virtual-scroll.cjs.entry.js +0 -555
  343. package/dist/cjs/ionic-global-2cde9d3a.js +0 -231
  344. package/dist/cjs/ios.transition-da235483.js +0 -482
  345. package/dist/cjs/keyboard-91096619.js +0 -140
  346. package/dist/cjs/loader.cjs.js +0 -24
  347. package/dist/cjs/localstorage.service-6346a41d.js +0 -40
  348. package/dist/cjs/md.transition-be429e07.js +0 -57
  349. package/dist/cjs/media.service-8a1b9bc5.js +0 -40
  350. package/dist/cjs/menu-toggle-util-7a01448c.js +0 -14
  351. package/dist/cjs/overlays-32df265a.js +0 -507
  352. package/dist/cjs/parse-d0071120.js +0 -1237
  353. package/dist/cjs/purify-fb9c107e.js +0 -1468
  354. package/dist/cjs/signalR.service-bd6b42f9.js +0 -2985
  355. package/dist/cjs/sparkle-animation-player.cjs.entry.js +0 -515
  356. package/dist/cjs/sparkle-assignment.cjs.entry.js +0 -110
  357. package/dist/cjs/sparkle-character-intro.cjs.entry.js +0 -26
  358. package/dist/cjs/sparkle-code.cjs.entry.js +0 -43
  359. package/dist/cjs/sparkle-compass-post.cjs.entry.js +0 -133
  360. package/dist/cjs/sparkle-compass.cjs.entry.js +0 -126
  361. package/dist/cjs/sparkle-core.cjs.js +0 -22
  362. package/dist/cjs/sparkle-discussion-questions_2.cjs.entry.js +0 -281
  363. package/dist/cjs/sparkle-discussion.cjs.entry.js +0 -42
  364. package/dist/cjs/sparkle-emoji.cjs.entry.js +0 -80
  365. package/dist/cjs/sparkle-facilitator-notes-form.cjs.entry.js +0 -121
  366. package/dist/cjs/sparkle-feed-post.cjs.entry.js +0 -116
  367. package/dist/cjs/sparkle-feedback.cjs.entry.js +0 -101
  368. package/dist/cjs/sparkle-file-upload.cjs.entry.js +0 -53
  369. package/dist/cjs/sparkle-goal-form.cjs.entry.js +0 -179
  370. package/dist/cjs/sparkle-gww-comment-list.cjs.entry.js +0 -26
  371. package/dist/cjs/sparkle-gww-graph.cjs.entry.js +0 -19
  372. package/dist/cjs/sparkle-input.cjs.entry.js +0 -56
  373. package/dist/cjs/sparkle-intro.cjs.entry.js +0 -26
  374. package/dist/cjs/sparkle-lower-content-nav.cjs.entry.js +0 -22
  375. package/dist/cjs/sparkle-menu-collapsible.cjs.entry.js +0 -46
  376. package/dist/cjs/sparkle-modal-image.cjs.entry.js +0 -34
  377. package/dist/cjs/sparkle-notfound-page.cjs.entry.js +0 -25
  378. package/dist/cjs/sparkle-overlay.cjs.entry.js +0 -92
  379. package/dist/cjs/sparkle-poll.cjs.entry.js +0 -19
  380. package/dist/cjs/sparkle-quiz-container.cjs.entry.js +0 -47
  381. package/dist/cjs/sparkle-quiz-feedback_5.cjs.entry.js +0 -117
  382. package/dist/cjs/sparkle-quiz-old.cjs.entry.js +0 -120
  383. package/dist/cjs/sparkle-quiz.cjs.entry.js +0 -103
  384. package/dist/cjs/sparkle-select.cjs.entry.js +0 -61
  385. package/dist/cjs/sparkle-sidebar.cjs.entry.js +0 -43
  386. package/dist/cjs/sparkle-tab.cjs.entry.js +0 -26
  387. package/dist/cjs/sparkle-table-of-contents.cjs.entry.js +0 -71
  388. package/dist/cjs/sparkle-tabs.cjs.entry.js +0 -66
  389. package/dist/cjs/sparkle-video-player.cjs.entry.js +0 -22
  390. package/dist/cjs/sparkle-youtube.cjs.entry.js +0 -39
  391. package/dist/cjs/spinner-configs-0ac05f2d.js +0 -147
  392. package/dist/cjs/status-tap-033befa2.js +0 -42
  393. package/dist/cjs/stencil-async-content.cjs.entry.js +0 -32
  394. package/dist/cjs/stencil-route-title.cjs.entry.js +0 -32
  395. package/dist/cjs/stencil-router-prompt.cjs.entry.js +0 -59
  396. package/dist/cjs/student.service-7e5385be.js +0 -78
  397. package/dist/cjs/swipe-back-4a826f9b.js +0 -76
  398. package/dist/cjs/swiper.bundle-8c897c07.js +0 -6420
  399. package/dist/cjs/theme-b0b295c1.js +0 -48
  400. package/dist/cjs/token.service-7a41953d.js +0 -97
  401. package/dist/cjs/util-47e320b2.js +0 -2462
  402. package/dist/collection/PrivateRoute.js +0 -27
  403. package/dist/collection/appconst.js +0 -13
  404. package/dist/collection/assets/img/forward.svg +0 -5
  405. package/dist/collection/assets/img/help/fitt-logo.svg +0 -1
  406. package/dist/collection/assets/img/home/big-white-wall.svg +0 -15
  407. package/dist/collection/assets/img/home/find-help.svg +0 -23
  408. package/dist/collection/assets/img/home/lessons.svg +0 -26
  409. package/dist/collection/assets/img/home/my-goals.svg +0 -19
  410. package/dist/collection/assets/img/home/my-health.svg +0 -17
  411. package/dist/collection/assets/img/home/my-mood.svg +0 -26
  412. package/dist/collection/assets/img/pause.svg +0 -5
  413. package/dist/collection/assets/img/play-symbol.svg +0 -8
  414. package/dist/collection/assets/img/play.svg +0 -4
  415. package/dist/collection/assets/img/rewind.svg +0 -5
  416. package/dist/collection/assets/lib/SignalRAspNetCoreHelper.js +0 -17
  417. package/dist/collection/assets/lib/sparkleUtility.js +0 -8
  418. package/dist/collection/assets/svg/profile.svg +0 -2
  419. package/dist/collection/collection-manifest.json +0 -219
  420. package/dist/collection/components/compass-svg/compass-svg.css +0 -15
  421. package/dist/collection/components/compass-svg/compass-svg.js +0 -156
  422. package/dist/collection/components/layout/facilitator/export-lessons/export-lessons.css +0 -7
  423. package/dist/collection/components/layout/facilitator/export-lessons/export-lessons.js +0 -110
  424. package/dist/collection/components/layout/facilitator/facilitator-dashboard/facilitator-dashboard.css +0 -3
  425. package/dist/collection/components/layout/facilitator/facilitator-dashboard/facilitator-dashboard.js +0 -214
  426. package/dist/collection/components/layout/facilitator/facilitator-header/facilitator-header-mobile-collapse/facilitator-header-mobile-collapse.js +0 -0
  427. package/dist/collection/components/layout/facilitator/facilitator-header/facilitator-header.css +0 -172
  428. package/dist/collection/components/layout/facilitator/facilitator-header/facilitator-header.js +0 -104
  429. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes-form/facilitator-notes-form.css +0 -3
  430. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes-form/facilitator-notes-form.js +0 -144
  431. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes.css +0 -14
  432. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes.js +0 -64
  433. package/dist/collection/components/layout/facilitator/facilitator-page.css +0 -196
  434. package/dist/collection/components/layout/facilitator/facilitator-page.js +0 -281
  435. package/dist/collection/components/layout/facilitator/online-students/online-students.css +0 -0
  436. package/dist/collection/components/layout/facilitator/online-students/online-students.js +0 -70
  437. package/dist/collection/components/layout/page/page.css +0 -183
  438. package/dist/collection/components/layout/page/page.js +0 -321
  439. package/dist/collection/components/layout/page/templates/default.js +0 -9
  440. package/dist/collection/components/layout/page/templates/error.js +0 -33
  441. package/dist/collection/components/layout/page/templates/index.js +0 -8
  442. package/dist/collection/components/layout/page/templates/pdf.js +0 -8
  443. package/dist/collection/components/layout/page/to-hypertext.js +0 -27
  444. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-form/sparkle-goal-form.css +0 -3
  445. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-form/sparkle-goal-form.js +0 -252
  446. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-item/sparkle-goal-item.css +0 -12
  447. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-item/sparkle-goal-item.js +0 -59
  448. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-progress/sparkle-goal-progress.css +0 -33
  449. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-progress/sparkle-goal-progress.js +0 -37
  450. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goals.css +0 -8
  451. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goals.js +0 -40
  452. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-comment-list/sparkle-gww-comment-list.css +0 -7
  453. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-comment-list/sparkle-gww-comment-list.js +0 -52
  454. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-graph/sparkle-gww-graph.css +0 -3
  455. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-graph/sparkle-gww-graph.js +0 -14
  456. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-item/sparkle-gww-item.css +0 -30
  457. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-item/sparkle-gww-item.js +0 -187
  458. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww.css +0 -3
  459. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww.js +0 -43
  460. package/dist/collection/components/mini-apps/sparkle-health/sparkle-health.css +0 -10
  461. package/dist/collection/components/mini-apps/sparkle-health/sparkle-health.js +0 -111
  462. package/dist/collection/components/mini-apps/sparkle-mood/sparkle-mood.css +0 -11
  463. package/dist/collection/components/mini-apps/sparkle-mood/sparkle-mood.js +0 -127
  464. package/dist/collection/components/modal-image/modal-image.css +0 -61
  465. package/dist/collection/components/modal-image/modal-image.js +0 -159
  466. package/dist/collection/components/sparkle-animation-player/assets/play-button-disabled-overlay.png +0 -0
  467. package/dist/collection/components/sparkle-animation-player/assets/play-button-overlay.png +0 -0
  468. package/dist/collection/components/sparkle-animation-player/caption-parser.js +0 -94
  469. package/dist/collection/components/sparkle-animation-player/sparkle-animation-player.css +0 -157
  470. package/dist/collection/components/sparkle-animation-player/sparkle-animation-player.js +0 -598
  471. package/dist/collection/components/sparkle-assignment/sparkle-assignment.css +0 -30
  472. package/dist/collection/components/sparkle-assignment/sparkle-assignment.js +0 -159
  473. package/dist/collection/components/sparkle-character-intro/assets/characters/character-img.jpg +0 -0
  474. package/dist/collection/components/sparkle-character-intro/assets/characters/jen.png +0 -0
  475. package/dist/collection/components/sparkle-character-intro/assets/characters/kimberly.png +0 -0
  476. package/dist/collection/components/sparkle-character-intro/assets/characters/valeria.png +0 -0
  477. package/dist/collection/components/sparkle-character-intro/assets/characters/yuna.png +0 -0
  478. package/dist/collection/components/sparkle-character-intro/assets/characters/zynab.png +0 -0
  479. package/dist/collection/components/sparkle-character-intro/sparkle-character-intro.css +0 -74
  480. package/dist/collection/components/sparkle-character-intro/sparkle-character-intro.js +0 -68
  481. package/dist/collection/components/sparkle-compass/sparkle-compass-post/sparkle-compass-post.css +0 -35
  482. package/dist/collection/components/sparkle-compass/sparkle-compass-post/sparkle-compass-post.js +0 -171
  483. package/dist/collection/components/sparkle-compass/sparkle-compass.css +0 -25
  484. package/dist/collection/components/sparkle-compass/sparkle-compass.js +0 -283
  485. package/dist/collection/components/sparkle-course-root/sparkle-course-root.css +0 -3
  486. package/dist/collection/components/sparkle-course-root/sparkle-course-root.js +0 -196
  487. package/dist/collection/components/sparkle-discussion/sparkle-discussion-questions/sparkle-discussion-questions.css +0 -157
  488. package/dist/collection/components/sparkle-discussion/sparkle-discussion-questions/sparkle-discussion-questions.js +0 -232
  489. package/dist/collection/components/sparkle-discussion/sparkle-discussion-results/sparkle-discussion-results.css +0 -158
  490. package/dist/collection/components/sparkle-discussion/sparkle-discussion-results/sparkle-discussion-results.js +0 -274
  491. package/dist/collection/components/sparkle-discussion/sparkle-discussion.css +0 -5
  492. package/dist/collection/components/sparkle-discussion/sparkle-discussion.js +0 -112
  493. package/dist/collection/components/sparkle-emoji/sparkle-emoji.css +0 -16
  494. package/dist/collection/components/sparkle-emoji/sparkle-emoji.js +0 -116
  495. package/dist/collection/components/sparkle-feed-post/sparkle-feed-post.css +0 -35
  496. package/dist/collection/components/sparkle-feed-post/sparkle-feed-post.js +0 -193
  497. package/dist/collection/components/sparkle-feedback/sparkle-feedback.css +0 -3
  498. package/dist/collection/components/sparkle-feedback/sparkle-feedback.js +0 -118
  499. package/dist/collection/components/sparkle-file-upload/sparkle-file-upload.css +0 -0
  500. package/dist/collection/components/sparkle-file-upload/sparkle-file-upload.js +0 -105
  501. package/dist/collection/components/sparkle-forgot-password/sparkle-forgot-password.css +0 -4
  502. package/dist/collection/components/sparkle-forgot-password/sparkle-forgot-password.js +0 -107
  503. package/dist/collection/components/sparkle-input/sparkle-input.css +0 -0
  504. package/dist/collection/components/sparkle-input/sparkle-input.js +0 -212
  505. package/dist/collection/components/sparkle-intro/sparkle-intro.css +0 -15
  506. package/dist/collection/components/sparkle-intro/sparkle-intro.js +0 -35
  507. package/dist/collection/components/sparkle-login/sparkle-login.css +0 -4
  508. package/dist/collection/components/sparkle-login/sparkle-login.js +0 -173
  509. package/dist/collection/components/sparkle-poll/sparkle-poll.css +0 -3
  510. package/dist/collection/components/sparkle-poll/sparkle-poll.js +0 -15
  511. package/dist/collection/components/sparkle-quiz/sparkle-quiz-feedback/sparkle-quiz-feedback.css +0 -3
  512. package/dist/collection/components/sparkle-quiz/sparkle-quiz-feedback/sparkle-quiz-feedback.js +0 -69
  513. package/dist/collection/components/sparkle-quiz/sparkle-quiz-input/sparkle-quiz-input.css +0 -3
  514. package/dist/collection/components/sparkle-quiz/sparkle-quiz-input/sparkle-quiz-input.js +0 -59
  515. package/dist/collection/components/sparkle-quiz/sparkle-quiz-old/sparkle-quiz-old.css +0 -48
  516. package/dist/collection/components/sparkle-quiz/sparkle-quiz-old/sparkle-quiz-old.js +0 -327
  517. package/dist/collection/components/sparkle-quiz/sparkle-quiz-opinion/sparkle-quiz-opinion.css +0 -18
  518. package/dist/collection/components/sparkle-quiz/sparkle-quiz-opinion/sparkle-quiz-opinion.js +0 -106
  519. package/dist/collection/components/sparkle-quiz/sparkle-quiz-poll/sparkle-quiz-poll.css +0 -3
  520. package/dist/collection/components/sparkle-quiz/sparkle-quiz-poll/sparkle-quiz-poll.js +0 -59
  521. package/dist/collection/components/sparkle-quiz/sparkle-quiz-select/sparkle-quiz-select.css +0 -3
  522. package/dist/collection/components/sparkle-quiz/sparkle-quiz-select/sparkle-quiz-select.js +0 -100
  523. package/dist/collection/components/sparkle-quiz/sparkle-quiz.css +0 -48
  524. package/dist/collection/components/sparkle-quiz/sparkle-quiz.js +0 -221
  525. package/dist/collection/components/sparkle-quiz-container/sparkle-quiz-container.css +0 -3
  526. package/dist/collection/components/sparkle-quiz-container/sparkle-quiz-container.js +0 -98
  527. package/dist/collection/components/sparkle-reset-password/sparkle-reset-password.css +0 -3
  528. package/dist/collection/components/sparkle-reset-password/sparkle-reset-password.js +0 -126
  529. package/dist/collection/components/sparkle-root/sparkle-root.css +0 -61
  530. package/dist/collection/components/sparkle-root/sparkle-root.js +0 -86
  531. package/dist/collection/components/sparkle-signup/sparkle-signup.css +0 -6
  532. package/dist/collection/components/sparkle-signup/sparkle-signup.js +0 -197
  533. package/dist/collection/components/sparkle-unauthorized/sparkle-unauthorized.css +0 -13
  534. package/dist/collection/components/sparkle-unauthorized/sparkle-unauthorized.js +0 -18
  535. package/dist/collection/components/sparkle-user-enrollment/sparkle-user-enrollment.css +0 -3
  536. package/dist/collection/components/sparkle-user-enrollment/sparkle-user-enrollment.js +0 -93
  537. package/dist/collection/components/sparkle-user-profile/sparkle-user-profile.css +0 -54
  538. package/dist/collection/components/sparkle-user-profile/sparkle-user-profile.js +0 -151
  539. package/dist/collection/components/sparkle-validation-error/sparkle-validation-error.css +0 -11
  540. package/dist/collection/components/sparkle-validation-error/sparkle-validation-error.js +0 -44
  541. package/dist/collection/components/sparkle-video-player/sparkle-video-player.css +0 -0
  542. package/dist/collection/components/sparkle-video-player/sparkle-video-player.js +0 -92
  543. package/dist/collection/components/sparkle-youtube/sparkle-youtube.css +0 -24
  544. package/dist/collection/components/sparkle-youtube/sparkle-youtube.js +0 -99
  545. package/dist/collection/global/app.js +0 -4
  546. package/dist/collection/helpers/utils.js +0 -3
  547. package/dist/collection/icons.js +0 -36
  548. package/dist/collection/index.js +0 -3
  549. package/dist/collection/l10n.js +0 -18
  550. package/dist/collection/models/api.model.js +0 -7
  551. package/dist/collection/models/assets.model.js +0 -1
  552. package/dist/collection/models/auth/auth.user.js +0 -1
  553. package/dist/collection/models/class.model.js +0 -5
  554. package/dist/collection/models/course.model.js +0 -10
  555. package/dist/collection/models/definitions.js +0 -1
  556. package/dist/collection/models/facilitator-dashboard.model.js +0 -5
  557. package/dist/collection/models/goal.model.js +0 -1
  558. package/dist/collection/models/index.js +0 -1
  559. package/dist/collection/models/markdown.model.js +0 -1
  560. package/dist/collection/models/page.model.js +0 -1
  561. package/dist/collection/models/quiz.model.js +0 -3
  562. package/dist/collection/models/user.model.js +0 -1
  563. package/dist/collection/pages/course/welcome-to-mind-body/introduction/animation/m4l1p1_part1.js +0 -2727
  564. package/dist/collection/pages/course/welcome-to-mind-body/introduction/animation/m4l1p1_part2.js +0 -2042
  565. package/dist/collection/services/account.service.js +0 -61
  566. package/dist/collection/services/appdata.service.js +0 -60
  567. package/dist/collection/services/assignment.service.js +0 -14
  568. package/dist/collection/services/auth/auth.service.js +0 -64
  569. package/dist/collection/services/core/assets.service.js +0 -45
  570. package/dist/collection/services/core/localstorage.service.js +0 -34
  571. package/dist/collection/services/environment/environment-config.js +0 -24
  572. package/dist/collection/services/environment/environment-config.service.js +0 -24
  573. package/dist/collection/services/facilitator.service.js +0 -76
  574. package/dist/collection/services/feed.service.js +0 -43
  575. package/dist/collection/services/httpService.js +0 -103
  576. package/dist/collection/services/index.js +0 -4
  577. package/dist/collection/services/media.service.js +0 -29
  578. package/dist/collection/services/signalR.service.js +0 -83
  579. package/dist/collection/services/store.service.js +0 -13
  580. package/dist/collection/services/student.service.js +0 -56
  581. package/dist/collection/services/token.service.js +0 -79
  582. package/dist/collection/stores/auth.store.js +0 -12
  583. package/dist/collection/stores/class.store.js +0 -5
  584. package/dist/collection/stores/error.store.js +0 -5
  585. package/dist/collection/stores/facilitator.store.js +0 -15
  586. package/dist/collection/stores/feed.store.js +0 -8
  587. package/dist/collection/stores/goal.store.js +0 -7
  588. package/dist/collection/stores/index.js +0 -1
  589. package/dist/collection/stores/media.store.js +0 -5
  590. package/dist/collection/stores/mood.store.js +0 -5
  591. package/dist/collection/stores/nav.store.js +0 -11
  592. package/dist/collection/stores/signalR.store.js +0 -6
  593. package/dist/collection/stores/theme.store.js +0 -9
  594. package/dist/collection/stores/toc.store.js +0 -5
  595. package/dist/collection/stores/user.store.js +0 -16
  596. package/dist/collection/util.js +0 -55
  597. package/dist/collection/utils.js +0 -92
  598. package/dist/esm/PrivateRoute-90ac95b8.js +0 -212
  599. package/dist/esm/active-router-fc9e4e06.js +0 -73
  600. package/dist/esm/animation-12377cb3.js +0 -984
  601. package/dist/esm/app-globals-3f0347b0.js +0 -7
  602. package/dist/esm/appdata.service-2e84e167.js +0 -70
  603. package/dist/esm/assets.service-def1d63c.js +0 -48
  604. package/dist/esm/assignment.service-8d31f141.js +0 -17
  605. package/dist/esm/auth.store-dba2c2da.js +0 -3381
  606. package/dist/esm/compass-svg.entry.js +0 -128
  607. package/dist/esm/context-consumer.entry.js +0 -25
  608. package/dist/esm/course-select.entry.js +0 -26
  609. package/dist/esm/dir-03012648.js +0 -18
  610. package/dist/esm/environment-config.service-b191f276.js +0 -26
  611. package/dist/esm/facilitator.service-18c47bdf.js +0 -92
  612. package/dist/esm/feed.service-b4f3cae4.js +0 -54
  613. package/dist/esm/framework-delegate-3e634a5c.js +0 -107
  614. package/dist/esm/gesture-controller-7be18351.js +0 -194
  615. package/dist/esm/haptic-522f76f2.js +0 -110
  616. package/dist/esm/header-mobile-collapse_61.entry.js +0 -15060
  617. package/dist/esm/helpers-bf0e23d6.js +0 -403
  618. package/dist/esm/httpService-7986aeed.js +0 -685
  619. package/dist/esm/icons-1c794c74.js +0 -18
  620. package/dist/esm/index-21661af2.js +0 -463
  621. package/dist/esm/index-2b84cad2.js +0 -223
  622. package/dist/esm/index-4044fde9.js +0 -25
  623. package/dist/esm/index-45fec1e7.js +0 -184
  624. package/dist/esm/index-5e8971ae.js +0 -128
  625. package/dist/esm/index-c04b9ed5.js +0 -1888
  626. package/dist/esm/index-cded2d87.js +0 -312
  627. package/dist/esm/index-dad75b83.js +0 -34
  628. package/dist/esm/index.es-e0c0f891.js +0 -10580
  629. package/dist/esm/index.js +0 -12
  630. package/dist/esm/input-shims-671d8d9f.js +0 -416
  631. package/dist/esm/ion-accordion-group.entry.js +0 -201
  632. package/dist/esm/ion-accordion.entry.js +0 -332
  633. package/dist/esm/ion-action-sheet_7.entry.js +0 -2925
  634. package/dist/esm/ion-app.entry.js +0 -75
  635. package/dist/esm/ion-back-button.entry.js +0 -90
  636. package/dist/esm/ion-backdrop.entry.js +0 -63
  637. package/dist/esm/ion-badge.entry.js +0 -25
  638. package/dist/esm/ion-breadcrumb.entry.js +0 -91
  639. package/dist/esm/ion-breadcrumbs.entry.js +0 -129
  640. package/dist/esm/ion-buttons_3.entry.js +0 -147
  641. package/dist/esm/ion-card-header.entry.js +0 -33
  642. package/dist/esm/ion-card-subtitle.entry.js +0 -26
  643. package/dist/esm/ion-card-title.entry.js +0 -26
  644. package/dist/esm/ion-chip.entry.js +0 -36
  645. package/dist/esm/ion-content_2.entry.js +0 -654
  646. package/dist/esm/ion-datetime-button.entry.js +0 -308
  647. package/dist/esm/ion-datetime.entry.js +0 -1619
  648. package/dist/esm/ion-fab-button.entry.js +0 -104
  649. package/dist/esm/ion-fab-list.entry.js +0 -41
  650. package/dist/esm/ion-fab.entry.js +0 -72
  651. package/dist/esm/ion-footer.entry.js +0 -116
  652. package/dist/esm/ion-img.entry.js +0 -97
  653. package/dist/esm/ion-infinite-scroll-content.entry.js +0 -33
  654. package/dist/esm/ion-infinite-scroll.entry.js +0 -202
  655. package/dist/esm/ion-item-divider.entry.js +0 -36
  656. package/dist/esm/ion-item-group.entry.js +0 -27
  657. package/dist/esm/ion-item-option.entry.js +0 -56
  658. package/dist/esm/ion-item-options.entry.js +0 -43
  659. package/dist/esm/ion-item-sliding.entry.js +0 -394
  660. package/dist/esm/ion-loading.entry.js +0 -211
  661. package/dist/esm/ion-menu-button.entry.js +0 -72
  662. package/dist/esm/ion-menu-toggle.entry.js +0 -43
  663. package/dist/esm/ion-menu.entry.js +0 -571
  664. package/dist/esm/ion-modal.entry.js +0 -1707
  665. package/dist/esm/ion-nav-link.entry.js +0 -43
  666. package/dist/esm/ion-nav.entry.js +0 -868
  667. package/dist/esm/ion-picker-column-internal_2.entry.js +0 -803
  668. package/dist/esm/ion-picker-column.entry.js +0 -327
  669. package/dist/esm/ion-picker.entry.js +0 -217
  670. package/dist/esm/ion-progress-bar.entry.js +0 -70
  671. package/dist/esm/ion-refresher-content.entry.js +0 -31
  672. package/dist/esm/ion-refresher.entry.js +0 -798
  673. package/dist/esm/ion-reorder-group.entry.js +0 -277
  674. package/dist/esm/ion-reorder.entry.js +0 -34
  675. package/dist/esm/ion-route-redirect.entry.js +0 -20
  676. package/dist/esm/ion-route.entry.js +0 -45
  677. package/dist/esm/ion-router-link.entry.js +0 -34
  678. package/dist/esm/ion-router-outlet.entry.js +0 -196
  679. package/dist/esm/ion-router.entry.js +0 -827
  680. package/dist/esm/ion-searchbar.entry.js +0 -366
  681. package/dist/esm/ion-segment-button.entry.js +0 -98
  682. package/dist/esm/ion-segment.entry.js +0 -413
  683. package/dist/esm/ion-skeleton-text.entry.js +0 -29
  684. package/dist/esm/ion-slide.entry.js +0 -21
  685. package/dist/esm/ion-slides.entry.js +0 -387
  686. package/dist/esm/ion-split-pane.entry.js +0 -150
  687. package/dist/esm/ion-tab-bar.entry.js +0 -71
  688. package/dist/esm/ion-tab-button.entry.js +0 -99
  689. package/dist/esm/ion-tab.entry.js +0 -55
  690. package/dist/esm/ion-tabs.entry.js +0 -150
  691. package/dist/esm/ion-thumbnail.entry.js +0 -16
  692. package/dist/esm/ion-toast.entry.js +0 -268
  693. package/dist/esm/ion-toggle.entry.js +0 -173
  694. package/dist/esm/ion-virtual-scroll.entry.js +0 -551
  695. package/dist/esm/ionic-global-4903e23e.js +0 -226
  696. package/dist/esm/ios.transition-131d64fe.js +0 -479
  697. package/dist/esm/loader.js +0 -20
  698. package/dist/esm/md.transition-f6126011.js +0 -55
  699. package/dist/esm/media.service-6e90bc41.js +0 -37
  700. package/dist/esm/menu-toggle-util-bace8ae6.js +0 -12
  701. package/dist/esm/overlays-4233a39d.js +0 -491
  702. package/dist/esm/parse-1ae3a9bb.js +0 -1196
  703. package/dist/esm/polyfills/core-js.js +0 -11
  704. package/dist/esm/polyfills/css-shim.js +0 -1
  705. package/dist/esm/polyfills/dom.js +0 -79
  706. package/dist/esm/polyfills/es5-html-element.js +0 -1
  707. package/dist/esm/polyfills/index.js +0 -34
  708. package/dist/esm/polyfills/system.js +0 -6
  709. package/dist/esm/purify-85bfcc69.js +0 -1466
  710. package/dist/esm/signalR.service-c33fba50.js +0 -2982
  711. package/dist/esm/sparkle-animation-player.entry.js +0 -511
  712. package/dist/esm/sparkle-assignment.entry.js +0 -106
  713. package/dist/esm/sparkle-character-intro.entry.js +0 -22
  714. package/dist/esm/sparkle-code.entry.js +0 -39
  715. package/dist/esm/sparkle-compass-post.entry.js +0 -129
  716. package/dist/esm/sparkle-compass.entry.js +0 -122
  717. package/dist/esm/sparkle-core.js +0 -20
  718. package/dist/esm/sparkle-discussion-questions_2.entry.js +0 -276
  719. package/dist/esm/sparkle-discussion.entry.js +0 -38
  720. package/dist/esm/sparkle-emoji.entry.js +0 -76
  721. package/dist/esm/sparkle-facilitator-notes-form.entry.js +0 -117
  722. package/dist/esm/sparkle-feed-post.entry.js +0 -112
  723. package/dist/esm/sparkle-feedback.entry.js +0 -97
  724. package/dist/esm/sparkle-file-upload.entry.js +0 -49
  725. package/dist/esm/sparkle-goal-form.entry.js +0 -175
  726. package/dist/esm/sparkle-gww-comment-list.entry.js +0 -22
  727. package/dist/esm/sparkle-gww-graph.entry.js +0 -15
  728. package/dist/esm/sparkle-input.entry.js +0 -52
  729. package/dist/esm/sparkle-intro.entry.js +0 -22
  730. package/dist/esm/sparkle-lower-content-nav.entry.js +0 -18
  731. package/dist/esm/sparkle-menu-collapsible.entry.js +0 -42
  732. package/dist/esm/sparkle-modal-image.entry.js +0 -30
  733. package/dist/esm/sparkle-notfound-page.entry.js +0 -21
  734. package/dist/esm/sparkle-overlay.entry.js +0 -88
  735. package/dist/esm/sparkle-poll.entry.js +0 -15
  736. package/dist/esm/sparkle-quiz-container.entry.js +0 -43
  737. package/dist/esm/sparkle-quiz-feedback_5.entry.js +0 -109
  738. package/dist/esm/sparkle-quiz-old.entry.js +0 -116
  739. package/dist/esm/sparkle-quiz.entry.js +0 -99
  740. package/dist/esm/sparkle-select.entry.js +0 -57
  741. package/dist/esm/sparkle-sidebar.entry.js +0 -39
  742. package/dist/esm/sparkle-tab.entry.js +0 -22
  743. package/dist/esm/sparkle-table-of-contents.entry.js +0 -67
  744. package/dist/esm/sparkle-tabs.entry.js +0 -62
  745. package/dist/esm/sparkle-video-player.entry.js +0 -18
  746. package/dist/esm/sparkle-youtube.entry.js +0 -35
  747. package/dist/esm/status-tap-dde52787.js +0 -40
  748. package/dist/esm/stencil-async-content.entry.js +0 -28
  749. package/dist/esm/stencil-route-title.entry.js +0 -28
  750. package/dist/esm/stencil-router-prompt.entry.js +0 -55
  751. package/dist/esm/student.service-08af124f.js +0 -75
  752. package/dist/esm/swipe-back-7847a0c1.js +0 -74
  753. package/dist/esm/swiper.bundle-b6a959de.js +0 -6418
  754. package/dist/esm/token.service-71a5d33f.js +0 -94
  755. package/dist/esm/util-57cc8006.js +0 -2451
  756. package/dist/index.cjs.js +0 -1
  757. package/dist/index.js +0 -1
  758. package/dist/loader/cdn.js +0 -3
  759. package/dist/loader/index.cjs.js +0 -3
  760. package/dist/loader/index.d.ts +0 -12
  761. package/dist/loader/index.es2017.js +0 -3
  762. package/dist/loader/index.js +0 -4
  763. package/dist/loader/package.json +0 -10
  764. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.ios.css +0 -75
  765. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.md.css +0 -72
  766. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.ios.css +0 -25
  767. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.md.css +0 -59
  768. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.ios.css +0 -357
  769. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.md.css +0 -290
  770. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.ios.css +0 -494
  771. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.md.css +0 -502
  772. package/dist/node_modules/@ionic/core/dist/collection/components/app/app.css +0 -17
  773. package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.ios.css +0 -22
  774. package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.md.css +0 -22
  775. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.ios.css +0 -281
  776. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.md.css +0 -309
  777. package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.ios.css +0 -26
  778. package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.md.css +0 -26
  779. package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.ios.css +0 -58
  780. package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.md.css +0 -62
  781. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.ios.css +0 -234
  782. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.md.css +0 -237
  783. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -38
  784. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -37
  785. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.ios.css +0 -439
  786. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.md.css +0 -428
  787. package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.ios.css +0 -128
  788. package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.md.css +0 -151
  789. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.ios.css +0 -101
  790. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.md.css +0 -95
  791. package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.ios.css +0 -61
  792. package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.md.css +0 -63
  793. package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.ios.css +0 -37
  794. package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.md.css +0 -35
  795. package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -28
  796. package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -26
  797. package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.ios.css +0 -27
  798. package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.md.css +0 -27
  799. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.ios.css +0 -169
  800. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.md.css +0 -172
  801. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.ios.css +0 -200
  802. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.md.css +0 -200
  803. package/dist/node_modules/@ionic/core/dist/collection/components/col/col.css +0 -108
  804. package/dist/node_modules/@ionic/core/dist/collection/components/content/content.css +0 -237
  805. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.ios.css +0 -648
  806. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.md.css +0 -637
  807. package/dist/node_modules/@ionic/core/dist/collection/components/datetime-button/datetime-button.css +0 -60
  808. package/dist/node_modules/@ionic/core/dist/collection/components/fab/fab.css +0 -61
  809. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.ios.css +0 -338
  810. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.md.css +0 -307
  811. package/dist/node_modules/@ionic/core/dist/collection/components/fab-list/fab-list.css +0 -116
  812. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.ios.css +0 -37
  813. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.md.css +0 -37
  814. package/dist/node_modules/@ionic/core/dist/collection/components/grid/grid.css +0 -151
  815. package/dist/node_modules/@ionic/core/dist/collection/components/header/header.ios.css +0 -108
  816. package/dist/node_modules/@ionic/core/dist/collection/components/header/header.md.css +0 -40
  817. package/dist/node_modules/@ionic/core/dist/collection/components/img/img.css +0 -12
  818. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll/infinite-scroll.css +0 -8
  819. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -54
  820. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -54
  821. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.ios.css +0 -185
  822. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.md.css +0 -185
  823. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.ios.css +0 -669
  824. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.md.css +0 -928
  825. package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.ios.css +0 -204
  826. package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.md.css +0 -297
  827. package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.ios.css +0 -3
  828. package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.md.css +0 -3
  829. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.ios.css +0 -186
  830. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.md.css +0 -180
  831. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.ios.css +0 -88
  832. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.md.css +0 -85
  833. package/dist/node_modules/@ionic/core/dist/collection/components/item-sliding/item-sliding.css +0 -42
  834. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.ios.css +0 -156
  835. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.md.css +0 -250
  836. package/dist/node_modules/@ionic/core/dist/collection/components/list/list.ios.css +0 -91
  837. package/dist/node_modules/@ionic/core/dist/collection/components/list/list.md.css +0 -114
  838. package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.ios.css +0 -118
  839. package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.md.css +0 -94
  840. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.ios.css +0 -109
  841. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.md.css +0 -100
  842. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.ios.css +0 -127
  843. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.md.css +0 -123
  844. package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.ios.css +0 -175
  845. package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.md.css +0 -178
  846. package/dist/node_modules/@ionic/core/dist/collection/components/menu-toggle/menu-toggle.css +0 -3
  847. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.ios.css +0 -250
  848. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.md.css +0 -177
  849. package/dist/node_modules/@ionic/core/dist/collection/components/nav/nav.css +0 -10
  850. package/dist/node_modules/@ionic/core/dist/collection/components/note/note.ios.css +0 -16
  851. package/dist/node_modules/@ionic/core/dist/collection/components/note/note.md.css +0 -17
  852. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.ios.css +0 -217
  853. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.md.css +0 -204
  854. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.ios.css +0 -122
  855. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.md.css +0 -123
  856. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +0 -82
  857. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.md.css +0 -85
  858. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.ios.css +0 -126
  859. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.md.css +0 -122
  860. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.ios.css +0 -201
  861. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.md.css +0 -132
  862. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.ios.css +0 -206
  863. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.md.css +0 -206
  864. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.ios.css +0 -177
  865. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.md.css +0 -178
  866. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.ios.css +0 -275
  867. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.md.css +0 -320
  868. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.ios.css +0 -189
  869. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.md.css +0 -210
  870. package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.ios.css +0 -15
  871. package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.md.css +0 -15
  872. package/dist/node_modules/@ionic/core/dist/collection/components/reorder-group/reorder-group.css +0 -33
  873. package/dist/node_modules/@ionic/core/dist/collection/components/ripple-effect/ripple-effect.css +0 -58
  874. package/dist/node_modules/@ionic/core/dist/collection/components/router-link/router-link.css +0 -29
  875. package/dist/node_modules/@ionic/core/dist/collection/components/router-outlet/route-outlet.css +0 -10
  876. package/dist/node_modules/@ionic/core/dist/collection/components/row/row.css +0 -4
  877. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.ios.css +0 -348
  878. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.md.css +0 -279
  879. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.ios.css +0 -65
  880. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.md.css +0 -36
  881. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.ios.css +0 -446
  882. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.md.css +0 -424
  883. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.ios.css +0 -145
  884. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.md.css +0 -177
  885. package/dist/node_modules/@ionic/core/dist/collection/components/select-option/select-option.css +0 -3
  886. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.ios.css +0 -14
  887. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.md.css +0 -37
  888. package/dist/node_modules/@ionic/core/dist/collection/components/skeleton-text/skeleton-text.css +0 -53
  889. package/dist/node_modules/@ionic/core/dist/collection/components/slide/slide.css +0 -31
  890. package/dist/node_modules/@ionic/core/dist/collection/components/slides/slides.ios.css +0 -764
  891. package/dist/node_modules/@ionic/core/dist/collection/components/slides/slides.md.css +0 -764
  892. package/dist/node_modules/@ionic/core/dist/collection/components/spinner/spinner.css +0 -167
  893. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.ios.css +0 -108
  894. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.md.css +0 -108
  895. package/dist/node_modules/@ionic/core/dist/collection/components/tab/tab.css +0 -4
  896. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.ios.css +0 -97
  897. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.md.css +0 -82
  898. package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.ios.css +0 -308
  899. package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.md.css +0 -331
  900. package/dist/node_modules/@ionic/core/dist/collection/components/tabs/tabs.css +0 -19
  901. package/dist/node_modules/@ionic/core/dist/collection/components/text/text.css +0 -3
  902. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.ios.css +0 -175
  903. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.md.css +0 -179
  904. package/dist/node_modules/@ionic/core/dist/collection/components/thumbnail/thumbnail.css +0 -21
  905. package/dist/node_modules/@ionic/core/dist/collection/components/title/title.ios.css +0 -122
  906. package/dist/node_modules/@ionic/core/dist/collection/components/title/title.md.css +0 -55
  907. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.ios.css +0 -262
  908. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.md.css +0 -295
  909. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.ios.css +0 -286
  910. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.md.css +0 -261
  911. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.ios.css +0 -175
  912. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.md.css +0 -168
  913. package/dist/node_modules/@ionic/core/dist/collection/components/virtual-scroll/virtual-scroll.css +0 -21
  914. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/button/button.css +0 -49
  915. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/cards/card/card.css +0 -208
  916. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/cards/cards.css +0 -31
  917. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/code/code.css +0 -245
  918. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/dropdown/dropdown.css +0 -115
  919. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/header/header-mobile-collapse/header-mobile-collapse.css +0 -255
  920. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/header/header.css +0 -232
  921. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/menu/collapsible/collapsible.css +0 -3
  922. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/menu/menu-toggle/menu-toggle.css +0 -25
  923. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/menu/menu.css +0 -71
  924. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/nav/nav.css +0 -194
  925. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/notfound-page/notfound-page.css +0 -4
  926. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/overlay/overlay.css +0 -67
  927. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/page-footer/page-footer.css +0 -25
  928. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/pagination/pagination.css +0 -93
  929. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/select/select.css +0 -52
  930. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/sidebar/sidebar.css +0 -98
  931. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/sparkle-lower-content-nav/sparkle-lower-content-nav.css +0 -8
  932. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/table-of-contents/table-of-contents.css +0 -37
  933. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/tabs/tabs.css +0 -64
  934. package/dist/node_modules/@stencil/router/dist/collection/components/route/route.css +0 -3
  935. package/dist/node_modules/ionicons/dist/collection/components/icon/icon.css +0 -101
  936. package/dist/sparkle-core/p-00d10dc9.js +0 -4
  937. package/dist/sparkle-core/p-0147266a.js +0 -1
  938. package/dist/sparkle-core/p-04c7b276.entry.js +0 -1
  939. package/dist/sparkle-core/p-05c032dd.js +0 -4
  940. package/dist/sparkle-core/p-06642405.entry.js +0 -1
  941. package/dist/sparkle-core/p-0664370b.entry.js +0 -1
  942. package/dist/sparkle-core/p-06c7d0f2.entry.js +0 -1
  943. package/dist/sparkle-core/p-076f0239.js +0 -4
  944. package/dist/sparkle-core/p-077c732b.js +0 -4
  945. package/dist/sparkle-core/p-08420531.entry.js +0 -1
  946. package/dist/sparkle-core/p-08cca80d.entry.js +0 -1
  947. package/dist/sparkle-core/p-0ad5c123.entry.js +0 -1
  948. package/dist/sparkle-core/p-0afa3a4d.entry.js +0 -1
  949. package/dist/sparkle-core/p-0c3f3ea6.entry.js +0 -1
  950. package/dist/sparkle-core/p-0e4de1d0.js +0 -4
  951. package/dist/sparkle-core/p-0e8e539f.entry.js +0 -1
  952. package/dist/sparkle-core/p-11356b03.entry.js +0 -1
  953. package/dist/sparkle-core/p-11a6c175.entry.js +0 -1
  954. package/dist/sparkle-core/p-12dd96d7.js +0 -4
  955. package/dist/sparkle-core/p-13ec39db.entry.js +0 -1
  956. package/dist/sparkle-core/p-1adc98f6.js +0 -1
  957. package/dist/sparkle-core/p-1b1ba156.entry.js +0 -1
  958. package/dist/sparkle-core/p-1e125ca5.entry.js +0 -1
  959. package/dist/sparkle-core/p-1e4782af.entry.js +0 -1
  960. package/dist/sparkle-core/p-2033cd86.js +0 -7
  961. package/dist/sparkle-core/p-214d1229.entry.js +0 -1
  962. package/dist/sparkle-core/p-23aca7ca.js +0 -4
  963. package/dist/sparkle-core/p-24cb9a33.entry.js +0 -1
  964. package/dist/sparkle-core/p-27fbabc3.entry.js +0 -1
  965. package/dist/sparkle-core/p-2ba70507.entry.js +0 -1
  966. package/dist/sparkle-core/p-2c1ca854.entry.js +0 -1
  967. package/dist/sparkle-core/p-2d9659e2.entry.js +0 -1
  968. package/dist/sparkle-core/p-2f569553.js +0 -1
  969. package/dist/sparkle-core/p-30b810d1.entry.js +0 -4
  970. package/dist/sparkle-core/p-32f4e565.entry.js +0 -1
  971. package/dist/sparkle-core/p-352677e6.entry.js +0 -1
  972. package/dist/sparkle-core/p-38b7cf68.entry.js +0 -1
  973. package/dist/sparkle-core/p-38c842d5.entry.js +0 -1
  974. package/dist/sparkle-core/p-3963e02b.entry.js +0 -1
  975. package/dist/sparkle-core/p-39712c56.entry.js +0 -4
  976. package/dist/sparkle-core/p-39a31e43.js +0 -1
  977. package/dist/sparkle-core/p-3daf2915.entry.js +0 -352
  978. package/dist/sparkle-core/p-3de0e00c.js +0 -4
  979. package/dist/sparkle-core/p-4053ecdb.entry.js +0 -1
  980. package/dist/sparkle-core/p-408176ba.js +0 -1
  981. package/dist/sparkle-core/p-42ed7d5f.entry.js +0 -1
  982. package/dist/sparkle-core/p-48f72e63.js +0 -4
  983. package/dist/sparkle-core/p-4b4a8703.js +0 -1
  984. package/dist/sparkle-core/p-4c6a7e52.js +0 -1
  985. package/dist/sparkle-core/p-4d1cfcbe.entry.js +0 -1
  986. package/dist/sparkle-core/p-4d4077ea.js +0 -4
  987. package/dist/sparkle-core/p-4fba3e4c.js +0 -1
  988. package/dist/sparkle-core/p-506221fe.js +0 -4
  989. package/dist/sparkle-core/p-5096739e.entry.js +0 -1
  990. package/dist/sparkle-core/p-5322c920.entry.js +0 -1
  991. package/dist/sparkle-core/p-5893bbe5.entry.js +0 -1
  992. package/dist/sparkle-core/p-594a6982.entry.js +0 -1
  993. package/dist/sparkle-core/p-5c435d5a.entry.js +0 -1
  994. package/dist/sparkle-core/p-5cad23f1.js +0 -3
  995. package/dist/sparkle-core/p-5d409601.js +0 -1
  996. package/dist/sparkle-core/p-601397df.entry.js +0 -1
  997. package/dist/sparkle-core/p-604a7987.js +0 -4
  998. package/dist/sparkle-core/p-616941c6.entry.js +0 -1
  999. package/dist/sparkle-core/p-6316d124.entry.js +0 -1
  1000. package/dist/sparkle-core/p-63f71ada.entry.js +0 -1
  1001. package/dist/sparkle-core/p-69487d90.entry.js +0 -1
  1002. package/dist/sparkle-core/p-6bde0192.entry.js +0 -7
  1003. package/dist/sparkle-core/p-6d2f4093.entry.js +0 -7
  1004. package/dist/sparkle-core/p-6ffd2420.entry.js +0 -1
  1005. package/dist/sparkle-core/p-72053ae0.entry.js +0 -1
  1006. package/dist/sparkle-core/p-73721c84.js +0 -4
  1007. package/dist/sparkle-core/p-74864276.entry.js +0 -1
  1008. package/dist/sparkle-core/p-7d8427eb.js +0 -4
  1009. package/dist/sparkle-core/p-7dae0f0e.js +0 -1
  1010. package/dist/sparkle-core/p-7dbfc316.js +0 -1
  1011. package/dist/sparkle-core/p-7e7ce516.js +0 -4
  1012. package/dist/sparkle-core/p-81714d94.entry.js +0 -1
  1013. package/dist/sparkle-core/p-8492a765.entry.js +0 -1
  1014. package/dist/sparkle-core/p-859563db.entry.js +0 -1
  1015. package/dist/sparkle-core/p-85d4cd5c.entry.js +0 -1
  1016. package/dist/sparkle-core/p-865f36a8.entry.js +0 -1
  1017. package/dist/sparkle-core/p-86ed13f0.js +0 -5
  1018. package/dist/sparkle-core/p-871106e0.js +0 -4
  1019. package/dist/sparkle-core/p-894ff7e6.entry.js +0 -1
  1020. package/dist/sparkle-core/p-8a41b502.entry.js +0 -1
  1021. package/dist/sparkle-core/p-8b56f734.js +0 -1
  1022. package/dist/sparkle-core/p-8c74cbb6.entry.js +0 -1
  1023. package/dist/sparkle-core/p-924b2917.js +0 -4
  1024. package/dist/sparkle-core/p-9289cdbc.entry.js +0 -1
  1025. package/dist/sparkle-core/p-957715c5.entry.js +0 -1
  1026. package/dist/sparkle-core/p-973fe404.entry.js +0 -22
  1027. package/dist/sparkle-core/p-975b99ee.entry.js +0 -1
  1028. package/dist/sparkle-core/p-98daeddb.entry.js +0 -1
  1029. package/dist/sparkle-core/p-99ee9919.js +0 -1
  1030. package/dist/sparkle-core/p-9abbd715.entry.js +0 -1
  1031. package/dist/sparkle-core/p-9d894ed4.js +0 -4
  1032. package/dist/sparkle-core/p-9e309b3e.entry.js +0 -1
  1033. package/dist/sparkle-core/p-9e7fee8f.entry.js +0 -1
  1034. package/dist/sparkle-core/p-9ebf0537.entry.js +0 -1
  1035. package/dist/sparkle-core/p-a208ab2d.js +0 -4
  1036. package/dist/sparkle-core/p-a2638250.entry.js +0 -1
  1037. package/dist/sparkle-core/p-a2ebcf0a.entry.js +0 -1
  1038. package/dist/sparkle-core/p-a98d7ebe.entry.js +0 -1
  1039. package/dist/sparkle-core/p-add30d46.js +0 -4
  1040. package/dist/sparkle-core/p-b0603d19.js +0 -16
  1041. package/dist/sparkle-core/p-b06e2bef.js +0 -1
  1042. package/dist/sparkle-core/p-b3f375fb.entry.js +0 -1
  1043. package/dist/sparkle-core/p-b5f3e1bf.entry.js +0 -1
  1044. package/dist/sparkle-core/p-b6fec622.entry.js +0 -1
  1045. package/dist/sparkle-core/p-b8d71ff4.js +0 -1
  1046. package/dist/sparkle-core/p-b96f3c84.entry.js +0 -7
  1047. package/dist/sparkle-core/p-bd80ff43.js +0 -4
  1048. package/dist/sparkle-core/p-bd90903e.js +0 -1
  1049. package/dist/sparkle-core/p-be64105c.entry.js +0 -1
  1050. package/dist/sparkle-core/p-c0533c23.entry.js +0 -1
  1051. package/dist/sparkle-core/p-c2990b24.entry.js +0 -1
  1052. package/dist/sparkle-core/p-c3cadfc6.entry.js +0 -1
  1053. package/dist/sparkle-core/p-c60b29bd.entry.js +0 -4
  1054. package/dist/sparkle-core/p-c64a34cd.entry.js +0 -1
  1055. package/dist/sparkle-core/p-c7e21070.entry.js +0 -1
  1056. package/dist/sparkle-core/p-c9f753a4.js +0 -1
  1057. package/dist/sparkle-core/p-cabe9139.js +0 -1
  1058. package/dist/sparkle-core/p-cabfbf22.entry.js +0 -1
  1059. package/dist/sparkle-core/p-cc518c36.entry.js +0 -1
  1060. package/dist/sparkle-core/p-cffd4817.entry.js +0 -1
  1061. package/dist/sparkle-core/p-d0adf726.entry.js +0 -1
  1062. package/dist/sparkle-core/p-d20e4fcf.entry.js +0 -1
  1063. package/dist/sparkle-core/p-d24e53ab.entry.js +0 -1
  1064. package/dist/sparkle-core/p-d288e6c1.entry.js +0 -1
  1065. package/dist/sparkle-core/p-d601810e.entry.js +0 -1
  1066. package/dist/sparkle-core/p-d68092b7.js +0 -4
  1067. package/dist/sparkle-core/p-da391f3f.js +0 -1
  1068. package/dist/sparkle-core/p-de4deb61.entry.js +0 -1
  1069. package/dist/sparkle-core/p-e0cad1bb.js +0 -1
  1070. package/dist/sparkle-core/p-e249aebf.entry.js +0 -1
  1071. package/dist/sparkle-core/p-e3e36ce9.entry.js +0 -1
  1072. package/dist/sparkle-core/p-e421d638.entry.js +0 -1
  1073. package/dist/sparkle-core/p-e686d8b5.entry.js +0 -4
  1074. package/dist/sparkle-core/p-e8988989.entry.js +0 -1
  1075. package/dist/sparkle-core/p-e9431eeb.js +0 -7
  1076. package/dist/sparkle-core/p-ea962e1b.entry.js +0 -1
  1077. package/dist/sparkle-core/p-eaa8bbee.js +0 -4
  1078. package/dist/sparkle-core/p-ebd4354b.entry.js +0 -1
  1079. package/dist/sparkle-core/p-ee1e0eb4.js +0 -2
  1080. package/dist/sparkle-core/p-ef4edc48.entry.js +0 -4
  1081. package/dist/sparkle-core/p-f196c124.entry.js +0 -7
  1082. package/dist/sparkle-core/p-f3cba72a.js +0 -4
  1083. package/dist/sparkle-core/p-f47fe1fe.entry.js +0 -1
  1084. package/dist/sparkle-core/p-f714f77a.entry.js +0 -1
  1085. package/dist/sparkle-core/p-f891c79a.entry.js +0 -1
  1086. package/dist/sparkle-core/p-fb0ca75e.entry.js +0 -5
  1087. package/dist/sparkle-core/p-fb757951.entry.js +0 -1
  1088. package/dist/sparkle-core/p-fd8d0738.entry.js +0 -4
  1089. package/dist/sparkle-core/p-fda95b6e.entry.js +0 -1
  1090. package/dist/sparkle-core/p-fe6dc976.entry.js +0 -1
  1091. package/dist/sparkle-core/p-ff080f82.entry.js +0 -10
  1092. package/dist/sparkle-core/p-ff7a8a71.js +0 -4
  1093. /package/dist/{esm → sparkle-core}/cubic-bezier-4c0db14f.js +0 -0
  1094. /package/dist/{esm → sparkle-core}/focus-visible-4e9a0764.js +0 -0
  1095. /package/dist/{esm → sparkle-core}/hardware-back-button-fa04d6e9.js +0 -0
  1096. /package/dist/{esm → sparkle-core}/index-be6112f8.js +0 -0
  1097. /package/dist/{esm → sparkle-core}/keyboard-7e8329b3.js +0 -0
  1098. /package/dist/{esm → sparkle-core}/localstorage.service-4bf408c8.js +0 -0
  1099. /package/dist/{esm → sparkle-core}/spinner-configs-a37e628a.js +0 -0
  1100. /package/dist/{esm → sparkle-core}/theme-7ef00c83.js +0 -0
@@ -0,0 +1,1196 @@
1
+ import { p as printIonWarning } from './index-05b398c2.js';
2
+
3
+ /*!
4
+ * (C) Ionic http://ionicframework.com - MIT License
5
+ */
6
+ /**
7
+ * Returns true if the selected day is equal to the reference day
8
+ */
9
+ const isSameDay = (baseParts, compareParts) => {
10
+ return (baseParts.month === compareParts.month && baseParts.day === compareParts.day && baseParts.year === compareParts.year);
11
+ };
12
+ /**
13
+ * Returns true is the selected day is before the reference day.
14
+ */
15
+ const isBefore = (baseParts, compareParts) => {
16
+ return (baseParts.year < compareParts.year ||
17
+ (baseParts.year === compareParts.year && baseParts.month < compareParts.month) ||
18
+ (baseParts.year === compareParts.year &&
19
+ baseParts.month === compareParts.month &&
20
+ baseParts.day &&
21
+ baseParts.day < compareParts.day));
22
+ };
23
+ /**
24
+ * Returns true is the selected day is after the reference day.
25
+ */
26
+ const isAfter = (baseParts, compareParts) => {
27
+ return (baseParts.year > compareParts.year ||
28
+ (baseParts.year === compareParts.year && baseParts.month > compareParts.month) ||
29
+ (baseParts.year === compareParts.year &&
30
+ baseParts.month === compareParts.month &&
31
+ baseParts.day &&
32
+ baseParts.day > compareParts.day));
33
+ };
34
+ const warnIfValueOutOfBounds = (value, min, max) => {
35
+ const valueArray = Array.isArray(value) ? value : [value];
36
+ for (const val of valueArray) {
37
+ if ((min && isBefore(val, min)) || (max && isAfter(val, max))) {
38
+ printIonWarning('The value provided to ion-datetime is out of bounds.\n\n' +
39
+ `Min: ${JSON.stringify(min)}\n` +
40
+ `Max: ${JSON.stringify(max)}\n` +
41
+ `Value: ${JSON.stringify(value)}`);
42
+ break;
43
+ }
44
+ }
45
+ };
46
+
47
+ /*!
48
+ * (C) Ionic http://ionicframework.com - MIT License
49
+ */
50
+ /**
51
+ * Determines if given year is a
52
+ * leap year. Returns `true` if year
53
+ * is a leap year. Returns `false`
54
+ * otherwise.
55
+ */
56
+ const isLeapYear = (year) => {
57
+ return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;
58
+ };
59
+ const is24Hour = (locale, hourCycle) => {
60
+ /**
61
+ * If developer has explicitly enabled h23 time
62
+ * then return early and do not look at the system default.
63
+ */
64
+ if (hourCycle !== undefined) {
65
+ return hourCycle === 'h23';
66
+ }
67
+ /**
68
+ * If hourCycle was not specified, check the locale
69
+ * that is set on the user's device. We first check the
70
+ * Intl.DateTimeFormat hourCycle option as developers can encode this
71
+ * option into the locale string. Example: `en-US-u-hc-h23`
72
+ */
73
+ const formatted = new Intl.DateTimeFormat(locale, { hour: 'numeric' });
74
+ const options = formatted.resolvedOptions();
75
+ if (options.hourCycle !== undefined) {
76
+ return options.hourCycle === 'h23';
77
+ }
78
+ /**
79
+ * If hourCycle is not specified (either through lack
80
+ * of browser support or locale information) then fall
81
+ * back to this slower hourCycle check.
82
+ */
83
+ const date = new Date('5/18/2021 00:00');
84
+ const parts = formatted.formatToParts(date);
85
+ const hour = parts.find((p) => p.type === 'hour');
86
+ if (!hour) {
87
+ throw new Error('Hour value not found from DateTimeFormat');
88
+ }
89
+ return hour.value === '00';
90
+ };
91
+ /**
92
+ * Given a date object, returns the number
93
+ * of days in that month.
94
+ * Month value begin at 1, not 0.
95
+ * i.e. January = month 1.
96
+ */
97
+ const getNumDaysInMonth = (month, year) => {
98
+ return month === 4 || month === 6 || month === 9 || month === 11
99
+ ? 30
100
+ : month === 2
101
+ ? isLeapYear(year)
102
+ ? 29
103
+ : 28
104
+ : 31;
105
+ };
106
+ /**
107
+ * Certain locales display month then year while
108
+ * others display year then month.
109
+ * We can use Intl.DateTimeFormat to determine
110
+ * the ordering for each locale.
111
+ * The formatOptions param can be used to customize
112
+ * which pieces of a date to compare against the month
113
+ * with. For example, some locales render dd/mm/yyyy
114
+ * while others render mm/dd/yyyy. This function can be
115
+ * used for variations of the same "month first" check.
116
+ */
117
+ const isMonthFirstLocale = (locale, formatOptions = {
118
+ month: 'numeric',
119
+ year: 'numeric',
120
+ }) => {
121
+ /**
122
+ * By setting month and year we guarantee that only
123
+ * month, year, and literal (slashes '/', for example)
124
+ * values are included in the formatToParts results.
125
+ *
126
+ * The ordering of the parts will be determined by
127
+ * the locale. So if the month is the first value,
128
+ * then we know month should be shown first. If the
129
+ * year is the first value, then we know year should be shown first.
130
+ *
131
+ * This ordering can be controlled by customizing the locale property.
132
+ */
133
+ const parts = new Intl.DateTimeFormat(locale, formatOptions).formatToParts(new Date());
134
+ return parts[0].type === 'month';
135
+ };
136
+ /**
137
+ * Determines if the given locale formats the day period (am/pm) to the
138
+ * left or right of the hour.
139
+ * @param locale The locale to check.
140
+ * @returns `true` if the locale formats the day period to the left of the hour.
141
+ */
142
+ const isLocaleDayPeriodRTL = (locale) => {
143
+ const parts = new Intl.DateTimeFormat(locale, { hour: 'numeric' }).formatToParts(new Date());
144
+ return parts[0].type === 'dayPeriod';
145
+ };
146
+
147
+ /*!
148
+ * (C) Ionic http://ionicframework.com - MIT License
149
+ */
150
+ const twoDigit = (val) => {
151
+ return ('0' + (val !== undefined ? Math.abs(val) : '0')).slice(-2);
152
+ };
153
+ const fourDigit = (val) => {
154
+ return ('000' + (val !== undefined ? Math.abs(val) : '0')).slice(-4);
155
+ };
156
+ function convertDataToISO(data) {
157
+ if (Array.isArray(data)) {
158
+ return data.map((parts) => convertDataToISO(parts));
159
+ }
160
+ // https://www.w3.org/TR/NOTE-datetime
161
+ let rtn = '';
162
+ if (data.year !== undefined) {
163
+ // YYYY
164
+ rtn = fourDigit(data.year);
165
+ if (data.month !== undefined) {
166
+ // YYYY-MM
167
+ rtn += '-' + twoDigit(data.month);
168
+ if (data.day !== undefined) {
169
+ // YYYY-MM-DD
170
+ rtn += '-' + twoDigit(data.day);
171
+ if (data.hour !== undefined) {
172
+ // YYYY-MM-DDTHH:mm:SS
173
+ rtn += `T${twoDigit(data.hour)}:${twoDigit(data.minute)}:00`;
174
+ if (data.tzOffset === undefined) {
175
+ // YYYY-MM-DDTHH:mm:SSZ
176
+ rtn += 'Z';
177
+ }
178
+ else {
179
+ // YYYY-MM-DDTHH:mm:SS+/-HH:mm
180
+ rtn +=
181
+ (data.tzOffset > 0 ? '+' : '-') +
182
+ twoDigit(Math.floor(Math.abs(data.tzOffset / 60))) +
183
+ ':' +
184
+ twoDigit(data.tzOffset % 60);
185
+ }
186
+ }
187
+ }
188
+ }
189
+ }
190
+ else if (data.hour !== undefined) {
191
+ // HH:mm
192
+ rtn = twoDigit(data.hour) + ':' + twoDigit(data.minute);
193
+ }
194
+ return rtn;
195
+ }
196
+ /**
197
+ * Converts an 12 hour value to 24 hours.
198
+ */
199
+ const convert12HourTo24Hour = (hour, ampm) => {
200
+ if (ampm === undefined) {
201
+ return hour;
202
+ }
203
+ /**
204
+ * If AM and 12am
205
+ * then return 00:00.
206
+ * Otherwise just return
207
+ * the hour since it is
208
+ * already in 24 hour format.
209
+ */
210
+ if (ampm === 'am') {
211
+ if (hour === 12) {
212
+ return 0;
213
+ }
214
+ return hour;
215
+ }
216
+ /**
217
+ * If PM and 12pm
218
+ * just return 12:00
219
+ * since it is already
220
+ * in 24 hour format.
221
+ * Otherwise add 12 hours
222
+ * to the time.
223
+ */
224
+ if (hour === 12) {
225
+ return 12;
226
+ }
227
+ return hour + 12;
228
+ };
229
+ const getStartOfWeek = (refParts) => {
230
+ const { dayOfWeek } = refParts;
231
+ if (dayOfWeek === null || dayOfWeek === undefined) {
232
+ throw new Error('No day of week provided');
233
+ }
234
+ return subtractDays(refParts, dayOfWeek);
235
+ };
236
+ const getEndOfWeek = (refParts) => {
237
+ const { dayOfWeek } = refParts;
238
+ if (dayOfWeek === null || dayOfWeek === undefined) {
239
+ throw new Error('No day of week provided');
240
+ }
241
+ return addDays(refParts, 6 - dayOfWeek);
242
+ };
243
+ const getNextDay = (refParts) => {
244
+ return addDays(refParts, 1);
245
+ };
246
+ const getPreviousDay = (refParts) => {
247
+ return subtractDays(refParts, 1);
248
+ };
249
+ const getPreviousWeek = (refParts) => {
250
+ return subtractDays(refParts, 7);
251
+ };
252
+ const getNextWeek = (refParts) => {
253
+ return addDays(refParts, 7);
254
+ };
255
+ /**
256
+ * Given datetime parts, subtract
257
+ * numDays from the date.
258
+ * Returns a new DatetimeParts object
259
+ * Currently can only go backward at most 1 month.
260
+ */
261
+ const subtractDays = (refParts, numDays) => {
262
+ const { month, day, year } = refParts;
263
+ if (day === null) {
264
+ throw new Error('No day provided');
265
+ }
266
+ const workingParts = {
267
+ month,
268
+ day,
269
+ year,
270
+ };
271
+ workingParts.day = day - numDays;
272
+ /**
273
+ * If wrapping to previous month
274
+ * update days and decrement month
275
+ */
276
+ if (workingParts.day < 1) {
277
+ workingParts.month -= 1;
278
+ }
279
+ /**
280
+ * If moving to previous year, reset
281
+ * month to December and decrement year
282
+ */
283
+ if (workingParts.month < 1) {
284
+ workingParts.month = 12;
285
+ workingParts.year -= 1;
286
+ }
287
+ /**
288
+ * Determine how many days are in the current
289
+ * month
290
+ */
291
+ if (workingParts.day < 1) {
292
+ const daysInMonth = getNumDaysInMonth(workingParts.month, workingParts.year);
293
+ /**
294
+ * Take num days in month and add the
295
+ * number of underflow days. This number will
296
+ * be negative.
297
+ * Example: 1 week before Jan 2, 2021 is
298
+ * December 26, 2021 so:
299
+ * 2 - 7 = -5
300
+ * 31 + (-5) = 26
301
+ */
302
+ workingParts.day = daysInMonth + workingParts.day;
303
+ }
304
+ return workingParts;
305
+ };
306
+ /**
307
+ * Given datetime parts, add
308
+ * numDays to the date.
309
+ * Returns a new DatetimeParts object
310
+ * Currently can only go forward at most 1 month.
311
+ */
312
+ const addDays = (refParts, numDays) => {
313
+ const { month, day, year } = refParts;
314
+ if (day === null) {
315
+ throw new Error('No day provided');
316
+ }
317
+ const workingParts = {
318
+ month,
319
+ day,
320
+ year,
321
+ };
322
+ const daysInMonth = getNumDaysInMonth(month, year);
323
+ workingParts.day = day + numDays;
324
+ /**
325
+ * If wrapping to next month
326
+ * update days and increment month
327
+ */
328
+ if (workingParts.day > daysInMonth) {
329
+ workingParts.day -= daysInMonth;
330
+ workingParts.month += 1;
331
+ }
332
+ /**
333
+ * If moving to next year, reset
334
+ * month to January and increment year
335
+ */
336
+ if (workingParts.month > 12) {
337
+ workingParts.month = 1;
338
+ workingParts.year += 1;
339
+ }
340
+ return workingParts;
341
+ };
342
+ /**
343
+ * Given DatetimeParts, generate the previous month.
344
+ */
345
+ const getPreviousMonth = (refParts) => {
346
+ /**
347
+ * If current month is January, wrap backwards
348
+ * to December of the previous year.
349
+ */
350
+ const month = refParts.month === 1 ? 12 : refParts.month - 1;
351
+ const year = refParts.month === 1 ? refParts.year - 1 : refParts.year;
352
+ const numDaysInMonth = getNumDaysInMonth(month, year);
353
+ const day = numDaysInMonth < refParts.day ? numDaysInMonth : refParts.day;
354
+ return { month, year, day };
355
+ };
356
+ /**
357
+ * Given DatetimeParts, generate the next month.
358
+ */
359
+ const getNextMonth = (refParts) => {
360
+ /**
361
+ * If current month is December, wrap forwards
362
+ * to January of the next year.
363
+ */
364
+ const month = refParts.month === 12 ? 1 : refParts.month + 1;
365
+ const year = refParts.month === 12 ? refParts.year + 1 : refParts.year;
366
+ const numDaysInMonth = getNumDaysInMonth(month, year);
367
+ const day = numDaysInMonth < refParts.day ? numDaysInMonth : refParts.day;
368
+ return { month, year, day };
369
+ };
370
+ const changeYear = (refParts, yearDelta) => {
371
+ const month = refParts.month;
372
+ const year = refParts.year + yearDelta;
373
+ const numDaysInMonth = getNumDaysInMonth(month, year);
374
+ const day = numDaysInMonth < refParts.day ? numDaysInMonth : refParts.day;
375
+ return { month, year, day };
376
+ };
377
+ /**
378
+ * Given DatetimeParts, generate the previous year.
379
+ */
380
+ const getPreviousYear = (refParts) => {
381
+ return changeYear(refParts, -1);
382
+ };
383
+ /**
384
+ * Given DatetimeParts, generate the next year.
385
+ */
386
+ const getNextYear = (refParts) => {
387
+ return changeYear(refParts, 1);
388
+ };
389
+ /**
390
+ * If PM, then internal value should
391
+ * be converted to 24-hr time.
392
+ * Does not apply when public
393
+ * values are already 24-hr time.
394
+ */
395
+ const getInternalHourValue = (hour, use24Hour, ampm) => {
396
+ if (use24Hour) {
397
+ return hour;
398
+ }
399
+ return convert12HourTo24Hour(hour, ampm);
400
+ };
401
+ /**
402
+ * Unless otherwise stated, all month values are
403
+ * 1 indexed instead of the typical 0 index in JS Date.
404
+ * Example:
405
+ * January = Month 0 when using JS Date
406
+ * January = Month 1 when using this datetime util
407
+ */
408
+ /**
409
+ * Given the current datetime parts and a new AM/PM value
410
+ * calculate what the hour should be in 24-hour time format.
411
+ * Used when toggling the AM/PM segment since we store our hours
412
+ * in 24-hour time format internally.
413
+ */
414
+ const calculateHourFromAMPM = (currentParts, newAMPM) => {
415
+ const { ampm: currentAMPM, hour } = currentParts;
416
+ let newHour = hour;
417
+ /**
418
+ * If going from AM --> PM, need to update the
419
+ *
420
+ */
421
+ if (currentAMPM === 'am' && newAMPM === 'pm') {
422
+ newHour = convert12HourTo24Hour(newHour, 'pm');
423
+ /**
424
+ * If going from PM --> AM
425
+ */
426
+ }
427
+ else if (currentAMPM === 'pm' && newAMPM === 'am') {
428
+ newHour = Math.abs(newHour - 12);
429
+ }
430
+ return newHour;
431
+ };
432
+
433
+ /*!
434
+ * (C) Ionic http://ionicframework.com - MIT License
435
+ */
436
+ const getFormattedDayPeriod = (dayPeriod) => {
437
+ if (dayPeriod === undefined) {
438
+ return '';
439
+ }
440
+ return dayPeriod.toUpperCase();
441
+ };
442
+ const getLocalizedTime = (locale, refParts, use24Hour) => {
443
+ if (refParts.hour === undefined || refParts.minute === undefined) {
444
+ return 'Invalid Time';
445
+ }
446
+ return new Intl.DateTimeFormat(locale, {
447
+ hour: 'numeric',
448
+ minute: 'numeric',
449
+ timeZone: 'UTC',
450
+ hour12: !use24Hour,
451
+ }).format(new Date(convertDataToISO(Object.assign(Object.assign({}, refParts), {
452
+ // TODO: FW-1831 will remove the need to manually set the tzOffset to undefined
453
+ tzOffset: undefined }))));
454
+ };
455
+ /**
456
+ * Adds padding to a time value so
457
+ * that it is always 2 digits.
458
+ */
459
+ const addTimePadding = (value) => {
460
+ const valueToString = value.toString();
461
+ if (valueToString.length > 1) {
462
+ return valueToString;
463
+ }
464
+ return `0${valueToString}`;
465
+ };
466
+ /**
467
+ * Formats the hour value so that it
468
+ * is always 2 digits. Only applies
469
+ * if using 12 hour format.
470
+ */
471
+ const getFormattedHour = (hour, use24Hour) => {
472
+ if (!use24Hour) {
473
+ return hour.toString();
474
+ }
475
+ return addTimePadding(hour);
476
+ };
477
+ /**
478
+ * Generates an aria-label to be read by screen readers
479
+ * given a local, a date, and whether or not that date is
480
+ * today's date.
481
+ */
482
+ const generateDayAriaLabel = (locale, today, refParts) => {
483
+ if (refParts.day === null) {
484
+ return null;
485
+ }
486
+ /**
487
+ * MM/DD/YYYY will return midnight in the user's timezone.
488
+ */
489
+ const date = new Date(`${refParts.month}/${refParts.day}/${refParts.year} GMT+0000`);
490
+ const labelString = new Intl.DateTimeFormat(locale, {
491
+ weekday: 'long',
492
+ month: 'long',
493
+ day: 'numeric',
494
+ timeZone: 'UTC',
495
+ }).format(date);
496
+ /**
497
+ * If date is today, prepend "Today" so screen readers indicate
498
+ * that the date is today.
499
+ */
500
+ return today ? `Today, ${labelString}` : labelString;
501
+ };
502
+ /**
503
+ * Gets the day of the week, month, and day
504
+ * Used for the header in MD mode.
505
+ */
506
+ const getMonthAndDay = (locale, refParts) => {
507
+ const date = new Date(`${refParts.month}/${refParts.day}/${refParts.year} GMT+0000`);
508
+ return new Intl.DateTimeFormat(locale, { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' }).format(date);
509
+ };
510
+ /**
511
+ * Given a locale and a date object,
512
+ * return a formatted string that includes
513
+ * the month name and full year.
514
+ * Example: May 2021
515
+ */
516
+ const getMonthAndYear = (locale, refParts) => {
517
+ const date = new Date(`${refParts.month}/${refParts.day}/${refParts.year} GMT+0000`);
518
+ return new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric', timeZone: 'UTC' }).format(date);
519
+ };
520
+ /**
521
+ * Given a locale and a date object,
522
+ * return a formatted string that includes
523
+ * the short month, numeric day, and full year.
524
+ * Example: Apr 22, 2021
525
+ */
526
+ const getMonthDayAndYear = (locale, refParts) => {
527
+ return getLocalizedDateTime(locale, refParts, { month: 'short', day: 'numeric', year: 'numeric' });
528
+ };
529
+ /**
530
+ * Wrapper function for Intl.DateTimeFormat.
531
+ * Allows developers to apply an allowed format to DatetimeParts.
532
+ * This function also has built in safeguards for older browser bugs
533
+ * with Intl.DateTimeFormat.
534
+ */
535
+ const getLocalizedDateTime = (locale, refParts, options) => {
536
+ const timeString = !!refParts.hour && !!refParts.minute ? ` ${refParts.hour}:${refParts.minute}` : '';
537
+ const date = new Date(`${refParts.month}/${refParts.day}/${refParts.year}${timeString} GMT+0000`);
538
+ return new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, options), { timeZone: 'UTC' })).format(date);
539
+ };
540
+ /**
541
+ * Gets a localized version of "Today"
542
+ * Falls back to "Today" in English for
543
+ * browsers that do not support RelativeTimeFormat.
544
+ */
545
+ const getTodayLabel = (locale) => {
546
+ if ('RelativeTimeFormat' in Intl) {
547
+ const label = new Intl.RelativeTimeFormat(locale, { numeric: 'auto' }).format(0, 'day');
548
+ return label.charAt(0).toUpperCase() + label.slice(1);
549
+ }
550
+ else {
551
+ return 'Today';
552
+ }
553
+ };
554
+ /**
555
+ * When calling toISOString(), the browser
556
+ * will convert the date to UTC time by either adding
557
+ * or subtracting the time zone offset.
558
+ * To work around this, we need to either add
559
+ * or subtract the time zone offset to the Date
560
+ * object prior to calling toISOString().
561
+ * This allows us to get an ISO string
562
+ * that is in the user's time zone.
563
+ *
564
+ * Example:
565
+ * Time zone offset is 240
566
+ * Meaning: The browser needs to add 240 minutes
567
+ * to the Date object to get UTC time.
568
+ * What Ionic does: We subtract 240 minutes
569
+ * from the Date object. The browser then adds
570
+ * 240 minutes in toISOString(). The result
571
+ * is a time that is in the user's time zone
572
+ * and not UTC.
573
+ *
574
+ * Note: Some timezones include minute adjustments
575
+ * such as 30 or 45 minutes. This is why we use setMinutes
576
+ * instead of setHours.
577
+ * Example: India Standard Time
578
+ * Timezone offset: -330 = -5.5 hours.
579
+ *
580
+ * List of timezones with 30 and 45 minute timezones:
581
+ * https://www.timeanddate.com/time/time-zones-interesting.html
582
+ */
583
+ const removeDateTzOffset = (date) => {
584
+ const tzOffset = date.getTimezoneOffset();
585
+ date.setMinutes(date.getMinutes() - tzOffset);
586
+ return date;
587
+ };
588
+ const DATE_AM = removeDateTzOffset(new Date('2022T01:00'));
589
+ const DATE_PM = removeDateTzOffset(new Date('2022T13:00'));
590
+ /**
591
+ * Formats the locale's string representation of the day period (am/pm) for a given
592
+ * ref parts day period.
593
+ *
594
+ * @param locale The locale to format the day period in.
595
+ * @param value The date string, in ISO format.
596
+ * @returns The localized day period (am/pm) representation of the given value.
597
+ */
598
+ const getLocalizedDayPeriod = (locale, dayPeriod) => {
599
+ const date = dayPeriod === 'am' ? DATE_AM : DATE_PM;
600
+ const localizedDayPeriod = new Intl.DateTimeFormat(locale, {
601
+ hour: 'numeric',
602
+ timeZone: 'UTC',
603
+ })
604
+ .formatToParts(date)
605
+ .find((part) => part.type === 'dayPeriod');
606
+ if (localizedDayPeriod) {
607
+ return localizedDayPeriod.value;
608
+ }
609
+ return getFormattedDayPeriod(dayPeriod);
610
+ };
611
+ /**
612
+ * Formats the datetime's value to a string, for use in the native input.
613
+ *
614
+ * @param value The value to format, either an ISO string or an array thereof.
615
+ */
616
+ const formatValue = (value) => {
617
+ return Array.isArray(value) ? value.join(',') : value;
618
+ };
619
+
620
+ /*!
621
+ * (C) Ionic http://ionicframework.com - MIT License
622
+ */
623
+ /**
624
+ * Returns the current date as
625
+ * an ISO string in the user's
626
+ * time zone.
627
+ */
628
+ const getToday = () => {
629
+ /**
630
+ * ion-datetime intentionally does not
631
+ * parse time zones/do automatic time zone
632
+ * conversion when accepting user input.
633
+ * However when we get today's date string,
634
+ * we want it formatted relative to the user's
635
+ * time zone.
636
+ *
637
+ * When calling toISOString(), the browser
638
+ * will convert the date to UTC time by either adding
639
+ * or subtracting the time zone offset.
640
+ * To work around this, we need to either add
641
+ * or subtract the time zone offset to the Date
642
+ * object prior to calling toISOString().
643
+ * This allows us to get an ISO string
644
+ * that is in the user's time zone.
645
+ */
646
+ return removeDateTzOffset(new Date()).toISOString();
647
+ };
648
+ const minutes = [
649
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
650
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
651
+ ];
652
+ const hour12 = [12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
653
+ const hour23 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23];
654
+ /**
655
+ * Given a locale and a mode,
656
+ * return an array with formatted days
657
+ * of the week. iOS should display days
658
+ * such as "Mon" or "Tue".
659
+ * MD should display days such as "M"
660
+ * or "T".
661
+ */
662
+ const getDaysOfWeek = (locale, mode, firstDayOfWeek = 0) => {
663
+ /**
664
+ * Nov 1st, 2020 starts on a Sunday.
665
+ * ion-datetime assumes weeks start on Sunday,
666
+ * but is configurable via `firstDayOfWeek`.
667
+ */
668
+ const weekdayFormat = mode === 'ios' ? 'short' : 'narrow';
669
+ const intl = new Intl.DateTimeFormat(locale, { weekday: weekdayFormat });
670
+ const startDate = new Date('11/01/2020');
671
+ const daysOfWeek = [];
672
+ /**
673
+ * For each day of the week,
674
+ * get the day name.
675
+ */
676
+ for (let i = firstDayOfWeek; i < firstDayOfWeek + 7; i++) {
677
+ const currentDate = new Date(startDate);
678
+ currentDate.setDate(currentDate.getDate() + i);
679
+ daysOfWeek.push(intl.format(currentDate));
680
+ }
681
+ return daysOfWeek;
682
+ };
683
+ /**
684
+ * Returns an array containing all of the
685
+ * days in a month for a given year. Values are
686
+ * aligned with a week calendar starting on
687
+ * the firstDayOfWeek value (Sunday by default)
688
+ * using null values.
689
+ */
690
+ const getDaysOfMonth = (month, year, firstDayOfWeek) => {
691
+ const numDays = getNumDaysInMonth(month, year);
692
+ const firstOfMonth = new Date(`${month}/1/${year}`).getDay();
693
+ /**
694
+ * To get the first day of the month aligned on the correct
695
+ * day of the week, we need to determine how many "filler" days
696
+ * to generate. These filler days as empty/disabled buttons
697
+ * that fill the space of the days of the week before the first
698
+ * of the month.
699
+ *
700
+ * There are two cases here:
701
+ *
702
+ * 1. If firstOfMonth = 4, firstDayOfWeek = 0 then the offset
703
+ * is (4 - (0 + 1)) = 3. Since the offset loop goes from 0 to 3 inclusive,
704
+ * this will generate 4 filler days (0, 1, 2, 3), and then day of week 4 will have
705
+ * the first day of the month.
706
+ *
707
+ * 2. If firstOfMonth = 2, firstDayOfWeek = 4 then the offset
708
+ * is (6 - (4 - 2)) = 4. Since the offset loop goes from 0 to 4 inclusive,
709
+ * this will generate 5 filler days (0, 1, 2, 3, 4), and then day of week 5 will have
710
+ * the first day of the month.
711
+ */
712
+ const offset = firstOfMonth >= firstDayOfWeek ? firstOfMonth - (firstDayOfWeek + 1) : 6 - (firstDayOfWeek - firstOfMonth);
713
+ let days = [];
714
+ for (let i = 1; i <= numDays; i++) {
715
+ days.push({ day: i, dayOfWeek: (offset + i) % 7 });
716
+ }
717
+ for (let i = 0; i <= offset; i++) {
718
+ days = [{ day: null, dayOfWeek: null }, ...days];
719
+ }
720
+ return days;
721
+ };
722
+ /**
723
+ * Given a local, reference datetime parts and option
724
+ * max/min bound datetime parts, calculate the acceptable
725
+ * hour and minute values according to the bounds and locale.
726
+ */
727
+ const generateTime = (refParts, hourCycle = 'h12', minParts, maxParts, hourValues, minuteValues) => {
728
+ const use24Hour = hourCycle === 'h23';
729
+ let processedHours = use24Hour ? hour23 : hour12;
730
+ let processedMinutes = minutes;
731
+ let isAMAllowed = true;
732
+ let isPMAllowed = true;
733
+ if (hourValues) {
734
+ processedHours = processedHours.filter((hour) => hourValues.includes(hour));
735
+ }
736
+ if (minuteValues) {
737
+ processedMinutes = processedMinutes.filter((minute) => minuteValues.includes(minute));
738
+ }
739
+ if (minParts) {
740
+ /**
741
+ * If ref day is the same as the
742
+ * minimum allowed day, filter hour/minute
743
+ * values according to min hour and minute.
744
+ */
745
+ if (isSameDay(refParts, minParts)) {
746
+ /**
747
+ * Users may not always set the hour/minute for
748
+ * min value (i.e. 2021-06-02) so we should allow
749
+ * all hours/minutes in that case.
750
+ */
751
+ if (minParts.hour !== undefined) {
752
+ processedHours = processedHours.filter((hour) => {
753
+ const convertedHour = refParts.ampm === 'pm' ? (hour + 12) % 24 : hour;
754
+ return (use24Hour ? hour : convertedHour) >= minParts.hour;
755
+ });
756
+ isAMAllowed = minParts.hour < 13;
757
+ }
758
+ if (minParts.minute !== undefined) {
759
+ /**
760
+ * The minimum minute range should not be enforced when
761
+ * the hour is greater than the min hour.
762
+ *
763
+ * For example with a minimum range of 09:30, users
764
+ * should be able to select 10:00-10:29 and beyond.
765
+ */
766
+ let isPastMinHour = false;
767
+ if (minParts.hour !== undefined && refParts.hour !== undefined) {
768
+ if (refParts.hour > minParts.hour) {
769
+ isPastMinHour = true;
770
+ }
771
+ }
772
+ processedMinutes = processedMinutes.filter((minute) => {
773
+ if (isPastMinHour) {
774
+ return true;
775
+ }
776
+ return minute >= minParts.minute;
777
+ });
778
+ }
779
+ /**
780
+ * If ref day is before minimum
781
+ * day do not render any hours/minute values
782
+ */
783
+ }
784
+ else if (isBefore(refParts, minParts)) {
785
+ processedHours = [];
786
+ processedMinutes = [];
787
+ isAMAllowed = isPMAllowed = false;
788
+ }
789
+ }
790
+ if (maxParts) {
791
+ /**
792
+ * If ref day is the same as the
793
+ * maximum allowed day, filter hour/minute
794
+ * values according to max hour and minute.
795
+ */
796
+ if (isSameDay(refParts, maxParts)) {
797
+ /**
798
+ * Users may not always set the hour/minute for
799
+ * max value (i.e. 2021-06-02) so we should allow
800
+ * all hours/minutes in that case.
801
+ */
802
+ if (maxParts.hour !== undefined) {
803
+ processedHours = processedHours.filter((hour) => {
804
+ const convertedHour = refParts.ampm === 'pm' ? (hour + 12) % 24 : hour;
805
+ return (use24Hour ? hour : convertedHour) <= maxParts.hour;
806
+ });
807
+ isPMAllowed = maxParts.hour >= 13;
808
+ }
809
+ if (maxParts.minute !== undefined && refParts.hour === maxParts.hour) {
810
+ // The available minutes should only be filtered when the hour is the same as the max hour.
811
+ // For example if the max hour is 10:30 and the current hour is 10:00,
812
+ // users should be able to select 00-30 minutes.
813
+ // If the current hour is 09:00, users should be able to select 00-60 minutes.
814
+ processedMinutes = processedMinutes.filter((minute) => minute <= maxParts.minute);
815
+ }
816
+ /**
817
+ * If ref day is after minimum
818
+ * day do not render any hours/minute values
819
+ */
820
+ }
821
+ else if (isAfter(refParts, maxParts)) {
822
+ processedHours = [];
823
+ processedMinutes = [];
824
+ isAMAllowed = isPMAllowed = false;
825
+ }
826
+ }
827
+ return {
828
+ hours: processedHours,
829
+ minutes: processedMinutes,
830
+ am: isAMAllowed,
831
+ pm: isPMAllowed,
832
+ };
833
+ };
834
+ /**
835
+ * Given DatetimeParts, generate the previous,
836
+ * current, and and next months.
837
+ */
838
+ const generateMonths = (refParts) => {
839
+ return [
840
+ getPreviousMonth(refParts),
841
+ { month: refParts.month, year: refParts.year, day: refParts.day },
842
+ getNextMonth(refParts),
843
+ ];
844
+ };
845
+ const getMonthColumnData = (locale, refParts, minParts, maxParts, monthValues, formatOptions = {
846
+ month: 'long',
847
+ }) => {
848
+ const { year } = refParts;
849
+ const months = [];
850
+ if (monthValues !== undefined) {
851
+ let processedMonths = monthValues;
852
+ if ((maxParts === null || maxParts === void 0 ? void 0 : maxParts.month) !== undefined) {
853
+ processedMonths = processedMonths.filter((month) => month <= maxParts.month);
854
+ }
855
+ if ((minParts === null || minParts === void 0 ? void 0 : minParts.month) !== undefined) {
856
+ processedMonths = processedMonths.filter((month) => month >= minParts.month);
857
+ }
858
+ processedMonths.forEach((processedMonth) => {
859
+ const date = new Date(`${processedMonth}/1/${year} GMT+0000`);
860
+ const monthString = new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, formatOptions), { timeZone: 'UTC' })).format(date);
861
+ months.push({ text: monthString, value: processedMonth });
862
+ });
863
+ }
864
+ else {
865
+ const maxMonth = maxParts && maxParts.year === year ? maxParts.month : 12;
866
+ const minMonth = minParts && minParts.year === year ? minParts.month : 1;
867
+ for (let i = minMonth; i <= maxMonth; i++) {
868
+ /**
869
+ *
870
+ * There is a bug on iOS 14 where
871
+ * Intl.DateTimeFormat takes into account
872
+ * the local timezone offset when formatting dates.
873
+ *
874
+ * Forcing the timezone to 'UTC' fixes the issue. However,
875
+ * we should keep this workaround as it is safer. In the event
876
+ * this breaks in another browser, we will not be impacted
877
+ * because all dates will be interpreted in UTC.
878
+ *
879
+ * Example:
880
+ * new Intl.DateTimeFormat('en-US', { month: 'long' }).format(new Date('Sat Apr 01 2006 00:00:00 GMT-0400 (EDT)')) // "March"
881
+ * new Intl.DateTimeFormat('en-US', { month: 'long', timeZone: 'UTC' }).format(new Date('Sat Apr 01 2006 00:00:00 GMT-0400 (EDT)')) // "April"
882
+ *
883
+ * In certain timezones, iOS 14 shows the wrong
884
+ * date for .toUTCString(). To combat this, we
885
+ * force all of the timezones to GMT+0000 (UTC).
886
+ *
887
+ * Example:
888
+ * Time Zone: Central European Standard Time
889
+ * new Date('1/1/1992').toUTCString() // "Tue, 31 Dec 1991 23:00:00 GMT"
890
+ * new Date('1/1/1992 GMT+0000').toUTCString() // "Wed, 01 Jan 1992 00:00:00 GMT"
891
+ */
892
+ const date = new Date(`${i}/1/${year} GMT+0000`);
893
+ const monthString = new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, formatOptions), { timeZone: 'UTC' })).format(date);
894
+ months.push({ text: monthString, value: i });
895
+ }
896
+ }
897
+ return months;
898
+ };
899
+ /**
900
+ * Returns information regarding
901
+ * selectable dates (i.e 1st, 2nd, 3rd, etc)
902
+ * within a reference month.
903
+ * @param locale The locale to format the date with
904
+ * @param refParts The reference month/year to generate dates for
905
+ * @param minParts The minimum bound on the date that can be returned
906
+ * @param maxParts The maximum bound on the date that can be returned
907
+ * @param dayValues The allowed date values
908
+ * @returns Date data to be used in ion-picker-column-internal
909
+ */
910
+ const getDayColumnData = (locale, refParts, minParts, maxParts, dayValues, formatOptions = {
911
+ day: 'numeric',
912
+ }) => {
913
+ const { month, year } = refParts;
914
+ const days = [];
915
+ /**
916
+ * If we have max/min bounds that in the same
917
+ * month/year as the refParts, we should
918
+ * use the define day as the max/min day.
919
+ * Otherwise, fallback to the max/min days in a month.
920
+ */
921
+ const numDaysInMonth = getNumDaysInMonth(month, year);
922
+ const maxDay = (maxParts === null || maxParts === void 0 ? void 0 : maxParts.day) && maxParts.year === year && maxParts.month === month ? maxParts.day : numDaysInMonth;
923
+ const minDay = (minParts === null || minParts === void 0 ? void 0 : minParts.day) && minParts.year === year && minParts.month === month ? minParts.day : 1;
924
+ if (dayValues !== undefined) {
925
+ let processedDays = dayValues;
926
+ processedDays = processedDays.filter((day) => day >= minDay && day <= maxDay);
927
+ processedDays.forEach((processedDay) => {
928
+ const date = new Date(`${month}/${processedDay}/${year} GMT+0000`);
929
+ const dayString = new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, formatOptions), { timeZone: 'UTC' })).format(date);
930
+ days.push({ text: dayString, value: processedDay });
931
+ });
932
+ }
933
+ else {
934
+ for (let i = minDay; i <= maxDay; i++) {
935
+ const date = new Date(`${month}/${i}/${year} GMT+0000`);
936
+ const dayString = new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, formatOptions), { timeZone: 'UTC' })).format(date);
937
+ days.push({ text: dayString, value: i });
938
+ }
939
+ }
940
+ return days;
941
+ };
942
+ const getYearColumnData = (refParts, minParts, maxParts, yearValues) => {
943
+ let processedYears = [];
944
+ if (yearValues !== undefined) {
945
+ processedYears = yearValues;
946
+ if ((maxParts === null || maxParts === void 0 ? void 0 : maxParts.year) !== undefined) {
947
+ processedYears = processedYears.filter((year) => year <= maxParts.year);
948
+ }
949
+ if ((minParts === null || minParts === void 0 ? void 0 : minParts.year) !== undefined) {
950
+ processedYears = processedYears.filter((year) => year >= minParts.year);
951
+ }
952
+ }
953
+ else {
954
+ const { year } = refParts;
955
+ const maxYear = (maxParts === null || maxParts === void 0 ? void 0 : maxParts.year) || year;
956
+ const minYear = (minParts === null || minParts === void 0 ? void 0 : minParts.year) || year - 100;
957
+ for (let i = maxYear; i >= minYear; i--) {
958
+ processedYears.push(i);
959
+ }
960
+ }
961
+ return processedYears.map((year) => ({
962
+ text: `${year}`,
963
+ value: year,
964
+ }));
965
+ };
966
+ /**
967
+ * Given a starting date and an upper bound,
968
+ * this functions returns an array of all
969
+ * month objects in that range.
970
+ */
971
+ const getAllMonthsInRange = (currentParts, maxParts) => {
972
+ if (currentParts.month === maxParts.month && currentParts.year === maxParts.year) {
973
+ return [currentParts];
974
+ }
975
+ return [currentParts, ...getAllMonthsInRange(getNextMonth(currentParts), maxParts)];
976
+ };
977
+ /**
978
+ * Creates and returns picker items
979
+ * that represent the days in a month.
980
+ * Example: "Thu, Jun 2"
981
+ */
982
+ const getCombinedDateColumnData = (locale, refParts, todayParts, minParts, maxParts, dayValues, monthValues) => {
983
+ let items = [];
984
+ let parts = [];
985
+ /**
986
+ * Get all month objects from the min date
987
+ * to the max date. Note: Do not use getMonthColumnData
988
+ * as that function only generates dates within a
989
+ * single year.
990
+ */
991
+ let months = getAllMonthsInRange(minParts, maxParts);
992
+ /**
993
+ * Filter out any disallowed month values.
994
+ */
995
+ if (monthValues) {
996
+ months = months.filter(({ month }) => monthValues.includes(month));
997
+ }
998
+ /**
999
+ * Get all of the days in the month.
1000
+ * From there, generate an array where
1001
+ * each item has the month, date, and day
1002
+ * of work as the text.
1003
+ */
1004
+ months.forEach((monthObject) => {
1005
+ const referenceMonth = { month: monthObject.month, day: null, year: refParts.year };
1006
+ const monthDays = getDayColumnData(locale, referenceMonth, minParts, maxParts, dayValues, {
1007
+ month: 'short',
1008
+ day: 'numeric',
1009
+ weekday: 'short',
1010
+ });
1011
+ const dateParts = [];
1012
+ const dateColumnItems = [];
1013
+ monthDays.forEach((dayObject) => {
1014
+ const isToday = isSameDay(Object.assign(Object.assign({}, referenceMonth), { day: dayObject.value }), todayParts);
1015
+ /**
1016
+ * Today's date should read as "Today" (localized)
1017
+ * not the actual date string
1018
+ */
1019
+ dateColumnItems.push({
1020
+ text: isToday ? getTodayLabel(locale) : dayObject.text,
1021
+ value: `${refParts.year}-${monthObject.month}-${dayObject.value}`,
1022
+ });
1023
+ /**
1024
+ * When selecting a date in the wheel picker
1025
+ * we need access to the raw datetime parts data.
1026
+ * The picker column only accepts values of
1027
+ * type string or number, so we need to return
1028
+ * two sets of data: A data set to be passed
1029
+ * to the picker column, and a data set to
1030
+ * be used to reference the raw data when
1031
+ * updating the picker column value.
1032
+ */
1033
+ dateParts.push({
1034
+ month: monthObject.month,
1035
+ year: refParts.year,
1036
+ day: dayObject.value,
1037
+ });
1038
+ });
1039
+ parts = [...parts, ...dateParts];
1040
+ items = [...items, ...dateColumnItems];
1041
+ });
1042
+ return {
1043
+ parts,
1044
+ items,
1045
+ };
1046
+ };
1047
+ const getTimeColumnsData = (locale, refParts, hourCycle, minParts, maxParts, allowedHourValues, allowedMinuteVaues) => {
1048
+ const use24Hour = is24Hour(locale, hourCycle);
1049
+ const { hours, minutes, am, pm } = generateTime(refParts, use24Hour ? 'h23' : 'h12', minParts, maxParts, allowedHourValues, allowedMinuteVaues);
1050
+ const hoursItems = hours.map((hour) => {
1051
+ return {
1052
+ text: getFormattedHour(hour, use24Hour),
1053
+ value: getInternalHourValue(hour, use24Hour, refParts.ampm),
1054
+ };
1055
+ });
1056
+ const minutesItems = minutes.map((minute) => {
1057
+ return {
1058
+ text: addTimePadding(minute),
1059
+ value: minute,
1060
+ };
1061
+ });
1062
+ const dayPeriodItems = [];
1063
+ if (am && !use24Hour) {
1064
+ dayPeriodItems.push({
1065
+ text: getLocalizedDayPeriod(locale, 'am'),
1066
+ value: 'am',
1067
+ });
1068
+ }
1069
+ if (pm && !use24Hour) {
1070
+ dayPeriodItems.push({
1071
+ text: getLocalizedDayPeriod(locale, 'pm'),
1072
+ value: 'pm',
1073
+ });
1074
+ }
1075
+ return {
1076
+ minutesData: minutesItems,
1077
+ hoursData: hoursItems,
1078
+ dayPeriodData: dayPeriodItems,
1079
+ };
1080
+ };
1081
+
1082
+ /*!
1083
+ * (C) Ionic http://ionicframework.com - MIT License
1084
+ */
1085
+ const ISO_8601_REGEXP =
1086
+ // eslint-disable-next-line no-useless-escape
1087
+ /^(\d{4}|[+\-]\d{6})(?:-(\d{2})(?:-(\d{2}))?)?(?:T(\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{3}))?)?(?:(Z)|([+\-])(\d{2})(?::(\d{2}))?)?)?$/;
1088
+ // eslint-disable-next-line no-useless-escape
1089
+ const TIME_REGEXP = /^((\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{3}))?)?(?:(Z)|([+\-])(\d{2})(?::(\d{2}))?)?)?$/;
1090
+ /**
1091
+ * Use to convert a string of comma separated numbers or
1092
+ * an array of numbers, and clean up any user input
1093
+ */
1094
+ const convertToArrayOfNumbers = (input) => {
1095
+ if (input === undefined) {
1096
+ return;
1097
+ }
1098
+ let processedInput = input;
1099
+ if (typeof input === 'string') {
1100
+ // convert the string to an array of strings
1101
+ // auto remove any whitespace and [] characters
1102
+ processedInput = input.replace(/\[|\]|\s/g, '').split(',');
1103
+ }
1104
+ let values;
1105
+ if (Array.isArray(processedInput)) {
1106
+ // ensure each value is an actual number in the returned array
1107
+ values = processedInput.map((num) => parseInt(num, 10)).filter(isFinite);
1108
+ }
1109
+ else {
1110
+ values = [processedInput];
1111
+ }
1112
+ return values;
1113
+ };
1114
+ /**
1115
+ * Extracts date information
1116
+ * from a .calendar-day element
1117
+ * into DatetimeParts.
1118
+ */
1119
+ const getPartsFromCalendarDay = (el) => {
1120
+ return {
1121
+ month: parseInt(el.getAttribute('data-month'), 10),
1122
+ day: parseInt(el.getAttribute('data-day'), 10),
1123
+ year: parseInt(el.getAttribute('data-year'), 10),
1124
+ dayOfWeek: parseInt(el.getAttribute('data-day-of-week'), 10),
1125
+ };
1126
+ };
1127
+ function parseDate(val) {
1128
+ if (Array.isArray(val)) {
1129
+ return val.map((valStr) => parseDate(valStr));
1130
+ }
1131
+ // manually parse IS0 cuz Date.parse cannot be trusted
1132
+ // ISO 8601 format: 1994-12-15T13:47:20Z
1133
+ let parse = null;
1134
+ if (val != null && val !== '') {
1135
+ // try parsing for just time first, HH:MM
1136
+ parse = TIME_REGEXP.exec(val);
1137
+ if (parse) {
1138
+ // adjust the array so it fits nicely with the datetime parse
1139
+ parse.unshift(undefined, undefined);
1140
+ parse[2] = parse[3] = undefined;
1141
+ }
1142
+ else {
1143
+ // try parsing for full ISO datetime
1144
+ parse = ISO_8601_REGEXP.exec(val);
1145
+ }
1146
+ }
1147
+ if (parse === null) {
1148
+ // wasn't able to parse the ISO datetime
1149
+ return undefined;
1150
+ }
1151
+ // ensure all the parse values exist with at least 0
1152
+ for (let i = 1; i < 8; i++) {
1153
+ parse[i] = parse[i] !== undefined ? parseInt(parse[i], 10) : undefined;
1154
+ }
1155
+ let tzOffset = 0;
1156
+ if (parse[9] && parse[10]) {
1157
+ // hours
1158
+ tzOffset = parseInt(parse[10], 10) * 60;
1159
+ if (parse[11]) {
1160
+ // minutes
1161
+ tzOffset += parseInt(parse[11], 10);
1162
+ }
1163
+ if (parse[9] === '-') {
1164
+ // + or -
1165
+ tzOffset *= -1;
1166
+ }
1167
+ }
1168
+ // can also get second and millisecond from parse[6] and parse[7] if needed
1169
+ return {
1170
+ year: parse[1],
1171
+ month: parse[2],
1172
+ day: parse[3],
1173
+ hour: parse[4],
1174
+ minute: parse[5],
1175
+ tzOffset,
1176
+ };
1177
+ }
1178
+ const clampDate = (dateParts, minParts, maxParts) => {
1179
+ if (minParts && isBefore(dateParts, minParts)) {
1180
+ return minParts;
1181
+ }
1182
+ else if (maxParts && isAfter(dateParts, maxParts)) {
1183
+ return maxParts;
1184
+ }
1185
+ return dateParts;
1186
+ };
1187
+ /**
1188
+ * Parses an hour and returns if the value is in the morning (am) or afternoon (pm).
1189
+ * @param hour The hour to format, should be 0-23
1190
+ * @returns `pm` if the hour is greater than or equal to 12, `am` if less than 12.
1191
+ */
1192
+ const parseAmPm = (hour) => {
1193
+ return hour >= 12 ? 'pm' : 'am';
1194
+ };
1195
+
1196
+ export { getYearColumnData as A, isMonthFirstLocale as B, getTimeColumnsData as C, isLocaleDayPeriodRTL as D, calculateHourFromAMPM as E, getMonthAndYear as F, getDaysOfWeek as G, getDaysOfMonth as H, is24Hour as I, getLocalizedTime as J, getMonthAndDay as K, formatValue as L, getLocalizedDateTime as M, getMonthDayAndYear as N, isAfter as a, isSameDay as b, getPreviousMonth as c, getNextMonth as d, getToday as e, getPartsFromCalendarDay as f, generateDayAriaLabel as g, getNextYear as h, isBefore as i, getPreviousYear as j, getEndOfWeek as k, getStartOfWeek as l, getPreviousDay as m, getNextDay as n, getPreviousWeek as o, parseDate as p, getNextWeek as q, clampDate as r, parseAmPm as s, convertToArrayOfNumbers as t, convertDataToISO as u, generateMonths as v, warnIfValueOutOfBounds as w, getCombinedDateColumnData as x, getMonthColumnData as y, getDayColumnData as z };