@sparkle-learning/core 0.0.57 → 0.0.58

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/cjs/PrivateRoute-f97245ce.js +217 -0
  2. package/dist/cjs/active-router-f9e18bd8.js +75 -0
  3. package/dist/cjs/animation-ee586546.js +986 -0
  4. package/dist/cjs/app-globals-33c9f31b.js +9 -0
  5. package/dist/cjs/appdata.service-c8d71e05.js +73 -0
  6. package/dist/cjs/assets.service-bfa75092.js +50 -0
  7. package/dist/cjs/assignment.service-690fb59c.js +19 -0
  8. package/dist/cjs/auth.store-1e630a7d.js +3392 -0
  9. package/dist/cjs/compass-svg.cjs.entry.js +132 -0
  10. package/dist/cjs/context-consumer.cjs.entry.js +29 -0
  11. package/dist/cjs/course-select.cjs.entry.js +30 -0
  12. package/dist/cjs/cubic-bezier-53d26d05.js +93 -0
  13. package/dist/cjs/dir-5af5259a.js +20 -0
  14. package/dist/cjs/environment-config.service-c8ff1f3d.js +28 -0
  15. package/dist/cjs/facilitator.service-ff0e1659.js +95 -0
  16. package/dist/cjs/feed.service-8eca4de6.js +57 -0
  17. package/dist/cjs/focus-visible-b0b07ba6.js +76 -0
  18. package/dist/cjs/framework-delegate-59a98abd.js +111 -0
  19. package/dist/cjs/gesture-controller-0eb5579e.js +196 -0
  20. package/dist/cjs/haptic-780f33c4.js +116 -0
  21. package/dist/cjs/hardware-back-button-92d97ff8.js +76 -0
  22. package/dist/cjs/header-mobile-collapse_61.cjs.entry.js +15124 -0
  23. package/dist/cjs/helpers-c2496722.js +425 -0
  24. package/dist/cjs/httpService-d2e7bf8f.js +687 -0
  25. package/dist/cjs/icons-fda820af.js +26 -0
  26. package/dist/cjs/index-12082cba.js +465 -0
  27. package/dist/cjs/index-15ea05f5.js +314 -0
  28. package/dist/cjs/index-51e8292e.js +1928 -0
  29. package/dist/cjs/index-787d4498.js +232 -0
  30. package/dist/cjs/index-8b5629a6.js +186 -0
  31. package/dist/cjs/index-975586fd.js +48 -0
  32. package/dist/cjs/index-9c7b27e4.js +140 -0
  33. package/dist/cjs/index-af080b50.js +139 -0
  34. package/dist/cjs/index-e56e09b8.js +38 -0
  35. package/dist/cjs/index.cjs.js +26 -0
  36. package/dist/cjs/index.es-38cbcdbe.js +10666 -0
  37. package/dist/cjs/input-shims-eff63b88.js +418 -0
  38. package/dist/cjs/ion-accordion-group.cjs.entry.js +205 -0
  39. package/dist/cjs/ion-accordion.cjs.entry.js +336 -0
  40. package/dist/cjs/ion-action-sheet_7.cjs.entry.js +2935 -0
  41. package/dist/cjs/ion-app.cjs.entry.js +79 -0
  42. package/dist/cjs/ion-back-button.cjs.entry.js +94 -0
  43. package/dist/cjs/ion-backdrop.cjs.entry.js +67 -0
  44. package/dist/cjs/ion-badge.cjs.entry.js +29 -0
  45. package/dist/cjs/ion-breadcrumb.cjs.entry.js +95 -0
  46. package/dist/cjs/ion-breadcrumbs.cjs.entry.js +133 -0
  47. package/dist/cjs/ion-buttons_3.cjs.entry.js +153 -0
  48. package/dist/cjs/ion-card-header.cjs.entry.js +37 -0
  49. package/dist/cjs/ion-card-subtitle.cjs.entry.js +30 -0
  50. package/dist/cjs/ion-card-title.cjs.entry.js +30 -0
  51. package/dist/cjs/ion-chip.cjs.entry.js +40 -0
  52. package/dist/cjs/ion-content_2.cjs.entry.js +659 -0
  53. package/dist/cjs/ion-datetime-button.cjs.entry.js +312 -0
  54. package/dist/cjs/ion-datetime.cjs.entry.js +1623 -0
  55. package/dist/cjs/ion-fab-button.cjs.entry.js +108 -0
  56. package/dist/cjs/ion-fab-list.cjs.entry.js +45 -0
  57. package/dist/cjs/ion-fab.cjs.entry.js +76 -0
  58. package/dist/cjs/ion-footer.cjs.entry.js +120 -0
  59. package/dist/cjs/ion-img.cjs.entry.js +101 -0
  60. package/dist/cjs/ion-infinite-scroll-content.cjs.entry.js +37 -0
  61. package/dist/cjs/ion-infinite-scroll.cjs.entry.js +206 -0
  62. package/dist/cjs/ion-item-divider.cjs.entry.js +40 -0
  63. package/dist/cjs/ion-item-group.cjs.entry.js +31 -0
  64. package/dist/cjs/ion-item-option.cjs.entry.js +60 -0
  65. package/dist/cjs/ion-item-options.cjs.entry.js +47 -0
  66. package/dist/cjs/ion-item-sliding.cjs.entry.js +398 -0
  67. package/dist/cjs/ion-loading.cjs.entry.js +215 -0
  68. package/dist/cjs/ion-menu-button.cjs.entry.js +76 -0
  69. package/dist/cjs/ion-menu-toggle.cjs.entry.js +47 -0
  70. package/dist/cjs/ion-menu.cjs.entry.js +575 -0
  71. package/dist/cjs/ion-modal.cjs.entry.js +1711 -0
  72. package/dist/cjs/ion-nav-link.cjs.entry.js +47 -0
  73. package/dist/cjs/ion-nav.cjs.entry.js +872 -0
  74. package/dist/cjs/ion-picker-column-internal_2.cjs.entry.js +808 -0
  75. package/dist/cjs/ion-picker-column.cjs.entry.js +331 -0
  76. package/dist/cjs/ion-picker.cjs.entry.js +221 -0
  77. package/dist/cjs/ion-progress-bar.cjs.entry.js +74 -0
  78. package/dist/cjs/ion-refresher-content.cjs.entry.js +35 -0
  79. package/dist/cjs/ion-refresher.cjs.entry.js +802 -0
  80. package/dist/cjs/ion-reorder-group.cjs.entry.js +281 -0
  81. package/dist/cjs/ion-reorder.cjs.entry.js +38 -0
  82. package/dist/cjs/ion-route-redirect.cjs.entry.js +24 -0
  83. package/dist/cjs/ion-route.cjs.entry.js +49 -0
  84. package/dist/cjs/ion-router-link.cjs.entry.js +38 -0
  85. package/dist/cjs/ion-router-outlet.cjs.entry.js +200 -0
  86. package/dist/cjs/ion-router.cjs.entry.js +831 -0
  87. package/dist/cjs/ion-searchbar.cjs.entry.js +370 -0
  88. package/dist/cjs/ion-segment-button.cjs.entry.js +102 -0
  89. package/dist/cjs/ion-segment.cjs.entry.js +417 -0
  90. package/dist/cjs/ion-skeleton-text.cjs.entry.js +33 -0
  91. package/dist/cjs/ion-slide.cjs.entry.js +25 -0
  92. package/dist/cjs/ion-slides.cjs.entry.js +391 -0
  93. package/dist/cjs/ion-split-pane.cjs.entry.js +154 -0
  94. package/dist/cjs/ion-tab-bar.cjs.entry.js +75 -0
  95. package/dist/cjs/ion-tab-button.cjs.entry.js +103 -0
  96. package/dist/cjs/ion-tab.cjs.entry.js +59 -0
  97. package/dist/cjs/ion-tabs.cjs.entry.js +154 -0
  98. package/dist/cjs/ion-thumbnail.cjs.entry.js +20 -0
  99. package/dist/cjs/ion-toast.cjs.entry.js +272 -0
  100. package/dist/cjs/ion-toggle.cjs.entry.js +177 -0
  101. package/dist/cjs/ion-virtual-scroll.cjs.entry.js +555 -0
  102. package/dist/cjs/ionic-global-2cde9d3a.js +231 -0
  103. package/dist/cjs/ios.transition-da235483.js +482 -0
  104. package/dist/cjs/keyboard-91096619.js +140 -0
  105. package/dist/cjs/loader.cjs.js +24 -0
  106. package/dist/cjs/localstorage.service-6346a41d.js +40 -0
  107. package/dist/cjs/md.transition-be429e07.js +57 -0
  108. package/dist/cjs/media.service-8a1b9bc5.js +40 -0
  109. package/dist/cjs/menu-toggle-util-7a01448c.js +14 -0
  110. package/dist/cjs/overlays-32df265a.js +507 -0
  111. package/dist/cjs/parse-d0071120.js +1237 -0
  112. package/dist/cjs/purify-fb9c107e.js +1468 -0
  113. package/dist/cjs/signalR.service-bd6b42f9.js +2985 -0
  114. package/dist/cjs/sparkle-animation-player.cjs.entry.js +515 -0
  115. package/dist/cjs/sparkle-assignment.cjs.entry.js +110 -0
  116. package/dist/cjs/sparkle-character-intro.cjs.entry.js +26 -0
  117. package/dist/cjs/sparkle-code.cjs.entry.js +43 -0
  118. package/dist/cjs/sparkle-compass-post.cjs.entry.js +133 -0
  119. package/dist/cjs/sparkle-compass.cjs.entry.js +126 -0
  120. package/dist/cjs/sparkle-core.cjs.js +22 -0
  121. package/dist/cjs/sparkle-discussion-questions_2.cjs.entry.js +281 -0
  122. package/dist/cjs/sparkle-discussion.cjs.entry.js +42 -0
  123. package/dist/cjs/sparkle-emoji.cjs.entry.js +80 -0
  124. package/dist/cjs/sparkle-facilitator-notes-form.cjs.entry.js +121 -0
  125. package/dist/cjs/sparkle-feed-post.cjs.entry.js +122 -0
  126. package/dist/cjs/sparkle-feedback.cjs.entry.js +101 -0
  127. package/dist/cjs/sparkle-file-upload.cjs.entry.js +53 -0
  128. package/dist/cjs/sparkle-goal-form.cjs.entry.js +179 -0
  129. package/dist/cjs/sparkle-gww-comment-list.cjs.entry.js +26 -0
  130. package/dist/cjs/sparkle-gww-graph.cjs.entry.js +19 -0
  131. package/dist/cjs/sparkle-input.cjs.entry.js +56 -0
  132. package/dist/cjs/sparkle-intro.cjs.entry.js +26 -0
  133. package/dist/cjs/sparkle-lower-content-nav.cjs.entry.js +22 -0
  134. package/dist/cjs/sparkle-menu-collapsible.cjs.entry.js +46 -0
  135. package/dist/cjs/sparkle-modal-image.cjs.entry.js +34 -0
  136. package/dist/cjs/sparkle-notfound-page.cjs.entry.js +25 -0
  137. package/dist/cjs/sparkle-overlay.cjs.entry.js +92 -0
  138. package/dist/cjs/sparkle-poll.cjs.entry.js +19 -0
  139. package/dist/cjs/sparkle-quiz-container.cjs.entry.js +47 -0
  140. package/dist/cjs/sparkle-quiz-feedback_5.cjs.entry.js +117 -0
  141. package/dist/cjs/sparkle-quiz-old.cjs.entry.js +120 -0
  142. package/dist/cjs/sparkle-quiz.cjs.entry.js +103 -0
  143. package/dist/cjs/sparkle-select.cjs.entry.js +61 -0
  144. package/dist/cjs/sparkle-sidebar.cjs.entry.js +43 -0
  145. package/dist/cjs/sparkle-tab.cjs.entry.js +26 -0
  146. package/dist/cjs/sparkle-table-of-contents.cjs.entry.js +71 -0
  147. package/dist/cjs/sparkle-tabs.cjs.entry.js +66 -0
  148. package/dist/cjs/sparkle-video-player.cjs.entry.js +22 -0
  149. package/dist/cjs/sparkle-youtube.cjs.entry.js +39 -0
  150. package/dist/cjs/spinner-configs-0ac05f2d.js +147 -0
  151. package/dist/cjs/status-tap-033befa2.js +42 -0
  152. package/dist/cjs/stencil-async-content.cjs.entry.js +32 -0
  153. package/dist/cjs/stencil-route-title.cjs.entry.js +32 -0
  154. package/dist/cjs/stencil-router-prompt.cjs.entry.js +59 -0
  155. package/dist/cjs/student.service-7e5385be.js +78 -0
  156. package/dist/cjs/swipe-back-4a826f9b.js +76 -0
  157. package/dist/cjs/swiper.bundle-8c897c07.js +6420 -0
  158. package/dist/cjs/theme-b0b295c1.js +48 -0
  159. package/dist/cjs/token.service-7a41953d.js +97 -0
  160. package/dist/cjs/util-47e320b2.js +2462 -0
  161. package/dist/collection/PrivateRoute.js +27 -0
  162. package/dist/collection/appconst.js +13 -0
  163. package/dist/collection/assets/img/forward.svg +5 -0
  164. package/dist/collection/assets/img/help/fitt-logo.svg +1 -0
  165. package/dist/collection/assets/img/home/big-white-wall.svg +15 -0
  166. package/dist/collection/assets/img/home/find-help.svg +23 -0
  167. package/dist/collection/assets/img/home/lessons.svg +26 -0
  168. package/dist/collection/assets/img/home/my-goals.svg +19 -0
  169. package/dist/collection/assets/img/home/my-health.svg +17 -0
  170. package/dist/collection/assets/img/home/my-mood.svg +26 -0
  171. package/dist/collection/assets/img/pause.svg +5 -0
  172. package/dist/collection/assets/img/play-symbol.svg +8 -0
  173. package/dist/collection/assets/img/play.svg +4 -0
  174. package/dist/collection/assets/img/rewind.svg +5 -0
  175. package/dist/collection/assets/lib/SignalRAspNetCoreHelper.js +17 -0
  176. package/dist/collection/assets/lib/sparkleUtility.js +8 -0
  177. package/dist/collection/assets/svg/profile.svg +2 -0
  178. package/dist/collection/collection-manifest.json +219 -0
  179. package/dist/collection/components/compass-svg/compass-svg.css +15 -0
  180. package/dist/collection/components/compass-svg/compass-svg.js +156 -0
  181. package/dist/collection/components/layout/facilitator/export-lessons/export-lessons.css +7 -0
  182. package/dist/collection/components/layout/facilitator/export-lessons/export-lessons.js +110 -0
  183. package/dist/collection/components/layout/facilitator/facilitator-dashboard/facilitator-dashboard.css +3 -0
  184. package/dist/collection/components/layout/facilitator/facilitator-dashboard/facilitator-dashboard.js +214 -0
  185. package/dist/collection/components/layout/facilitator/facilitator-header/facilitator-header-mobile-collapse/facilitator-header-mobile-collapse.js +0 -0
  186. package/dist/collection/components/layout/facilitator/facilitator-header/facilitator-header.css +172 -0
  187. package/dist/collection/components/layout/facilitator/facilitator-header/facilitator-header.js +104 -0
  188. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes-form/facilitator-notes-form.css +3 -0
  189. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes-form/facilitator-notes-form.js +144 -0
  190. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes.css +14 -0
  191. package/dist/collection/components/layout/facilitator/facilitator-notes/facilitator-notes.js +64 -0
  192. package/dist/collection/components/layout/facilitator/facilitator-page.css +196 -0
  193. package/dist/collection/components/layout/facilitator/facilitator-page.js +281 -0
  194. package/dist/collection/components/layout/facilitator/online-students/online-students.css +0 -0
  195. package/dist/collection/components/layout/facilitator/online-students/online-students.js +70 -0
  196. package/dist/collection/components/layout/page/page.css +183 -0
  197. package/dist/collection/components/layout/page/page.js +321 -0
  198. package/dist/collection/components/layout/page/templates/default.js +9 -0
  199. package/dist/collection/components/layout/page/templates/error.js +33 -0
  200. package/dist/collection/components/layout/page/templates/index.js +8 -0
  201. package/dist/collection/components/layout/page/templates/pdf.js +8 -0
  202. package/dist/collection/components/layout/page/to-hypertext.js +27 -0
  203. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-form/sparkle-goal-form.css +3 -0
  204. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-form/sparkle-goal-form.js +252 -0
  205. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-item/sparkle-goal-item.css +12 -0
  206. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-item/sparkle-goal-item.js +59 -0
  207. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-progress/sparkle-goal-progress.css +33 -0
  208. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goal-progress/sparkle-goal-progress.js +37 -0
  209. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goals.css +8 -0
  210. package/dist/collection/components/mini-apps/sparkle-goals/sparkle-goals.js +40 -0
  211. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-comment-list/sparkle-gww-comment-list.css +7 -0
  212. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-comment-list/sparkle-gww-comment-list.js +52 -0
  213. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-graph/sparkle-gww-graph.css +3 -0
  214. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-graph/sparkle-gww-graph.js +14 -0
  215. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-item/sparkle-gww-item.css +30 -0
  216. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww-item/sparkle-gww-item.js +187 -0
  217. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww.css +3 -0
  218. package/dist/collection/components/mini-apps/sparkle-gww/sparkle-gww.js +43 -0
  219. package/dist/collection/components/mini-apps/sparkle-health/sparkle-health.css +10 -0
  220. package/dist/collection/components/mini-apps/sparkle-health/sparkle-health.js +111 -0
  221. package/dist/collection/components/mini-apps/sparkle-mood/sparkle-mood.css +11 -0
  222. package/dist/collection/components/mini-apps/sparkle-mood/sparkle-mood.js +127 -0
  223. package/dist/collection/components/modal-image/modal-image.css +61 -0
  224. package/dist/collection/components/modal-image/modal-image.js +159 -0
  225. package/dist/collection/components/sparkle-animation-player/assets/play-button-disabled-overlay.png +0 -0
  226. package/dist/collection/components/sparkle-animation-player/assets/play-button-overlay.png +0 -0
  227. package/dist/collection/components/sparkle-animation-player/caption-parser.js +94 -0
  228. package/dist/collection/components/sparkle-animation-player/sparkle-animation-player.css +157 -0
  229. package/dist/collection/components/sparkle-animation-player/sparkle-animation-player.js +598 -0
  230. package/dist/collection/components/sparkle-assignment/sparkle-assignment.css +30 -0
  231. package/dist/collection/components/sparkle-assignment/sparkle-assignment.js +159 -0
  232. package/dist/collection/components/sparkle-character-intro/assets/characters/character-img.jpg +0 -0
  233. package/dist/collection/components/sparkle-character-intro/assets/characters/jen.png +0 -0
  234. package/dist/collection/components/sparkle-character-intro/assets/characters/kimberly.png +0 -0
  235. package/dist/collection/components/sparkle-character-intro/assets/characters/valeria.png +0 -0
  236. package/dist/collection/components/sparkle-character-intro/assets/characters/yuna.png +0 -0
  237. package/dist/collection/components/sparkle-character-intro/assets/characters/zynab.png +0 -0
  238. package/dist/collection/components/sparkle-character-intro/sparkle-character-intro.css +74 -0
  239. package/dist/collection/components/sparkle-character-intro/sparkle-character-intro.js +68 -0
  240. package/dist/collection/components/sparkle-compass/sparkle-compass-post/sparkle-compass-post.css +35 -0
  241. package/dist/collection/components/sparkle-compass/sparkle-compass-post/sparkle-compass-post.js +171 -0
  242. package/dist/collection/components/sparkle-compass/sparkle-compass.css +25 -0
  243. package/dist/collection/components/sparkle-compass/sparkle-compass.js +283 -0
  244. package/dist/collection/components/sparkle-course-root/sparkle-course-root.css +3 -0
  245. package/dist/collection/components/sparkle-course-root/sparkle-course-root.js +196 -0
  246. package/dist/collection/components/sparkle-discussion/sparkle-discussion-questions/sparkle-discussion-questions.css +157 -0
  247. package/dist/collection/components/sparkle-discussion/sparkle-discussion-questions/sparkle-discussion-questions.js +232 -0
  248. package/dist/collection/components/sparkle-discussion/sparkle-discussion-results/sparkle-discussion-results.css +158 -0
  249. package/dist/collection/components/sparkle-discussion/sparkle-discussion-results/sparkle-discussion-results.js +274 -0
  250. package/dist/collection/components/sparkle-discussion/sparkle-discussion.css +5 -0
  251. package/dist/collection/components/sparkle-discussion/sparkle-discussion.js +112 -0
  252. package/dist/collection/components/sparkle-emoji/sparkle-emoji.css +16 -0
  253. package/dist/collection/components/sparkle-emoji/sparkle-emoji.js +116 -0
  254. package/dist/collection/components/sparkle-feed-post/sparkle-feed-post.css +35 -0
  255. package/dist/collection/components/sparkle-feed-post/sparkle-feed-post.js +199 -0
  256. package/dist/collection/components/sparkle-feedback/sparkle-feedback.css +3 -0
  257. package/dist/collection/components/sparkle-feedback/sparkle-feedback.js +118 -0
  258. package/dist/collection/components/sparkle-file-upload/sparkle-file-upload.css +0 -0
  259. package/dist/collection/components/sparkle-file-upload/sparkle-file-upload.js +105 -0
  260. package/dist/collection/components/sparkle-forgot-password/sparkle-forgot-password.css +4 -0
  261. package/dist/collection/components/sparkle-forgot-password/sparkle-forgot-password.js +107 -0
  262. package/dist/collection/components/sparkle-input/sparkle-input.css +0 -0
  263. package/dist/collection/components/sparkle-input/sparkle-input.js +212 -0
  264. package/dist/collection/components/sparkle-intro/sparkle-intro.css +15 -0
  265. package/dist/collection/components/sparkle-intro/sparkle-intro.js +35 -0
  266. package/dist/collection/components/sparkle-login/sparkle-login.css +4 -0
  267. package/dist/collection/components/sparkle-login/sparkle-login.js +173 -0
  268. package/dist/collection/components/sparkle-poll/sparkle-poll.css +3 -0
  269. package/dist/collection/components/sparkle-poll/sparkle-poll.js +15 -0
  270. package/dist/collection/components/sparkle-quiz/sparkle-quiz-feedback/sparkle-quiz-feedback.css +3 -0
  271. package/dist/collection/components/sparkle-quiz/sparkle-quiz-feedback/sparkle-quiz-feedback.js +69 -0
  272. package/dist/collection/components/sparkle-quiz/sparkle-quiz-input/sparkle-quiz-input.css +3 -0
  273. package/dist/collection/components/sparkle-quiz/sparkle-quiz-input/sparkle-quiz-input.js +59 -0
  274. package/dist/collection/components/sparkle-quiz/sparkle-quiz-old/sparkle-quiz-old.css +48 -0
  275. package/dist/collection/components/sparkle-quiz/sparkle-quiz-old/sparkle-quiz-old.js +327 -0
  276. package/dist/collection/components/sparkle-quiz/sparkle-quiz-opinion/sparkle-quiz-opinion.css +18 -0
  277. package/dist/collection/components/sparkle-quiz/sparkle-quiz-opinion/sparkle-quiz-opinion.js +106 -0
  278. package/dist/collection/components/sparkle-quiz/sparkle-quiz-poll/sparkle-quiz-poll.css +3 -0
  279. package/dist/collection/components/sparkle-quiz/sparkle-quiz-poll/sparkle-quiz-poll.js +59 -0
  280. package/dist/collection/components/sparkle-quiz/sparkle-quiz-select/sparkle-quiz-select.css +3 -0
  281. package/dist/collection/components/sparkle-quiz/sparkle-quiz-select/sparkle-quiz-select.js +100 -0
  282. package/dist/collection/components/sparkle-quiz/sparkle-quiz.css +48 -0
  283. package/dist/collection/components/sparkle-quiz/sparkle-quiz.js +221 -0
  284. package/dist/collection/components/sparkle-quiz-container/sparkle-quiz-container.css +3 -0
  285. package/dist/collection/components/sparkle-quiz-container/sparkle-quiz-container.js +98 -0
  286. package/dist/collection/components/sparkle-reset-password/sparkle-reset-password.css +3 -0
  287. package/dist/collection/components/sparkle-reset-password/sparkle-reset-password.js +126 -0
  288. package/dist/collection/components/sparkle-root/sparkle-root.css +61 -0
  289. package/dist/collection/components/sparkle-root/sparkle-root.js +86 -0
  290. package/dist/collection/components/sparkle-signup/sparkle-signup.css +6 -0
  291. package/dist/collection/components/sparkle-signup/sparkle-signup.js +197 -0
  292. package/dist/collection/components/sparkle-unauthorized/sparkle-unauthorized.css +13 -0
  293. package/dist/collection/components/sparkle-unauthorized/sparkle-unauthorized.js +18 -0
  294. package/dist/collection/components/sparkle-user-enrollment/sparkle-user-enrollment.css +3 -0
  295. package/dist/collection/components/sparkle-user-enrollment/sparkle-user-enrollment.js +93 -0
  296. package/dist/collection/components/sparkle-user-profile/sparkle-user-profile.css +54 -0
  297. package/dist/collection/components/sparkle-user-profile/sparkle-user-profile.js +151 -0
  298. package/dist/collection/components/sparkle-validation-error/sparkle-validation-error.css +11 -0
  299. package/dist/collection/components/sparkle-validation-error/sparkle-validation-error.js +44 -0
  300. package/dist/collection/components/sparkle-video-player/sparkle-video-player.css +0 -0
  301. package/dist/collection/components/sparkle-video-player/sparkle-video-player.js +92 -0
  302. package/dist/collection/components/sparkle-youtube/sparkle-youtube.css +24 -0
  303. package/dist/collection/components/sparkle-youtube/sparkle-youtube.js +99 -0
  304. package/dist/collection/global/app.js +4 -0
  305. package/dist/collection/helpers/utils.js +3 -0
  306. package/dist/collection/icons.js +36 -0
  307. package/dist/collection/index.js +3 -0
  308. package/dist/collection/l10n.js +18 -0
  309. package/dist/collection/models/api.model.js +7 -0
  310. package/dist/collection/models/assets.model.js +1 -0
  311. package/dist/collection/models/auth/auth.user.js +1 -0
  312. package/dist/collection/models/class.model.js +5 -0
  313. package/dist/collection/models/course.model.js +10 -0
  314. package/dist/collection/models/definitions.js +1 -0
  315. package/dist/collection/models/facilitator-dashboard.model.js +5 -0
  316. package/dist/collection/models/goal.model.js +1 -0
  317. package/dist/collection/models/index.js +1 -0
  318. package/dist/collection/models/markdown.model.js +1 -0
  319. package/dist/collection/models/page.model.js +1 -0
  320. package/dist/collection/models/quiz.model.js +3 -0
  321. package/dist/collection/models/user.model.js +1 -0
  322. package/dist/collection/pages/course/welcome-to-mind-body/introduction/animation/m4l1p1_part1.js +2727 -0
  323. package/dist/collection/pages/course/welcome-to-mind-body/introduction/animation/m4l1p1_part2.js +2042 -0
  324. package/dist/collection/services/account.service.js +61 -0
  325. package/dist/collection/services/appdata.service.js +60 -0
  326. package/dist/collection/services/assignment.service.js +14 -0
  327. package/dist/collection/services/auth/auth.service.js +64 -0
  328. package/dist/collection/services/core/assets.service.js +45 -0
  329. package/dist/collection/services/core/localstorage.service.js +34 -0
  330. package/dist/collection/services/environment/environment-config.js +24 -0
  331. package/dist/collection/services/environment/environment-config.service.js +24 -0
  332. package/dist/collection/services/facilitator.service.js +76 -0
  333. package/dist/collection/services/feed.service.js +43 -0
  334. package/dist/collection/services/httpService.js +103 -0
  335. package/dist/collection/services/index.js +4 -0
  336. package/dist/collection/services/media.service.js +29 -0
  337. package/dist/collection/services/signalR.service.js +83 -0
  338. package/dist/collection/services/store.service.js +13 -0
  339. package/dist/collection/services/student.service.js +56 -0
  340. package/dist/collection/services/token.service.js +79 -0
  341. package/dist/collection/stores/auth.store.js +12 -0
  342. package/dist/collection/stores/class.store.js +5 -0
  343. package/dist/collection/stores/error.store.js +5 -0
  344. package/dist/collection/stores/facilitator.store.js +15 -0
  345. package/dist/collection/stores/feed.store.js +8 -0
  346. package/dist/collection/stores/goal.store.js +7 -0
  347. package/dist/collection/stores/index.js +1 -0
  348. package/dist/collection/stores/media.store.js +5 -0
  349. package/dist/collection/stores/mood.store.js +5 -0
  350. package/dist/collection/stores/nav.store.js +11 -0
  351. package/dist/collection/stores/signalR.store.js +6 -0
  352. package/dist/collection/stores/theme.store.js +9 -0
  353. package/dist/collection/stores/toc.store.js +5 -0
  354. package/dist/collection/stores/user.store.js +16 -0
  355. package/dist/collection/util.js +55 -0
  356. package/dist/collection/utils.js +92 -0
  357. package/dist/esm/PrivateRoute-90ac95b8.js +212 -0
  358. package/dist/esm/active-router-fc9e4e06.js +73 -0
  359. package/dist/esm/animation-12377cb3.js +984 -0
  360. package/dist/esm/app-globals-3f0347b0.js +7 -0
  361. package/dist/esm/appdata.service-2e84e167.js +70 -0
  362. package/dist/esm/assets.service-def1d63c.js +48 -0
  363. package/dist/esm/assignment.service-8d31f141.js +17 -0
  364. package/dist/esm/auth.store-dba2c2da.js +3381 -0
  365. package/dist/esm/compass-svg.entry.js +128 -0
  366. package/dist/esm/context-consumer.entry.js +25 -0
  367. package/dist/esm/course-select.entry.js +26 -0
  368. package/dist/esm/dir-03012648.js +18 -0
  369. package/dist/esm/environment-config.service-b191f276.js +26 -0
  370. package/dist/esm/facilitator.service-18c47bdf.js +92 -0
  371. package/dist/esm/feed.service-b4f3cae4.js +54 -0
  372. package/dist/esm/framework-delegate-3e634a5c.js +107 -0
  373. package/dist/esm/gesture-controller-7be18351.js +194 -0
  374. package/dist/esm/haptic-522f76f2.js +110 -0
  375. package/dist/esm/header-mobile-collapse_61.entry.js +15060 -0
  376. package/dist/esm/helpers-bf0e23d6.js +403 -0
  377. package/dist/esm/httpService-7986aeed.js +685 -0
  378. package/dist/esm/icons-1c794c74.js +18 -0
  379. package/dist/esm/index-21661af2.js +463 -0
  380. package/dist/esm/index-2b84cad2.js +223 -0
  381. package/dist/esm/index-4044fde9.js +25 -0
  382. package/dist/esm/index-45fec1e7.js +184 -0
  383. package/dist/esm/index-5e8971ae.js +128 -0
  384. package/dist/esm/index-c04b9ed5.js +1888 -0
  385. package/dist/esm/index-cded2d87.js +312 -0
  386. package/dist/esm/index-dad75b83.js +34 -0
  387. package/dist/esm/index.es-e0c0f891.js +10580 -0
  388. package/dist/esm/index.js +12 -0
  389. package/dist/esm/input-shims-671d8d9f.js +416 -0
  390. package/dist/esm/ion-accordion-group.entry.js +201 -0
  391. package/dist/esm/ion-accordion.entry.js +332 -0
  392. package/dist/esm/ion-action-sheet_7.entry.js +2925 -0
  393. package/dist/esm/ion-app.entry.js +75 -0
  394. package/dist/esm/ion-back-button.entry.js +90 -0
  395. package/dist/esm/ion-backdrop.entry.js +63 -0
  396. package/dist/esm/ion-badge.entry.js +25 -0
  397. package/dist/esm/ion-breadcrumb.entry.js +91 -0
  398. package/dist/esm/ion-breadcrumbs.entry.js +129 -0
  399. package/dist/esm/ion-buttons_3.entry.js +147 -0
  400. package/dist/esm/ion-card-header.entry.js +33 -0
  401. package/dist/esm/ion-card-subtitle.entry.js +26 -0
  402. package/dist/esm/ion-card-title.entry.js +26 -0
  403. package/dist/esm/ion-chip.entry.js +36 -0
  404. package/dist/esm/ion-content_2.entry.js +654 -0
  405. package/dist/esm/ion-datetime-button.entry.js +308 -0
  406. package/dist/esm/ion-datetime.entry.js +1619 -0
  407. package/dist/esm/ion-fab-button.entry.js +104 -0
  408. package/dist/esm/ion-fab-list.entry.js +41 -0
  409. package/dist/esm/ion-fab.entry.js +72 -0
  410. package/dist/esm/ion-footer.entry.js +116 -0
  411. package/dist/esm/ion-img.entry.js +97 -0
  412. package/dist/esm/ion-infinite-scroll-content.entry.js +33 -0
  413. package/dist/esm/ion-infinite-scroll.entry.js +202 -0
  414. package/dist/esm/ion-item-divider.entry.js +36 -0
  415. package/dist/esm/ion-item-group.entry.js +27 -0
  416. package/dist/esm/ion-item-option.entry.js +56 -0
  417. package/dist/esm/ion-item-options.entry.js +43 -0
  418. package/dist/esm/ion-item-sliding.entry.js +394 -0
  419. package/dist/esm/ion-loading.entry.js +211 -0
  420. package/dist/esm/ion-menu-button.entry.js +72 -0
  421. package/dist/esm/ion-menu-toggle.entry.js +43 -0
  422. package/dist/esm/ion-menu.entry.js +571 -0
  423. package/dist/esm/ion-modal.entry.js +1707 -0
  424. package/dist/esm/ion-nav-link.entry.js +43 -0
  425. package/dist/esm/ion-nav.entry.js +868 -0
  426. package/dist/esm/ion-picker-column-internal_2.entry.js +803 -0
  427. package/dist/esm/ion-picker-column.entry.js +327 -0
  428. package/dist/esm/ion-picker.entry.js +217 -0
  429. package/dist/esm/ion-progress-bar.entry.js +70 -0
  430. package/dist/esm/ion-refresher-content.entry.js +31 -0
  431. package/dist/esm/ion-refresher.entry.js +798 -0
  432. package/dist/esm/ion-reorder-group.entry.js +277 -0
  433. package/dist/esm/ion-reorder.entry.js +34 -0
  434. package/dist/esm/ion-route-redirect.entry.js +20 -0
  435. package/dist/esm/ion-route.entry.js +45 -0
  436. package/dist/esm/ion-router-link.entry.js +34 -0
  437. package/dist/esm/ion-router-outlet.entry.js +196 -0
  438. package/dist/esm/ion-router.entry.js +827 -0
  439. package/dist/esm/ion-searchbar.entry.js +366 -0
  440. package/dist/esm/ion-segment-button.entry.js +98 -0
  441. package/dist/esm/ion-segment.entry.js +413 -0
  442. package/dist/esm/ion-skeleton-text.entry.js +29 -0
  443. package/dist/esm/ion-slide.entry.js +21 -0
  444. package/dist/esm/ion-slides.entry.js +387 -0
  445. package/dist/esm/ion-split-pane.entry.js +150 -0
  446. package/dist/esm/ion-tab-bar.entry.js +71 -0
  447. package/dist/esm/ion-tab-button.entry.js +99 -0
  448. package/dist/esm/ion-tab.entry.js +55 -0
  449. package/dist/esm/ion-tabs.entry.js +150 -0
  450. package/dist/esm/ion-thumbnail.entry.js +16 -0
  451. package/dist/esm/ion-toast.entry.js +268 -0
  452. package/dist/esm/ion-toggle.entry.js +173 -0
  453. package/dist/esm/ion-virtual-scroll.entry.js +551 -0
  454. package/dist/esm/ionic-global-4903e23e.js +226 -0
  455. package/dist/esm/ios.transition-131d64fe.js +479 -0
  456. package/dist/esm/loader.js +20 -0
  457. package/dist/esm/md.transition-f6126011.js +55 -0
  458. package/dist/esm/media.service-6e90bc41.js +37 -0
  459. package/dist/esm/menu-toggle-util-bace8ae6.js +12 -0
  460. package/dist/esm/overlays-4233a39d.js +491 -0
  461. package/dist/esm/parse-1ae3a9bb.js +1196 -0
  462. package/dist/esm/polyfills/core-js.js +11 -0
  463. package/dist/esm/polyfills/css-shim.js +1 -0
  464. package/dist/esm/polyfills/dom.js +79 -0
  465. package/dist/esm/polyfills/es5-html-element.js +1 -0
  466. package/dist/esm/polyfills/index.js +34 -0
  467. package/dist/esm/polyfills/system.js +6 -0
  468. package/dist/esm/purify-85bfcc69.js +1466 -0
  469. package/dist/esm/signalR.service-c33fba50.js +2982 -0
  470. package/dist/esm/sparkle-animation-player.entry.js +511 -0
  471. package/dist/esm/sparkle-assignment.entry.js +106 -0
  472. package/dist/esm/sparkle-character-intro.entry.js +22 -0
  473. package/dist/esm/sparkle-code.entry.js +39 -0
  474. package/dist/esm/sparkle-compass-post.entry.js +129 -0
  475. package/dist/esm/sparkle-compass.entry.js +122 -0
  476. package/dist/esm/sparkle-core.js +20 -0
  477. package/dist/esm/sparkle-discussion-questions_2.entry.js +276 -0
  478. package/dist/esm/sparkle-discussion.entry.js +38 -0
  479. package/dist/esm/sparkle-emoji.entry.js +76 -0
  480. package/dist/esm/sparkle-facilitator-notes-form.entry.js +117 -0
  481. package/dist/esm/sparkle-feed-post.entry.js +118 -0
  482. package/dist/esm/sparkle-feedback.entry.js +97 -0
  483. package/dist/esm/sparkle-file-upload.entry.js +49 -0
  484. package/dist/esm/sparkle-goal-form.entry.js +175 -0
  485. package/dist/esm/sparkle-gww-comment-list.entry.js +22 -0
  486. package/dist/esm/sparkle-gww-graph.entry.js +15 -0
  487. package/dist/esm/sparkle-input.entry.js +52 -0
  488. package/dist/esm/sparkle-intro.entry.js +22 -0
  489. package/dist/esm/sparkle-lower-content-nav.entry.js +18 -0
  490. package/dist/esm/sparkle-menu-collapsible.entry.js +42 -0
  491. package/dist/esm/sparkle-modal-image.entry.js +30 -0
  492. package/dist/esm/sparkle-notfound-page.entry.js +21 -0
  493. package/dist/esm/sparkle-overlay.entry.js +88 -0
  494. package/dist/esm/sparkle-poll.entry.js +15 -0
  495. package/dist/esm/sparkle-quiz-container.entry.js +43 -0
  496. package/dist/esm/sparkle-quiz-feedback_5.entry.js +109 -0
  497. package/dist/esm/sparkle-quiz-old.entry.js +116 -0
  498. package/dist/esm/sparkle-quiz.entry.js +99 -0
  499. package/dist/esm/sparkle-select.entry.js +57 -0
  500. package/dist/esm/sparkle-sidebar.entry.js +39 -0
  501. package/dist/esm/sparkle-tab.entry.js +22 -0
  502. package/dist/esm/sparkle-table-of-contents.entry.js +67 -0
  503. package/dist/esm/sparkle-tabs.entry.js +62 -0
  504. package/dist/esm/sparkle-video-player.entry.js +18 -0
  505. package/dist/esm/sparkle-youtube.entry.js +35 -0
  506. package/dist/esm/status-tap-dde52787.js +40 -0
  507. package/dist/esm/stencil-async-content.entry.js +28 -0
  508. package/dist/esm/stencil-route-title.entry.js +28 -0
  509. package/dist/esm/stencil-router-prompt.entry.js +55 -0
  510. package/dist/esm/student.service-08af124f.js +75 -0
  511. package/dist/esm/swipe-back-7847a0c1.js +74 -0
  512. package/dist/esm/swiper.bundle-b6a959de.js +6418 -0
  513. package/dist/esm/token.service-71a5d33f.js +94 -0
  514. package/dist/esm/util-57cc8006.js +2451 -0
  515. package/dist/index.cjs.js +1 -0
  516. package/dist/index.js +1 -0
  517. package/dist/loader/cdn.js +3 -0
  518. package/dist/loader/index.cjs.js +3 -0
  519. package/dist/loader/index.d.ts +12 -0
  520. package/dist/loader/index.es2017.js +3 -0
  521. package/dist/loader/index.js +4 -0
  522. package/dist/loader/package.json +10 -0
  523. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.ios.css +75 -0
  524. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.md.css +72 -0
  525. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.ios.css +25 -0
  526. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.md.css +59 -0
  527. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.ios.css +357 -0
  528. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.md.css +290 -0
  529. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.ios.css +494 -0
  530. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.md.css +502 -0
  531. package/dist/node_modules/@ionic/core/dist/collection/components/app/app.css +17 -0
  532. package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.ios.css +22 -0
  533. package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.md.css +22 -0
  534. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.ios.css +281 -0
  535. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.md.css +309 -0
  536. package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.ios.css +26 -0
  537. package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.md.css +26 -0
  538. package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.ios.css +58 -0
  539. package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.md.css +62 -0
  540. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.ios.css +234 -0
  541. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.md.css +237 -0
  542. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +38 -0
  543. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.md.css +37 -0
  544. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.ios.css +439 -0
  545. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.md.css +428 -0
  546. package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.ios.css +128 -0
  547. package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.md.css +151 -0
  548. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.ios.css +101 -0
  549. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.md.css +95 -0
  550. package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.ios.css +61 -0
  551. package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.md.css +63 -0
  552. package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.ios.css +37 -0
  553. package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.md.css +35 -0
  554. package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.ios.css +28 -0
  555. package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.md.css +26 -0
  556. package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.ios.css +27 -0
  557. package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.md.css +27 -0
  558. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.ios.css +169 -0
  559. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.md.css +172 -0
  560. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.ios.css +200 -0
  561. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.md.css +200 -0
  562. package/dist/node_modules/@ionic/core/dist/collection/components/col/col.css +108 -0
  563. package/dist/node_modules/@ionic/core/dist/collection/components/content/content.css +237 -0
  564. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.ios.css +648 -0
  565. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.md.css +637 -0
  566. package/dist/node_modules/@ionic/core/dist/collection/components/datetime-button/datetime-button.css +60 -0
  567. package/dist/node_modules/@ionic/core/dist/collection/components/fab/fab.css +61 -0
  568. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.ios.css +338 -0
  569. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.md.css +307 -0
  570. package/dist/node_modules/@ionic/core/dist/collection/components/fab-list/fab-list.css +116 -0
  571. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.ios.css +37 -0
  572. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.md.css +37 -0
  573. package/dist/node_modules/@ionic/core/dist/collection/components/grid/grid.css +151 -0
  574. package/dist/node_modules/@ionic/core/dist/collection/components/header/header.ios.css +108 -0
  575. package/dist/node_modules/@ionic/core/dist/collection/components/header/header.md.css +40 -0
  576. package/dist/node_modules/@ionic/core/dist/collection/components/img/img.css +12 -0
  577. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll/infinite-scroll.css +8 -0
  578. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +54 -0
  579. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +54 -0
  580. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.ios.css +185 -0
  581. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.md.css +185 -0
  582. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.ios.css +669 -0
  583. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.md.css +928 -0
  584. package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.ios.css +204 -0
  585. package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.md.css +297 -0
  586. package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.ios.css +3 -0
  587. package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.md.css +3 -0
  588. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.ios.css +186 -0
  589. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.md.css +180 -0
  590. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.ios.css +88 -0
  591. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.md.css +85 -0
  592. package/dist/node_modules/@ionic/core/dist/collection/components/item-sliding/item-sliding.css +42 -0
  593. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.ios.css +156 -0
  594. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.md.css +250 -0
  595. package/dist/node_modules/@ionic/core/dist/collection/components/list/list.ios.css +91 -0
  596. package/dist/node_modules/@ionic/core/dist/collection/components/list/list.md.css +114 -0
  597. package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.ios.css +118 -0
  598. package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.md.css +94 -0
  599. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.ios.css +109 -0
  600. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.md.css +100 -0
  601. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.ios.css +127 -0
  602. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.md.css +123 -0
  603. package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.ios.css +175 -0
  604. package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.md.css +178 -0
  605. package/dist/node_modules/@ionic/core/dist/collection/components/menu-toggle/menu-toggle.css +3 -0
  606. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.ios.css +250 -0
  607. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.md.css +177 -0
  608. package/dist/node_modules/@ionic/core/dist/collection/components/nav/nav.css +10 -0
  609. package/dist/node_modules/@ionic/core/dist/collection/components/note/note.ios.css +16 -0
  610. package/dist/node_modules/@ionic/core/dist/collection/components/note/note.md.css +17 -0
  611. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.ios.css +217 -0
  612. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.md.css +204 -0
  613. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.ios.css +122 -0
  614. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.md.css +123 -0
  615. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +82 -0
  616. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.md.css +85 -0
  617. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.ios.css +126 -0
  618. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.md.css +122 -0
  619. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.ios.css +201 -0
  620. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.md.css +132 -0
  621. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.ios.css +206 -0
  622. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.md.css +206 -0
  623. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.ios.css +177 -0
  624. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.md.css +178 -0
  625. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.ios.css +275 -0
  626. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.md.css +320 -0
  627. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.ios.css +189 -0
  628. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.md.css +210 -0
  629. package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.ios.css +15 -0
  630. package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.md.css +15 -0
  631. package/dist/node_modules/@ionic/core/dist/collection/components/reorder-group/reorder-group.css +33 -0
  632. package/dist/node_modules/@ionic/core/dist/collection/components/ripple-effect/ripple-effect.css +58 -0
  633. package/dist/node_modules/@ionic/core/dist/collection/components/router-link/router-link.css +29 -0
  634. package/dist/node_modules/@ionic/core/dist/collection/components/router-outlet/route-outlet.css +10 -0
  635. package/dist/node_modules/@ionic/core/dist/collection/components/row/row.css +4 -0
  636. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.ios.css +348 -0
  637. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.md.css +279 -0
  638. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.ios.css +65 -0
  639. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.md.css +36 -0
  640. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.ios.css +446 -0
  641. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.md.css +424 -0
  642. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.ios.css +145 -0
  643. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.md.css +177 -0
  644. package/dist/node_modules/@ionic/core/dist/collection/components/select-option/select-option.css +3 -0
  645. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.ios.css +14 -0
  646. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.md.css +37 -0
  647. package/dist/node_modules/@ionic/core/dist/collection/components/skeleton-text/skeleton-text.css +53 -0
  648. package/dist/node_modules/@ionic/core/dist/collection/components/slide/slide.css +31 -0
  649. package/dist/node_modules/@ionic/core/dist/collection/components/slides/slides.ios.css +764 -0
  650. package/dist/node_modules/@ionic/core/dist/collection/components/slides/slides.md.css +764 -0
  651. package/dist/node_modules/@ionic/core/dist/collection/components/spinner/spinner.css +167 -0
  652. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.ios.css +108 -0
  653. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.md.css +108 -0
  654. package/dist/node_modules/@ionic/core/dist/collection/components/tab/tab.css +4 -0
  655. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.ios.css +97 -0
  656. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.md.css +82 -0
  657. package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.ios.css +308 -0
  658. package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.md.css +331 -0
  659. package/dist/node_modules/@ionic/core/dist/collection/components/tabs/tabs.css +19 -0
  660. package/dist/node_modules/@ionic/core/dist/collection/components/text/text.css +3 -0
  661. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.ios.css +175 -0
  662. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.md.css +179 -0
  663. package/dist/node_modules/@ionic/core/dist/collection/components/thumbnail/thumbnail.css +21 -0
  664. package/dist/node_modules/@ionic/core/dist/collection/components/title/title.ios.css +122 -0
  665. package/dist/node_modules/@ionic/core/dist/collection/components/title/title.md.css +55 -0
  666. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.ios.css +262 -0
  667. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.md.css +295 -0
  668. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.ios.css +286 -0
  669. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.md.css +261 -0
  670. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.ios.css +175 -0
  671. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.md.css +168 -0
  672. package/dist/node_modules/@ionic/core/dist/collection/components/virtual-scroll/virtual-scroll.css +21 -0
  673. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/button/button.css +49 -0
  674. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/cards/card/card.css +208 -0
  675. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/cards/cards.css +31 -0
  676. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/code/code.css +245 -0
  677. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/dropdown/dropdown.css +115 -0
  678. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/header/header-mobile-collapse/header-mobile-collapse.css +255 -0
  679. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/header/header.css +232 -0
  680. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/menu/collapsible/collapsible.css +3 -0
  681. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/menu/menu-toggle/menu-toggle.css +25 -0
  682. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/menu/menu.css +71 -0
  683. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/nav/nav.css +194 -0
  684. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/notfound-page/notfound-page.css +4 -0
  685. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/overlay/overlay.css +67 -0
  686. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/page-footer/page-footer.css +25 -0
  687. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/pagination/pagination.css +93 -0
  688. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/select/select.css +52 -0
  689. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/sidebar/sidebar.css +98 -0
  690. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/sparkle-lower-content-nav/sparkle-lower-content-nav.css +8 -0
  691. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/table-of-contents/table-of-contents.css +37 -0
  692. package/dist/node_modules/@sparkle-learning/components/dist/collection/components/tabs/tabs.css +64 -0
  693. package/dist/node_modules/@stencil/router/dist/collection/components/route/route.css +3 -0
  694. package/dist/node_modules/ionicons/dist/collection/components/icon/icon.css +101 -0
  695. package/dist/sparkle-core/index.esm.js +1 -19
  696. package/dist/sparkle-core/p-00d10dc9.js +4 -0
  697. package/dist/sparkle-core/p-0147266a.js +1 -0
  698. package/dist/sparkle-core/p-04c7b276.entry.js +1 -0
  699. package/dist/sparkle-core/p-05c032dd.js +4 -0
  700. package/dist/sparkle-core/p-06642405.entry.js +1 -0
  701. package/dist/sparkle-core/p-0664370b.entry.js +1 -0
  702. package/dist/sparkle-core/p-06c7d0f2.entry.js +1 -0
  703. package/dist/sparkle-core/p-076f0239.js +4 -0
  704. package/dist/sparkle-core/p-077c732b.js +4 -0
  705. package/dist/sparkle-core/p-08420531.entry.js +1 -0
  706. package/dist/sparkle-core/p-0ad5c123.entry.js +1 -0
  707. package/dist/sparkle-core/p-0afa3a4d.entry.js +1 -0
  708. package/dist/sparkle-core/p-0c3f3ea6.entry.js +1 -0
  709. package/dist/sparkle-core/p-0e4de1d0.js +4 -0
  710. package/dist/sparkle-core/p-0e8e539f.entry.js +1 -0
  711. package/dist/sparkle-core/p-11356b03.entry.js +1 -0
  712. package/dist/sparkle-core/p-11a6c175.entry.js +1 -0
  713. package/dist/sparkle-core/p-12dd96d7.js +4 -0
  714. package/dist/sparkle-core/p-13ec39db.entry.js +1 -0
  715. package/dist/sparkle-core/p-1adc98f6.js +1 -0
  716. package/dist/sparkle-core/p-1b1ba156.entry.js +1 -0
  717. package/dist/sparkle-core/p-1e125ca5.entry.js +1 -0
  718. package/dist/sparkle-core/p-1e4782af.entry.js +1 -0
  719. package/dist/sparkle-core/p-2033cd86.js +7 -0
  720. package/dist/sparkle-core/p-214d1229.entry.js +1 -0
  721. package/dist/sparkle-core/p-23aca7ca.js +4 -0
  722. package/dist/sparkle-core/p-24cb9a33.entry.js +1 -0
  723. package/dist/sparkle-core/p-27fbabc3.entry.js +1 -0
  724. package/dist/sparkle-core/p-2ba70507.entry.js +1 -0
  725. package/dist/sparkle-core/p-2c1ca854.entry.js +1 -0
  726. package/dist/sparkle-core/p-2caed39f.entry.js +1 -0
  727. package/dist/sparkle-core/p-2d9659e2.entry.js +1 -0
  728. package/dist/sparkle-core/p-2f569553.js +1 -0
  729. package/dist/sparkle-core/p-30b810d1.entry.js +4 -0
  730. package/dist/sparkle-core/p-32f4e565.entry.js +1 -0
  731. package/dist/sparkle-core/p-352677e6.entry.js +1 -0
  732. package/dist/sparkle-core/p-38b7cf68.entry.js +1 -0
  733. package/dist/sparkle-core/p-38c842d5.entry.js +1 -0
  734. package/dist/sparkle-core/p-3963e02b.entry.js +1 -0
  735. package/dist/sparkle-core/p-39712c56.entry.js +4 -0
  736. package/dist/sparkle-core/p-39a31e43.js +1 -0
  737. package/dist/sparkle-core/p-3daf2915.entry.js +352 -0
  738. package/dist/sparkle-core/p-3de0e00c.js +4 -0
  739. package/dist/sparkle-core/p-4053ecdb.entry.js +1 -0
  740. package/dist/sparkle-core/p-408176ba.js +1 -0
  741. package/dist/sparkle-core/p-42ed7d5f.entry.js +1 -0
  742. package/dist/sparkle-core/p-48f72e63.js +4 -0
  743. package/dist/sparkle-core/p-4b4a8703.js +1 -0
  744. package/dist/sparkle-core/p-4c6a7e52.js +1 -0
  745. package/dist/sparkle-core/p-4d1cfcbe.entry.js +1 -0
  746. package/dist/sparkle-core/p-4d4077ea.js +4 -0
  747. package/dist/sparkle-core/p-4fba3e4c.js +1 -0
  748. package/dist/sparkle-core/p-506221fe.js +4 -0
  749. package/dist/sparkle-core/p-5096739e.entry.js +1 -0
  750. package/dist/sparkle-core/p-5322c920.entry.js +1 -0
  751. package/dist/sparkle-core/p-5893bbe5.entry.js +1 -0
  752. package/dist/sparkle-core/p-594a6982.entry.js +1 -0
  753. package/dist/sparkle-core/p-5c435d5a.entry.js +1 -0
  754. package/dist/sparkle-core/p-5cad23f1.js +3 -0
  755. package/dist/sparkle-core/p-5d409601.js +1 -0
  756. package/dist/sparkle-core/p-601397df.entry.js +1 -0
  757. package/dist/sparkle-core/p-604a7987.js +4 -0
  758. package/dist/sparkle-core/p-616941c6.entry.js +1 -0
  759. package/dist/sparkle-core/p-6316d124.entry.js +1 -0
  760. package/dist/sparkle-core/p-63f71ada.entry.js +1 -0
  761. package/dist/sparkle-core/p-69487d90.entry.js +1 -0
  762. package/dist/sparkle-core/p-6bde0192.entry.js +7 -0
  763. package/dist/sparkle-core/p-6d2f4093.entry.js +7 -0
  764. package/dist/sparkle-core/p-6ffd2420.entry.js +1 -0
  765. package/dist/sparkle-core/p-72053ae0.entry.js +1 -0
  766. package/dist/sparkle-core/p-73721c84.js +4 -0
  767. package/dist/sparkle-core/p-74864276.entry.js +1 -0
  768. package/dist/sparkle-core/p-7d8427eb.js +4 -0
  769. package/dist/sparkle-core/p-7dae0f0e.js +1 -0
  770. package/dist/sparkle-core/p-7dbfc316.js +1 -0
  771. package/dist/sparkle-core/p-7e7ce516.js +4 -0
  772. package/dist/sparkle-core/p-81714d94.entry.js +1 -0
  773. package/dist/sparkle-core/p-8492a765.entry.js +1 -0
  774. package/dist/sparkle-core/p-859563db.entry.js +1 -0
  775. package/dist/sparkle-core/p-85d4cd5c.entry.js +1 -0
  776. package/dist/sparkle-core/p-865f36a8.entry.js +1 -0
  777. package/dist/sparkle-core/p-86ed13f0.js +5 -0
  778. package/dist/sparkle-core/p-871106e0.js +4 -0
  779. package/dist/sparkle-core/p-894ff7e6.entry.js +1 -0
  780. package/dist/sparkle-core/p-8a41b502.entry.js +1 -0
  781. package/dist/sparkle-core/p-8b56f734.js +1 -0
  782. package/dist/sparkle-core/p-8c74cbb6.entry.js +1 -0
  783. package/dist/sparkle-core/p-924b2917.js +4 -0
  784. package/dist/sparkle-core/p-9289cdbc.entry.js +1 -0
  785. package/dist/sparkle-core/p-957715c5.entry.js +1 -0
  786. package/dist/sparkle-core/p-973fe404.entry.js +22 -0
  787. package/dist/sparkle-core/p-975b99ee.entry.js +1 -0
  788. package/dist/sparkle-core/p-98daeddb.entry.js +1 -0
  789. package/dist/sparkle-core/p-99ee9919.js +1 -0
  790. package/dist/sparkle-core/p-9abbd715.entry.js +1 -0
  791. package/dist/sparkle-core/p-9d894ed4.js +4 -0
  792. package/dist/sparkle-core/p-9e309b3e.entry.js +1 -0
  793. package/dist/sparkle-core/p-9e7fee8f.entry.js +1 -0
  794. package/dist/sparkle-core/p-9ebf0537.entry.js +1 -0
  795. package/dist/sparkle-core/p-a208ab2d.js +4 -0
  796. package/dist/sparkle-core/p-a2638250.entry.js +1 -0
  797. package/dist/sparkle-core/p-a2ebcf0a.entry.js +1 -0
  798. package/dist/sparkle-core/p-a98d7ebe.entry.js +1 -0
  799. package/dist/sparkle-core/p-add30d46.js +4 -0
  800. package/dist/sparkle-core/p-b0603d19.js +16 -0
  801. package/dist/sparkle-core/p-b06e2bef.js +1 -0
  802. package/dist/sparkle-core/p-b3f375fb.entry.js +1 -0
  803. package/dist/sparkle-core/p-b5f3e1bf.entry.js +1 -0
  804. package/dist/sparkle-core/p-b6fec622.entry.js +1 -0
  805. package/dist/sparkle-core/p-b8d71ff4.js +1 -0
  806. package/dist/sparkle-core/p-b96f3c84.entry.js +7 -0
  807. package/dist/sparkle-core/p-bd80ff43.js +4 -0
  808. package/dist/sparkle-core/p-bd90903e.js +1 -0
  809. package/dist/sparkle-core/p-be64105c.entry.js +1 -0
  810. package/dist/sparkle-core/p-c0533c23.entry.js +1 -0
  811. package/dist/sparkle-core/p-c2990b24.entry.js +1 -0
  812. package/dist/sparkle-core/p-c3cadfc6.entry.js +1 -0
  813. package/dist/sparkle-core/p-c60b29bd.entry.js +4 -0
  814. package/dist/sparkle-core/p-c64a34cd.entry.js +1 -0
  815. package/dist/sparkle-core/p-c7e21070.entry.js +1 -0
  816. package/dist/sparkle-core/p-c9f753a4.js +1 -0
  817. package/dist/sparkle-core/p-cabe9139.js +1 -0
  818. package/dist/sparkle-core/p-cabfbf22.entry.js +1 -0
  819. package/dist/sparkle-core/p-cc518c36.entry.js +1 -0
  820. package/dist/sparkle-core/p-cffd4817.entry.js +1 -0
  821. package/dist/sparkle-core/p-d0adf726.entry.js +1 -0
  822. package/dist/sparkle-core/p-d20e4fcf.entry.js +1 -0
  823. package/dist/sparkle-core/p-d24e53ab.entry.js +1 -0
  824. package/dist/sparkle-core/p-d288e6c1.entry.js +1 -0
  825. package/dist/sparkle-core/p-d601810e.entry.js +1 -0
  826. package/dist/sparkle-core/p-d68092b7.js +4 -0
  827. package/dist/sparkle-core/p-da391f3f.js +1 -0
  828. package/dist/sparkle-core/p-de4deb61.entry.js +1 -0
  829. package/dist/sparkle-core/p-e0cad1bb.js +1 -0
  830. package/dist/sparkle-core/p-e249aebf.entry.js +1 -0
  831. package/dist/sparkle-core/p-e3e36ce9.entry.js +1 -0
  832. package/dist/sparkle-core/p-e421d638.entry.js +1 -0
  833. package/dist/sparkle-core/p-e686d8b5.entry.js +4 -0
  834. package/dist/sparkle-core/p-e8988989.entry.js +1 -0
  835. package/dist/sparkle-core/p-e9431eeb.js +7 -0
  836. package/dist/sparkle-core/p-ea962e1b.entry.js +1 -0
  837. package/dist/sparkle-core/p-eaa8bbee.js +4 -0
  838. package/dist/sparkle-core/p-ebd4354b.entry.js +1 -0
  839. package/dist/sparkle-core/p-ee1e0eb4.js +2 -0
  840. package/dist/sparkle-core/p-ef4edc48.entry.js +4 -0
  841. package/dist/sparkle-core/p-f196c124.entry.js +7 -0
  842. package/dist/sparkle-core/p-f3cba72a.js +4 -0
  843. package/dist/sparkle-core/p-f47fe1fe.entry.js +1 -0
  844. package/dist/sparkle-core/p-f714f77a.entry.js +1 -0
  845. package/dist/sparkle-core/p-f891c79a.entry.js +1 -0
  846. package/dist/sparkle-core/p-fb0ca75e.entry.js +5 -0
  847. package/dist/sparkle-core/p-fb757951.entry.js +1 -0
  848. package/dist/sparkle-core/p-fd8d0738.entry.js +4 -0
  849. package/dist/sparkle-core/p-fda95b6e.entry.js +1 -0
  850. package/dist/sparkle-core/p-fe6dc976.entry.js +1 -0
  851. package/dist/sparkle-core/p-ff080f82.entry.js +10 -0
  852. package/dist/sparkle-core/p-ff7a8a71.js +4 -0
  853. package/dist/sparkle-core/sparkle-core.css +1 -2660
  854. package/dist/sparkle-core/sparkle-core.esm.js +1 -130
  855. package/package.json +1 -1
  856. package/dist/sparkle-core/PrivateRoute-a12e7ee5.js +0 -37
  857. package/dist/sparkle-core/account.service-e711795d.js +0 -63
  858. package/dist/sparkle-core/active-router-af86c9b4.js +0 -73
  859. package/dist/sparkle-core/animation-676a644d.js +0 -984
  860. package/dist/sparkle-core/app-globals-9ffa9ec3.js +0 -10
  861. package/dist/sparkle-core/appdata.service-703dff70.js +0 -69
  862. package/dist/sparkle-core/assets/user.png +0 -0
  863. package/dist/sparkle-core/assets.service-6508aae6.js +0 -71
  864. package/dist/sparkle-core/assignment.service-e42e9368.js +0 -17
  865. package/dist/sparkle-core/button-active-d68c5eb7.js +0 -67
  866. package/dist/sparkle-core/compass-svg.entry.js +0 -128
  867. package/dist/sparkle-core/context-consumer.entry.js +0 -25
  868. package/dist/sparkle-core/course-select.entry.js +0 -26
  869. package/dist/sparkle-core/css-shim-04165e59.js +0 -4
  870. package/dist/sparkle-core/dom-26e7cb2c.js +0 -73
  871. package/dist/sparkle-core/dom-utils-8e73e88b.js +0 -55
  872. package/dist/sparkle-core/facilitator.service-00a88935.js +0 -79
  873. package/dist/sparkle-core/facilitator.store-01be0386.js +0 -18
  874. package/dist/sparkle-core/feed.service-d495f3e1.js +0 -53
  875. package/dist/sparkle-core/framework-delegate-d3fa493f.js +0 -107
  876. package/dist/sparkle-core/haptic-a9e94599.js +0 -124
  877. package/dist/sparkle-core/header-mobile-collapse.entry.js +0 -86
  878. package/dist/sparkle-core/helpers-f11f0674.js +0 -406
  879. package/dist/sparkle-core/icons-758d1417.js +0 -41
  880. package/dist/sparkle-core/index-05b398c2.js +0 -34
  881. package/dist/sparkle-core/index-0af0deac.js +0 -312
  882. package/dist/sparkle-core/index-0df264ee.js +0 -4518
  883. package/dist/sparkle-core/index-183cda39.js +0 -223
  884. package/dist/sparkle-core/index-18a69883.js +0 -1336
  885. package/dist/sparkle-core/index-1d7a6fa0.js +0 -269
  886. package/dist/sparkle-core/index-1dec9544.js +0 -3064
  887. package/dist/sparkle-core/index-81dab78f.js +0 -85
  888. package/dist/sparkle-core/index-9b5bcea1.js +0 -22
  889. package/dist/sparkle-core/index-bb469fe3.js +0 -128
  890. package/dist/sparkle-core/index-d2990a48.js +0 -184
  891. package/dist/sparkle-core/index-dd414b33.js +0 -653
  892. package/dist/sparkle-core/index-faeec85a.js +0 -8
  893. package/dist/sparkle-core/index.es-1f6eedc5.js +0 -11066
  894. package/dist/sparkle-core/input-shims-0b2f5522.js +0 -418
  895. package/dist/sparkle-core/ion-accordion-group.entry.js +0 -201
  896. package/dist/sparkle-core/ion-accordion.entry.js +0 -332
  897. package/dist/sparkle-core/ion-action-sheet.entry.js +0 -263
  898. package/dist/sparkle-core/ion-alert.entry.js +0 -448
  899. package/dist/sparkle-core/ion-app.entry.js +0 -75
  900. package/dist/sparkle-core/ion-avatar.entry.js +0 -21
  901. package/dist/sparkle-core/ion-back-button.entry.js +0 -90
  902. package/dist/sparkle-core/ion-backdrop.entry.js +0 -63
  903. package/dist/sparkle-core/ion-badge.entry.js +0 -25
  904. package/dist/sparkle-core/ion-breadcrumb.entry.js +0 -91
  905. package/dist/sparkle-core/ion-breadcrumbs.entry.js +0 -129
  906. package/dist/sparkle-core/ion-button.entry.js +0 -125
  907. package/dist/sparkle-core/ion-buttons.entry.js +0 -38
  908. package/dist/sparkle-core/ion-card-content.entry.js +0 -26
  909. package/dist/sparkle-core/ion-card-header.entry.js +0 -33
  910. package/dist/sparkle-core/ion-card-subtitle.entry.js +0 -26
  911. package/dist/sparkle-core/ion-card-title.entry.js +0 -26
  912. package/dist/sparkle-core/ion-card.entry.js +0 -64
  913. package/dist/sparkle-core/ion-checkbox.entry.js +0 -109
  914. package/dist/sparkle-core/ion-chip.entry.js +0 -36
  915. package/dist/sparkle-core/ion-col.entry.js +0 -121
  916. package/dist/sparkle-core/ion-content.entry.js +0 -319
  917. package/dist/sparkle-core/ion-datetime-button.entry.js +0 -308
  918. package/dist/sparkle-core/ion-datetime.entry.js +0 -1619
  919. package/dist/sparkle-core/ion-fab-button.entry.js +0 -104
  920. package/dist/sparkle-core/ion-fab-list.entry.js +0 -41
  921. package/dist/sparkle-core/ion-fab.entry.js +0 -72
  922. package/dist/sparkle-core/ion-footer.entry.js +0 -116
  923. package/dist/sparkle-core/ion-grid.entry.js +0 -24
  924. package/dist/sparkle-core/ion-header.entry.js +0 -341
  925. package/dist/sparkle-core/ion-icon.entry.js +0 -200
  926. package/dist/sparkle-core/ion-img.entry.js +0 -97
  927. package/dist/sparkle-core/ion-infinite-scroll-content.entry.js +0 -33
  928. package/dist/sparkle-core/ion-infinite-scroll.entry.js +0 -202
  929. package/dist/sparkle-core/ion-input.entry.js +0 -293
  930. package/dist/sparkle-core/ion-item-divider.entry.js +0 -36
  931. package/dist/sparkle-core/ion-item-group.entry.js +0 -27
  932. package/dist/sparkle-core/ion-item-option.entry.js +0 -56
  933. package/dist/sparkle-core/ion-item-options.entry.js +0 -43
  934. package/dist/sparkle-core/ion-item-sliding.entry.js +0 -394
  935. package/dist/sparkle-core/ion-item.entry.js +0 -267
  936. package/dist/sparkle-core/ion-label.entry.js +0 -77
  937. package/dist/sparkle-core/ion-list-header.entry.js +0 -27
  938. package/dist/sparkle-core/ion-list.entry.js +0 -48
  939. package/dist/sparkle-core/ion-loading.entry.js +0 -211
  940. package/dist/sparkle-core/ion-menu-button.entry.js +0 -72
  941. package/dist/sparkle-core/ion-menu-toggle.entry.js +0 -43
  942. package/dist/sparkle-core/ion-menu.entry.js +0 -575
  943. package/dist/sparkle-core/ion-modal.entry.js +0 -1706
  944. package/dist/sparkle-core/ion-nav-link.entry.js +0 -43
  945. package/dist/sparkle-core/ion-nav.entry.js +0 -872
  946. package/dist/sparkle-core/ion-note.entry.js +0 -25
  947. package/dist/sparkle-core/ion-picker-column-internal.entry.js +0 -363
  948. package/dist/sparkle-core/ion-picker-column.entry.js +0 -327
  949. package/dist/sparkle-core/ion-picker-internal.entry.js +0 -454
  950. package/dist/sparkle-core/ion-picker.entry.js +0 -217
  951. package/dist/sparkle-core/ion-popover.entry.js +0 -1362
  952. package/dist/sparkle-core/ion-progress-bar.entry.js +0 -70
  953. package/dist/sparkle-core/ion-radio-group.entry.js +0 -121
  954. package/dist/sparkle-core/ion-radio.entry.js +0 -111
  955. package/dist/sparkle-core/ion-range.entry.js +0 -511
  956. package/dist/sparkle-core/ion-refresher-content.entry.js +0 -31
  957. package/dist/sparkle-core/ion-refresher.entry.js +0 -798
  958. package/dist/sparkle-core/ion-reorder-group.entry.js +0 -277
  959. package/dist/sparkle-core/ion-reorder.entry.js +0 -34
  960. package/dist/sparkle-core/ion-ripple-effect.entry.js +0 -89
  961. package/dist/sparkle-core/ion-route-redirect.entry.js +0 -20
  962. package/dist/sparkle-core/ion-route.entry.js +0 -45
  963. package/dist/sparkle-core/ion-router-link.entry.js +0 -34
  964. package/dist/sparkle-core/ion-router-outlet.entry.js +0 -196
  965. package/dist/sparkle-core/ion-router.entry.js +0 -827
  966. package/dist/sparkle-core/ion-row.entry.js +0 -16
  967. package/dist/sparkle-core/ion-searchbar.entry.js +0 -366
  968. package/dist/sparkle-core/ion-segment-button.entry.js +0 -98
  969. package/dist/sparkle-core/ion-segment.entry.js +0 -415
  970. package/dist/sparkle-core/ion-select-option.entry.js +0 -23
  971. package/dist/sparkle-core/ion-select-popover.entry.js +0 -96
  972. package/dist/sparkle-core/ion-select.entry.js +0 -510
  973. package/dist/sparkle-core/ion-skeleton-text.entry.js +0 -29
  974. package/dist/sparkle-core/ion-slide.entry.js +0 -21
  975. package/dist/sparkle-core/ion-slides.entry.js +0 -387
  976. package/dist/sparkle-core/ion-spinner.entry.js +0 -60
  977. package/dist/sparkle-core/ion-split-pane.entry.js +0 -156
  978. package/dist/sparkle-core/ion-tab-bar.entry.js +0 -71
  979. package/dist/sparkle-core/ion-tab-button.entry.js +0 -99
  980. package/dist/sparkle-core/ion-tab.entry.js +0 -63
  981. package/dist/sparkle-core/ion-tabs.entry.js +0 -150
  982. package/dist/sparkle-core/ion-text.entry.js +0 -20
  983. package/dist/sparkle-core/ion-textarea.entry.js +0 -244
  984. package/dist/sparkle-core/ion-thumbnail.entry.js +0 -16
  985. package/dist/sparkle-core/ion-title.entry.js +0 -48
  986. package/dist/sparkle-core/ion-toast.entry.js +0 -268
  987. package/dist/sparkle-core/ion-toggle.entry.js +0 -173
  988. package/dist/sparkle-core/ion-toolbar.entry.js +0 -70
  989. package/dist/sparkle-core/ion-virtual-scroll.entry.js +0 -551
  990. package/dist/sparkle-core/ionic-global-127576f6.js +0 -226
  991. package/dist/sparkle-core/ios.transition-02531dda.js +0 -479
  992. package/dist/sparkle-core/location-utils-fea12957.js +0 -229
  993. package/dist/sparkle-core/match-path-760e1797.js +0 -343
  994. package/dist/sparkle-core/md.transition-f8765467.js +0 -55
  995. package/dist/sparkle-core/media.service-2609406e.js +0 -36
  996. package/dist/sparkle-core/menu-toggle-util-6cc13cbd.js +0 -12
  997. package/dist/sparkle-core/overlays-fd3cfa13.js +0 -493
  998. package/dist/sparkle-core/parse-60474840.js +0 -1196
  999. package/dist/sparkle-core/purify-d9093094.js +0 -1469
  1000. package/dist/sparkle-core/quiz.model-1cff62e4.js +0 -5
  1001. package/dist/sparkle-core/shadow-css-1257b266.js +0 -387
  1002. package/dist/sparkle-core/signalR.service-2b7645c1.js +0 -2983
  1003. package/dist/sparkle-core/sparkle-animation-player.entry.js +0 -513
  1004. package/dist/sparkle-core/sparkle-assignment.entry.js +0 -114
  1005. package/dist/sparkle-core/sparkle-button.entry.js +0 -24
  1006. package/dist/sparkle-core/sparkle-card.entry.js +0 -61
  1007. package/dist/sparkle-core/sparkle-cards.entry.js +0 -15
  1008. package/dist/sparkle-core/sparkle-character-intro.entry.js +0 -22
  1009. package/dist/sparkle-core/sparkle-code.entry.js +0 -39
  1010. package/dist/sparkle-core/sparkle-compass-post.entry.js +0 -129
  1011. package/dist/sparkle-core/sparkle-compass.entry.js +0 -122
  1012. package/dist/sparkle-core/sparkle-course-root.entry.js +0 -155
  1013. package/dist/sparkle-core/sparkle-discussion-questions.entry.js +0 -122
  1014. package/dist/sparkle-core/sparkle-discussion-results.entry.js +0 -189
  1015. package/dist/sparkle-core/sparkle-discussion.entry.js +0 -52
  1016. package/dist/sparkle-core/sparkle-dropdown.entry.js +0 -57
  1017. package/dist/sparkle-core/sparkle-emoji.entry.js +0 -77
  1018. package/dist/sparkle-core/sparkle-export-lessons.entry.js +0 -10081
  1019. package/dist/sparkle-core/sparkle-facilitator-dashboard.entry.js +0 -93
  1020. package/dist/sparkle-core/sparkle-facilitator-header.entry.js +0 -60
  1021. package/dist/sparkle-core/sparkle-facilitator-notes-form.entry.js +0 -160
  1022. package/dist/sparkle-core/sparkle-facilitator-notes.entry.js +0 -65
  1023. package/dist/sparkle-core/sparkle-facilitator-page.entry.js +0 -198
  1024. package/dist/sparkle-core/sparkle-feed-post.entry.js +0 -131
  1025. package/dist/sparkle-core/sparkle-feedback.entry.js +0 -106
  1026. package/dist/sparkle-core/sparkle-file-upload.entry.js +0 -57
  1027. package/dist/sparkle-core/sparkle-forgot-password.entry.js +0 -80
  1028. package/dist/sparkle-core/sparkle-goal-form.entry.js +0 -182
  1029. package/dist/sparkle-core/sparkle-goal-item.entry.js +0 -15
  1030. package/dist/sparkle-core/sparkle-goal-progress.entry.js +0 -15
  1031. package/dist/sparkle-core/sparkle-goals.entry.js +0 -47
  1032. package/dist/sparkle-core/sparkle-gww-comment-list.entry.js +0 -22
  1033. package/dist/sparkle-core/sparkle-gww-graph.entry.js +0 -15
  1034. package/dist/sparkle-core/sparkle-gww-item.entry.js +0 -80
  1035. package/dist/sparkle-core/sparkle-gww.entry.js +0 -44
  1036. package/dist/sparkle-core/sparkle-header.entry.js +0 -97
  1037. package/dist/sparkle-core/sparkle-health.entry.js +0 -70
  1038. package/dist/sparkle-core/sparkle-input.entry.js +0 -52
  1039. package/dist/sparkle-core/sparkle-intro.entry.js +0 -22
  1040. package/dist/sparkle-core/sparkle-login.entry.js +0 -116
  1041. package/dist/sparkle-core/sparkle-lower-content-nav.entry.js +0 -18
  1042. package/dist/sparkle-core/sparkle-menu-collapsible.entry.js +0 -42
  1043. package/dist/sparkle-core/sparkle-menu-toggle.entry.js +0 -24
  1044. package/dist/sparkle-core/sparkle-menu.entry.js +0 -26
  1045. package/dist/sparkle-core/sparkle-modal-image.entry.js +0 -33
  1046. package/dist/sparkle-core/sparkle-mood.entry.js +0 -76
  1047. package/dist/sparkle-core/sparkle-nav.entry.js +0 -113
  1048. package/dist/sparkle-core/sparkle-notfound-page.entry.js +0 -25
  1049. package/dist/sparkle-core/sparkle-online-students.entry.js +0 -55
  1050. package/dist/sparkle-core/sparkle-overlay.entry.js +0 -90
  1051. package/dist/sparkle-core/sparkle-page-footer.entry.js +0 -24
  1052. package/dist/sparkle-core/sparkle-page.entry.js +0 -245
  1053. package/dist/sparkle-core/sparkle-pagination.entry.js +0 -67
  1054. package/dist/sparkle-core/sparkle-poll.entry.js +0 -15
  1055. package/dist/sparkle-core/sparkle-quiz-container.entry.js +0 -43
  1056. package/dist/sparkle-core/sparkle-quiz-feedback.entry.js +0 -18
  1057. package/dist/sparkle-core/sparkle-quiz-input.entry.js +0 -16
  1058. package/dist/sparkle-core/sparkle-quiz-old.entry.js +0 -116
  1059. package/dist/sparkle-core/sparkle-quiz-opinion.entry.js +0 -41
  1060. package/dist/sparkle-core/sparkle-quiz-poll.entry.js +0 -16
  1061. package/dist/sparkle-core/sparkle-quiz-select.entry.js +0 -29
  1062. package/dist/sparkle-core/sparkle-quiz.entry.js +0 -98
  1063. package/dist/sparkle-core/sparkle-reset-password.entry.js +0 -96
  1064. package/dist/sparkle-core/sparkle-root.entry.js +0 -79
  1065. package/dist/sparkle-core/sparkle-select.entry.js +0 -57
  1066. package/dist/sparkle-core/sparkle-sidebar.entry.js +0 -39
  1067. package/dist/sparkle-core/sparkle-signup.entry.js +0 -144
  1068. package/dist/sparkle-core/sparkle-tab.entry.js +0 -22
  1069. package/dist/sparkle-core/sparkle-table-of-contents.entry.js +0 -67
  1070. package/dist/sparkle-core/sparkle-tabs.entry.js +0 -62
  1071. package/dist/sparkle-core/sparkle-unauthorized.entry.js +0 -17
  1072. package/dist/sparkle-core/sparkle-user-enrollment.entry.js +0 -85
  1073. package/dist/sparkle-core/sparkle-user-profile.entry.js +0 -129
  1074. package/dist/sparkle-core/sparkle-validation-error.entry.js +0 -17
  1075. package/dist/sparkle-core/sparkle-video-player.entry.js +0 -18
  1076. package/dist/sparkle-core/sparkle-youtube.entry.js +0 -35
  1077. package/dist/sparkle-core/status-tap-52feb1b1.js +0 -40
  1078. package/dist/sparkle-core/stencil-async-content.entry.js +0 -28
  1079. package/dist/sparkle-core/stencil-route-link.entry.js +0 -74
  1080. package/dist/sparkle-core/stencil-route-switch.entry.js +0 -100
  1081. package/dist/sparkle-core/stencil-route-title.entry.js +0 -28
  1082. package/dist/sparkle-core/stencil-route.entry.js +0 -93
  1083. package/dist/sparkle-core/stencil-router-prompt.entry.js +0 -55
  1084. package/dist/sparkle-core/stencil-router-redirect.entry.js +0 -28
  1085. package/dist/sparkle-core/stencil-router.entry.js +0 -636
  1086. package/dist/sparkle-core/store.service-0f7d998b.js +0 -16
  1087. package/dist/sparkle-core/student.service-f0375229.js +0 -59
  1088. package/dist/sparkle-core/swipe-back-9a614189.js +0 -73
  1089. package/dist/sparkle-core/swiper.bundle-4274e115.js +0 -6418
  1090. package/dist/sparkle-core/user.store-3d052406.js +0 -19
  1091. package/dist/sparkle-core/util-ba470e54.js +0 -14683
  1092. package/dist/sparkle-core/utils-cae23bce.js +0 -114
  1093. /package/dist/{sparkle-core → esm}/cubic-bezier-4c0db14f.js +0 -0
  1094. /package/dist/{sparkle-core → esm}/focus-visible-4e9a0764.js +0 -0
  1095. /package/dist/{sparkle-core → esm}/hardware-back-button-fa04d6e9.js +0 -0
  1096. /package/dist/{sparkle-core → esm}/index-be6112f8.js +0 -0
  1097. /package/dist/{sparkle-core → esm}/keyboard-7e8329b3.js +0 -0
  1098. /package/dist/{sparkle-core → esm}/localstorage.service-4bf408c8.js +0 -0
  1099. /package/dist/{sparkle-core → esm}/spinner-configs-a37e628a.js +0 -0
  1100. /package/dist/{sparkle-core → esm}/theme-7ef00c83.js +0 -0
@@ -1,1362 +0,0 @@
1
- import { r as registerInstance, q as createEvent, k as h, n as Host, o as getElement } from './index-1dec9544.js';
2
- import { g as getIonMode, a as isPlatform } from './ionic-global-127576f6.js';
3
- import { C as CoreDelegate, a as attachComponent, d as detachComponent } from './framework-delegate-d3fa493f.js';
4
- import { g as getElementRoot, r as raf, b as addEventListener } from './helpers-f11f0674.js';
5
- import { B as BACKDROP, p as prepareOverlay, a as present, j as focusFirstDescendant, d as dismiss, e as eventMethod } from './overlays-fd3cfa13.js';
6
- import { g as getClassMap } from './theme-7ef00c83.js';
7
- import { d as deepReady } from './index-183cda39.js';
8
- import { c as createAnimation } from './animation-676a644d.js';
9
- import './hardware-back-button-fa04d6e9.js';
10
-
11
- /*!
12
- * (C) Ionic http://ionicframework.com - MIT License
13
- */
14
- /**
15
- * Returns the dimensions of the popover
16
- * arrow on `ios` mode. If arrow is disabled
17
- * returns (0, 0).
18
- */
19
- const getArrowDimensions = (arrowEl) => {
20
- if (!arrowEl) {
21
- return { arrowWidth: 0, arrowHeight: 0 };
22
- }
23
- const { width, height } = arrowEl.getBoundingClientRect();
24
- return { arrowWidth: width, arrowHeight: height };
25
- };
26
- /**
27
- * Returns the recommended dimensions of the popover
28
- * that takes into account whether or not the width
29
- * should match the trigger width.
30
- */
31
- const getPopoverDimensions = (size, contentEl, triggerEl) => {
32
- const contentDimentions = contentEl.getBoundingClientRect();
33
- const contentHeight = contentDimentions.height;
34
- let contentWidth = contentDimentions.width;
35
- if (size === 'cover' && triggerEl) {
36
- const triggerDimensions = triggerEl.getBoundingClientRect();
37
- contentWidth = triggerDimensions.width;
38
- }
39
- return {
40
- contentWidth,
41
- contentHeight,
42
- };
43
- };
44
- const configureDismissInteraction = (triggerEl, triggerAction, popoverEl, parentPopoverEl) => {
45
- let dismissCallbacks = [];
46
- const root = getElementRoot(parentPopoverEl);
47
- const parentContentEl = root.querySelector('.popover-content');
48
- switch (triggerAction) {
49
- case 'hover':
50
- dismissCallbacks = [
51
- {
52
- /**
53
- * Do not use mouseover here
54
- * as this will causes the event to
55
- * be dispatched on each underlying
56
- * element rather than on the popover
57
- * content as a whole.
58
- */
59
- eventName: 'mouseenter',
60
- callback: (ev) => {
61
- /**
62
- * Do not dismiss the popover is we
63
- * are hovering over its trigger.
64
- * This would be easier if we used mouseover
65
- * but this would cause the event to be dispatched
66
- * more often than we would like, potentially
67
- * causing performance issues.
68
- */
69
- const element = document.elementFromPoint(ev.clientX, ev.clientY);
70
- if (element === triggerEl) {
71
- return;
72
- }
73
- popoverEl.dismiss(undefined, undefined, false);
74
- },
75
- },
76
- ];
77
- break;
78
- case 'context-menu':
79
- case 'click':
80
- default:
81
- dismissCallbacks = [
82
- {
83
- eventName: 'click',
84
- callback: (ev) => {
85
- /**
86
- * Do not dismiss the popover is we
87
- * are hovering over its trigger.
88
- */
89
- const target = ev.target;
90
- const closestTrigger = target.closest('[data-ion-popover-trigger]');
91
- if (closestTrigger === triggerEl) {
92
- /**
93
- * stopPropagation here so if the
94
- * popover has dismissOnSelect="true"
95
- * the popover does not dismiss since
96
- * we just clicked a trigger element.
97
- */
98
- ev.stopPropagation();
99
- return;
100
- }
101
- popoverEl.dismiss(undefined, undefined, false);
102
- },
103
- },
104
- ];
105
- break;
106
- }
107
- dismissCallbacks.forEach(({ eventName, callback }) => parentContentEl.addEventListener(eventName, callback));
108
- return () => {
109
- dismissCallbacks.forEach(({ eventName, callback }) => parentContentEl.removeEventListener(eventName, callback));
110
- };
111
- };
112
- /**
113
- * Configures the triggerEl to respond
114
- * to user interaction based upon the triggerAction
115
- * prop that devs have defined.
116
- */
117
- const configureTriggerInteraction = (triggerEl, triggerAction, popoverEl) => {
118
- let triggerCallbacks = [];
119
- /**
120
- * Based upon the kind of trigger interaction
121
- * the user wants, we setup the correct event
122
- * listeners.
123
- */
124
- switch (triggerAction) {
125
- case 'hover':
126
- let hoverTimeout;
127
- triggerCallbacks = [
128
- {
129
- eventName: 'mouseenter',
130
- callback: async (ev) => {
131
- ev.stopPropagation();
132
- if (hoverTimeout) {
133
- clearTimeout(hoverTimeout);
134
- }
135
- /**
136
- * Hovering over a trigger should not
137
- * immediately open the next popover.
138
- */
139
- hoverTimeout = setTimeout(() => {
140
- raf(() => {
141
- popoverEl.presentFromTrigger(ev);
142
- hoverTimeout = undefined;
143
- });
144
- }, 100);
145
- },
146
- },
147
- {
148
- eventName: 'mouseleave',
149
- callback: (ev) => {
150
- if (hoverTimeout) {
151
- clearTimeout(hoverTimeout);
152
- }
153
- /**
154
- * If mouse is over another popover
155
- * that is not this popover then we should
156
- * close this popover.
157
- */
158
- const target = ev.relatedTarget;
159
- if (!target) {
160
- return;
161
- }
162
- if (target.closest('ion-popover') !== popoverEl) {
163
- popoverEl.dismiss(undefined, undefined, false);
164
- }
165
- },
166
- },
167
- {
168
- /**
169
- * stopPropagation here prevents the popover
170
- * from dismissing when dismiss-on-select="true".
171
- */
172
- eventName: 'click',
173
- callback: (ev) => ev.stopPropagation(),
174
- },
175
- {
176
- eventName: 'ionPopoverActivateTrigger',
177
- callback: (ev) => popoverEl.presentFromTrigger(ev, true),
178
- },
179
- ];
180
- break;
181
- case 'context-menu':
182
- triggerCallbacks = [
183
- {
184
- eventName: 'contextmenu',
185
- callback: (ev) => {
186
- /**
187
- * Prevents the platform context
188
- * menu from appearing.
189
- */
190
- ev.preventDefault();
191
- popoverEl.presentFromTrigger(ev);
192
- },
193
- },
194
- {
195
- eventName: 'click',
196
- callback: (ev) => ev.stopPropagation(),
197
- },
198
- {
199
- eventName: 'ionPopoverActivateTrigger',
200
- callback: (ev) => popoverEl.presentFromTrigger(ev, true),
201
- },
202
- ];
203
- break;
204
- case 'click':
205
- default:
206
- triggerCallbacks = [
207
- {
208
- /**
209
- * Do not do a stopPropagation() here
210
- * because if you had two click triggers
211
- * then clicking the first trigger and then
212
- * clicking the second trigger would not cause
213
- * the first popover to dismiss.
214
- */
215
- eventName: 'click',
216
- callback: (ev) => popoverEl.presentFromTrigger(ev),
217
- },
218
- {
219
- eventName: 'ionPopoverActivateTrigger',
220
- callback: (ev) => popoverEl.presentFromTrigger(ev, true),
221
- },
222
- ];
223
- break;
224
- }
225
- triggerCallbacks.forEach(({ eventName, callback }) => triggerEl.addEventListener(eventName, callback));
226
- triggerEl.setAttribute('data-ion-popover-trigger', 'true');
227
- return () => {
228
- triggerCallbacks.forEach(({ eventName, callback }) => triggerEl.removeEventListener(eventName, callback));
229
- triggerEl.removeAttribute('data-ion-popover-trigger');
230
- };
231
- };
232
- /**
233
- * Returns the index of an ion-item in an array of ion-items.
234
- */
235
- const getIndexOfItem = (items, item) => {
236
- if (!item || item.tagName !== 'ION-ITEM') {
237
- return -1;
238
- }
239
- return items.findIndex((el) => el === item);
240
- };
241
- /**
242
- * Given an array of elements and a currently focused ion-item
243
- * returns the next ion-item relative to the focused one or
244
- * undefined.
245
- */
246
- const getNextItem = (items, currentItem) => {
247
- const currentItemIndex = getIndexOfItem(items, currentItem);
248
- return items[currentItemIndex + 1];
249
- };
250
- /**
251
- * Given an array of elements and a currently focused ion-item
252
- * returns the previous ion-item relative to the focused one or
253
- * undefined.
254
- */
255
- const getPrevItem = (items, currentItem) => {
256
- const currentItemIndex = getIndexOfItem(items, currentItem);
257
- return items[currentItemIndex - 1];
258
- };
259
- /** Focus the internal button of the ion-item */
260
- const focusItem = (item) => {
261
- const root = getElementRoot(item);
262
- const button = root.querySelector('button');
263
- if (button) {
264
- raf(() => button.focus());
265
- }
266
- };
267
- /**
268
- * Returns `true` if `el` has been designated
269
- * as a trigger element for an ion-popover.
270
- */
271
- const isTriggerElement = (el) => el.hasAttribute('data-ion-popover-trigger');
272
- const configureKeyboardInteraction = (popoverEl) => {
273
- const callback = async (ev) => {
274
- var _a;
275
- const activeElement = document.activeElement;
276
- let items = [];
277
- const targetTagName = (_a = ev.target) === null || _a === void 0 ? void 0 : _a.tagName;
278
- /**
279
- * Only handle custom keyboard interactions for the host popover element
280
- * and children ion-item elements.
281
- */
282
- if (targetTagName !== 'ION-POPOVER' && targetTagName !== 'ION-ITEM') {
283
- return;
284
- }
285
- /**
286
- * Complex selectors with :not() are :not supported
287
- * in older versions of Chromium so we need to do a
288
- * try/catch here so errors are not thrown.
289
- */
290
- try {
291
- /**
292
- * Select all ion-items that are not children of child popovers.
293
- * i.e. only select ion-item elements that are part of this popover
294
- */
295
- items = Array.from(popoverEl.querySelectorAll('ion-item:not(ion-popover ion-popover *):not([disabled])'));
296
- /* eslint-disable-next-line */
297
- }
298
- catch (_b) { }
299
- switch (ev.key) {
300
- /**
301
- * If we are in a child popover
302
- * then pressing the left arrow key
303
- * should close this popover and move
304
- * focus to the popover that presented
305
- * this one.
306
- */
307
- case 'ArrowLeft':
308
- const parentPopover = await popoverEl.getParentPopover();
309
- if (parentPopover) {
310
- popoverEl.dismiss(undefined, undefined, false);
311
- }
312
- break;
313
- /**
314
- * ArrowDown should move focus to the next focusable ion-item.
315
- */
316
- case 'ArrowDown':
317
- // Disable movement/scroll with keyboard
318
- ev.preventDefault();
319
- const nextItem = getNextItem(items, activeElement);
320
- if (nextItem !== undefined) {
321
- focusItem(nextItem);
322
- }
323
- break;
324
- /**
325
- * ArrowUp should move focus to the previous focusable ion-item.
326
- */
327
- case 'ArrowUp':
328
- // Disable movement/scroll with keyboard
329
- ev.preventDefault();
330
- const prevItem = getPrevItem(items, activeElement);
331
- if (prevItem !== undefined) {
332
- focusItem(prevItem);
333
- }
334
- break;
335
- /**
336
- * Home should move focus to the first focusable ion-item.
337
- */
338
- case 'Home':
339
- ev.preventDefault();
340
- const firstItem = items[0];
341
- if (firstItem !== undefined) {
342
- focusItem(firstItem);
343
- }
344
- break;
345
- /**
346
- * End should move focus to the last focusable ion-item.
347
- */
348
- case 'End':
349
- ev.preventDefault();
350
- const lastItem = items[items.length - 1];
351
- if (lastItem !== undefined) {
352
- focusItem(lastItem);
353
- }
354
- break;
355
- /**
356
- * ArrowRight, Spacebar, or Enter should activate
357
- * the currently focused trigger item to open a
358
- * popover if the element is a trigger item.
359
- */
360
- case 'ArrowRight':
361
- case ' ':
362
- case 'Enter':
363
- if (activeElement && isTriggerElement(activeElement)) {
364
- const rightEvent = new CustomEvent('ionPopoverActivateTrigger');
365
- activeElement.dispatchEvent(rightEvent);
366
- }
367
- break;
368
- default:
369
- break;
370
- }
371
- };
372
- popoverEl.addEventListener('keydown', callback);
373
- return () => popoverEl.removeEventListener('keydown', callback);
374
- };
375
- /**
376
- * Positions a popover by taking into account
377
- * the reference point, preferred side, alignment
378
- * and viewport dimensions.
379
- */
380
- const getPopoverPosition = (isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, triggerEl, event) => {
381
- var _a;
382
- let referenceCoordinates = {
383
- top: 0,
384
- left: 0,
385
- width: 0,
386
- height: 0,
387
- };
388
- /**
389
- * Calculate position relative to the
390
- * x-y coordinates in the event that
391
- * was passed in
392
- */
393
- switch (reference) {
394
- case 'event':
395
- if (!event) {
396
- return defaultPosition;
397
- }
398
- const mouseEv = event;
399
- referenceCoordinates = {
400
- top: mouseEv.clientY,
401
- left: mouseEv.clientX,
402
- width: 1,
403
- height: 1,
404
- };
405
- break;
406
- /**
407
- * Calculate position relative to the bounding
408
- * box on either the trigger element
409
- * specified via the `trigger` prop or
410
- * the target specified on the event
411
- * that was passed in.
412
- */
413
- case 'trigger':
414
- default:
415
- const customEv = event;
416
- /**
417
- * ionShadowTarget is used when we need to align the
418
- * popover with an element inside of the shadow root
419
- * of an Ionic component. Ex: Presenting a popover
420
- * by clicking on the collapsed indicator inside
421
- * of `ion-breadcrumb` and centering it relative
422
- * to the indicator rather than `ion-breadcrumb`
423
- * as a whole.
424
- */
425
- const actualTriggerEl = (triggerEl ||
426
- ((_a = customEv === null || customEv === void 0 ? void 0 : customEv.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) ||
427
- (customEv === null || customEv === void 0 ? void 0 : customEv.target));
428
- if (!actualTriggerEl) {
429
- return defaultPosition;
430
- }
431
- const triggerBoundingBox = actualTriggerEl.getBoundingClientRect();
432
- referenceCoordinates = {
433
- top: triggerBoundingBox.top,
434
- left: triggerBoundingBox.left,
435
- width: triggerBoundingBox.width,
436
- height: triggerBoundingBox.height,
437
- };
438
- break;
439
- }
440
- /**
441
- * Get top/left offset that would allow
442
- * popover to be positioned on the
443
- * preferred side of the reference.
444
- */
445
- const coordinates = calculatePopoverSide(side, referenceCoordinates, contentWidth, contentHeight, arrowWidth, arrowHeight, isRTL);
446
- /**
447
- * Get the top/left adjustments that
448
- * would allow the popover content
449
- * to have the correct alignment.
450
- */
451
- const alignedCoordinates = calculatePopoverAlign(align, side, referenceCoordinates, contentWidth, contentHeight);
452
- const top = coordinates.top + alignedCoordinates.top;
453
- const left = coordinates.left + alignedCoordinates.left;
454
- const { arrowTop, arrowLeft } = calculateArrowPosition(side, arrowWidth, arrowHeight, top, left, contentWidth, contentHeight, isRTL);
455
- const { originX, originY } = calculatePopoverOrigin(side, align, isRTL);
456
- return { top, left, referenceCoordinates, arrowTop, arrowLeft, originX, originY };
457
- };
458
- /**
459
- * Determines the transform-origin
460
- * of the popover animation so that it
461
- * is in line with what the side and alignment
462
- * prop values are. Currently only used
463
- * with the MD animation.
464
- */
465
- const calculatePopoverOrigin = (side, align, isRTL) => {
466
- switch (side) {
467
- case 'top':
468
- return { originX: getOriginXAlignment(align), originY: 'bottom' };
469
- case 'bottom':
470
- return { originX: getOriginXAlignment(align), originY: 'top' };
471
- case 'left':
472
- return { originX: 'right', originY: getOriginYAlignment(align) };
473
- case 'right':
474
- return { originX: 'left', originY: getOriginYAlignment(align) };
475
- case 'start':
476
- return { originX: isRTL ? 'left' : 'right', originY: getOriginYAlignment(align) };
477
- case 'end':
478
- return { originX: isRTL ? 'right' : 'left', originY: getOriginYAlignment(align) };
479
- }
480
- };
481
- const getOriginXAlignment = (align) => {
482
- switch (align) {
483
- case 'start':
484
- return 'left';
485
- case 'center':
486
- return 'center';
487
- case 'end':
488
- return 'right';
489
- }
490
- };
491
- const getOriginYAlignment = (align) => {
492
- switch (align) {
493
- case 'start':
494
- return 'top';
495
- case 'center':
496
- return 'center';
497
- case 'end':
498
- return 'bottom';
499
- }
500
- };
501
- /**
502
- * Calculates where the arrow positioning
503
- * should be relative to the popover content.
504
- */
505
- const calculateArrowPosition = (side, arrowWidth, arrowHeight, top, left, contentWidth, contentHeight, isRTL) => {
506
- /**
507
- * Note: When side is left, right, start, or end, the arrow is
508
- * been rotated using a `transform`, so to move the arrow up or down
509
- * by its dimension, you need to use `arrowWidth`.
510
- */
511
- const leftPosition = {
512
- arrowTop: top + contentHeight / 2 - arrowWidth / 2,
513
- arrowLeft: left + contentWidth - arrowWidth / 2,
514
- };
515
- /**
516
- * Move the arrow to the left by arrowWidth and then
517
- * again by half of its width because we have rotated
518
- * the arrow using a transform.
519
- */
520
- const rightPosition = { arrowTop: top + contentHeight / 2 - arrowWidth / 2, arrowLeft: left - arrowWidth * 1.5 };
521
- switch (side) {
522
- case 'top':
523
- return { arrowTop: top + contentHeight, arrowLeft: left + contentWidth / 2 - arrowWidth / 2 };
524
- case 'bottom':
525
- return { arrowTop: top - arrowHeight, arrowLeft: left + contentWidth / 2 - arrowWidth / 2 };
526
- case 'left':
527
- return leftPosition;
528
- case 'right':
529
- return rightPosition;
530
- case 'start':
531
- return isRTL ? rightPosition : leftPosition;
532
- case 'end':
533
- return isRTL ? leftPosition : rightPosition;
534
- default:
535
- return { arrowTop: 0, arrowLeft: 0 };
536
- }
537
- };
538
- /**
539
- * Calculates the required top/left
540
- * values needed to position the popover
541
- * content on the side specified in the
542
- * `side` prop.
543
- */
544
- const calculatePopoverSide = (side, triggerBoundingBox, contentWidth, contentHeight, arrowWidth, arrowHeight, isRTL) => {
545
- const sideLeft = {
546
- top: triggerBoundingBox.top,
547
- left: triggerBoundingBox.left - contentWidth - arrowWidth,
548
- };
549
- const sideRight = {
550
- top: triggerBoundingBox.top,
551
- left: triggerBoundingBox.left + triggerBoundingBox.width + arrowWidth,
552
- };
553
- switch (side) {
554
- case 'top':
555
- return {
556
- top: triggerBoundingBox.top - contentHeight - arrowHeight,
557
- left: triggerBoundingBox.left,
558
- };
559
- case 'right':
560
- return sideRight;
561
- case 'bottom':
562
- return {
563
- top: triggerBoundingBox.top + triggerBoundingBox.height + arrowHeight,
564
- left: triggerBoundingBox.left,
565
- };
566
- case 'left':
567
- return sideLeft;
568
- case 'start':
569
- return isRTL ? sideRight : sideLeft;
570
- case 'end':
571
- return isRTL ? sideLeft : sideRight;
572
- }
573
- };
574
- /**
575
- * Calculates the required top/left
576
- * offset values needed to provide the
577
- * correct alignment regardless while taking
578
- * into account the side the popover is on.
579
- */
580
- const calculatePopoverAlign = (align, side, triggerBoundingBox, contentWidth, contentHeight) => {
581
- switch (align) {
582
- case 'center':
583
- return calculatePopoverCenterAlign(side, triggerBoundingBox, contentWidth, contentHeight);
584
- case 'end':
585
- return calculatePopoverEndAlign(side, triggerBoundingBox, contentWidth, contentHeight);
586
- case 'start':
587
- default:
588
- return { top: 0, left: 0 };
589
- }
590
- };
591
- /**
592
- * Calculate the end alignment for
593
- * the popover. If side is on the x-axis
594
- * then the align values refer to the top
595
- * and bottom margins of the content.
596
- * If side is on the y-axis then the
597
- * align values refer to the left and right
598
- * margins of the content.
599
- */
600
- const calculatePopoverEndAlign = (side, triggerBoundingBox, contentWidth, contentHeight) => {
601
- switch (side) {
602
- case 'start':
603
- case 'end':
604
- case 'left':
605
- case 'right':
606
- return {
607
- top: -(contentHeight - triggerBoundingBox.height),
608
- left: 0,
609
- };
610
- case 'top':
611
- case 'bottom':
612
- default:
613
- return {
614
- top: 0,
615
- left: -(contentWidth - triggerBoundingBox.width),
616
- };
617
- }
618
- };
619
- /**
620
- * Calculate the center alignment for
621
- * the popover. If side is on the x-axis
622
- * then the align values refer to the top
623
- * and bottom margins of the content.
624
- * If side is on the y-axis then the
625
- * align values refer to the left and right
626
- * margins of the content.
627
- */
628
- const calculatePopoverCenterAlign = (side, triggerBoundingBox, contentWidth, contentHeight) => {
629
- switch (side) {
630
- case 'start':
631
- case 'end':
632
- case 'left':
633
- case 'right':
634
- return {
635
- top: -(contentHeight / 2 - triggerBoundingBox.height / 2),
636
- left: 0,
637
- };
638
- case 'top':
639
- case 'bottom':
640
- default:
641
- return {
642
- top: 0,
643
- left: -(contentWidth / 2 - triggerBoundingBox.width / 2),
644
- };
645
- }
646
- };
647
- /**
648
- * Adjusts popover positioning coordinates
649
- * such that popover does not appear offscreen
650
- * or overlapping safe area bounds.
651
- */
652
- const calculateWindowAdjustment = (side, coordTop, coordLeft, bodyPadding, bodyWidth, bodyHeight, contentWidth, contentHeight, safeAreaMargin, contentOriginX, contentOriginY, triggerCoordinates, coordArrowTop = 0, coordArrowLeft = 0, arrowHeight = 0) => {
653
- let arrowTop = coordArrowTop;
654
- const arrowLeft = coordArrowLeft;
655
- let left = coordLeft;
656
- let top = coordTop;
657
- let bottom;
658
- let originX = contentOriginX;
659
- let originY = contentOriginY;
660
- let checkSafeAreaLeft = false;
661
- let checkSafeAreaRight = false;
662
- const triggerTop = triggerCoordinates
663
- ? triggerCoordinates.top + triggerCoordinates.height
664
- : bodyHeight / 2 - contentHeight / 2;
665
- const triggerHeight = triggerCoordinates ? triggerCoordinates.height : 0;
666
- let addPopoverBottomClass = false;
667
- /**
668
- * Adjust popover so it does not
669
- * go off the left of the screen.
670
- */
671
- if (left < bodyPadding + safeAreaMargin) {
672
- left = bodyPadding;
673
- checkSafeAreaLeft = true;
674
- originX = 'left';
675
- /**
676
- * Adjust popover so it does not
677
- * go off the right of the screen.
678
- */
679
- }
680
- else if (contentWidth + bodyPadding + left + safeAreaMargin > bodyWidth) {
681
- checkSafeAreaRight = true;
682
- left = bodyWidth - contentWidth - bodyPadding;
683
- originX = 'right';
684
- }
685
- /**
686
- * Adjust popover so it does not
687
- * go off the top of the screen.
688
- * If popover is on the left or the right of
689
- * the trigger, then we should not adjust top
690
- * margins.
691
- */
692
- if (triggerTop + triggerHeight + contentHeight > bodyHeight && (side === 'top' || side === 'bottom')) {
693
- if (triggerTop - contentHeight > 0) {
694
- /**
695
- * While we strive to align the popover with the trigger
696
- * on smaller screens this is not always possible. As a result,
697
- * we adjust the popover up so that it does not hang
698
- * off the bottom of the screen. However, we do not want to move
699
- * the popover up so much that it goes off the top of the screen.
700
- *
701
- * We chose 12 here so that the popover position looks a bit nicer as
702
- * it is not right up against the edge of the screen.
703
- */
704
- top = Math.max(12, triggerTop - contentHeight - triggerHeight - (arrowHeight - 1));
705
- arrowTop = top + contentHeight;
706
- originY = 'bottom';
707
- addPopoverBottomClass = true;
708
- /**
709
- * If not enough room for popover to appear
710
- * above trigger, then cut it off.
711
- */
712
- }
713
- else {
714
- bottom = bodyPadding;
715
- }
716
- }
717
- return {
718
- top,
719
- left,
720
- bottom,
721
- originX,
722
- originY,
723
- checkSafeAreaLeft,
724
- checkSafeAreaRight,
725
- arrowTop,
726
- arrowLeft,
727
- addPopoverBottomClass,
728
- };
729
- };
730
- const shouldShowArrow = (side, didAdjustBounds = false, ev, trigger) => {
731
- /**
732
- * If no event provided and
733
- * we do not have a trigger,
734
- * then this popover was likely
735
- * presented via the popoverController
736
- * or users called `present` manually.
737
- * In this case, the arrow should not be
738
- * shown as we do not have a reference.
739
- */
740
- if (!ev && !trigger) {
741
- return false;
742
- }
743
- /**
744
- * If popover is on the left or the right
745
- * of a trigger, but we needed to adjust the
746
- * popover due to screen bounds, then we should
747
- * hide the arrow as it will never be pointing
748
- * at the trigger.
749
- */
750
- if (side !== 'top' && side !== 'bottom' && didAdjustBounds) {
751
- return false;
752
- }
753
- return true;
754
- };
755
-
756
- /*!
757
- * (C) Ionic http://ionicframework.com - MIT License
758
- */
759
- const POPOVER_IOS_BODY_PADDING = 5;
760
- /**
761
- * iOS Popover Enter Animation
762
- */
763
- const iosEnterAnimation = (baseEl, opts) => {
764
- var _a;
765
- const { event: ev, size, trigger, reference, side, align } = opts;
766
- const doc = baseEl.ownerDocument;
767
- const isRTL = doc.dir === 'rtl';
768
- const bodyWidth = doc.defaultView.innerWidth;
769
- const bodyHeight = doc.defaultView.innerHeight;
770
- const root = getElementRoot(baseEl);
771
- const contentEl = root.querySelector('.popover-content');
772
- const arrowEl = root.querySelector('.popover-arrow');
773
- const referenceSizeEl = trigger || ((_a = ev === null || ev === void 0 ? void 0 : ev.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) || (ev === null || ev === void 0 ? void 0 : ev.target);
774
- const { contentWidth, contentHeight } = getPopoverDimensions(size, contentEl, referenceSizeEl);
775
- const { arrowWidth, arrowHeight } = getArrowDimensions(arrowEl);
776
- const defaultPosition = {
777
- top: bodyHeight / 2 - contentHeight / 2,
778
- left: bodyWidth / 2 - contentWidth / 2,
779
- originX: isRTL ? 'right' : 'left',
780
- originY: 'top',
781
- };
782
- const results = getPopoverPosition(isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, trigger, ev);
783
- const padding = size === 'cover' ? 0 : POPOVER_IOS_BODY_PADDING;
784
- const margin = size === 'cover' ? 0 : 25;
785
- const { originX, originY, top, left, bottom, checkSafeAreaLeft, checkSafeAreaRight, arrowTop, arrowLeft, addPopoverBottomClass, } = calculateWindowAdjustment(side, results.top, results.left, padding, bodyWidth, bodyHeight, contentWidth, contentHeight, margin, results.originX, results.originY, results.referenceCoordinates, results.arrowTop, results.arrowLeft, arrowHeight);
786
- const baseAnimation = createAnimation();
787
- const backdropAnimation = createAnimation();
788
- const wrapperAnimation = createAnimation();
789
- backdropAnimation
790
- .addElement(root.querySelector('ion-backdrop'))
791
- .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
792
- .beforeStyles({
793
- 'pointer-events': 'none',
794
- })
795
- .afterClearStyles(['pointer-events']);
796
- wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).fromTo('opacity', 0.01, 1);
797
- return baseAnimation
798
- .easing('ease')
799
- .duration(100)
800
- .beforeAddWrite(() => {
801
- if (size === 'cover') {
802
- baseEl.style.setProperty('--width', `${contentWidth}px`);
803
- }
804
- if (addPopoverBottomClass) {
805
- baseEl.classList.add('popover-bottom');
806
- }
807
- if (bottom !== undefined) {
808
- contentEl.style.setProperty('bottom', `${bottom}px`);
809
- }
810
- const safeAreaLeft = ' + var(--ion-safe-area-left, 0)';
811
- const safeAreaRight = ' - var(--ion-safe-area-right, 0)';
812
- let leftValue = `${left}px`;
813
- if (checkSafeAreaLeft) {
814
- leftValue = `${left}px${safeAreaLeft}`;
815
- }
816
- if (checkSafeAreaRight) {
817
- leftValue = `${left}px${safeAreaRight}`;
818
- }
819
- contentEl.style.setProperty('top', `calc(${top}px + var(--offset-y, 0))`);
820
- contentEl.style.setProperty('left', `calc(${leftValue} + var(--offset-x, 0))`);
821
- contentEl.style.setProperty('transform-origin', `${originY} ${originX}`);
822
- if (arrowEl !== null) {
823
- const didAdjustBounds = results.top !== top || results.left !== left;
824
- const showArrow = shouldShowArrow(side, didAdjustBounds, ev, trigger);
825
- if (showArrow) {
826
- arrowEl.style.setProperty('top', `calc(${arrowTop}px + var(--offset-y, 0))`);
827
- arrowEl.style.setProperty('left', `calc(${arrowLeft}px + var(--offset-x, 0))`);
828
- }
829
- else {
830
- arrowEl.style.setProperty('display', 'none');
831
- }
832
- }
833
- })
834
- .addAnimation([backdropAnimation, wrapperAnimation]);
835
- };
836
-
837
- /*!
838
- * (C) Ionic http://ionicframework.com - MIT License
839
- */
840
- /**
841
- * iOS Popover Leave Animation
842
- */
843
- const iosLeaveAnimation = (baseEl) => {
844
- const root = getElementRoot(baseEl);
845
- const contentEl = root.querySelector('.popover-content');
846
- const arrowEl = root.querySelector('.popover-arrow');
847
- const baseAnimation = createAnimation();
848
- const backdropAnimation = createAnimation();
849
- const wrapperAnimation = createAnimation();
850
- backdropAnimation.addElement(root.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
851
- wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).fromTo('opacity', 0.99, 0);
852
- return baseAnimation
853
- .easing('ease')
854
- .afterAddWrite(() => {
855
- baseEl.style.removeProperty('--width');
856
- baseEl.classList.remove('popover-bottom');
857
- contentEl.style.removeProperty('top');
858
- contentEl.style.removeProperty('left');
859
- contentEl.style.removeProperty('bottom');
860
- contentEl.style.removeProperty('transform-origin');
861
- if (arrowEl) {
862
- arrowEl.style.removeProperty('top');
863
- arrowEl.style.removeProperty('left');
864
- arrowEl.style.removeProperty('display');
865
- }
866
- })
867
- .duration(300)
868
- .addAnimation([backdropAnimation, wrapperAnimation]);
869
- };
870
-
871
- /*!
872
- * (C) Ionic http://ionicframework.com - MIT License
873
- */
874
- const POPOVER_MD_BODY_PADDING = 12;
875
- /**
876
- * Md Popover Enter Animation
877
- */
878
- const mdEnterAnimation = (baseEl, opts) => {
879
- var _a;
880
- const { event: ev, size, trigger, reference, side, align } = opts;
881
- const doc = baseEl.ownerDocument;
882
- const isRTL = doc.dir === 'rtl';
883
- const bodyWidth = doc.defaultView.innerWidth;
884
- const bodyHeight = doc.defaultView.innerHeight;
885
- const root = getElementRoot(baseEl);
886
- const contentEl = root.querySelector('.popover-content');
887
- const referenceSizeEl = trigger || ((_a = ev === null || ev === void 0 ? void 0 : ev.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) || (ev === null || ev === void 0 ? void 0 : ev.target);
888
- const { contentWidth, contentHeight } = getPopoverDimensions(size, contentEl, referenceSizeEl);
889
- const defaultPosition = {
890
- top: bodyHeight / 2 - contentHeight / 2,
891
- left: bodyWidth / 2 - contentWidth / 2,
892
- originX: isRTL ? 'right' : 'left',
893
- originY: 'top',
894
- };
895
- const results = getPopoverPosition(isRTL, contentWidth, contentHeight, 0, 0, reference, side, align, defaultPosition, trigger, ev);
896
- const padding = size === 'cover' ? 0 : POPOVER_MD_BODY_PADDING;
897
- const { originX, originY, top, left, bottom } = calculateWindowAdjustment(side, results.top, results.left, padding, bodyWidth, bodyHeight, contentWidth, contentHeight, 0, results.originX, results.originY, results.referenceCoordinates);
898
- const baseAnimation = createAnimation();
899
- const backdropAnimation = createAnimation();
900
- const wrapperAnimation = createAnimation();
901
- const contentAnimation = createAnimation();
902
- const viewportAnimation = createAnimation();
903
- backdropAnimation
904
- .addElement(root.querySelector('ion-backdrop'))
905
- .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
906
- .beforeStyles({
907
- 'pointer-events': 'none',
908
- })
909
- .afterClearStyles(['pointer-events']);
910
- wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).duration(150).fromTo('opacity', 0.01, 1);
911
- contentAnimation
912
- .addElement(contentEl)
913
- .beforeStyles({
914
- top: `calc(${top}px + var(--offset-y, 0px))`,
915
- left: `calc(${left}px + var(--offset-x, 0px))`,
916
- 'transform-origin': `${originY} ${originX}`,
917
- })
918
- .beforeAddWrite(() => {
919
- if (bottom !== undefined) {
920
- contentEl.style.setProperty('bottom', `${bottom}px`);
921
- }
922
- })
923
- .fromTo('transform', 'scale(0.8)', 'scale(1)');
924
- viewportAnimation.addElement(root.querySelector('.popover-viewport')).fromTo('opacity', 0.01, 1);
925
- return baseAnimation
926
- .easing('cubic-bezier(0.36,0.66,0.04,1)')
927
- .duration(300)
928
- .beforeAddWrite(() => {
929
- if (size === 'cover') {
930
- baseEl.style.setProperty('--width', `${contentWidth}px`);
931
- }
932
- if (originY === 'bottom') {
933
- baseEl.classList.add('popover-bottom');
934
- }
935
- })
936
- .addAnimation([backdropAnimation, wrapperAnimation, contentAnimation, viewportAnimation]);
937
- };
938
-
939
- /*!
940
- * (C) Ionic http://ionicframework.com - MIT License
941
- */
942
- /**
943
- * Md Popover Leave Animation
944
- */
945
- const mdLeaveAnimation = (baseEl) => {
946
- const root = getElementRoot(baseEl);
947
- const contentEl = root.querySelector('.popover-content');
948
- const baseAnimation = createAnimation();
949
- const backdropAnimation = createAnimation();
950
- const wrapperAnimation = createAnimation();
951
- backdropAnimation.addElement(root.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
952
- wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).fromTo('opacity', 0.99, 0);
953
- return baseAnimation
954
- .easing('ease')
955
- .afterAddWrite(() => {
956
- baseEl.style.removeProperty('--width');
957
- baseEl.classList.remove('popover-bottom');
958
- contentEl.style.removeProperty('top');
959
- contentEl.style.removeProperty('left');
960
- contentEl.style.removeProperty('bottom');
961
- contentEl.style.removeProperty('transform-origin');
962
- })
963
- .duration(150)
964
- .addAnimation([backdropAnimation, wrapperAnimation]);
965
- };
966
-
967
- const popoverIosCss = ":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:flex;position:fixed;align-items:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{opacity:0;z-index:10}.popover-content{display:flex;position:absolute;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);box-shadow:var(--box-shadow);overflow:auto;z-index:10}.popover-viewport{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:flex;flex-direction:column;overflow:hidden}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, #e6e6e6)}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden}.popover-arrow::after{left:3px;top:3px;border-radius:3px;position:absolute;width:14px;height:14px;transform:rotate(45deg);background:var(--background);content:\"\";z-index:10}[dir=rtl] .popover-arrow::after,:host-context([dir=rtl]) .popover-arrow::after{left:unset;right:unset;right:3px}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{transform:rotate(-90deg)}:host(.popover-side-end) .popover-arrow{transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{transform:rotate(90deg)}@supports (backdrop-filter: blur(0)){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);backdrop-filter:saturate(180%) blur(20px)}}";
968
-
969
- const popoverMdCss = ":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:flex;position:fixed;align-items:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{opacity:0;z-index:10}.popover-content{display:flex;position:absolute;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);box-shadow:var(--box-shadow);overflow:auto;z-index:10}.popover-viewport{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:flex;flex-direction:column;overflow:hidden}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}:host{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content{border-radius:4px;transform-origin:left top}[dir=rtl] .popover-content,:host-context([dir=rtl]) .popover-content{transform-origin:right top}.popover-viewport{transition-delay:100ms}";
970
-
971
- const Popover = class {
972
- constructor(hostRef) {
973
- registerInstance(this, hostRef);
974
- this.didPresent = createEvent(this, "ionPopoverDidPresent", 7);
975
- this.willPresent = createEvent(this, "ionPopoverWillPresent", 7);
976
- this.willDismiss = createEvent(this, "ionPopoverWillDismiss", 7);
977
- this.didDismiss = createEvent(this, "ionPopoverDidDismiss", 7);
978
- this.didPresentShorthand = createEvent(this, "didPresent", 7);
979
- this.willPresentShorthand = createEvent(this, "willPresent", 7);
980
- this.willDismissShorthand = createEvent(this, "willDismiss", 7);
981
- this.didDismissShorthand = createEvent(this, "didDismiss", 7);
982
- this.parentPopover = null;
983
- this.popoverIndex = popoverIds++;
984
- this.coreDelegate = CoreDelegate();
985
- this.inline = false;
986
- this.focusDescendantOnPresent = false;
987
- this.presented = false;
988
- /** @internal */
989
- this.hasController = false;
990
- /**
991
- * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
992
- */
993
- this.keyboardClose = true;
994
- /**
995
- * If `true`, the popover will be dismissed when the backdrop is clicked.
996
- */
997
- this.backdropDismiss = true;
998
- /**
999
- * If `true`, a backdrop will be displayed behind the popover.
1000
- * This property controls whether or not the backdrop
1001
- * darkens the screen when the popover is presented.
1002
- * It does not control whether or not the backdrop
1003
- * is active or present in the DOM.
1004
- */
1005
- this.showBackdrop = true;
1006
- /**
1007
- * If `true`, the popover will be translucent.
1008
- * Only applies when the mode is `"ios"` and the device supports
1009
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1010
- */
1011
- this.translucent = false;
1012
- /**
1013
- * If `true`, the popover will animate.
1014
- */
1015
- this.animated = true;
1016
- /**
1017
- * Describes what kind of interaction with the trigger that
1018
- * should cause the popover to open. Does not apply when the `trigger`
1019
- * property is `undefined`.
1020
- * If `'click'`, the popover will be presented when the trigger is left clicked.
1021
- * If `'hover'`, the popover will be presented when a pointer hovers over the trigger.
1022
- * If `'context-menu'`, the popover will be presented when the trigger is right
1023
- * clicked on desktop and long pressed on mobile. This will also prevent your
1024
- * device's normal context menu from appearing.
1025
- */
1026
- this.triggerAction = 'click';
1027
- /**
1028
- * Describes how to calculate the popover width.
1029
- * If `'cover'`, the popover width will match the width of the trigger.
1030
- * If `'auto'`, the popover width will be determined by the content in
1031
- * the popover.
1032
- */
1033
- this.size = 'auto';
1034
- /**
1035
- * If `true`, the popover will be automatically
1036
- * dismissed when the content has been clicked.
1037
- */
1038
- this.dismissOnSelect = false;
1039
- /**
1040
- * Describes what to position the popover relative to.
1041
- * If `'trigger'`, the popover will be positioned relative
1042
- * to the trigger button. If passing in an event, this is
1043
- * determined via event.target.
1044
- * If `'event'`, the popover will be positioned relative
1045
- * to the x/y coordinates of the trigger action. If passing
1046
- * in an event, this is determined via event.clientX and event.clientY.
1047
- */
1048
- this.reference = 'trigger';
1049
- /**
1050
- * Describes which side of the `reference` point to position
1051
- * the popover on. The `'start'` and `'end'` values are RTL-aware,
1052
- * and the `'left'` and `'right'` values are not.
1053
- */
1054
- this.side = 'bottom';
1055
- /**
1056
- * If `true`, the popover will display an arrow that points at the
1057
- * `reference` when running in `ios` mode. Does not apply in `md` mode.
1058
- */
1059
- this.arrow = true;
1060
- /**
1061
- * If `true`, the popover will open. If `false`, the popover will close.
1062
- * Use this if you need finer grained control over presentation, otherwise
1063
- * just use the popoverController or the `trigger` property.
1064
- * Note: `isOpen` will not automatically be set back to `false` when
1065
- * the popover dismisses. You will need to do that in your code.
1066
- */
1067
- this.isOpen = false;
1068
- /**
1069
- * @internal
1070
- *
1071
- * If `true` the popover will not register its own keyboard event handlers.
1072
- * This allows the contents of the popover to handle their own keyboard interactions.
1073
- *
1074
- * If `false`, the popover will register its own keyboard event handlers for
1075
- * navigating `ion-list` items within a popover (up/down/home/end/etc.).
1076
- * This will also cancel browser keyboard event bindings to prevent scroll
1077
- * behavior in a popover using a list of items.
1078
- */
1079
- this.keyboardEvents = false;
1080
- /**
1081
- * If `true`, the component passed into `ion-popover` will
1082
- * automatically be mounted when the popover is created. The
1083
- * component will remain mounted even when the popover is dismissed.
1084
- * However, the component will be destroyed when the popover is
1085
- * destroyed. This property is not reactive and should only be
1086
- * used when initially creating a popover.
1087
- *
1088
- * Note: This feature only applies to inline popovers in JavaScript
1089
- * frameworks such as Angular, React, and Vue.
1090
- */
1091
- this.keepContentsMounted = false;
1092
- this.onBackdropTap = () => {
1093
- this.dismiss(undefined, BACKDROP);
1094
- };
1095
- this.onLifecycle = (modalEvent) => {
1096
- const el = this.usersElement;
1097
- const name = LIFECYCLE_MAP[modalEvent.type];
1098
- if (el && name) {
1099
- const event = new CustomEvent(name, {
1100
- bubbles: false,
1101
- cancelable: false,
1102
- detail: modalEvent.detail,
1103
- });
1104
- el.dispatchEvent(event);
1105
- }
1106
- };
1107
- this.configureTriggerInteraction = () => {
1108
- const { trigger, triggerAction, el, destroyTriggerInteraction } = this;
1109
- if (destroyTriggerInteraction) {
1110
- destroyTriggerInteraction();
1111
- }
1112
- const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
1113
- if (!triggerEl) {
1114
- return;
1115
- }
1116
- this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
1117
- };
1118
- this.configureKeyboardInteraction = () => {
1119
- const { destroyKeyboardInteraction, el } = this;
1120
- if (destroyKeyboardInteraction) {
1121
- destroyKeyboardInteraction();
1122
- }
1123
- this.destroyKeyboardInteraction = configureKeyboardInteraction(el);
1124
- };
1125
- this.configureDismissInteraction = () => {
1126
- const { destroyDismissInteraction, parentPopover, triggerAction, triggerEl, el } = this;
1127
- if (!parentPopover || !triggerEl) {
1128
- return;
1129
- }
1130
- if (destroyDismissInteraction) {
1131
- destroyDismissInteraction();
1132
- }
1133
- this.destroyDismissInteraction = configureDismissInteraction(triggerEl, triggerAction, el, parentPopover);
1134
- };
1135
- }
1136
- onTriggerChange() {
1137
- this.configureTriggerInteraction();
1138
- }
1139
- onIsOpenChange(newValue, oldValue) {
1140
- if (newValue === true && oldValue === false) {
1141
- this.present();
1142
- }
1143
- else if (newValue === false && oldValue === true) {
1144
- this.dismiss();
1145
- }
1146
- }
1147
- connectedCallback() {
1148
- prepareOverlay(this.el);
1149
- }
1150
- componentWillLoad() {
1151
- /**
1152
- * If user has custom ID set then we should
1153
- * not assign the default incrementing ID.
1154
- */
1155
- this.popoverId = this.el.hasAttribute('id') ? this.el.getAttribute('id') : `ion-popover-${this.popoverIndex}`;
1156
- this.parentPopover = this.el.closest(`ion-popover:not(#${this.popoverId})`);
1157
- if (this.alignment === undefined) {
1158
- this.alignment = getIonMode(this) === 'ios' ? 'center' : 'start';
1159
- }
1160
- }
1161
- componentDidLoad() {
1162
- const { parentPopover, isOpen } = this;
1163
- /**
1164
- * If popover was rendered with isOpen="true"
1165
- * then we should open popover immediately.
1166
- */
1167
- if (isOpen === true) {
1168
- raf(() => this.present());
1169
- }
1170
- if (parentPopover) {
1171
- addEventListener(parentPopover, 'ionPopoverWillDismiss', () => {
1172
- this.dismiss(undefined, undefined, false);
1173
- });
1174
- }
1175
- this.configureTriggerInteraction();
1176
- }
1177
- /**
1178
- * When opening a popover from a trigger, we should not be
1179
- * modifying the `event` prop from inside the component.
1180
- * Additionally, when pressing the "Right" arrow key, we need
1181
- * to shift focus to the first descendant in the newly presented
1182
- * popover.
1183
- *
1184
- * @internal
1185
- */
1186
- async presentFromTrigger(event, focusDescendant = false) {
1187
- this.focusDescendantOnPresent = focusDescendant;
1188
- await this.present(event);
1189
- this.focusDescendantOnPresent = false;
1190
- }
1191
- /**
1192
- * Determines whether or not an overlay
1193
- * is being used inline or via a controller/JS
1194
- * and returns the correct delegate.
1195
- * By default, subsequent calls to getDelegate
1196
- * will use a cached version of the delegate.
1197
- * This is useful for calling dismiss after
1198
- * present so that the correct delegate is given.
1199
- */
1200
- getDelegate(force = false) {
1201
- if (this.workingDelegate && !force) {
1202
- return {
1203
- delegate: this.workingDelegate,
1204
- inline: this.inline,
1205
- };
1206
- }
1207
- /**
1208
- * If using overlay inline
1209
- * we potentially need to use the coreDelegate
1210
- * so that this works in vanilla JS apps.
1211
- * If a developer has presented this component
1212
- * via a controller, then we can assume
1213
- * the component is already in the
1214
- * correct place.
1215
- */
1216
- const parentEl = this.el.parentNode;
1217
- const inline = (this.inline = parentEl !== null && !this.hasController);
1218
- const delegate = (this.workingDelegate = inline ? this.delegate || this.coreDelegate : this.delegate);
1219
- return { inline, delegate };
1220
- }
1221
- /**
1222
- * Present the popover overlay after it has been created.
1223
- * Developers can pass a mouse, touch, or pointer event
1224
- * to position the popover relative to where that event
1225
- * was dispatched.
1226
- */
1227
- async present(event) {
1228
- if (this.presented) {
1229
- return;
1230
- }
1231
- /**
1232
- * When using an inline popover
1233
- * and dismissing a popover it is possible to
1234
- * quickly present the popover while it is
1235
- * dismissing. We need to await any current
1236
- * transition to allow the dismiss to finish
1237
- * before presenting again.
1238
- */
1239
- if (this.currentTransition !== undefined) {
1240
- await this.currentTransition;
1241
- }
1242
- const data = Object.assign(Object.assign({}, this.componentProps), { popover: this.el });
1243
- const { inline, delegate } = this.getDelegate(true);
1244
- this.usersElement = await attachComponent(delegate, this.el, this.component, ['popover-viewport'], data, inline);
1245
- await deepReady(this.usersElement);
1246
- if (!this.keyboardEvents) {
1247
- this.configureKeyboardInteraction();
1248
- }
1249
- this.configureDismissInteraction();
1250
- this.currentTransition = present(this, 'popoverEnter', iosEnterAnimation, mdEnterAnimation, {
1251
- event: event || this.event,
1252
- size: this.size,
1253
- trigger: this.triggerEl,
1254
- reference: this.reference,
1255
- side: this.side,
1256
- align: this.alignment,
1257
- });
1258
- await this.currentTransition;
1259
- this.currentTransition = undefined;
1260
- /**
1261
- * If popover is nested and was
1262
- * presented using the "Right" arrow key,
1263
- * we need to move focus to the first
1264
- * descendant inside of the popover.
1265
- */
1266
- if (this.focusDescendantOnPresent) {
1267
- focusFirstDescendant(this.el, this.el);
1268
- }
1269
- }
1270
- /**
1271
- * Dismiss the popover overlay after it has been presented.
1272
- *
1273
- * @param data Any data to emit in the dismiss events.
1274
- * @param role The role of the element that is dismissing the popover. For example, 'cancel' or 'backdrop'.
1275
- * @param dismissParentPopover If `true`, dismissing this popover will also dismiss
1276
- * a parent popover if this popover is nested. Defaults to `true`.
1277
- */
1278
- async dismiss(data, role, dismissParentPopover = true) {
1279
- /**
1280
- * When using an inline popover
1281
- * and presenting a popover it is possible to
1282
- * quickly dismiss the popover while it is
1283
- * presenting. We need to await any current
1284
- * transition to allow the present to finish
1285
- * before dismissing again.
1286
- */
1287
- if (this.currentTransition !== undefined) {
1288
- await this.currentTransition;
1289
- }
1290
- const { destroyKeyboardInteraction, destroyDismissInteraction } = this;
1291
- if (dismissParentPopover && this.parentPopover) {
1292
- this.parentPopover.dismiss(data, role, dismissParentPopover);
1293
- }
1294
- this.currentTransition = dismiss(this, data, role, 'popoverLeave', iosLeaveAnimation, mdLeaveAnimation, this.event);
1295
- const shouldDismiss = await this.currentTransition;
1296
- if (shouldDismiss) {
1297
- if (destroyKeyboardInteraction) {
1298
- destroyKeyboardInteraction();
1299
- this.destroyKeyboardInteraction = undefined;
1300
- }
1301
- if (destroyDismissInteraction) {
1302
- destroyDismissInteraction();
1303
- this.destroyDismissInteraction = undefined;
1304
- }
1305
- /**
1306
- * If using popover inline
1307
- * we potentially need to use the coreDelegate
1308
- * so that this works in vanilla JS apps
1309
- */
1310
- const { delegate } = this.getDelegate();
1311
- await detachComponent(delegate, this.usersElement);
1312
- }
1313
- this.currentTransition = undefined;
1314
- return shouldDismiss;
1315
- }
1316
- /**
1317
- * @internal
1318
- */
1319
- async getParentPopover() {
1320
- return this.parentPopover;
1321
- }
1322
- /**
1323
- * Returns a promise that resolves when the popover did dismiss.
1324
- */
1325
- onDidDismiss() {
1326
- return eventMethod(this.el, 'ionPopoverDidDismiss');
1327
- }
1328
- /**
1329
- * Returns a promise that resolves when the popover will dismiss.
1330
- */
1331
- onWillDismiss() {
1332
- return eventMethod(this.el, 'ionPopoverWillDismiss');
1333
- }
1334
- render() {
1335
- const mode = getIonMode(this);
1336
- const { onLifecycle, popoverId, parentPopover, dismissOnSelect, side, arrow, htmlAttributes } = this;
1337
- const desktop = isPlatform('desktop');
1338
- const enableArrow = arrow && !parentPopover;
1339
- return (h(Host, Object.assign({ "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1340
- zIndex: `${20000 + this.overlayIndex}`,
1341
- }, id: popoverId, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { class: "popover-arrow", part: "arrow" }), h("div", { class: "popover-content", part: "content" }, h("slot", null)))));
1342
- }
1343
- get el() { return getElement(this); }
1344
- static get watchers() { return {
1345
- "trigger": ["onTriggerChange"],
1346
- "triggerAction": ["onTriggerChange"],
1347
- "isOpen": ["onIsOpenChange"]
1348
- }; }
1349
- };
1350
- const LIFECYCLE_MAP = {
1351
- ionPopoverDidPresent: 'ionViewDidEnter',
1352
- ionPopoverWillPresent: 'ionViewWillEnter',
1353
- ionPopoverWillDismiss: 'ionViewWillLeave',
1354
- ionPopoverDidDismiss: 'ionViewDidLeave',
1355
- };
1356
- let popoverIds = 0;
1357
- Popover.style = {
1358
- ios: popoverIosCss,
1359
- md: popoverMdCss
1360
- };
1361
-
1362
- export { Popover as ion_popover };