@ozdao/prometheus-framework 0.2.242 → 0.2.243

Sign up to get free protection for your applications and to get access to all the features.
Files changed (597) hide show
  1. package/dist/events.server.js +1 -1
  2. package/dist/events.server.mjs +1 -1
  3. package/dist/node_modules/@unhead/shared/dist/index.cjs +2 -2
  4. package/dist/node_modules/@unhead/shared/dist/index.cjs.map +1 -1
  5. package/dist/node_modules/@unhead/shared/dist/index.js +2 -2
  6. package/dist/node_modules/@unhead/shared/dist/index.js.map +1 -1
  7. package/dist/node_modules/@unhead/ssr/dist/index.cjs +22 -15
  8. package/dist/node_modules/@unhead/ssr/dist/index.cjs.map +1 -1
  9. package/dist/node_modules/@unhead/ssr/dist/index.js +22 -15
  10. package/dist/node_modules/@unhead/ssr/dist/index.js.map +1 -1
  11. package/dist/node_modules/@unhead/vue/dist/shared/vue.40986ab9.cjs +48 -0
  12. package/dist/node_modules/@unhead/vue/dist/shared/vue.40986ab9.cjs.map +1 -0
  13. package/dist/node_modules/@unhead/vue/dist/shared/vue.40986ab9.js +48 -0
  14. package/dist/node_modules/@unhead/vue/dist/shared/vue.40986ab9.js.map +1 -0
  15. package/dist/node_modules/@unhead/vue/dist/shared/vue.65b7bcda.cjs +38 -0
  16. package/dist/node_modules/@unhead/vue/dist/shared/vue.65b7bcda.cjs.map +1 -0
  17. package/dist/node_modules/@unhead/vue/dist/shared/vue.65b7bcda.js +38 -0
  18. package/dist/node_modules/@unhead/vue/dist/shared/vue.65b7bcda.js.map +1 -0
  19. package/dist/node_modules/embla-carousel/esm/embla-carousel.esm.cjs +26 -19
  20. package/dist/node_modules/embla-carousel/esm/embla-carousel.esm.cjs.map +1 -1
  21. package/dist/node_modules/embla-carousel/esm/embla-carousel.esm.js +26 -19
  22. package/dist/node_modules/embla-carousel/esm/embla-carousel.esm.js.map +1 -1
  23. package/dist/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.cjs +2 -2
  24. package/dist/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.cjs.map +1 -1
  25. package/dist/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js +2 -2
  26. package/dist/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js.map +1 -1
  27. package/dist/node_modules/unhead/dist/index.cjs.map +1 -1
  28. package/dist/node_modules/unhead/dist/index.js.map +1 -1
  29. package/dist/prometheus-framework/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs +117 -60
  30. package/dist/prometheus-framework/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs.map +1 -1
  31. package/dist/prometheus-framework/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js +118 -61
  32. package/dist/prometheus-framework/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js.map +1 -1
  33. package/dist/prometheus-framework/node_modules/@vue/shared/dist/shared.esm-bundler.cjs +3 -2
  34. package/dist/prometheus-framework/node_modules/@vue/shared/dist/shared.esm-bundler.cjs.map +1 -1
  35. package/dist/prometheus-framework/node_modules/@vue/shared/dist/shared.esm-bundler.js +3 -2
  36. package/dist/prometheus-framework/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +1 -1
  37. package/dist/prometheus-framework/src/components/Block/Block.vue.cjs +5 -6
  38. package/dist/prometheus-framework/src/components/Block/Block.vue.cjs.map +1 -1
  39. package/dist/prometheus-framework/src/components/Block/Block.vue.js +6 -7
  40. package/dist/prometheus-framework/src/components/Block/Block.vue.js.map +1 -1
  41. package/dist/prometheus-framework/src/components/BottomSheet/BottomSheet.vue.cjs +5 -7
  42. package/dist/prometheus-framework/src/components/BottomSheet/BottomSheet.vue.cjs.map +1 -1
  43. package/dist/prometheus-framework/src/components/BottomSheet/BottomSheet.vue.js +5 -7
  44. package/dist/prometheus-framework/src/components/BottomSheet/BottomSheet.vue.js.map +1 -1
  45. package/dist/prometheus-framework/src/components/Completion/Completion.vue.cjs +1 -2
  46. package/dist/prometheus-framework/src/components/Completion/Completion.vue.cjs.map +1 -1
  47. package/dist/prometheus-framework/src/components/Completion/Completion.vue.js +1 -2
  48. package/dist/prometheus-framework/src/components/Completion/Completion.vue.js.map +1 -1
  49. package/dist/prometheus-framework/src/components/Countdown/Countdown.vue.cjs +23 -29
  50. package/dist/prometheus-framework/src/components/Countdown/Countdown.vue.cjs.map +1 -1
  51. package/dist/prometheus-framework/src/components/Countdown/Countdown.vue.js +24 -30
  52. package/dist/prometheus-framework/src/components/Countdown/Countdown.vue.js.map +1 -1
  53. package/dist/prometheus-framework/src/components/Feed/Feed.vue.cjs +1 -1
  54. package/dist/prometheus-framework/src/components/Feed/Feed.vue.js +1 -1
  55. package/dist/prometheus-framework/src/components/FieldTags/BlockTags.vue.cjs +5 -6
  56. package/dist/prometheus-framework/src/components/FieldTags/BlockTags.vue.cjs.map +1 -1
  57. package/dist/prometheus-framework/src/components/FieldTags/BlockTags.vue.js +6 -7
  58. package/dist/prometheus-framework/src/components/FieldTags/BlockTags.vue.js.map +1 -1
  59. package/dist/prometheus-framework/src/components/FieldTags/FieldTags.vue.cjs.map +1 -1
  60. package/dist/prometheus-framework/src/components/FieldTags/FieldTags.vue.js.map +1 -1
  61. package/dist/prometheus-framework/src/components/FieldTags/tag-input.vue2.cjs.map +1 -1
  62. package/dist/prometheus-framework/src/components/FieldTags/tag-input.vue2.js.map +1 -1
  63. package/dist/prometheus-framework/src/components/Loader/Loader.vue2.cjs +24 -25
  64. package/dist/prometheus-framework/src/components/Loader/Loader.vue2.cjs.map +1 -1
  65. package/dist/prometheus-framework/src/components/Loader/Loader.vue2.js +25 -26
  66. package/dist/prometheus-framework/src/components/Loader/Loader.vue2.js.map +1 -1
  67. package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue2.cjs +10 -13
  68. package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue2.cjs.map +1 -1
  69. package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue2.js +10 -13
  70. package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue2.js.map +1 -1
  71. package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.cjs +2 -2
  72. package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.cjs.map +1 -1
  73. package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.js +2 -2
  74. package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.js.map +1 -1
  75. package/dist/prometheus-framework/src/components/Status/Status.vue.cjs +1 -2
  76. package/dist/prometheus-framework/src/components/Status/Status.vue.cjs.map +1 -1
  77. package/dist/prometheus-framework/src/components/Status/Status.vue.js +1 -2
  78. package/dist/prometheus-framework/src/components/Status/Status.vue.js.map +1 -1
  79. package/dist/prometheus-framework/src/components/UploadImage/UploadImage.vue.cjs +15 -17
  80. package/dist/prometheus-framework/src/components/UploadImage/UploadImage.vue.cjs.map +1 -1
  81. package/dist/prometheus-framework/src/components/UploadImage/UploadImage.vue.js +15 -17
  82. package/dist/prometheus-framework/src/components/UploadImage/UploadImage.vue.js.map +1 -1
  83. package/dist/prometheus-framework/src/modules/auth/views/components/layouts/Auth.vue.cjs +2 -3
  84. package/dist/prometheus-framework/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
  85. package/dist/prometheus-framework/src/modules/auth/views/components/layouts/Auth.vue.js +2 -3
  86. package/dist/prometheus-framework/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  87. package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +12 -13
  88. package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.cjs.map +1 -1
  89. package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.js +12 -13
  90. package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +1 -1
  91. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.cjs +8 -11
  92. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.cjs.map +1 -1
  93. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.js +8 -11
  94. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.js.map +1 -1
  95. package/dist/prometheus-framework/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  96. package/dist/prometheus-framework/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  97. package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.cjs +23 -25
  98. package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
  99. package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.js +23 -25
  100. package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  101. package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  102. package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  103. package/dist/prometheus-framework/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs +5 -6
  104. package/dist/prometheus-framework/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs.map +1 -1
  105. package/dist/prometheus-framework/src/modules/auth/views/components/sections/SliderFeatures.vue.js +5 -6
  106. package/dist/prometheus-framework/src/modules/auth/views/components/sections/SliderFeatures.vue.js.map +1 -1
  107. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs +4 -6
  108. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +1 -1
  109. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js +4 -6
  110. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
  111. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.cjs +22 -33
  112. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +1 -1
  113. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.js +22 -33
  114. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
  115. package/dist/prometheus-framework/src/modules/chats/components/blocks/ChatMessage.vue.cjs +1 -1
  116. package/dist/prometheus-framework/src/modules/chats/components/blocks/ChatMessage.vue.cjs.map +1 -1
  117. package/dist/prometheus-framework/src/modules/chats/components/blocks/ChatMessage.vue.js +1 -1
  118. package/dist/prometheus-framework/src/modules/chats/components/blocks/ChatMessage.vue.js.map +1 -1
  119. package/dist/prometheus-framework/src/modules/chats/components/sections/ChatWindow.vue.cjs +4 -6
  120. package/dist/prometheus-framework/src/modules/chats/components/sections/ChatWindow.vue.cjs.map +1 -1
  121. package/dist/prometheus-framework/src/modules/chats/components/sections/ChatWindow.vue.js +4 -6
  122. package/dist/prometheus-framework/src/modules/chats/components/sections/ChatWindow.vue.js.map +1 -1
  123. package/dist/prometheus-framework/src/modules/community/components/blocks/Activity.vue.cjs +19 -25
  124. package/dist/prometheus-framework/src/modules/community/components/blocks/Activity.vue.cjs.map +1 -1
  125. package/dist/prometheus-framework/src/modules/community/components/blocks/Activity.vue.js +19 -25
  126. package/dist/prometheus-framework/src/modules/community/components/blocks/Activity.vue.js.map +1 -1
  127. package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.cjs +2 -2
  128. package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.js +2 -2
  129. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs +15 -17
  130. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
  131. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js +15 -17
  132. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  133. package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.cjs +3 -3
  134. package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.js +2 -2
  135. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs +9 -11
  136. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs.map +1 -1
  137. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js +10 -12
  138. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js.map +1 -1
  139. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +15 -19
  140. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs.map +1 -1
  141. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +15 -19
  142. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
  143. package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.cjs +9 -12
  144. package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.cjs.map +1 -1
  145. package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.js +9 -12
  146. package/dist/prometheus-framework/src/modules/community/components/sections/Comments.vue.js.map +1 -1
  147. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.cjs +5 -6
  148. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.cjs.map +1 -1
  149. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.js +5 -6
  150. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.js.map +1 -1
  151. package/dist/prometheus-framework/src/modules/community/components/sections/JoinUs.vue.cjs +3 -4
  152. package/dist/prometheus-framework/src/modules/community/components/sections/JoinUs.vue.cjs.map +1 -1
  153. package/dist/prometheus-framework/src/modules/community/components/sections/JoinUs.vue.js +3 -4
  154. package/dist/prometheus-framework/src/modules/community/components/sections/JoinUs.vue.js.map +1 -1
  155. package/dist/prometheus-framework/src/modules/constructor/components/elements/Audio.vue.cjs +1 -1
  156. package/dist/prometheus-framework/src/modules/constructor/components/elements/Audio.vue.js +1 -1
  157. package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.cjs +1 -2
  158. package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.cjs.map +1 -1
  159. package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.js +1 -2
  160. package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.js.map +1 -1
  161. package/dist/prometheus-framework/src/modules/constructor/components/elements/Video.vue.cjs +1 -1
  162. package/dist/prometheus-framework/src/modules/constructor/components/elements/Video.vue.js +1 -1
  163. package/dist/prometheus-framework/src/modules/constructor/components/elements/VideoPlayer.vue.cjs +1 -1
  164. package/dist/prometheus-framework/src/modules/constructor/components/elements/VideoPlayer.vue.js +1 -1
  165. package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
  166. package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
  167. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.cjs +11 -12
  168. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.cjs.map +1 -1
  169. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.js +11 -12
  170. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.js.map +1 -1
  171. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +52 -69
  172. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs.map +1 -1
  173. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +52 -69
  174. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js.map +1 -1
  175. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs +24 -25
  176. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs.map +1 -1
  177. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js +24 -25
  178. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
  179. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.cjs +1 -2
  180. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
  181. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.js +1 -2
  182. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.js.map +1 -1
  183. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.cjs +4 -6
  184. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.cjs.map +1 -1
  185. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.js +5 -7
  186. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.js.map +1 -1
  187. package/dist/prometheus-framework/src/modules/events/components/pages/EventsBackoffice.vue.cjs +4 -5
  188. package/dist/prometheus-framework/src/modules/events/components/pages/EventsBackoffice.vue.cjs.map +1 -1
  189. package/dist/prometheus-framework/src/modules/events/components/pages/EventsBackoffice.vue.js +4 -5
  190. package/dist/prometheus-framework/src/modules/events/components/pages/EventsBackoffice.vue.js.map +1 -1
  191. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.cjs +4 -6
  192. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.cjs.map +1 -1
  193. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.js +4 -6
  194. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.js.map +1 -1
  195. package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
  196. package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
  197. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +7 -7
  198. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +7 -7
  199. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/BlockSorting.vue.cjs +2 -2
  200. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/BlockSorting.vue.js +2 -2
  201. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +6 -7
  202. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
  203. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.js +6 -7
  204. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +1 -1
  205. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/App.vue.cjs +2 -2
  206. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/App.vue.js +1 -1
  207. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.cjs +1 -1
  208. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  209. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.js +1 -1
  210. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  211. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Empty.vue.cjs.map +1 -1
  212. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Empty.vue.js.map +1 -1
  213. package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.cjs +108 -112
  214. package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.cjs.map +1 -1
  215. package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.js +108 -112
  216. package/dist/prometheus-framework/src/modules/globals/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
  217. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.cjs +11 -13
  218. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
  219. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.js +11 -13
  220. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
  221. package/dist/prometheus-framework/src/modules/globals/views/components/partials/LocationSelection.vue.cjs +5 -6
  222. package/dist/prometheus-framework/src/modules/globals/views/components/partials/LocationSelection.vue.cjs.map +1 -1
  223. package/dist/prometheus-framework/src/modules/globals/views/components/partials/LocationSelection.vue.js +5 -6
  224. package/dist/prometheus-framework/src/modules/globals/views/components/partials/LocationSelection.vue.js.map +1 -1
  225. package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +8 -10
  226. package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.cjs.map +1 -1
  227. package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.js +9 -11
  228. package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.js.map +1 -1
  229. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.cjs +4 -5
  230. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
  231. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.js +4 -5
  232. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.js.map +1 -1
  233. package/dist/prometheus-framework/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
  234. package/dist/prometheus-framework/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
  235. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.cjs +18 -23
  236. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.cjs.map +1 -1
  237. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.js +18 -23
  238. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.js.map +1 -1
  239. package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.cjs +6 -8
  240. package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.cjs.map +1 -1
  241. package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.js +6 -8
  242. package/dist/prometheus-framework/src/modules/icons/entities/IconGroups.vue.js.map +1 -1
  243. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.cjs +6 -8
  244. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.cjs.map +1 -1
  245. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.js +6 -8
  246. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.js.map +1 -1
  247. package/dist/prometheus-framework/src/modules/icons/entities/IconTime.vue.cjs +6 -8
  248. package/dist/prometheus-framework/src/modules/icons/entities/IconTime.vue.cjs.map +1 -1
  249. package/dist/prometheus-framework/src/modules/icons/entities/IconTime.vue.js +6 -8
  250. package/dist/prometheus-framework/src/modules/icons/entities/IconTime.vue.js.map +1 -1
  251. package/dist/prometheus-framework/src/modules/icons/labels/LabelAppStore.vue.cjs +3 -5
  252. package/dist/prometheus-framework/src/modules/icons/labels/LabelAppStore.vue.cjs.map +1 -1
  253. package/dist/prometheus-framework/src/modules/icons/labels/LabelAppStore.vue.js +3 -5
  254. package/dist/prometheus-framework/src/modules/icons/labels/LabelAppStore.vue.js.map +1 -1
  255. package/dist/prometheus-framework/src/modules/icons/labels/LabelGooglePlay.vue.cjs +3 -5
  256. package/dist/prometheus-framework/src/modules/icons/labels/LabelGooglePlay.vue.cjs.map +1 -1
  257. package/dist/prometheus-framework/src/modules/icons/labels/LabelGooglePlay.vue.js +3 -5
  258. package/dist/prometheus-framework/src/modules/icons/labels/LabelGooglePlay.vue.js.map +1 -1
  259. package/dist/prometheus-framework/src/modules/icons/navigation/IconChevronBottom.vue.cjs.map +1 -1
  260. package/dist/prometheus-framework/src/modules/icons/navigation/IconChevronBottom.vue.js.map +1 -1
  261. package/dist/prometheus-framework/src/modules/icons/navigation/IconChevronRight.vue.cjs.map +1 -1
  262. package/dist/prometheus-framework/src/modules/icons/navigation/IconChevronRight.vue.js.map +1 -1
  263. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderChat.vue.cjs +15 -18
  264. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderChat.vue.cjs.map +1 -1
  265. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderChat.vue.js +15 -18
  266. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderChat.vue.js.map +1 -1
  267. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderImage.vue.cjs +6 -8
  268. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderImage.vue.cjs.map +1 -1
  269. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderImage.vue.js +6 -8
  270. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderImage.vue.js.map +1 -1
  271. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue.cjs +15 -18
  272. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue.cjs.map +1 -1
  273. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue.js +15 -18
  274. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue.js.map +1 -1
  275. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderUserpic.vue.cjs +14 -17
  276. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderUserpic.vue.cjs.map +1 -1
  277. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderUserpic.vue.js +14 -17
  278. package/dist/prometheus-framework/src/modules/icons/placeholders/PlaceholderUserpic.vue.js.map +1 -1
  279. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs +3 -5
  280. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs.map +1 -1
  281. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.js +3 -5
  282. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonBlogpost.vue.js.map +1 -1
  283. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.cjs +3 -5
  284. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.cjs.map +1 -1
  285. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.js +3 -5
  286. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEvent.vue.js.map +1 -1
  287. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.cjs +3 -5
  288. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.cjs.map +1 -1
  289. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.js +3 -5
  290. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonEventShort.vue.js.map +1 -1
  291. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.cjs +3 -5
  292. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.cjs.map +1 -1
  293. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.js +3 -5
  294. package/dist/prometheus-framework/src/modules/icons/skeletons/SkeletonOrganization.vue.js.map +1 -1
  295. package/dist/prometheus-framework/src/modules/icons/socials/dribbble.vue.cjs +6 -8
  296. package/dist/prometheus-framework/src/modules/icons/socials/dribbble.vue.cjs.map +1 -1
  297. package/dist/prometheus-framework/src/modules/icons/socials/dribbble.vue.js +6 -8
  298. package/dist/prometheus-framework/src/modules/icons/socials/dribbble.vue.js.map +1 -1
  299. package/dist/prometheus-framework/src/modules/icons/socials/facebook.vue.cjs +6 -8
  300. package/dist/prometheus-framework/src/modules/icons/socials/facebook.vue.cjs.map +1 -1
  301. package/dist/prometheus-framework/src/modules/icons/socials/facebook.vue.js +6 -8
  302. package/dist/prometheus-framework/src/modules/icons/socials/facebook.vue.js.map +1 -1
  303. package/dist/prometheus-framework/src/modules/icons/socials/instagram.vue.cjs +6 -8
  304. package/dist/prometheus-framework/src/modules/icons/socials/instagram.vue.cjs.map +1 -1
  305. package/dist/prometheus-framework/src/modules/icons/socials/instagram.vue.js +6 -8
  306. package/dist/prometheus-framework/src/modules/icons/socials/instagram.vue.js.map +1 -1
  307. package/dist/prometheus-framework/src/modules/icons/socials/line.vue.cjs +8 -10
  308. package/dist/prometheus-framework/src/modules/icons/socials/line.vue.cjs.map +1 -1
  309. package/dist/prometheus-framework/src/modules/icons/socials/line.vue.js +8 -10
  310. package/dist/prometheus-framework/src/modules/icons/socials/line.vue.js.map +1 -1
  311. package/dist/prometheus-framework/src/modules/icons/socials/linkedin.vue.cjs +6 -8
  312. package/dist/prometheus-framework/src/modules/icons/socials/linkedin.vue.cjs.map +1 -1
  313. package/dist/prometheus-framework/src/modules/icons/socials/linkedin.vue.js +6 -8
  314. package/dist/prometheus-framework/src/modules/icons/socials/linkedin.vue.js.map +1 -1
  315. package/dist/prometheus-framework/src/modules/icons/socials/reddit.vue.cjs +6 -8
  316. package/dist/prometheus-framework/src/modules/icons/socials/reddit.vue.cjs.map +1 -1
  317. package/dist/prometheus-framework/src/modules/icons/socials/reddit.vue.js +6 -8
  318. package/dist/prometheus-framework/src/modules/icons/socials/reddit.vue.js.map +1 -1
  319. package/dist/prometheus-framework/src/modules/icons/socials/telegram.vue.cjs +14 -18
  320. package/dist/prometheus-framework/src/modules/icons/socials/telegram.vue.cjs.map +1 -1
  321. package/dist/prometheus-framework/src/modules/icons/socials/telegram.vue.js +14 -18
  322. package/dist/prometheus-framework/src/modules/icons/socials/telegram.vue.js.map +1 -1
  323. package/dist/prometheus-framework/src/modules/icons/socials/twitter.vue.cjs +6 -8
  324. package/dist/prometheus-framework/src/modules/icons/socials/twitter.vue.cjs.map +1 -1
  325. package/dist/prometheus-framework/src/modules/icons/socials/twitter.vue.js +6 -8
  326. package/dist/prometheus-framework/src/modules/icons/socials/twitter.vue.js.map +1 -1
  327. package/dist/prometheus-framework/src/modules/icons/socials/vk.vue.cjs +6 -8
  328. package/dist/prometheus-framework/src/modules/icons/socials/vk.vue.cjs.map +1 -1
  329. package/dist/prometheus-framework/src/modules/icons/socials/vk.vue.js +6 -8
  330. package/dist/prometheus-framework/src/modules/icons/socials/vk.vue.js.map +1 -1
  331. package/dist/prometheus-framework/src/modules/icons/socials/youtube.vue.cjs +6 -8
  332. package/dist/prometheus-framework/src/modules/icons/socials/youtube.vue.cjs.map +1 -1
  333. package/dist/prometheus-framework/src/modules/icons/socials/youtube.vue.js +6 -8
  334. package/dist/prometheus-framework/src/modules/icons/socials/youtube.vue.js.map +1 -1
  335. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue.cjs +3 -6
  336. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue.cjs.map +1 -1
  337. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue.js +4 -7
  338. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue.js.map +1 -1
  339. package/dist/prometheus-framework/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs +3 -5
  340. package/dist/prometheus-framework/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs.map +1 -1
  341. package/dist/prometheus-framework/src/modules/landing/components/sections/SubscribeNewsletter.vue.js +4 -6
  342. package/dist/prometheus-framework/src/modules/landing/components/sections/SubscribeNewsletter.vue.js.map +1 -1
  343. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs +14 -19
  344. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs.map +1 -1
  345. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js +15 -20
  346. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js.map +1 -1
  347. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Cookies.vue.cjs +218 -241
  348. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Cookies.vue.cjs.map +1 -1
  349. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Cookies.vue.js +218 -241
  350. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Cookies.vue.js.map +1 -1
  351. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/EULA.vue.cjs +1701 -1807
  352. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/EULA.vue.cjs.map +1 -1
  353. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/EULA.vue.js +1702 -1808
  354. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/EULA.vue.js.map +1 -1
  355. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Privacy.vue.cjs +4107 -4405
  356. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Privacy.vue.cjs.map +1 -1
  357. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Privacy.vue.js +4107 -4405
  358. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Privacy.vue.js.map +1 -1
  359. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Terms.vue.cjs +1257 -1395
  360. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Terms.vue.cjs.map +1 -1
  361. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Terms.vue.js +1258 -1396
  362. package/dist/prometheus-framework/src/modules/legal/components/pages/legal/Terms.vue.js.map +1 -1
  363. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrder.vue.cjs +54 -68
  364. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrder.vue.cjs.map +1 -1
  365. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrder.vue.js +55 -69
  366. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrder.vue.js.map +1 -1
  367. package/dist/prometheus-framework/src/modules/orders/components/blocks/StatusHistory.vue.cjs +7 -8
  368. package/dist/prometheus-framework/src/modules/orders/components/blocks/StatusHistory.vue.cjs.map +1 -1
  369. package/dist/prometheus-framework/src/modules/orders/components/blocks/StatusHistory.vue.js +8 -9
  370. package/dist/prometheus-framework/src/modules/orders/components/blocks/StatusHistory.vue.js.map +1 -1
  371. package/dist/prometheus-framework/src/modules/orders/components/pages/Order.vue.cjs +64 -76
  372. package/dist/prometheus-framework/src/modules/orders/components/pages/Order.vue.cjs.map +1 -1
  373. package/dist/prometheus-framework/src/modules/orders/components/pages/Order.vue.js +65 -77
  374. package/dist/prometheus-framework/src/modules/orders/components/pages/Order.vue.js.map +1 -1
  375. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +58 -72
  376. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +1 -1
  377. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.js +59 -73
  378. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
  379. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.cjs +21 -24
  380. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
  381. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.js +21 -24
  382. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  383. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +14 -17
  384. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
  385. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +14 -17
  386. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
  387. package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.cjs +44 -49
  388. package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.cjs.map +1 -1
  389. package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.js +44 -49
  390. package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.js.map +1 -1
  391. package/dist/prometheus-framework/src/modules/orders/components/sections/AskToLogin.vue.cjs +4 -5
  392. package/dist/prometheus-framework/src/modules/orders/components/sections/AskToLogin.vue.cjs.map +1 -1
  393. package/dist/prometheus-framework/src/modules/orders/components/sections/AskToLogin.vue.js +4 -5
  394. package/dist/prometheus-framework/src/modules/orders/components/sections/AskToLogin.vue.js.map +1 -1
  395. package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +3 -3
  396. package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js +3 -3
  397. package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +1 -1
  398. package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.js +1 -1
  399. package/dist/prometheus-framework/src/modules/orders/components/sections/FormDelivery.vue.cjs +4 -6
  400. package/dist/prometheus-framework/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
  401. package/dist/prometheus-framework/src/modules/orders/components/sections/FormDelivery.vue.js +4 -6
  402. package/dist/prometheus-framework/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
  403. package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
  404. package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
  405. package/dist/prometheus-framework/src/modules/orders/components/sections/Succes.vue.cjs +13 -16
  406. package/dist/prometheus-framework/src/modules/orders/components/sections/Succes.vue.cjs.map +1 -1
  407. package/dist/prometheus-framework/src/modules/orders/components/sections/Succes.vue.js +14 -17
  408. package/dist/prometheus-framework/src/modules/orders/components/sections/Succes.vue.js.map +1 -1
  409. package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +2 -3
  410. package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.cjs.map +1 -1
  411. package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.js +2 -3
  412. package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
  413. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Contacts.vue.cjs +14 -22
  414. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Contacts.vue.cjs.map +1 -1
  415. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Contacts.vue.js +15 -23
  416. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Contacts.vue.js.map +1 -1
  417. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Rating.vue.cjs +8 -10
  418. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Rating.vue.cjs.map +1 -1
  419. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Rating.vue.js +8 -10
  420. package/dist/prometheus-framework/src/modules/organizations/components/blocks/Rating.vue.js.map +1 -1
  421. package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.cjs +8 -10
  422. package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
  423. package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.js +8 -10
  424. package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
  425. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +21 -30
  426. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs.map +1 -1
  427. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +21 -30
  428. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js.map +1 -1
  429. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +5 -5
  430. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +5 -5
  431. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.cjs +8 -8
  432. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.js +8 -8
  433. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +8 -15
  434. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs.map +1 -1
  435. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +9 -16
  436. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +1 -1
  437. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +14 -21
  438. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs.map +1 -1
  439. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +15 -22
  440. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
  441. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.cjs +2 -3
  442. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.cjs.map +1 -1
  443. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.js +2 -3
  444. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  445. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +17 -18
  446. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs.map +1 -1
  447. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTabSection.vue.js +17 -18
  448. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTabSection.vue.js.map +1 -1
  449. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +10 -12
  450. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs.map +1 -1
  451. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +11 -13
  452. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js.map +1 -1
  453. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +4 -5
  454. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs.map +1 -1
  455. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +4 -5
  456. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
  457. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
  458. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  459. package/dist/prometheus-framework/src/modules/pages/pages.client.cjs +801 -811
  460. package/dist/prometheus-framework/src/modules/pages/pages.client.js +801 -811
  461. package/dist/prometheus-framework/src/modules/pages/views/components/pages/Page.vue.cjs +7 -10
  462. package/dist/prometheus-framework/src/modules/pages/views/components/pages/Page.vue.cjs.map +1 -1
  463. package/dist/prometheus-framework/src/modules/pages/views/components/pages/Page.vue.js +7 -10
  464. package/dist/prometheus-framework/src/modules/pages/views/components/pages/Page.vue.js.map +1 -1
  465. package/dist/prometheus-framework/src/modules/pages/views/components/pages/PageEdit.vue.cjs +4 -4
  466. package/dist/prometheus-framework/src/modules/pages/views/components/pages/PageEdit.vue.js +4 -4
  467. package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +3 -3
  468. package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.js +3 -3
  469. package/dist/prometheus-framework/src/modules/products/components/blocks/CardCategory.vue.cjs +2 -2
  470. package/dist/prometheus-framework/src/modules/products/components/blocks/CardCategory.vue.js +2 -2
  471. package/dist/prometheus-framework/src/modules/products/components/blocks/CardLeftover.vue.cjs +9 -11
  472. package/dist/prometheus-framework/src/modules/products/components/blocks/CardLeftover.vue.cjs.map +1 -1
  473. package/dist/prometheus-framework/src/modules/products/components/blocks/CardLeftover.vue.js +10 -12
  474. package/dist/prometheus-framework/src/modules/products/components/blocks/CardLeftover.vue.js.map +1 -1
  475. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
  476. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
  477. package/dist/prometheus-framework/src/modules/products/components/blocks/Images360.vue.cjs +5 -6
  478. package/dist/prometheus-framework/src/modules/products/components/blocks/Images360.vue.cjs.map +1 -1
  479. package/dist/prometheus-framework/src/modules/products/components/blocks/Images360.vue.js +6 -7
  480. package/dist/prometheus-framework/src/modules/products/components/blocks/Images360.vue.js.map +1 -1
  481. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
  482. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
  483. package/dist/prometheus-framework/src/modules/products/components/elements/THC.vue.cjs +37 -46
  484. package/dist/prometheus-framework/src/modules/products/components/elements/THC.vue.cjs.map +1 -1
  485. package/dist/prometheus-framework/src/modules/products/components/elements/THC.vue.js +37 -46
  486. package/dist/prometheus-framework/src/modules/products/components/elements/THC.vue.js.map +1 -1
  487. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.cjs +5 -6
  488. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.cjs.map +1 -1
  489. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.js +6 -7
  490. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  491. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs +8 -9
  492. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
  493. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js +8 -9
  494. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  495. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +2 -2
  496. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +2 -2
  497. package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.cjs +5 -7
  498. package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.cjs.map +1 -1
  499. package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.js +5 -7
  500. package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.js.map +1 -1
  501. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +6 -6
  502. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +6 -6
  503. package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.cjs +6 -7
  504. package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  505. package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.js +6 -7
  506. package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.js.map +1 -1
  507. package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.cjs +47 -53
  508. package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.cjs.map +1 -1
  509. package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.js +47 -53
  510. package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.js.map +1 -1
  511. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
  512. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +1 -1
  513. package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.cjs +8 -12
  514. package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.cjs.map +1 -1
  515. package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.js +8 -12
  516. package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.js.map +1 -1
  517. package/dist/prometheus-framework/src/modules/reports/components/pages/BackofficeReports.vue.cjs +27 -35
  518. package/dist/prometheus-framework/src/modules/reports/components/pages/BackofficeReports.vue.cjs.map +1 -1
  519. package/dist/prometheus-framework/src/modules/reports/components/pages/BackofficeReports.vue.js +27 -35
  520. package/dist/prometheus-framework/src/modules/reports/components/pages/BackofficeReports.vue.js.map +1 -1
  521. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +7 -10
  522. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs.map +1 -1
  523. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +8 -11
  524. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js.map +1 -1
  525. package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.cjs +3 -6
  526. package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.cjs.map +1 -1
  527. package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.js +4 -7
  528. package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.js.map +1 -1
  529. package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
  530. package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
  531. package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.cjs +8 -9
  532. package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.cjs.map +1 -1
  533. package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.js +8 -9
  534. package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
  535. package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.cjs +6 -8
  536. package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.cjs.map +1 -1
  537. package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.js +7 -9
  538. package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.js.map +1 -1
  539. package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.cjs +51 -58
  540. package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.cjs.map +1 -1
  541. package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.js +52 -59
  542. package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.js.map +1 -1
  543. package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.cjs +10 -13
  544. package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.cjs.map +1 -1
  545. package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.js +10 -13
  546. package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.js.map +1 -1
  547. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs +32 -40
  548. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs.map +1 -1
  549. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js +32 -40
  550. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js.map +1 -1
  551. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.cjs +2 -3
  552. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.cjs.map +1 -1
  553. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.js +2 -3
  554. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.js.map +1 -1
  555. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.cjs +16 -23
  556. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.cjs.map +1 -1
  557. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.js +17 -24
  558. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.js.map +1 -1
  559. package/dist/prometheus-framework/src/modules/users/components/sections/FeaturedUsers.vue.cjs +10 -12
  560. package/dist/prometheus-framework/src/modules/users/components/sections/FeaturedUsers.vue.cjs.map +1 -1
  561. package/dist/prometheus-framework/src/modules/users/components/sections/FeaturedUsers.vue.js +11 -13
  562. package/dist/prometheus-framework/src/modules/users/components/sections/FeaturedUsers.vue.js.map +1 -1
  563. package/dist/prometheus-framework/src/modules/users/components/sections/ProfileCompletion.vue.cjs +1 -2
  564. package/dist/prometheus-framework/src/modules/users/components/sections/ProfileCompletion.vue.cjs.map +1 -1
  565. package/dist/prometheus-framework/src/modules/users/components/sections/ProfileCompletion.vue.js +1 -2
  566. package/dist/prometheus-framework/src/modules/users/components/sections/ProfileCompletion.vue.js.map +1 -1
  567. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs +5 -8
  568. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs.map +1 -1
  569. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +5 -8
  570. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CardDeposit.vue.js.map +1 -1
  571. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CashDeposit.vue.cjs +6 -9
  572. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CashDeposit.vue.cjs.map +1 -1
  573. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CashDeposit.vue.js +6 -9
  574. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CashDeposit.vue.js.map +1 -1
  575. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
  576. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
  577. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.cjs +18 -23
  578. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.cjs.map +1 -1
  579. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.js +19 -24
  580. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.js.map +1 -1
  581. package/dist/prometheus-framework/src/modules/wallet/views/components/elements/ConnectMetamask.vue.cjs +20 -23
  582. package/dist/prometheus-framework/src/modules/wallet/views/components/elements/ConnectMetamask.vue.cjs.map +1 -1
  583. package/dist/prometheus-framework/src/modules/wallet/views/components/elements/ConnectMetamask.vue.js +20 -23
  584. package/dist/prometheus-framework/src/modules/wallet/views/components/elements/ConnectMetamask.vue.js.map +1 -1
  585. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.cjs +61 -67
  586. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.cjs.map +1 -1
  587. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.js +61 -67
  588. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.js.map +1 -1
  589. package/dist/prometheus-framework.cjs.js +21 -21
  590. package/dist/prometheus-framework.es.js +2845 -2813
  591. package/dist/tickets.controller-CLL05IYf.mjs +441 -0
  592. package/dist/tickets.controller-Dn5NbQEu.js +440 -0
  593. package/dist/wallet.server.js +1 -1
  594. package/dist/wallet.server.mjs +1 -1
  595. package/package.json +1 -1
  596. package/src/modules/events/controllers/tickets.controller.js +33 -7
  597. package/src/modules/globals/views/components/layouts/Client.vue +1 -12
@@ -858,33 +858,38 @@ function ScrollTo(animation, indexCurrent, indexPrevious, scrollBody, scrollTarg
858
858
  };
859
859
  return self;
860
860
  }
861
- function SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler) {
861
+ function SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus) {
862
+ const focusListenerOptions = {
863
+ passive: true,
864
+ capture: true
865
+ };
862
866
  let lastTabPressTime = 0;
863
- function init() {
864
- eventStore.add(document, "keydown", registerTabPress, false);
865
- slides.forEach(addSlideFocusEvent);
866
- }
867
- function registerTabPress(event) {
868
- if (event.code === "Tab") lastTabPressTime = (/* @__PURE__ */ new Date()).getTime();
869
- }
870
- function addSlideFocusEvent(slide) {
871
- const focus = () => {
867
+ function init(emblaApi) {
868
+ if (!watchFocus) return;
869
+ function defaultCallback(index) {
872
870
  const nowTime = (/* @__PURE__ */ new Date()).getTime();
873
871
  const diffTime = nowTime - lastTabPressTime;
874
872
  if (diffTime > 10) return;
873
+ eventHandler.emit("slideFocusStart");
875
874
  root.scrollLeft = 0;
876
- const index = slides.indexOf(slide);
877
875
  const group = slideRegistry.findIndex((group2) => group2.includes(index));
878
876
  if (!isNumber(group)) return;
879
877
  scrollBody.useDuration(0);
880
878
  scrollTo.index(group, 0);
881
879
  eventHandler.emit("slideFocus");
882
- };
883
- eventStore.add(slide, "focus", focus, {
884
- passive: true,
885
- capture: true
880
+ }
881
+ eventStore.add(document, "keydown", registerTabPress, false);
882
+ slides.forEach((slide, slideIndex) => {
883
+ eventStore.add(slide, "focus", (evt) => {
884
+ if (isBoolean(watchFocus) || watchFocus(emblaApi, evt)) {
885
+ defaultCallback(slideIndex);
886
+ }
887
+ }, focusListenerOptions);
886
888
  });
887
889
  }
890
+ function registerTabPress(event) {
891
+ if (event.code === "Tab") lastTabPressTime = (/* @__PURE__ */ new Date()).getTime();
892
+ }
888
893
  const self = {
889
894
  init
890
895
  };
@@ -1202,7 +1207,8 @@ function Engine(root, container, slides, ownerDocument, ownerWindow, options, ev
1202
1207
  containScroll,
1203
1208
  watchResize,
1204
1209
  watchSlides,
1205
- watchDrag
1210
+ watchDrag,
1211
+ watchFocus
1206
1212
  } = options;
1207
1213
  const pixelTolerance = 2;
1208
1214
  const nodeRects = NodeRects();
@@ -1295,7 +1301,7 @@ function Engine(root, container, slides, ownerDocument, ownerWindow, options, ev
1295
1301
  const {
1296
1302
  slideRegistry
1297
1303
  } = SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes);
1298
- const slideFocus = SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler);
1304
+ const slideFocus = SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus);
1299
1305
  const engine = {
1300
1306
  ownerDocument,
1301
1307
  ownerWindow,
@@ -1387,7 +1393,8 @@ const defaultOptions = {
1387
1393
  active: true,
1388
1394
  watchDrag: true,
1389
1395
  watchResize: true,
1390
- watchSlides: true
1396
+ watchSlides: true,
1397
+ watchFocus: true
1391
1398
  };
1392
1399
  function OptionsHandler(ownerWindow) {
1393
1400
  function mergeOptions(optionsA, optionsB) {
@@ -1488,7 +1495,7 @@ function EmblaCarousel(root, userOptions, userPlugins) {
1488
1495
  engine.translate.to(engine.location.get());
1489
1496
  engine.animation.init();
1490
1497
  engine.slidesInView.init();
1491
- engine.slideFocus.init();
1498
+ engine.slideFocus.init(self);
1492
1499
  engine.eventHandler.init(self);
1493
1500
  engine.resizeHandler.init(self);
1494
1501
  engine.slidesHandler.init(self);
@@ -1 +1 @@
1
- {"version":3,"file":"embla-carousel.esm.js","sources":["../../../../../node_modules/embla-carousel/esm/embla-carousel.esm.js"],"sourcesContent":["function isNumber(subject) {\n return typeof subject === 'number';\n}\nfunction isString(subject) {\n return typeof subject === 'string';\n}\nfunction isBoolean(subject) {\n return typeof subject === 'boolean';\n}\nfunction isObject(subject) {\n return Object.prototype.toString.call(subject) === '[object Object]';\n}\nfunction mathAbs(n) {\n return Math.abs(n);\n}\nfunction mathSign(n) {\n return Math.sign(n);\n}\nfunction deltaAbs(valueB, valueA) {\n return mathAbs(valueB - valueA);\n}\nfunction factorAbs(valueB, valueA) {\n if (valueB === 0 || valueA === 0) return 0;\n if (mathAbs(valueB) <= mathAbs(valueA)) return 0;\n const diff = deltaAbs(mathAbs(valueB), mathAbs(valueA));\n return mathAbs(diff / valueB);\n}\nfunction arrayKeys(array) {\n return objectKeys(array).map(Number);\n}\nfunction arrayLast(array) {\n return array[arrayLastIndex(array)];\n}\nfunction arrayLastIndex(array) {\n return Math.max(0, array.length - 1);\n}\nfunction arrayIsLastIndex(array, index) {\n return index === arrayLastIndex(array);\n}\nfunction arrayFromNumber(n, startAt = 0) {\n return Array.from(Array(n), (_, i) => startAt + i);\n}\nfunction objectKeys(object) {\n return Object.keys(object);\n}\nfunction objectsMergeDeep(objectA, objectB) {\n return [objectA, objectB].reduce((mergedObjects, currentObject) => {\n objectKeys(currentObject).forEach(key => {\n const valueA = mergedObjects[key];\n const valueB = currentObject[key];\n const areObjects = isObject(valueA) && isObject(valueB);\n mergedObjects[key] = areObjects ? objectsMergeDeep(valueA, valueB) : valueB;\n });\n return mergedObjects;\n }, {});\n}\nfunction isMouseEvent(evt, ownerWindow) {\n return typeof ownerWindow.MouseEvent !== 'undefined' && evt instanceof ownerWindow.MouseEvent;\n}\n\nfunction Alignment(align, viewSize) {\n const predefined = {\n start,\n center,\n end\n };\n function start() {\n return 0;\n }\n function center(n) {\n return end(n) / 2;\n }\n function end(n) {\n return viewSize - n;\n }\n function measure(n, index) {\n if (isString(align)) return predefined[align](n);\n return align(viewSize, n, index);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction EventStore() {\n let listeners = [];\n function add(node, type, handler, options = {\n passive: true\n }) {\n let removeListener;\n if ('addEventListener' in node) {\n node.addEventListener(type, handler, options);\n removeListener = () => node.removeEventListener(type, handler, options);\n } else {\n const legacyMediaQueryList = node;\n legacyMediaQueryList.addListener(handler);\n removeListener = () => legacyMediaQueryList.removeListener(handler);\n }\n listeners.push(removeListener);\n return self;\n }\n function clear() {\n listeners = listeners.filter(remove => remove());\n }\n const self = {\n add,\n clear\n };\n return self;\n}\n\nfunction Animations(ownerDocument, ownerWindow, update, render) {\n const documentVisibleHandler = EventStore();\n const timeStep = 1000 / 60;\n let lastTimeStamp = null;\n let lag = 0;\n let animationFrame = 0;\n function init() {\n documentVisibleHandler.add(ownerDocument, 'visibilitychange', () => {\n if (ownerDocument.hidden) reset();\n });\n }\n function destroy() {\n stop();\n documentVisibleHandler.clear();\n }\n function animate(timeStamp) {\n if (!animationFrame) return;\n if (!lastTimeStamp) lastTimeStamp = timeStamp;\n const elapsed = timeStamp - lastTimeStamp;\n lastTimeStamp = timeStamp;\n lag += elapsed;\n while (lag >= timeStep) {\n update(timeStep);\n lag -= timeStep;\n }\n const lagOffset = lag / timeStep;\n render(lagOffset);\n if (animationFrame) ownerWindow.requestAnimationFrame(animate);\n }\n function start() {\n if (animationFrame) return;\n animationFrame = ownerWindow.requestAnimationFrame(animate);\n }\n function stop() {\n ownerWindow.cancelAnimationFrame(animationFrame);\n lastTimeStamp = null;\n lag = 0;\n animationFrame = 0;\n }\n function reset() {\n lastTimeStamp = null;\n lag = 0;\n }\n const self = {\n init,\n destroy,\n start,\n stop,\n update: () => update(timeStep),\n render\n };\n return self;\n}\n\nfunction Axis(axis, contentDirection) {\n const isRightToLeft = contentDirection === 'rtl';\n const isVertical = axis === 'y';\n const scroll = isVertical ? 'y' : 'x';\n const cross = isVertical ? 'x' : 'y';\n const sign = !isVertical && isRightToLeft ? -1 : 1;\n const startEdge = getStartEdge();\n const endEdge = getEndEdge();\n function measureSize(nodeRect) {\n const {\n height,\n width\n } = nodeRect;\n return isVertical ? height : width;\n }\n function getStartEdge() {\n if (isVertical) return 'top';\n return isRightToLeft ? 'right' : 'left';\n }\n function getEndEdge() {\n if (isVertical) return 'bottom';\n return isRightToLeft ? 'left' : 'right';\n }\n function direction(n) {\n return n * sign;\n }\n const self = {\n scroll,\n cross,\n startEdge,\n endEdge,\n measureSize,\n direction\n };\n return self;\n}\n\nfunction Limit(min = 0, max = 0) {\n const length = mathAbs(min - max);\n function reachedMin(n) {\n return n < min;\n }\n function reachedMax(n) {\n return n > max;\n }\n function reachedAny(n) {\n return reachedMin(n) || reachedMax(n);\n }\n function constrain(n) {\n if (!reachedAny(n)) return n;\n return reachedMin(n) ? min : max;\n }\n function removeOffset(n) {\n if (!length) return n;\n return n - length * Math.ceil((n - max) / length);\n }\n const self = {\n length,\n max,\n min,\n constrain,\n reachedAny,\n reachedMax,\n reachedMin,\n removeOffset\n };\n return self;\n}\n\nfunction Counter(max, start, loop) {\n const {\n constrain\n } = Limit(0, max);\n const loopEnd = max + 1;\n let counter = withinLimit(start);\n function withinLimit(n) {\n return !loop ? constrain(n) : mathAbs((loopEnd + n) % loopEnd);\n }\n function get() {\n return counter;\n }\n function set(n) {\n counter = withinLimit(n);\n return self;\n }\n function add(n) {\n return clone().set(get() + n);\n }\n function clone() {\n return Counter(max, get(), loop);\n }\n const self = {\n get,\n set,\n add,\n clone\n };\n return self;\n}\n\nfunction DragHandler(axis, rootNode, ownerDocument, ownerWindow, target, dragTracker, location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, baseFriction, watchDrag) {\n const {\n cross: crossAxis,\n direction\n } = axis;\n const focusNodes = ['INPUT', 'SELECT', 'TEXTAREA'];\n const nonPassiveEvent = {\n passive: false\n };\n const initEvents = EventStore();\n const dragEvents = EventStore();\n const goToNextThreshold = Limit(50, 225).constrain(percentOfView.measure(20));\n const snapForceBoost = {\n mouse: 300,\n touch: 400\n };\n const freeForceBoost = {\n mouse: 500,\n touch: 600\n };\n const baseSpeed = dragFree ? 43 : 25;\n let isMoving = false;\n let startScroll = 0;\n let startCross = 0;\n let pointerIsDown = false;\n let preventScroll = false;\n let preventClick = false;\n let isMouse = false;\n function init(emblaApi) {\n if (!watchDrag) return;\n function downIfAllowed(evt) {\n if (isBoolean(watchDrag) || watchDrag(emblaApi, evt)) down(evt);\n }\n const node = rootNode;\n initEvents.add(node, 'dragstart', evt => evt.preventDefault(), nonPassiveEvent).add(node, 'touchmove', () => undefined, nonPassiveEvent).add(node, 'touchend', () => undefined).add(node, 'touchstart', downIfAllowed).add(node, 'mousedown', downIfAllowed).add(node, 'touchcancel', up).add(node, 'contextmenu', up).add(node, 'click', click, true);\n }\n function destroy() {\n initEvents.clear();\n dragEvents.clear();\n }\n function addDragEvents() {\n const node = isMouse ? ownerDocument : rootNode;\n dragEvents.add(node, 'touchmove', move, nonPassiveEvent).add(node, 'touchend', up).add(node, 'mousemove', move, nonPassiveEvent).add(node, 'mouseup', up);\n }\n function isFocusNode(node) {\n const nodeName = node.nodeName || '';\n return focusNodes.includes(nodeName);\n }\n function forceBoost() {\n const boost = dragFree ? freeForceBoost : snapForceBoost;\n const type = isMouse ? 'mouse' : 'touch';\n return boost[type];\n }\n function allowedForce(force, targetChanged) {\n const next = index.add(mathSign(force) * -1);\n const baseForce = scrollTarget.byDistance(force, !dragFree).distance;\n if (dragFree || mathAbs(force) < goToNextThreshold) return baseForce;\n if (skipSnaps && targetChanged) return baseForce * 0.5;\n return scrollTarget.byIndex(next.get(), 0).distance;\n }\n function down(evt) {\n const isMouseEvt = isMouseEvent(evt, ownerWindow);\n isMouse = isMouseEvt;\n preventClick = dragFree && isMouseEvt && !evt.buttons && isMoving;\n isMoving = deltaAbs(target.get(), location.get()) >= 2;\n if (isMouseEvt && evt.button !== 0) return;\n if (isFocusNode(evt.target)) return;\n pointerIsDown = true;\n dragTracker.pointerDown(evt);\n scrollBody.useFriction(0).useDuration(0);\n target.set(location);\n addDragEvents();\n startScroll = dragTracker.readPoint(evt);\n startCross = dragTracker.readPoint(evt, crossAxis);\n eventHandler.emit('pointerDown');\n }\n function move(evt) {\n const isTouchEvt = !isMouseEvent(evt, ownerWindow);\n if (isTouchEvt && evt.touches.length >= 2) return up(evt);\n const lastScroll = dragTracker.readPoint(evt);\n const lastCross = dragTracker.readPoint(evt, crossAxis);\n const diffScroll = deltaAbs(lastScroll, startScroll);\n const diffCross = deltaAbs(lastCross, startCross);\n if (!preventScroll && !isMouse) {\n if (!evt.cancelable) return up(evt);\n preventScroll = diffScroll > diffCross;\n if (!preventScroll) return up(evt);\n }\n const diff = dragTracker.pointerMove(evt);\n if (diffScroll > dragThreshold) preventClick = true;\n scrollBody.useFriction(0.3).useDuration(0.75);\n animation.start();\n target.add(direction(diff));\n evt.preventDefault();\n }\n function up(evt) {\n const currentLocation = scrollTarget.byDistance(0, false);\n const targetChanged = currentLocation.index !== index.get();\n const rawForce = dragTracker.pointerUp(evt) * forceBoost();\n const force = allowedForce(direction(rawForce), targetChanged);\n const forceFactor = factorAbs(rawForce, force);\n const speed = baseSpeed - 10 * forceFactor;\n const friction = baseFriction + forceFactor / 50;\n preventScroll = false;\n pointerIsDown = false;\n dragEvents.clear();\n scrollBody.useDuration(speed).useFriction(friction);\n scrollTo.distance(force, !dragFree);\n isMouse = false;\n eventHandler.emit('pointerUp');\n }\n function click(evt) {\n if (preventClick) {\n evt.stopPropagation();\n evt.preventDefault();\n preventClick = false;\n }\n }\n function pointerDown() {\n return pointerIsDown;\n }\n const self = {\n init,\n destroy,\n pointerDown\n };\n return self;\n}\n\nfunction DragTracker(axis, ownerWindow) {\n const logInterval = 170;\n let startEvent;\n let lastEvent;\n function readTime(evt) {\n return evt.timeStamp;\n }\n function readPoint(evt, evtAxis) {\n const property = evtAxis || axis.scroll;\n const coord = `client${property === 'x' ? 'X' : 'Y'}`;\n return (isMouseEvent(evt, ownerWindow) ? evt : evt.touches[0])[coord];\n }\n function pointerDown(evt) {\n startEvent = evt;\n lastEvent = evt;\n return readPoint(evt);\n }\n function pointerMove(evt) {\n const diff = readPoint(evt) - readPoint(lastEvent);\n const expired = readTime(evt) - readTime(startEvent) > logInterval;\n lastEvent = evt;\n if (expired) startEvent = evt;\n return diff;\n }\n function pointerUp(evt) {\n if (!startEvent || !lastEvent) return 0;\n const diffDrag = readPoint(lastEvent) - readPoint(startEvent);\n const diffTime = readTime(evt) - readTime(startEvent);\n const expired = readTime(evt) - readTime(lastEvent) > logInterval;\n const force = diffDrag / diffTime;\n const isFlick = diffTime && !expired && mathAbs(force) > 0.1;\n return isFlick ? force : 0;\n }\n const self = {\n pointerDown,\n pointerMove,\n pointerUp,\n readPoint\n };\n return self;\n}\n\nfunction NodeRects() {\n function measure(node) {\n const {\n offsetTop,\n offsetLeft,\n offsetWidth,\n offsetHeight\n } = node;\n const offset = {\n top: offsetTop,\n right: offsetLeft + offsetWidth,\n bottom: offsetTop + offsetHeight,\n left: offsetLeft,\n width: offsetWidth,\n height: offsetHeight\n };\n return offset;\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction PercentOfView(viewSize) {\n function measure(n) {\n return viewSize * (n / 100);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects) {\n const observeNodes = [container].concat(slides);\n let resizeObserver;\n let containerSize;\n let slideSizes = [];\n let destroyed = false;\n function readSize(node) {\n return axis.measureSize(nodeRects.measure(node));\n }\n function init(emblaApi) {\n if (!watchResize) return;\n containerSize = readSize(container);\n slideSizes = slides.map(readSize);\n function defaultCallback(entries) {\n for (const entry of entries) {\n if (destroyed) return;\n const isContainer = entry.target === container;\n const slideIndex = slides.indexOf(entry.target);\n const lastSize = isContainer ? containerSize : slideSizes[slideIndex];\n const newSize = readSize(isContainer ? container : slides[slideIndex]);\n const diffSize = mathAbs(newSize - lastSize);\n if (diffSize >= 0.5) {\n emblaApi.reInit();\n eventHandler.emit('resize');\n break;\n }\n }\n }\n resizeObserver = new ResizeObserver(entries => {\n if (isBoolean(watchResize) || watchResize(emblaApi, entries)) {\n defaultCallback(entries);\n }\n });\n ownerWindow.requestAnimationFrame(() => {\n observeNodes.forEach(node => resizeObserver.observe(node));\n });\n }\n function destroy() {\n destroyed = true;\n if (resizeObserver) resizeObserver.disconnect();\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction ScrollBody(location, offsetLocation, previousLocation, target, baseDuration, baseFriction) {\n let bodyVelocity = 0;\n let scrollDirection = 0;\n let scrollDuration = baseDuration;\n let scrollFriction = baseFriction;\n let rawLocation = location.get();\n let rawLocationPrevious = 0;\n function seek(timeStep) {\n const fixedDeltaTimeSeconds = timeStep / 1000;\n const duration = scrollDuration * fixedDeltaTimeSeconds;\n const diff = target.get() - location.get();\n const isInstant = !scrollDuration;\n let directionDiff = 0;\n if (isInstant) {\n bodyVelocity = 0;\n previousLocation.set(target);\n location.set(target);\n directionDiff = diff;\n } else {\n previousLocation.set(location);\n bodyVelocity += diff / duration;\n bodyVelocity *= scrollFriction;\n rawLocation += bodyVelocity;\n location.add(bodyVelocity * fixedDeltaTimeSeconds);\n directionDiff = rawLocation - rawLocationPrevious;\n }\n scrollDirection = mathSign(directionDiff);\n rawLocationPrevious = rawLocation;\n return self;\n }\n function settled() {\n const diff = target.get() - offsetLocation.get();\n return mathAbs(diff) < 0.001;\n }\n function duration() {\n return scrollDuration;\n }\n function direction() {\n return scrollDirection;\n }\n function velocity() {\n return bodyVelocity;\n }\n function useBaseDuration() {\n return useDuration(baseDuration);\n }\n function useBaseFriction() {\n return useFriction(baseFriction);\n }\n function useDuration(n) {\n scrollDuration = n;\n return self;\n }\n function useFriction(n) {\n scrollFriction = n;\n return self;\n }\n const self = {\n direction,\n duration,\n velocity,\n seek,\n settled,\n useBaseFriction,\n useBaseDuration,\n useFriction,\n useDuration\n };\n return self;\n}\n\nfunction ScrollBounds(limit, location, target, scrollBody, percentOfView) {\n const pullBackThreshold = percentOfView.measure(10);\n const edgeOffsetTolerance = percentOfView.measure(50);\n const frictionLimit = Limit(0.1, 0.99);\n let disabled = false;\n function shouldConstrain() {\n if (disabled) return false;\n if (!limit.reachedAny(target.get())) return false;\n if (!limit.reachedAny(location.get())) return false;\n return true;\n }\n function constrain(pointerDown) {\n if (!shouldConstrain()) return;\n const edge = limit.reachedMin(location.get()) ? 'min' : 'max';\n const diffToEdge = mathAbs(limit[edge] - location.get());\n const diffToTarget = target.get() - location.get();\n const friction = frictionLimit.constrain(diffToEdge / edgeOffsetTolerance);\n target.subtract(diffToTarget * friction);\n if (!pointerDown && mathAbs(diffToTarget) < pullBackThreshold) {\n target.set(limit.constrain(target.get()));\n scrollBody.useDuration(25).useBaseFriction();\n }\n }\n function toggleActive(active) {\n disabled = !active;\n }\n const self = {\n shouldConstrain,\n constrain,\n toggleActive\n };\n return self;\n}\n\nfunction ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance) {\n const scrollBounds = Limit(-contentSize + viewSize, 0);\n const snapsBounded = measureBounded();\n const scrollContainLimit = findScrollContainLimit();\n const snapsContained = measureContained();\n function usePixelTolerance(bound, snap) {\n return deltaAbs(bound, snap) < 1;\n }\n function findScrollContainLimit() {\n const startSnap = snapsBounded[0];\n const endSnap = arrayLast(snapsBounded);\n const min = snapsBounded.lastIndexOf(startSnap);\n const max = snapsBounded.indexOf(endSnap) + 1;\n return Limit(min, max);\n }\n function measureBounded() {\n return snapsAligned.map((snapAligned, index) => {\n const {\n min,\n max\n } = scrollBounds;\n const snap = scrollBounds.constrain(snapAligned);\n const isFirst = !index;\n const isLast = arrayIsLastIndex(snapsAligned, index);\n if (isFirst) return max;\n if (isLast) return min;\n if (usePixelTolerance(min, snap)) return min;\n if (usePixelTolerance(max, snap)) return max;\n return snap;\n }).map(scrollBound => parseFloat(scrollBound.toFixed(3)));\n }\n function measureContained() {\n if (contentSize <= viewSize + pixelTolerance) return [scrollBounds.max];\n if (containScroll === 'keepSnaps') return snapsBounded;\n const {\n min,\n max\n } = scrollContainLimit;\n return snapsBounded.slice(min, max);\n }\n const self = {\n snapsContained,\n scrollContainLimit\n };\n return self;\n}\n\nfunction ScrollLimit(contentSize, scrollSnaps, loop) {\n const max = scrollSnaps[0];\n const min = loop ? max - contentSize : arrayLast(scrollSnaps);\n const limit = Limit(min, max);\n const self = {\n limit\n };\n return self;\n}\n\nfunction ScrollLooper(contentSize, limit, location, vectors) {\n const jointSafety = 0.1;\n const min = limit.min + jointSafety;\n const max = limit.max + jointSafety;\n const {\n reachedMin,\n reachedMax\n } = Limit(min, max);\n function shouldLoop(direction) {\n if (direction === 1) return reachedMax(location.get());\n if (direction === -1) return reachedMin(location.get());\n return false;\n }\n function loop(direction) {\n if (!shouldLoop(direction)) return;\n const loopDistance = contentSize * (direction * -1);\n vectors.forEach(v => v.add(loopDistance));\n }\n const self = {\n loop\n };\n return self;\n}\n\nfunction ScrollProgress(limit) {\n const {\n max,\n length\n } = limit;\n function get(n) {\n const currentLocation = n - max;\n return length ? currentLocation / -length : 0;\n }\n const self = {\n get\n };\n return self;\n}\n\nfunction ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll) {\n const {\n startEdge,\n endEdge\n } = axis;\n const {\n groupSlides\n } = slidesToScroll;\n const alignments = measureSizes().map(alignment.measure);\n const snaps = measureUnaligned();\n const snapsAligned = measureAligned();\n function measureSizes() {\n return groupSlides(slideRects).map(rects => arrayLast(rects)[endEdge] - rects[0][startEdge]).map(mathAbs);\n }\n function measureUnaligned() {\n return slideRects.map(rect => containerRect[startEdge] - rect[startEdge]).map(snap => -mathAbs(snap));\n }\n function measureAligned() {\n return groupSlides(snaps).map(g => g[0]).map((snap, index) => snap + alignments[index]);\n }\n const self = {\n snaps,\n snapsAligned\n };\n return self;\n}\n\nfunction SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes) {\n const {\n groupSlides\n } = slidesToScroll;\n const {\n min,\n max\n } = scrollContainLimit;\n const slideRegistry = createSlideRegistry();\n function createSlideRegistry() {\n const groupedSlideIndexes = groupSlides(slideIndexes);\n const doNotContain = !containSnaps || containScroll === 'keepSnaps';\n if (scrollSnaps.length === 1) return [slideIndexes];\n if (doNotContain) return groupedSlideIndexes;\n return groupedSlideIndexes.slice(min, max).map((group, index, groups) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(groups, index);\n if (isFirst) {\n const range = arrayLast(groups[0]) + 1;\n return arrayFromNumber(range);\n }\n if (isLast) {\n const range = arrayLastIndex(slideIndexes) - arrayLast(groups)[0] + 1;\n return arrayFromNumber(range, arrayLast(groups)[0]);\n }\n return group;\n });\n }\n const self = {\n slideRegistry\n };\n return self;\n}\n\nfunction ScrollTarget(loop, scrollSnaps, contentSize, limit, targetVector) {\n const {\n reachedAny,\n removeOffset,\n constrain\n } = limit;\n function minDistance(distances) {\n return distances.concat().sort((a, b) => mathAbs(a) - mathAbs(b))[0];\n }\n function findTargetSnap(target) {\n const distance = loop ? removeOffset(target) : constrain(target);\n const ascDiffsToSnaps = scrollSnaps.map((snap, index) => ({\n diff: shortcut(snap - distance, 0),\n index\n })).sort((d1, d2) => mathAbs(d1.diff) - mathAbs(d2.diff));\n const {\n index\n } = ascDiffsToSnaps[0];\n return {\n index,\n distance\n };\n }\n function shortcut(target, direction) {\n const targets = [target, target + contentSize, target - contentSize];\n if (!loop) return target;\n if (!direction) return minDistance(targets);\n const matchingTargets = targets.filter(t => mathSign(t) === direction);\n if (matchingTargets.length) return minDistance(matchingTargets);\n return arrayLast(targets) - contentSize;\n }\n function byIndex(index, direction) {\n const diffToSnap = scrollSnaps[index] - targetVector.get();\n const distance = shortcut(diffToSnap, direction);\n return {\n index,\n distance\n };\n }\n function byDistance(distance, snap) {\n const target = targetVector.get() + distance;\n const {\n index,\n distance: targetSnapDistance\n } = findTargetSnap(target);\n const reachedBound = !loop && reachedAny(target);\n if (!snap || reachedBound) return {\n index,\n distance\n };\n const diffToSnap = scrollSnaps[index] - targetSnapDistance;\n const snapDistance = distance + shortcut(diffToSnap, 0);\n return {\n index,\n distance: snapDistance\n };\n }\n const self = {\n byDistance,\n byIndex,\n shortcut\n };\n return self;\n}\n\nfunction ScrollTo(animation, indexCurrent, indexPrevious, scrollBody, scrollTarget, targetVector, eventHandler) {\n function scrollTo(target) {\n const distanceDiff = target.distance;\n const indexDiff = target.index !== indexCurrent.get();\n targetVector.add(distanceDiff);\n if (distanceDiff) {\n if (scrollBody.duration()) {\n animation.start();\n } else {\n animation.update();\n animation.render(1);\n animation.update();\n }\n }\n if (indexDiff) {\n indexPrevious.set(indexCurrent.get());\n indexCurrent.set(target.index);\n eventHandler.emit('select');\n }\n }\n function distance(n, snap) {\n const target = scrollTarget.byDistance(n, snap);\n scrollTo(target);\n }\n function index(n, direction) {\n const targetIndex = indexCurrent.clone().set(n);\n const target = scrollTarget.byIndex(targetIndex.get(), direction);\n scrollTo(target);\n }\n const self = {\n distance,\n index\n };\n return self;\n}\n\nfunction SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler) {\n let lastTabPressTime = 0;\n function init() {\n eventStore.add(document, 'keydown', registerTabPress, false);\n slides.forEach(addSlideFocusEvent);\n }\n function registerTabPress(event) {\n if (event.code === 'Tab') lastTabPressTime = new Date().getTime();\n }\n function addSlideFocusEvent(slide) {\n const focus = () => {\n const nowTime = new Date().getTime();\n const diffTime = nowTime - lastTabPressTime;\n if (diffTime > 10) return;\n root.scrollLeft = 0;\n const index = slides.indexOf(slide);\n const group = slideRegistry.findIndex(group => group.includes(index));\n if (!isNumber(group)) return;\n scrollBody.useDuration(0);\n scrollTo.index(group, 0);\n eventHandler.emit('slideFocus');\n };\n eventStore.add(slide, 'focus', focus, {\n passive: true,\n capture: true\n });\n }\n const self = {\n init\n };\n return self;\n}\n\nfunction Vector1D(initialValue) {\n let value = initialValue;\n function get() {\n return value;\n }\n function set(n) {\n value = normalizeInput(n);\n }\n function add(n) {\n value += normalizeInput(n);\n }\n function subtract(n) {\n value -= normalizeInput(n);\n }\n function normalizeInput(n) {\n return isNumber(n) ? n : n.get();\n }\n const self = {\n get,\n set,\n add,\n subtract\n };\n return self;\n}\n\nfunction Translate(axis, container) {\n const translate = axis.scroll === 'x' ? x : y;\n const containerStyle = container.style;\n let disabled = false;\n function x(n) {\n return `translate3d(${n}px,0px,0px)`;\n }\n function y(n) {\n return `translate3d(0px,${n}px,0px)`;\n }\n function to(target) {\n if (disabled) return;\n containerStyle.transform = translate(axis.direction(target));\n }\n function toggleActive(active) {\n disabled = !active;\n }\n function clear() {\n if (disabled) return;\n containerStyle.transform = '';\n if (!container.getAttribute('style')) container.removeAttribute('style');\n }\n const self = {\n clear,\n to,\n toggleActive\n };\n return self;\n}\n\nfunction SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, location, slides) {\n const roundingSafety = 0.5;\n const ascItems = arrayKeys(slideSizesWithGaps);\n const descItems = arrayKeys(slideSizesWithGaps).reverse();\n const loopPoints = startPoints().concat(endPoints());\n function removeSlideSizes(indexes, from) {\n return indexes.reduce((a, i) => {\n return a - slideSizesWithGaps[i];\n }, from);\n }\n function slidesInGap(indexes, gap) {\n return indexes.reduce((a, i) => {\n const remainingGap = removeSlideSizes(a, gap);\n return remainingGap > 0 ? a.concat([i]) : a;\n }, []);\n }\n function findSlideBounds(offset) {\n return snaps.map((snap, index) => ({\n start: snap - slideSizes[index] + roundingSafety + offset,\n end: snap + viewSize - roundingSafety + offset\n }));\n }\n function findLoopPoints(indexes, offset, isEndEdge) {\n const slideBounds = findSlideBounds(offset);\n return indexes.map(index => {\n const initial = isEndEdge ? 0 : -contentSize;\n const altered = isEndEdge ? contentSize : 0;\n const boundEdge = isEndEdge ? 'end' : 'start';\n const loopPoint = slideBounds[index][boundEdge];\n return {\n index,\n loopPoint,\n slideLocation: Vector1D(-1),\n translate: Translate(axis, slides[index]),\n target: () => location.get() > loopPoint ? initial : altered\n };\n });\n }\n function startPoints() {\n const gap = scrollSnaps[0];\n const indexes = slidesInGap(descItems, gap);\n return findLoopPoints(indexes, contentSize, false);\n }\n function endPoints() {\n const gap = viewSize - scrollSnaps[0] - 1;\n const indexes = slidesInGap(ascItems, gap);\n return findLoopPoints(indexes, -contentSize, true);\n }\n function canLoop() {\n return loopPoints.every(({\n index\n }) => {\n const otherIndexes = ascItems.filter(i => i !== index);\n return removeSlideSizes(otherIndexes, viewSize) <= 0.1;\n });\n }\n function loop() {\n loopPoints.forEach(loopPoint => {\n const {\n target,\n translate,\n slideLocation\n } = loopPoint;\n const shiftLocation = target();\n if (shiftLocation === slideLocation.get()) return;\n translate.to(shiftLocation);\n slideLocation.set(shiftLocation);\n });\n }\n function clear() {\n loopPoints.forEach(loopPoint => loopPoint.translate.clear());\n }\n const self = {\n canLoop,\n clear,\n loop,\n loopPoints\n };\n return self;\n}\n\nfunction SlidesHandler(container, eventHandler, watchSlides) {\n let mutationObserver;\n let destroyed = false;\n function init(emblaApi) {\n if (!watchSlides) return;\n function defaultCallback(mutations) {\n for (const mutation of mutations) {\n if (mutation.type === 'childList') {\n emblaApi.reInit();\n eventHandler.emit('slidesChanged');\n break;\n }\n }\n }\n mutationObserver = new MutationObserver(mutations => {\n if (destroyed) return;\n if (isBoolean(watchSlides) || watchSlides(emblaApi, mutations)) {\n defaultCallback(mutations);\n }\n });\n mutationObserver.observe(container, {\n childList: true\n });\n }\n function destroy() {\n if (mutationObserver) mutationObserver.disconnect();\n destroyed = true;\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction SlidesInView(container, slides, eventHandler, threshold) {\n const intersectionEntryMap = {};\n let inViewCache = null;\n let notInViewCache = null;\n let intersectionObserver;\n let destroyed = false;\n function init() {\n intersectionObserver = new IntersectionObserver(entries => {\n if (destroyed) return;\n entries.forEach(entry => {\n const index = slides.indexOf(entry.target);\n intersectionEntryMap[index] = entry;\n });\n inViewCache = null;\n notInViewCache = null;\n eventHandler.emit('slidesInView');\n }, {\n root: container.parentElement,\n threshold\n });\n slides.forEach(slide => intersectionObserver.observe(slide));\n }\n function destroy() {\n if (intersectionObserver) intersectionObserver.disconnect();\n destroyed = true;\n }\n function createInViewList(inView) {\n return objectKeys(intersectionEntryMap).reduce((list, slideIndex) => {\n const index = parseInt(slideIndex);\n const {\n isIntersecting\n } = intersectionEntryMap[index];\n const inViewMatch = inView && isIntersecting;\n const notInViewMatch = !inView && !isIntersecting;\n if (inViewMatch || notInViewMatch) list.push(index);\n return list;\n }, []);\n }\n function get(inView = true) {\n if (inView && inViewCache) return inViewCache;\n if (!inView && notInViewCache) return notInViewCache;\n const slideIndexes = createInViewList(inView);\n if (inView) inViewCache = slideIndexes;\n if (!inView) notInViewCache = slideIndexes;\n return slideIndexes;\n }\n const self = {\n init,\n destroy,\n get\n };\n return self;\n}\n\nfunction SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow) {\n const {\n measureSize,\n startEdge,\n endEdge\n } = axis;\n const withEdgeGap = slideRects[0] && readEdgeGap;\n const startGap = measureStartGap();\n const endGap = measureEndGap();\n const slideSizes = slideRects.map(measureSize);\n const slideSizesWithGaps = measureWithGaps();\n function measureStartGap() {\n if (!withEdgeGap) return 0;\n const slideRect = slideRects[0];\n return mathAbs(containerRect[startEdge] - slideRect[startEdge]);\n }\n function measureEndGap() {\n if (!withEdgeGap) return 0;\n const style = ownerWindow.getComputedStyle(arrayLast(slides));\n return parseFloat(style.getPropertyValue(`margin-${endEdge}`));\n }\n function measureWithGaps() {\n return slideRects.map((rect, index, rects) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(rects, index);\n if (isFirst) return slideSizes[index] + startGap;\n if (isLast) return slideSizes[index] + endGap;\n return rects[index + 1][startEdge] - rect[startEdge];\n }).map(mathAbs);\n }\n const self = {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n };\n return self;\n}\n\nfunction SlidesToScroll(axis, viewSize, slidesToScroll, loop, containerRect, slideRects, startGap, endGap, pixelTolerance) {\n const {\n startEdge,\n endEdge,\n direction\n } = axis;\n const groupByNumber = isNumber(slidesToScroll);\n function byNumber(array, groupSize) {\n return arrayKeys(array).filter(i => i % groupSize === 0).map(i => array.slice(i, i + groupSize));\n }\n function bySize(array) {\n if (!array.length) return [];\n return arrayKeys(array).reduce((groups, rectB, index) => {\n const rectA = arrayLast(groups) || 0;\n const isFirst = rectA === 0;\n const isLast = rectB === arrayLastIndex(array);\n const edgeA = containerRect[startEdge] - slideRects[rectA][startEdge];\n const edgeB = containerRect[startEdge] - slideRects[rectB][endEdge];\n const gapA = !loop && isFirst ? direction(startGap) : 0;\n const gapB = !loop && isLast ? direction(endGap) : 0;\n const chunkSize = mathAbs(edgeB - gapB - (edgeA + gapA));\n if (index && chunkSize > viewSize + pixelTolerance) groups.push(rectB);\n if (isLast) groups.push(array.length);\n return groups;\n }, []).map((currentSize, index, groups) => {\n const previousSize = Math.max(groups[index - 1] || 0);\n return array.slice(previousSize, currentSize);\n });\n }\n function groupSlides(array) {\n return groupByNumber ? byNumber(array, slidesToScroll) : bySize(array);\n }\n const self = {\n groupSlides\n };\n return self;\n}\n\nfunction Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler) {\n // Options\n const {\n align,\n axis: scrollAxis,\n direction,\n startIndex,\n loop,\n duration,\n dragFree,\n dragThreshold,\n inViewThreshold,\n slidesToScroll: groupSlides,\n skipSnaps,\n containScroll,\n watchResize,\n watchSlides,\n watchDrag\n } = options;\n // Measurements\n const pixelTolerance = 2;\n const nodeRects = NodeRects();\n const containerRect = nodeRects.measure(container);\n const slideRects = slides.map(nodeRects.measure);\n const axis = Axis(scrollAxis, direction);\n const viewSize = axis.measureSize(containerRect);\n const percentOfView = PercentOfView(viewSize);\n const alignment = Alignment(align, viewSize);\n const containSnaps = !loop && !!containScroll;\n const readEdgeGap = loop || !!containScroll;\n const {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n } = SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow);\n const slidesToScroll = SlidesToScroll(axis, viewSize, groupSlides, loop, containerRect, slideRects, startGap, endGap, pixelTolerance);\n const {\n snaps,\n snapsAligned\n } = ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll);\n const contentSize = -arrayLast(snaps) + arrayLast(slideSizesWithGaps);\n const {\n snapsContained,\n scrollContainLimit\n } = ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance);\n const scrollSnaps = containSnaps ? snapsContained : snapsAligned;\n const {\n limit\n } = ScrollLimit(contentSize, scrollSnaps, loop);\n // Indexes\n const index = Counter(arrayLastIndex(scrollSnaps), startIndex, loop);\n const indexPrevious = index.clone();\n const slideIndexes = arrayKeys(slides);\n // Animation\n const update = ({\n dragHandler,\n scrollBody,\n scrollBounds,\n options: {\n loop\n }\n }, timeStep) => {\n if (!loop) scrollBounds.constrain(dragHandler.pointerDown());\n scrollBody.seek(timeStep);\n };\n const render = ({\n scrollBody,\n translate,\n location,\n offsetLocation,\n scrollLooper,\n slideLooper,\n dragHandler,\n animation,\n eventHandler,\n scrollBounds,\n options: {\n loop\n }\n }, lagOffset) => {\n const shouldSettle = scrollBody.settled();\n const withinBounds = !scrollBounds.shouldConstrain();\n const hasSettled = loop ? shouldSettle : shouldSettle && withinBounds;\n if (hasSettled && !dragHandler.pointerDown()) {\n animation.stop();\n eventHandler.emit('settle');\n }\n if (!hasSettled) eventHandler.emit('scroll');\n const interpolatedLocation = location.get() * lagOffset + previousLocation.get() * (1 - lagOffset);\n offsetLocation.set(interpolatedLocation);\n if (loop) {\n scrollLooper.loop(scrollBody.direction());\n slideLooper.loop();\n }\n translate.to(offsetLocation.get());\n };\n const animation = Animations(ownerDocument, ownerWindow, timeStep => update(engine, timeStep), lagOffset => render(engine, lagOffset));\n // Shared\n const friction = 0.68;\n const startLocation = scrollSnaps[index.get()];\n const location = Vector1D(startLocation);\n const previousLocation = Vector1D(startLocation);\n const offsetLocation = Vector1D(startLocation);\n const target = Vector1D(startLocation);\n const scrollBody = ScrollBody(location, offsetLocation, previousLocation, target, duration, friction);\n const scrollTarget = ScrollTarget(loop, scrollSnaps, contentSize, limit, target);\n const scrollTo = ScrollTo(animation, index, indexPrevious, scrollBody, scrollTarget, target, eventHandler);\n const scrollProgress = ScrollProgress(limit);\n const eventStore = EventStore();\n const slidesInView = SlidesInView(container, slides, eventHandler, inViewThreshold);\n const {\n slideRegistry\n } = SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes);\n const slideFocus = SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler);\n // Engine\n const engine = {\n ownerDocument,\n ownerWindow,\n eventHandler,\n containerRect,\n slideRects,\n animation,\n axis,\n dragHandler: DragHandler(axis, root, ownerDocument, ownerWindow, target, DragTracker(axis, ownerWindow), location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, friction, watchDrag),\n eventStore,\n percentOfView,\n index,\n indexPrevious,\n limit,\n location,\n offsetLocation,\n previousLocation,\n options,\n resizeHandler: ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects),\n scrollBody,\n scrollBounds: ScrollBounds(limit, offsetLocation, target, scrollBody, percentOfView),\n scrollLooper: ScrollLooper(contentSize, limit, offsetLocation, [location, offsetLocation, previousLocation, target]),\n scrollProgress,\n scrollSnapList: scrollSnaps.map(scrollProgress.get),\n scrollSnaps,\n scrollTarget,\n scrollTo,\n slideLooper: SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, offsetLocation, slides),\n slideFocus,\n slidesHandler: SlidesHandler(container, eventHandler, watchSlides),\n slidesInView,\n slideIndexes,\n slideRegistry,\n slidesToScroll,\n target,\n translate: Translate(axis, container)\n };\n return engine;\n}\n\nfunction EventHandler() {\n let listeners = {};\n let api;\n function init(emblaApi) {\n api = emblaApi;\n }\n function getListeners(evt) {\n return listeners[evt] || [];\n }\n function emit(evt) {\n getListeners(evt).forEach(e => e(api, evt));\n return self;\n }\n function on(evt, cb) {\n listeners[evt] = getListeners(evt).concat([cb]);\n return self;\n }\n function off(evt, cb) {\n listeners[evt] = getListeners(evt).filter(e => e !== cb);\n return self;\n }\n function clear() {\n listeners = {};\n }\n const self = {\n init,\n emit,\n off,\n on,\n clear\n };\n return self;\n}\n\nconst defaultOptions = {\n align: 'center',\n axis: 'x',\n container: null,\n slides: null,\n containScroll: 'trimSnaps',\n direction: 'ltr',\n slidesToScroll: 1,\n inViewThreshold: 0,\n breakpoints: {},\n dragFree: false,\n dragThreshold: 10,\n loop: false,\n skipSnaps: false,\n duration: 25,\n startIndex: 0,\n active: true,\n watchDrag: true,\n watchResize: true,\n watchSlides: true\n};\n\nfunction OptionsHandler(ownerWindow) {\n function mergeOptions(optionsA, optionsB) {\n return objectsMergeDeep(optionsA, optionsB || {});\n }\n function optionsAtMedia(options) {\n const optionsAtMedia = options.breakpoints || {};\n const matchedMediaOptions = objectKeys(optionsAtMedia).filter(media => ownerWindow.matchMedia(media).matches).map(media => optionsAtMedia[media]).reduce((a, mediaOption) => mergeOptions(a, mediaOption), {});\n return mergeOptions(options, matchedMediaOptions);\n }\n function optionsMediaQueries(optionsList) {\n return optionsList.map(options => objectKeys(options.breakpoints || {})).reduce((acc, mediaQueries) => acc.concat(mediaQueries), []).map(ownerWindow.matchMedia);\n }\n const self = {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n };\n return self;\n}\n\nfunction PluginsHandler(optionsHandler) {\n let activePlugins = [];\n function init(emblaApi, plugins) {\n activePlugins = plugins.filter(({\n options\n }) => optionsHandler.optionsAtMedia(options).active !== false);\n activePlugins.forEach(plugin => plugin.init(emblaApi, optionsHandler));\n return plugins.reduce((map, plugin) => Object.assign(map, {\n [plugin.name]: plugin\n }), {});\n }\n function destroy() {\n activePlugins = activePlugins.filter(plugin => plugin.destroy());\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction EmblaCarousel(root, userOptions, userPlugins) {\n const ownerDocument = root.ownerDocument;\n const ownerWindow = ownerDocument.defaultView;\n const optionsHandler = OptionsHandler(ownerWindow);\n const pluginsHandler = PluginsHandler(optionsHandler);\n const mediaHandlers = EventStore();\n const eventHandler = EventHandler();\n const {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n } = optionsHandler;\n const {\n on,\n off,\n emit\n } = eventHandler;\n const reInit = reActivate;\n let destroyed = false;\n let engine;\n let optionsBase = mergeOptions(defaultOptions, EmblaCarousel.globalOptions);\n let options = mergeOptions(optionsBase);\n let pluginList = [];\n let pluginApis;\n let container;\n let slides;\n function storeElements() {\n const {\n container: userContainer,\n slides: userSlides\n } = options;\n const customContainer = isString(userContainer) ? root.querySelector(userContainer) : userContainer;\n container = customContainer || root.children[0];\n const customSlides = isString(userSlides) ? container.querySelectorAll(userSlides) : userSlides;\n slides = [].slice.call(customSlides || container.children);\n }\n function createEngine(options) {\n const engine = Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler);\n if (options.loop && !engine.slideLooper.canLoop()) {\n const optionsWithoutLoop = Object.assign({}, options, {\n loop: false\n });\n return createEngine(optionsWithoutLoop);\n }\n return engine;\n }\n function activate(withOptions, withPlugins) {\n if (destroyed) return;\n optionsBase = mergeOptions(optionsBase, withOptions);\n options = optionsAtMedia(optionsBase);\n pluginList = withPlugins || pluginList;\n storeElements();\n engine = createEngine(options);\n optionsMediaQueries([optionsBase, ...pluginList.map(({\n options\n }) => options)]).forEach(query => mediaHandlers.add(query, 'change', reActivate));\n if (!options.active) return;\n engine.translate.to(engine.location.get());\n engine.animation.init();\n engine.slidesInView.init();\n engine.slideFocus.init();\n engine.eventHandler.init(self);\n engine.resizeHandler.init(self);\n engine.slidesHandler.init(self);\n if (engine.options.loop) engine.slideLooper.loop();\n if (container.offsetParent && slides.length) engine.dragHandler.init(self);\n pluginApis = pluginsHandler.init(self, pluginList);\n }\n function reActivate(withOptions, withPlugins) {\n const startIndex = selectedScrollSnap();\n deActivate();\n activate(mergeOptions({\n startIndex\n }, withOptions), withPlugins);\n eventHandler.emit('reInit');\n }\n function deActivate() {\n engine.dragHandler.destroy();\n engine.eventStore.clear();\n engine.translate.clear();\n engine.slideLooper.clear();\n engine.resizeHandler.destroy();\n engine.slidesHandler.destroy();\n engine.slidesInView.destroy();\n engine.animation.destroy();\n pluginsHandler.destroy();\n mediaHandlers.clear();\n }\n function destroy() {\n if (destroyed) return;\n destroyed = true;\n mediaHandlers.clear();\n deActivate();\n eventHandler.emit('destroy');\n eventHandler.clear();\n }\n function scrollTo(index, jump, direction) {\n if (!options.active || destroyed) return;\n engine.scrollBody.useBaseFriction().useDuration(jump === true ? 0 : options.duration);\n engine.scrollTo.index(index, direction || 0);\n }\n function scrollNext(jump) {\n const next = engine.index.add(1).get();\n scrollTo(next, jump, -1);\n }\n function scrollPrev(jump) {\n const prev = engine.index.add(-1).get();\n scrollTo(prev, jump, 1);\n }\n function canScrollNext() {\n const next = engine.index.add(1).get();\n return next !== selectedScrollSnap();\n }\n function canScrollPrev() {\n const prev = engine.index.add(-1).get();\n return prev !== selectedScrollSnap();\n }\n function scrollSnapList() {\n return engine.scrollSnapList;\n }\n function scrollProgress() {\n return engine.scrollProgress.get(engine.location.get());\n }\n function selectedScrollSnap() {\n return engine.index.get();\n }\n function previousScrollSnap() {\n return engine.indexPrevious.get();\n }\n function slidesInView() {\n return engine.slidesInView.get();\n }\n function slidesNotInView() {\n return engine.slidesInView.get(false);\n }\n function plugins() {\n return pluginApis;\n }\n function internalEngine() {\n return engine;\n }\n function rootNode() {\n return root;\n }\n function containerNode() {\n return container;\n }\n function slideNodes() {\n return slides;\n }\n const self = {\n canScrollNext,\n canScrollPrev,\n containerNode,\n internalEngine,\n destroy,\n off,\n on,\n emit,\n plugins,\n previousScrollSnap,\n reInit,\n rootNode,\n scrollNext,\n scrollPrev,\n scrollProgress,\n scrollSnapList,\n scrollTo,\n selectedScrollSnap,\n slideNodes,\n slidesInView,\n slidesNotInView\n };\n activate(userOptions, userPlugins);\n setTimeout(() => eventHandler.emit('init'), 0);\n return self;\n}\nEmblaCarousel.globalOptions = undefined;\n\nexport { EmblaCarousel as default };\n//# sourceMappingURL=embla-carousel.esm.js.map\n"],"names":["duration","index","group","scrollBody","loop","location","offsetLocation","animation","eventHandler","optionsAtMedia","options","engine"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"embla-carousel.esm.js","sources":["../../../../../node_modules/embla-carousel/esm/embla-carousel.esm.js"],"sourcesContent":["function isNumber(subject) {\n return typeof subject === 'number';\n}\nfunction isString(subject) {\n return typeof subject === 'string';\n}\nfunction isBoolean(subject) {\n return typeof subject === 'boolean';\n}\nfunction isObject(subject) {\n return Object.prototype.toString.call(subject) === '[object Object]';\n}\nfunction mathAbs(n) {\n return Math.abs(n);\n}\nfunction mathSign(n) {\n return Math.sign(n);\n}\nfunction deltaAbs(valueB, valueA) {\n return mathAbs(valueB - valueA);\n}\nfunction factorAbs(valueB, valueA) {\n if (valueB === 0 || valueA === 0) return 0;\n if (mathAbs(valueB) <= mathAbs(valueA)) return 0;\n const diff = deltaAbs(mathAbs(valueB), mathAbs(valueA));\n return mathAbs(diff / valueB);\n}\nfunction arrayKeys(array) {\n return objectKeys(array).map(Number);\n}\nfunction arrayLast(array) {\n return array[arrayLastIndex(array)];\n}\nfunction arrayLastIndex(array) {\n return Math.max(0, array.length - 1);\n}\nfunction arrayIsLastIndex(array, index) {\n return index === arrayLastIndex(array);\n}\nfunction arrayFromNumber(n, startAt = 0) {\n return Array.from(Array(n), (_, i) => startAt + i);\n}\nfunction objectKeys(object) {\n return Object.keys(object);\n}\nfunction objectsMergeDeep(objectA, objectB) {\n return [objectA, objectB].reduce((mergedObjects, currentObject) => {\n objectKeys(currentObject).forEach(key => {\n const valueA = mergedObjects[key];\n const valueB = currentObject[key];\n const areObjects = isObject(valueA) && isObject(valueB);\n mergedObjects[key] = areObjects ? objectsMergeDeep(valueA, valueB) : valueB;\n });\n return mergedObjects;\n }, {});\n}\nfunction isMouseEvent(evt, ownerWindow) {\n return typeof ownerWindow.MouseEvent !== 'undefined' && evt instanceof ownerWindow.MouseEvent;\n}\n\nfunction Alignment(align, viewSize) {\n const predefined = {\n start,\n center,\n end\n };\n function start() {\n return 0;\n }\n function center(n) {\n return end(n) / 2;\n }\n function end(n) {\n return viewSize - n;\n }\n function measure(n, index) {\n if (isString(align)) return predefined[align](n);\n return align(viewSize, n, index);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction EventStore() {\n let listeners = [];\n function add(node, type, handler, options = {\n passive: true\n }) {\n let removeListener;\n if ('addEventListener' in node) {\n node.addEventListener(type, handler, options);\n removeListener = () => node.removeEventListener(type, handler, options);\n } else {\n const legacyMediaQueryList = node;\n legacyMediaQueryList.addListener(handler);\n removeListener = () => legacyMediaQueryList.removeListener(handler);\n }\n listeners.push(removeListener);\n return self;\n }\n function clear() {\n listeners = listeners.filter(remove => remove());\n }\n const self = {\n add,\n clear\n };\n return self;\n}\n\nfunction Animations(ownerDocument, ownerWindow, update, render) {\n const documentVisibleHandler = EventStore();\n const timeStep = 1000 / 60;\n let lastTimeStamp = null;\n let lag = 0;\n let animationFrame = 0;\n function init() {\n documentVisibleHandler.add(ownerDocument, 'visibilitychange', () => {\n if (ownerDocument.hidden) reset();\n });\n }\n function destroy() {\n stop();\n documentVisibleHandler.clear();\n }\n function animate(timeStamp) {\n if (!animationFrame) return;\n if (!lastTimeStamp) lastTimeStamp = timeStamp;\n const elapsed = timeStamp - lastTimeStamp;\n lastTimeStamp = timeStamp;\n lag += elapsed;\n while (lag >= timeStep) {\n update(timeStep);\n lag -= timeStep;\n }\n const lagOffset = lag / timeStep;\n render(lagOffset);\n if (animationFrame) ownerWindow.requestAnimationFrame(animate);\n }\n function start() {\n if (animationFrame) return;\n animationFrame = ownerWindow.requestAnimationFrame(animate);\n }\n function stop() {\n ownerWindow.cancelAnimationFrame(animationFrame);\n lastTimeStamp = null;\n lag = 0;\n animationFrame = 0;\n }\n function reset() {\n lastTimeStamp = null;\n lag = 0;\n }\n const self = {\n init,\n destroy,\n start,\n stop,\n update: () => update(timeStep),\n render\n };\n return self;\n}\n\nfunction Axis(axis, contentDirection) {\n const isRightToLeft = contentDirection === 'rtl';\n const isVertical = axis === 'y';\n const scroll = isVertical ? 'y' : 'x';\n const cross = isVertical ? 'x' : 'y';\n const sign = !isVertical && isRightToLeft ? -1 : 1;\n const startEdge = getStartEdge();\n const endEdge = getEndEdge();\n function measureSize(nodeRect) {\n const {\n height,\n width\n } = nodeRect;\n return isVertical ? height : width;\n }\n function getStartEdge() {\n if (isVertical) return 'top';\n return isRightToLeft ? 'right' : 'left';\n }\n function getEndEdge() {\n if (isVertical) return 'bottom';\n return isRightToLeft ? 'left' : 'right';\n }\n function direction(n) {\n return n * sign;\n }\n const self = {\n scroll,\n cross,\n startEdge,\n endEdge,\n measureSize,\n direction\n };\n return self;\n}\n\nfunction Limit(min = 0, max = 0) {\n const length = mathAbs(min - max);\n function reachedMin(n) {\n return n < min;\n }\n function reachedMax(n) {\n return n > max;\n }\n function reachedAny(n) {\n return reachedMin(n) || reachedMax(n);\n }\n function constrain(n) {\n if (!reachedAny(n)) return n;\n return reachedMin(n) ? min : max;\n }\n function removeOffset(n) {\n if (!length) return n;\n return n - length * Math.ceil((n - max) / length);\n }\n const self = {\n length,\n max,\n min,\n constrain,\n reachedAny,\n reachedMax,\n reachedMin,\n removeOffset\n };\n return self;\n}\n\nfunction Counter(max, start, loop) {\n const {\n constrain\n } = Limit(0, max);\n const loopEnd = max + 1;\n let counter = withinLimit(start);\n function withinLimit(n) {\n return !loop ? constrain(n) : mathAbs((loopEnd + n) % loopEnd);\n }\n function get() {\n return counter;\n }\n function set(n) {\n counter = withinLimit(n);\n return self;\n }\n function add(n) {\n return clone().set(get() + n);\n }\n function clone() {\n return Counter(max, get(), loop);\n }\n const self = {\n get,\n set,\n add,\n clone\n };\n return self;\n}\n\nfunction DragHandler(axis, rootNode, ownerDocument, ownerWindow, target, dragTracker, location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, baseFriction, watchDrag) {\n const {\n cross: crossAxis,\n direction\n } = axis;\n const focusNodes = ['INPUT', 'SELECT', 'TEXTAREA'];\n const nonPassiveEvent = {\n passive: false\n };\n const initEvents = EventStore();\n const dragEvents = EventStore();\n const goToNextThreshold = Limit(50, 225).constrain(percentOfView.measure(20));\n const snapForceBoost = {\n mouse: 300,\n touch: 400\n };\n const freeForceBoost = {\n mouse: 500,\n touch: 600\n };\n const baseSpeed = dragFree ? 43 : 25;\n let isMoving = false;\n let startScroll = 0;\n let startCross = 0;\n let pointerIsDown = false;\n let preventScroll = false;\n let preventClick = false;\n let isMouse = false;\n function init(emblaApi) {\n if (!watchDrag) return;\n function downIfAllowed(evt) {\n if (isBoolean(watchDrag) || watchDrag(emblaApi, evt)) down(evt);\n }\n const node = rootNode;\n initEvents.add(node, 'dragstart', evt => evt.preventDefault(), nonPassiveEvent).add(node, 'touchmove', () => undefined, nonPassiveEvent).add(node, 'touchend', () => undefined).add(node, 'touchstart', downIfAllowed).add(node, 'mousedown', downIfAllowed).add(node, 'touchcancel', up).add(node, 'contextmenu', up).add(node, 'click', click, true);\n }\n function destroy() {\n initEvents.clear();\n dragEvents.clear();\n }\n function addDragEvents() {\n const node = isMouse ? ownerDocument : rootNode;\n dragEvents.add(node, 'touchmove', move, nonPassiveEvent).add(node, 'touchend', up).add(node, 'mousemove', move, nonPassiveEvent).add(node, 'mouseup', up);\n }\n function isFocusNode(node) {\n const nodeName = node.nodeName || '';\n return focusNodes.includes(nodeName);\n }\n function forceBoost() {\n const boost = dragFree ? freeForceBoost : snapForceBoost;\n const type = isMouse ? 'mouse' : 'touch';\n return boost[type];\n }\n function allowedForce(force, targetChanged) {\n const next = index.add(mathSign(force) * -1);\n const baseForce = scrollTarget.byDistance(force, !dragFree).distance;\n if (dragFree || mathAbs(force) < goToNextThreshold) return baseForce;\n if (skipSnaps && targetChanged) return baseForce * 0.5;\n return scrollTarget.byIndex(next.get(), 0).distance;\n }\n function down(evt) {\n const isMouseEvt = isMouseEvent(evt, ownerWindow);\n isMouse = isMouseEvt;\n preventClick = dragFree && isMouseEvt && !evt.buttons && isMoving;\n isMoving = deltaAbs(target.get(), location.get()) >= 2;\n if (isMouseEvt && evt.button !== 0) return;\n if (isFocusNode(evt.target)) return;\n pointerIsDown = true;\n dragTracker.pointerDown(evt);\n scrollBody.useFriction(0).useDuration(0);\n target.set(location);\n addDragEvents();\n startScroll = dragTracker.readPoint(evt);\n startCross = dragTracker.readPoint(evt, crossAxis);\n eventHandler.emit('pointerDown');\n }\n function move(evt) {\n const isTouchEvt = !isMouseEvent(evt, ownerWindow);\n if (isTouchEvt && evt.touches.length >= 2) return up(evt);\n const lastScroll = dragTracker.readPoint(evt);\n const lastCross = dragTracker.readPoint(evt, crossAxis);\n const diffScroll = deltaAbs(lastScroll, startScroll);\n const diffCross = deltaAbs(lastCross, startCross);\n if (!preventScroll && !isMouse) {\n if (!evt.cancelable) return up(evt);\n preventScroll = diffScroll > diffCross;\n if (!preventScroll) return up(evt);\n }\n const diff = dragTracker.pointerMove(evt);\n if (diffScroll > dragThreshold) preventClick = true;\n scrollBody.useFriction(0.3).useDuration(0.75);\n animation.start();\n target.add(direction(diff));\n evt.preventDefault();\n }\n function up(evt) {\n const currentLocation = scrollTarget.byDistance(0, false);\n const targetChanged = currentLocation.index !== index.get();\n const rawForce = dragTracker.pointerUp(evt) * forceBoost();\n const force = allowedForce(direction(rawForce), targetChanged);\n const forceFactor = factorAbs(rawForce, force);\n const speed = baseSpeed - 10 * forceFactor;\n const friction = baseFriction + forceFactor / 50;\n preventScroll = false;\n pointerIsDown = false;\n dragEvents.clear();\n scrollBody.useDuration(speed).useFriction(friction);\n scrollTo.distance(force, !dragFree);\n isMouse = false;\n eventHandler.emit('pointerUp');\n }\n function click(evt) {\n if (preventClick) {\n evt.stopPropagation();\n evt.preventDefault();\n preventClick = false;\n }\n }\n function pointerDown() {\n return pointerIsDown;\n }\n const self = {\n init,\n destroy,\n pointerDown\n };\n return self;\n}\n\nfunction DragTracker(axis, ownerWindow) {\n const logInterval = 170;\n let startEvent;\n let lastEvent;\n function readTime(evt) {\n return evt.timeStamp;\n }\n function readPoint(evt, evtAxis) {\n const property = evtAxis || axis.scroll;\n const coord = `client${property === 'x' ? 'X' : 'Y'}`;\n return (isMouseEvent(evt, ownerWindow) ? evt : evt.touches[0])[coord];\n }\n function pointerDown(evt) {\n startEvent = evt;\n lastEvent = evt;\n return readPoint(evt);\n }\n function pointerMove(evt) {\n const diff = readPoint(evt) - readPoint(lastEvent);\n const expired = readTime(evt) - readTime(startEvent) > logInterval;\n lastEvent = evt;\n if (expired) startEvent = evt;\n return diff;\n }\n function pointerUp(evt) {\n if (!startEvent || !lastEvent) return 0;\n const diffDrag = readPoint(lastEvent) - readPoint(startEvent);\n const diffTime = readTime(evt) - readTime(startEvent);\n const expired = readTime(evt) - readTime(lastEvent) > logInterval;\n const force = diffDrag / diffTime;\n const isFlick = diffTime && !expired && mathAbs(force) > 0.1;\n return isFlick ? force : 0;\n }\n const self = {\n pointerDown,\n pointerMove,\n pointerUp,\n readPoint\n };\n return self;\n}\n\nfunction NodeRects() {\n function measure(node) {\n const {\n offsetTop,\n offsetLeft,\n offsetWidth,\n offsetHeight\n } = node;\n const offset = {\n top: offsetTop,\n right: offsetLeft + offsetWidth,\n bottom: offsetTop + offsetHeight,\n left: offsetLeft,\n width: offsetWidth,\n height: offsetHeight\n };\n return offset;\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction PercentOfView(viewSize) {\n function measure(n) {\n return viewSize * (n / 100);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects) {\n const observeNodes = [container].concat(slides);\n let resizeObserver;\n let containerSize;\n let slideSizes = [];\n let destroyed = false;\n function readSize(node) {\n return axis.measureSize(nodeRects.measure(node));\n }\n function init(emblaApi) {\n if (!watchResize) return;\n containerSize = readSize(container);\n slideSizes = slides.map(readSize);\n function defaultCallback(entries) {\n for (const entry of entries) {\n if (destroyed) return;\n const isContainer = entry.target === container;\n const slideIndex = slides.indexOf(entry.target);\n const lastSize = isContainer ? containerSize : slideSizes[slideIndex];\n const newSize = readSize(isContainer ? container : slides[slideIndex]);\n const diffSize = mathAbs(newSize - lastSize);\n if (diffSize >= 0.5) {\n emblaApi.reInit();\n eventHandler.emit('resize');\n break;\n }\n }\n }\n resizeObserver = new ResizeObserver(entries => {\n if (isBoolean(watchResize) || watchResize(emblaApi, entries)) {\n defaultCallback(entries);\n }\n });\n ownerWindow.requestAnimationFrame(() => {\n observeNodes.forEach(node => resizeObserver.observe(node));\n });\n }\n function destroy() {\n destroyed = true;\n if (resizeObserver) resizeObserver.disconnect();\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction ScrollBody(location, offsetLocation, previousLocation, target, baseDuration, baseFriction) {\n let bodyVelocity = 0;\n let scrollDirection = 0;\n let scrollDuration = baseDuration;\n let scrollFriction = baseFriction;\n let rawLocation = location.get();\n let rawLocationPrevious = 0;\n function seek(timeStep) {\n const fixedDeltaTimeSeconds = timeStep / 1000;\n const duration = scrollDuration * fixedDeltaTimeSeconds;\n const diff = target.get() - location.get();\n const isInstant = !scrollDuration;\n let directionDiff = 0;\n if (isInstant) {\n bodyVelocity = 0;\n previousLocation.set(target);\n location.set(target);\n directionDiff = diff;\n } else {\n previousLocation.set(location);\n bodyVelocity += diff / duration;\n bodyVelocity *= scrollFriction;\n rawLocation += bodyVelocity;\n location.add(bodyVelocity * fixedDeltaTimeSeconds);\n directionDiff = rawLocation - rawLocationPrevious;\n }\n scrollDirection = mathSign(directionDiff);\n rawLocationPrevious = rawLocation;\n return self;\n }\n function settled() {\n const diff = target.get() - offsetLocation.get();\n return mathAbs(diff) < 0.001;\n }\n function duration() {\n return scrollDuration;\n }\n function direction() {\n return scrollDirection;\n }\n function velocity() {\n return bodyVelocity;\n }\n function useBaseDuration() {\n return useDuration(baseDuration);\n }\n function useBaseFriction() {\n return useFriction(baseFriction);\n }\n function useDuration(n) {\n scrollDuration = n;\n return self;\n }\n function useFriction(n) {\n scrollFriction = n;\n return self;\n }\n const self = {\n direction,\n duration,\n velocity,\n seek,\n settled,\n useBaseFriction,\n useBaseDuration,\n useFriction,\n useDuration\n };\n return self;\n}\n\nfunction ScrollBounds(limit, location, target, scrollBody, percentOfView) {\n const pullBackThreshold = percentOfView.measure(10);\n const edgeOffsetTolerance = percentOfView.measure(50);\n const frictionLimit = Limit(0.1, 0.99);\n let disabled = false;\n function shouldConstrain() {\n if (disabled) return false;\n if (!limit.reachedAny(target.get())) return false;\n if (!limit.reachedAny(location.get())) return false;\n return true;\n }\n function constrain(pointerDown) {\n if (!shouldConstrain()) return;\n const edge = limit.reachedMin(location.get()) ? 'min' : 'max';\n const diffToEdge = mathAbs(limit[edge] - location.get());\n const diffToTarget = target.get() - location.get();\n const friction = frictionLimit.constrain(diffToEdge / edgeOffsetTolerance);\n target.subtract(diffToTarget * friction);\n if (!pointerDown && mathAbs(diffToTarget) < pullBackThreshold) {\n target.set(limit.constrain(target.get()));\n scrollBody.useDuration(25).useBaseFriction();\n }\n }\n function toggleActive(active) {\n disabled = !active;\n }\n const self = {\n shouldConstrain,\n constrain,\n toggleActive\n };\n return self;\n}\n\nfunction ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance) {\n const scrollBounds = Limit(-contentSize + viewSize, 0);\n const snapsBounded = measureBounded();\n const scrollContainLimit = findScrollContainLimit();\n const snapsContained = measureContained();\n function usePixelTolerance(bound, snap) {\n return deltaAbs(bound, snap) < 1;\n }\n function findScrollContainLimit() {\n const startSnap = snapsBounded[0];\n const endSnap = arrayLast(snapsBounded);\n const min = snapsBounded.lastIndexOf(startSnap);\n const max = snapsBounded.indexOf(endSnap) + 1;\n return Limit(min, max);\n }\n function measureBounded() {\n return snapsAligned.map((snapAligned, index) => {\n const {\n min,\n max\n } = scrollBounds;\n const snap = scrollBounds.constrain(snapAligned);\n const isFirst = !index;\n const isLast = arrayIsLastIndex(snapsAligned, index);\n if (isFirst) return max;\n if (isLast) return min;\n if (usePixelTolerance(min, snap)) return min;\n if (usePixelTolerance(max, snap)) return max;\n return snap;\n }).map(scrollBound => parseFloat(scrollBound.toFixed(3)));\n }\n function measureContained() {\n if (contentSize <= viewSize + pixelTolerance) return [scrollBounds.max];\n if (containScroll === 'keepSnaps') return snapsBounded;\n const {\n min,\n max\n } = scrollContainLimit;\n return snapsBounded.slice(min, max);\n }\n const self = {\n snapsContained,\n scrollContainLimit\n };\n return self;\n}\n\nfunction ScrollLimit(contentSize, scrollSnaps, loop) {\n const max = scrollSnaps[0];\n const min = loop ? max - contentSize : arrayLast(scrollSnaps);\n const limit = Limit(min, max);\n const self = {\n limit\n };\n return self;\n}\n\nfunction ScrollLooper(contentSize, limit, location, vectors) {\n const jointSafety = 0.1;\n const min = limit.min + jointSafety;\n const max = limit.max + jointSafety;\n const {\n reachedMin,\n reachedMax\n } = Limit(min, max);\n function shouldLoop(direction) {\n if (direction === 1) return reachedMax(location.get());\n if (direction === -1) return reachedMin(location.get());\n return false;\n }\n function loop(direction) {\n if (!shouldLoop(direction)) return;\n const loopDistance = contentSize * (direction * -1);\n vectors.forEach(v => v.add(loopDistance));\n }\n const self = {\n loop\n };\n return self;\n}\n\nfunction ScrollProgress(limit) {\n const {\n max,\n length\n } = limit;\n function get(n) {\n const currentLocation = n - max;\n return length ? currentLocation / -length : 0;\n }\n const self = {\n get\n };\n return self;\n}\n\nfunction ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll) {\n const {\n startEdge,\n endEdge\n } = axis;\n const {\n groupSlides\n } = slidesToScroll;\n const alignments = measureSizes().map(alignment.measure);\n const snaps = measureUnaligned();\n const snapsAligned = measureAligned();\n function measureSizes() {\n return groupSlides(slideRects).map(rects => arrayLast(rects)[endEdge] - rects[0][startEdge]).map(mathAbs);\n }\n function measureUnaligned() {\n return slideRects.map(rect => containerRect[startEdge] - rect[startEdge]).map(snap => -mathAbs(snap));\n }\n function measureAligned() {\n return groupSlides(snaps).map(g => g[0]).map((snap, index) => snap + alignments[index]);\n }\n const self = {\n snaps,\n snapsAligned\n };\n return self;\n}\n\nfunction SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes) {\n const {\n groupSlides\n } = slidesToScroll;\n const {\n min,\n max\n } = scrollContainLimit;\n const slideRegistry = createSlideRegistry();\n function createSlideRegistry() {\n const groupedSlideIndexes = groupSlides(slideIndexes);\n const doNotContain = !containSnaps || containScroll === 'keepSnaps';\n if (scrollSnaps.length === 1) return [slideIndexes];\n if (doNotContain) return groupedSlideIndexes;\n return groupedSlideIndexes.slice(min, max).map((group, index, groups) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(groups, index);\n if (isFirst) {\n const range = arrayLast(groups[0]) + 1;\n return arrayFromNumber(range);\n }\n if (isLast) {\n const range = arrayLastIndex(slideIndexes) - arrayLast(groups)[0] + 1;\n return arrayFromNumber(range, arrayLast(groups)[0]);\n }\n return group;\n });\n }\n const self = {\n slideRegistry\n };\n return self;\n}\n\nfunction ScrollTarget(loop, scrollSnaps, contentSize, limit, targetVector) {\n const {\n reachedAny,\n removeOffset,\n constrain\n } = limit;\n function minDistance(distances) {\n return distances.concat().sort((a, b) => mathAbs(a) - mathAbs(b))[0];\n }\n function findTargetSnap(target) {\n const distance = loop ? removeOffset(target) : constrain(target);\n const ascDiffsToSnaps = scrollSnaps.map((snap, index) => ({\n diff: shortcut(snap - distance, 0),\n index\n })).sort((d1, d2) => mathAbs(d1.diff) - mathAbs(d2.diff));\n const {\n index\n } = ascDiffsToSnaps[0];\n return {\n index,\n distance\n };\n }\n function shortcut(target, direction) {\n const targets = [target, target + contentSize, target - contentSize];\n if (!loop) return target;\n if (!direction) return minDistance(targets);\n const matchingTargets = targets.filter(t => mathSign(t) === direction);\n if (matchingTargets.length) return minDistance(matchingTargets);\n return arrayLast(targets) - contentSize;\n }\n function byIndex(index, direction) {\n const diffToSnap = scrollSnaps[index] - targetVector.get();\n const distance = shortcut(diffToSnap, direction);\n return {\n index,\n distance\n };\n }\n function byDistance(distance, snap) {\n const target = targetVector.get() + distance;\n const {\n index,\n distance: targetSnapDistance\n } = findTargetSnap(target);\n const reachedBound = !loop && reachedAny(target);\n if (!snap || reachedBound) return {\n index,\n distance\n };\n const diffToSnap = scrollSnaps[index] - targetSnapDistance;\n const snapDistance = distance + shortcut(diffToSnap, 0);\n return {\n index,\n distance: snapDistance\n };\n }\n const self = {\n byDistance,\n byIndex,\n shortcut\n };\n return self;\n}\n\nfunction ScrollTo(animation, indexCurrent, indexPrevious, scrollBody, scrollTarget, targetVector, eventHandler) {\n function scrollTo(target) {\n const distanceDiff = target.distance;\n const indexDiff = target.index !== indexCurrent.get();\n targetVector.add(distanceDiff);\n if (distanceDiff) {\n if (scrollBody.duration()) {\n animation.start();\n } else {\n animation.update();\n animation.render(1);\n animation.update();\n }\n }\n if (indexDiff) {\n indexPrevious.set(indexCurrent.get());\n indexCurrent.set(target.index);\n eventHandler.emit('select');\n }\n }\n function distance(n, snap) {\n const target = scrollTarget.byDistance(n, snap);\n scrollTo(target);\n }\n function index(n, direction) {\n const targetIndex = indexCurrent.clone().set(n);\n const target = scrollTarget.byIndex(targetIndex.get(), direction);\n scrollTo(target);\n }\n const self = {\n distance,\n index\n };\n return self;\n}\n\nfunction SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus) {\n const focusListenerOptions = {\n passive: true,\n capture: true\n };\n let lastTabPressTime = 0;\n function init(emblaApi) {\n if (!watchFocus) return;\n function defaultCallback(index) {\n const nowTime = new Date().getTime();\n const diffTime = nowTime - lastTabPressTime;\n if (diffTime > 10) return;\n eventHandler.emit('slideFocusStart');\n root.scrollLeft = 0;\n const group = slideRegistry.findIndex(group => group.includes(index));\n if (!isNumber(group)) return;\n scrollBody.useDuration(0);\n scrollTo.index(group, 0);\n eventHandler.emit('slideFocus');\n }\n eventStore.add(document, 'keydown', registerTabPress, false);\n slides.forEach((slide, slideIndex) => {\n eventStore.add(slide, 'focus', evt => {\n if (isBoolean(watchFocus) || watchFocus(emblaApi, evt)) {\n defaultCallback(slideIndex);\n }\n }, focusListenerOptions);\n });\n }\n function registerTabPress(event) {\n if (event.code === 'Tab') lastTabPressTime = new Date().getTime();\n }\n const self = {\n init\n };\n return self;\n}\n\nfunction Vector1D(initialValue) {\n let value = initialValue;\n function get() {\n return value;\n }\n function set(n) {\n value = normalizeInput(n);\n }\n function add(n) {\n value += normalizeInput(n);\n }\n function subtract(n) {\n value -= normalizeInput(n);\n }\n function normalizeInput(n) {\n return isNumber(n) ? n : n.get();\n }\n const self = {\n get,\n set,\n add,\n subtract\n };\n return self;\n}\n\nfunction Translate(axis, container) {\n const translate = axis.scroll === 'x' ? x : y;\n const containerStyle = container.style;\n let disabled = false;\n function x(n) {\n return `translate3d(${n}px,0px,0px)`;\n }\n function y(n) {\n return `translate3d(0px,${n}px,0px)`;\n }\n function to(target) {\n if (disabled) return;\n containerStyle.transform = translate(axis.direction(target));\n }\n function toggleActive(active) {\n disabled = !active;\n }\n function clear() {\n if (disabled) return;\n containerStyle.transform = '';\n if (!container.getAttribute('style')) container.removeAttribute('style');\n }\n const self = {\n clear,\n to,\n toggleActive\n };\n return self;\n}\n\nfunction SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, location, slides) {\n const roundingSafety = 0.5;\n const ascItems = arrayKeys(slideSizesWithGaps);\n const descItems = arrayKeys(slideSizesWithGaps).reverse();\n const loopPoints = startPoints().concat(endPoints());\n function removeSlideSizes(indexes, from) {\n return indexes.reduce((a, i) => {\n return a - slideSizesWithGaps[i];\n }, from);\n }\n function slidesInGap(indexes, gap) {\n return indexes.reduce((a, i) => {\n const remainingGap = removeSlideSizes(a, gap);\n return remainingGap > 0 ? a.concat([i]) : a;\n }, []);\n }\n function findSlideBounds(offset) {\n return snaps.map((snap, index) => ({\n start: snap - slideSizes[index] + roundingSafety + offset,\n end: snap + viewSize - roundingSafety + offset\n }));\n }\n function findLoopPoints(indexes, offset, isEndEdge) {\n const slideBounds = findSlideBounds(offset);\n return indexes.map(index => {\n const initial = isEndEdge ? 0 : -contentSize;\n const altered = isEndEdge ? contentSize : 0;\n const boundEdge = isEndEdge ? 'end' : 'start';\n const loopPoint = slideBounds[index][boundEdge];\n return {\n index,\n loopPoint,\n slideLocation: Vector1D(-1),\n translate: Translate(axis, slides[index]),\n target: () => location.get() > loopPoint ? initial : altered\n };\n });\n }\n function startPoints() {\n const gap = scrollSnaps[0];\n const indexes = slidesInGap(descItems, gap);\n return findLoopPoints(indexes, contentSize, false);\n }\n function endPoints() {\n const gap = viewSize - scrollSnaps[0] - 1;\n const indexes = slidesInGap(ascItems, gap);\n return findLoopPoints(indexes, -contentSize, true);\n }\n function canLoop() {\n return loopPoints.every(({\n index\n }) => {\n const otherIndexes = ascItems.filter(i => i !== index);\n return removeSlideSizes(otherIndexes, viewSize) <= 0.1;\n });\n }\n function loop() {\n loopPoints.forEach(loopPoint => {\n const {\n target,\n translate,\n slideLocation\n } = loopPoint;\n const shiftLocation = target();\n if (shiftLocation === slideLocation.get()) return;\n translate.to(shiftLocation);\n slideLocation.set(shiftLocation);\n });\n }\n function clear() {\n loopPoints.forEach(loopPoint => loopPoint.translate.clear());\n }\n const self = {\n canLoop,\n clear,\n loop,\n loopPoints\n };\n return self;\n}\n\nfunction SlidesHandler(container, eventHandler, watchSlides) {\n let mutationObserver;\n let destroyed = false;\n function init(emblaApi) {\n if (!watchSlides) return;\n function defaultCallback(mutations) {\n for (const mutation of mutations) {\n if (mutation.type === 'childList') {\n emblaApi.reInit();\n eventHandler.emit('slidesChanged');\n break;\n }\n }\n }\n mutationObserver = new MutationObserver(mutations => {\n if (destroyed) return;\n if (isBoolean(watchSlides) || watchSlides(emblaApi, mutations)) {\n defaultCallback(mutations);\n }\n });\n mutationObserver.observe(container, {\n childList: true\n });\n }\n function destroy() {\n if (mutationObserver) mutationObserver.disconnect();\n destroyed = true;\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction SlidesInView(container, slides, eventHandler, threshold) {\n const intersectionEntryMap = {};\n let inViewCache = null;\n let notInViewCache = null;\n let intersectionObserver;\n let destroyed = false;\n function init() {\n intersectionObserver = new IntersectionObserver(entries => {\n if (destroyed) return;\n entries.forEach(entry => {\n const index = slides.indexOf(entry.target);\n intersectionEntryMap[index] = entry;\n });\n inViewCache = null;\n notInViewCache = null;\n eventHandler.emit('slidesInView');\n }, {\n root: container.parentElement,\n threshold\n });\n slides.forEach(slide => intersectionObserver.observe(slide));\n }\n function destroy() {\n if (intersectionObserver) intersectionObserver.disconnect();\n destroyed = true;\n }\n function createInViewList(inView) {\n return objectKeys(intersectionEntryMap).reduce((list, slideIndex) => {\n const index = parseInt(slideIndex);\n const {\n isIntersecting\n } = intersectionEntryMap[index];\n const inViewMatch = inView && isIntersecting;\n const notInViewMatch = !inView && !isIntersecting;\n if (inViewMatch || notInViewMatch) list.push(index);\n return list;\n }, []);\n }\n function get(inView = true) {\n if (inView && inViewCache) return inViewCache;\n if (!inView && notInViewCache) return notInViewCache;\n const slideIndexes = createInViewList(inView);\n if (inView) inViewCache = slideIndexes;\n if (!inView) notInViewCache = slideIndexes;\n return slideIndexes;\n }\n const self = {\n init,\n destroy,\n get\n };\n return self;\n}\n\nfunction SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow) {\n const {\n measureSize,\n startEdge,\n endEdge\n } = axis;\n const withEdgeGap = slideRects[0] && readEdgeGap;\n const startGap = measureStartGap();\n const endGap = measureEndGap();\n const slideSizes = slideRects.map(measureSize);\n const slideSizesWithGaps = measureWithGaps();\n function measureStartGap() {\n if (!withEdgeGap) return 0;\n const slideRect = slideRects[0];\n return mathAbs(containerRect[startEdge] - slideRect[startEdge]);\n }\n function measureEndGap() {\n if (!withEdgeGap) return 0;\n const style = ownerWindow.getComputedStyle(arrayLast(slides));\n return parseFloat(style.getPropertyValue(`margin-${endEdge}`));\n }\n function measureWithGaps() {\n return slideRects.map((rect, index, rects) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(rects, index);\n if (isFirst) return slideSizes[index] + startGap;\n if (isLast) return slideSizes[index] + endGap;\n return rects[index + 1][startEdge] - rect[startEdge];\n }).map(mathAbs);\n }\n const self = {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n };\n return self;\n}\n\nfunction SlidesToScroll(axis, viewSize, slidesToScroll, loop, containerRect, slideRects, startGap, endGap, pixelTolerance) {\n const {\n startEdge,\n endEdge,\n direction\n } = axis;\n const groupByNumber = isNumber(slidesToScroll);\n function byNumber(array, groupSize) {\n return arrayKeys(array).filter(i => i % groupSize === 0).map(i => array.slice(i, i + groupSize));\n }\n function bySize(array) {\n if (!array.length) return [];\n return arrayKeys(array).reduce((groups, rectB, index) => {\n const rectA = arrayLast(groups) || 0;\n const isFirst = rectA === 0;\n const isLast = rectB === arrayLastIndex(array);\n const edgeA = containerRect[startEdge] - slideRects[rectA][startEdge];\n const edgeB = containerRect[startEdge] - slideRects[rectB][endEdge];\n const gapA = !loop && isFirst ? direction(startGap) : 0;\n const gapB = !loop && isLast ? direction(endGap) : 0;\n const chunkSize = mathAbs(edgeB - gapB - (edgeA + gapA));\n if (index && chunkSize > viewSize + pixelTolerance) groups.push(rectB);\n if (isLast) groups.push(array.length);\n return groups;\n }, []).map((currentSize, index, groups) => {\n const previousSize = Math.max(groups[index - 1] || 0);\n return array.slice(previousSize, currentSize);\n });\n }\n function groupSlides(array) {\n return groupByNumber ? byNumber(array, slidesToScroll) : bySize(array);\n }\n const self = {\n groupSlides\n };\n return self;\n}\n\nfunction Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler) {\n // Options\n const {\n align,\n axis: scrollAxis,\n direction,\n startIndex,\n loop,\n duration,\n dragFree,\n dragThreshold,\n inViewThreshold,\n slidesToScroll: groupSlides,\n skipSnaps,\n containScroll,\n watchResize,\n watchSlides,\n watchDrag,\n watchFocus\n } = options;\n // Measurements\n const pixelTolerance = 2;\n const nodeRects = NodeRects();\n const containerRect = nodeRects.measure(container);\n const slideRects = slides.map(nodeRects.measure);\n const axis = Axis(scrollAxis, direction);\n const viewSize = axis.measureSize(containerRect);\n const percentOfView = PercentOfView(viewSize);\n const alignment = Alignment(align, viewSize);\n const containSnaps = !loop && !!containScroll;\n const readEdgeGap = loop || !!containScroll;\n const {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n } = SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow);\n const slidesToScroll = SlidesToScroll(axis, viewSize, groupSlides, loop, containerRect, slideRects, startGap, endGap, pixelTolerance);\n const {\n snaps,\n snapsAligned\n } = ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll);\n const contentSize = -arrayLast(snaps) + arrayLast(slideSizesWithGaps);\n const {\n snapsContained,\n scrollContainLimit\n } = ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance);\n const scrollSnaps = containSnaps ? snapsContained : snapsAligned;\n const {\n limit\n } = ScrollLimit(contentSize, scrollSnaps, loop);\n // Indexes\n const index = Counter(arrayLastIndex(scrollSnaps), startIndex, loop);\n const indexPrevious = index.clone();\n const slideIndexes = arrayKeys(slides);\n // Animation\n const update = ({\n dragHandler,\n scrollBody,\n scrollBounds,\n options: {\n loop\n }\n }, timeStep) => {\n if (!loop) scrollBounds.constrain(dragHandler.pointerDown());\n scrollBody.seek(timeStep);\n };\n const render = ({\n scrollBody,\n translate,\n location,\n offsetLocation,\n scrollLooper,\n slideLooper,\n dragHandler,\n animation,\n eventHandler,\n scrollBounds,\n options: {\n loop\n }\n }, lagOffset) => {\n const shouldSettle = scrollBody.settled();\n const withinBounds = !scrollBounds.shouldConstrain();\n const hasSettled = loop ? shouldSettle : shouldSettle && withinBounds;\n if (hasSettled && !dragHandler.pointerDown()) {\n animation.stop();\n eventHandler.emit('settle');\n }\n if (!hasSettled) eventHandler.emit('scroll');\n const interpolatedLocation = location.get() * lagOffset + previousLocation.get() * (1 - lagOffset);\n offsetLocation.set(interpolatedLocation);\n if (loop) {\n scrollLooper.loop(scrollBody.direction());\n slideLooper.loop();\n }\n translate.to(offsetLocation.get());\n };\n const animation = Animations(ownerDocument, ownerWindow, timeStep => update(engine, timeStep), lagOffset => render(engine, lagOffset));\n // Shared\n const friction = 0.68;\n const startLocation = scrollSnaps[index.get()];\n const location = Vector1D(startLocation);\n const previousLocation = Vector1D(startLocation);\n const offsetLocation = Vector1D(startLocation);\n const target = Vector1D(startLocation);\n const scrollBody = ScrollBody(location, offsetLocation, previousLocation, target, duration, friction);\n const scrollTarget = ScrollTarget(loop, scrollSnaps, contentSize, limit, target);\n const scrollTo = ScrollTo(animation, index, indexPrevious, scrollBody, scrollTarget, target, eventHandler);\n const scrollProgress = ScrollProgress(limit);\n const eventStore = EventStore();\n const slidesInView = SlidesInView(container, slides, eventHandler, inViewThreshold);\n const {\n slideRegistry\n } = SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes);\n const slideFocus = SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus);\n // Engine\n const engine = {\n ownerDocument,\n ownerWindow,\n eventHandler,\n containerRect,\n slideRects,\n animation,\n axis,\n dragHandler: DragHandler(axis, root, ownerDocument, ownerWindow, target, DragTracker(axis, ownerWindow), location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, friction, watchDrag),\n eventStore,\n percentOfView,\n index,\n indexPrevious,\n limit,\n location,\n offsetLocation,\n previousLocation,\n options,\n resizeHandler: ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects),\n scrollBody,\n scrollBounds: ScrollBounds(limit, offsetLocation, target, scrollBody, percentOfView),\n scrollLooper: ScrollLooper(contentSize, limit, offsetLocation, [location, offsetLocation, previousLocation, target]),\n scrollProgress,\n scrollSnapList: scrollSnaps.map(scrollProgress.get),\n scrollSnaps,\n scrollTarget,\n scrollTo,\n slideLooper: SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, offsetLocation, slides),\n slideFocus,\n slidesHandler: SlidesHandler(container, eventHandler, watchSlides),\n slidesInView,\n slideIndexes,\n slideRegistry,\n slidesToScroll,\n target,\n translate: Translate(axis, container)\n };\n return engine;\n}\n\nfunction EventHandler() {\n let listeners = {};\n let api;\n function init(emblaApi) {\n api = emblaApi;\n }\n function getListeners(evt) {\n return listeners[evt] || [];\n }\n function emit(evt) {\n getListeners(evt).forEach(e => e(api, evt));\n return self;\n }\n function on(evt, cb) {\n listeners[evt] = getListeners(evt).concat([cb]);\n return self;\n }\n function off(evt, cb) {\n listeners[evt] = getListeners(evt).filter(e => e !== cb);\n return self;\n }\n function clear() {\n listeners = {};\n }\n const self = {\n init,\n emit,\n off,\n on,\n clear\n };\n return self;\n}\n\nconst defaultOptions = {\n align: 'center',\n axis: 'x',\n container: null,\n slides: null,\n containScroll: 'trimSnaps',\n direction: 'ltr',\n slidesToScroll: 1,\n inViewThreshold: 0,\n breakpoints: {},\n dragFree: false,\n dragThreshold: 10,\n loop: false,\n skipSnaps: false,\n duration: 25,\n startIndex: 0,\n active: true,\n watchDrag: true,\n watchResize: true,\n watchSlides: true,\n watchFocus: true\n};\n\nfunction OptionsHandler(ownerWindow) {\n function mergeOptions(optionsA, optionsB) {\n return objectsMergeDeep(optionsA, optionsB || {});\n }\n function optionsAtMedia(options) {\n const optionsAtMedia = options.breakpoints || {};\n const matchedMediaOptions = objectKeys(optionsAtMedia).filter(media => ownerWindow.matchMedia(media).matches).map(media => optionsAtMedia[media]).reduce((a, mediaOption) => mergeOptions(a, mediaOption), {});\n return mergeOptions(options, matchedMediaOptions);\n }\n function optionsMediaQueries(optionsList) {\n return optionsList.map(options => objectKeys(options.breakpoints || {})).reduce((acc, mediaQueries) => acc.concat(mediaQueries), []).map(ownerWindow.matchMedia);\n }\n const self = {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n };\n return self;\n}\n\nfunction PluginsHandler(optionsHandler) {\n let activePlugins = [];\n function init(emblaApi, plugins) {\n activePlugins = plugins.filter(({\n options\n }) => optionsHandler.optionsAtMedia(options).active !== false);\n activePlugins.forEach(plugin => plugin.init(emblaApi, optionsHandler));\n return plugins.reduce((map, plugin) => Object.assign(map, {\n [plugin.name]: plugin\n }), {});\n }\n function destroy() {\n activePlugins = activePlugins.filter(plugin => plugin.destroy());\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction EmblaCarousel(root, userOptions, userPlugins) {\n const ownerDocument = root.ownerDocument;\n const ownerWindow = ownerDocument.defaultView;\n const optionsHandler = OptionsHandler(ownerWindow);\n const pluginsHandler = PluginsHandler(optionsHandler);\n const mediaHandlers = EventStore();\n const eventHandler = EventHandler();\n const {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n } = optionsHandler;\n const {\n on,\n off,\n emit\n } = eventHandler;\n const reInit = reActivate;\n let destroyed = false;\n let engine;\n let optionsBase = mergeOptions(defaultOptions, EmblaCarousel.globalOptions);\n let options = mergeOptions(optionsBase);\n let pluginList = [];\n let pluginApis;\n let container;\n let slides;\n function storeElements() {\n const {\n container: userContainer,\n slides: userSlides\n } = options;\n const customContainer = isString(userContainer) ? root.querySelector(userContainer) : userContainer;\n container = customContainer || root.children[0];\n const customSlides = isString(userSlides) ? container.querySelectorAll(userSlides) : userSlides;\n slides = [].slice.call(customSlides || container.children);\n }\n function createEngine(options) {\n const engine = Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler);\n if (options.loop && !engine.slideLooper.canLoop()) {\n const optionsWithoutLoop = Object.assign({}, options, {\n loop: false\n });\n return createEngine(optionsWithoutLoop);\n }\n return engine;\n }\n function activate(withOptions, withPlugins) {\n if (destroyed) return;\n optionsBase = mergeOptions(optionsBase, withOptions);\n options = optionsAtMedia(optionsBase);\n pluginList = withPlugins || pluginList;\n storeElements();\n engine = createEngine(options);\n optionsMediaQueries([optionsBase, ...pluginList.map(({\n options\n }) => options)]).forEach(query => mediaHandlers.add(query, 'change', reActivate));\n if (!options.active) return;\n engine.translate.to(engine.location.get());\n engine.animation.init();\n engine.slidesInView.init();\n engine.slideFocus.init(self);\n engine.eventHandler.init(self);\n engine.resizeHandler.init(self);\n engine.slidesHandler.init(self);\n if (engine.options.loop) engine.slideLooper.loop();\n if (container.offsetParent && slides.length) engine.dragHandler.init(self);\n pluginApis = pluginsHandler.init(self, pluginList);\n }\n function reActivate(withOptions, withPlugins) {\n const startIndex = selectedScrollSnap();\n deActivate();\n activate(mergeOptions({\n startIndex\n }, withOptions), withPlugins);\n eventHandler.emit('reInit');\n }\n function deActivate() {\n engine.dragHandler.destroy();\n engine.eventStore.clear();\n engine.translate.clear();\n engine.slideLooper.clear();\n engine.resizeHandler.destroy();\n engine.slidesHandler.destroy();\n engine.slidesInView.destroy();\n engine.animation.destroy();\n pluginsHandler.destroy();\n mediaHandlers.clear();\n }\n function destroy() {\n if (destroyed) return;\n destroyed = true;\n mediaHandlers.clear();\n deActivate();\n eventHandler.emit('destroy');\n eventHandler.clear();\n }\n function scrollTo(index, jump, direction) {\n if (!options.active || destroyed) return;\n engine.scrollBody.useBaseFriction().useDuration(jump === true ? 0 : options.duration);\n engine.scrollTo.index(index, direction || 0);\n }\n function scrollNext(jump) {\n const next = engine.index.add(1).get();\n scrollTo(next, jump, -1);\n }\n function scrollPrev(jump) {\n const prev = engine.index.add(-1).get();\n scrollTo(prev, jump, 1);\n }\n function canScrollNext() {\n const next = engine.index.add(1).get();\n return next !== selectedScrollSnap();\n }\n function canScrollPrev() {\n const prev = engine.index.add(-1).get();\n return prev !== selectedScrollSnap();\n }\n function scrollSnapList() {\n return engine.scrollSnapList;\n }\n function scrollProgress() {\n return engine.scrollProgress.get(engine.location.get());\n }\n function selectedScrollSnap() {\n return engine.index.get();\n }\n function previousScrollSnap() {\n return engine.indexPrevious.get();\n }\n function slidesInView() {\n return engine.slidesInView.get();\n }\n function slidesNotInView() {\n return engine.slidesInView.get(false);\n }\n function plugins() {\n return pluginApis;\n }\n function internalEngine() {\n return engine;\n }\n function rootNode() {\n return root;\n }\n function containerNode() {\n return container;\n }\n function slideNodes() {\n return slides;\n }\n const self = {\n canScrollNext,\n canScrollPrev,\n containerNode,\n internalEngine,\n destroy,\n off,\n on,\n emit,\n plugins,\n previousScrollSnap,\n reInit,\n rootNode,\n scrollNext,\n scrollPrev,\n scrollProgress,\n scrollSnapList,\n scrollTo,\n selectedScrollSnap,\n slideNodes,\n slidesInView,\n slidesNotInView\n };\n activate(userOptions, userPlugins);\n setTimeout(() => eventHandler.emit('init'), 0);\n return self;\n}\nEmblaCarousel.globalOptions = undefined;\n\nexport { EmblaCarousel as default };\n//# sourceMappingURL=embla-carousel.esm.js.map\n"],"names":["duration","index","group","scrollBody","loop","location","offsetLocation","animation","eventHandler","optionsAtMedia","options","engine"],"mappings":"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","x_google_ignoreList":[0]}
@@ -56,7 +56,7 @@ function Autoplay(userOptions = {}) {
56
56
  }
57
57
  }
58
58
  if (options.stopOnFocusIn) {
59
- eventStore.add(container, "focusin", stopTimer);
59
+ emblaApi.on("slideFocusStart", stopTimer);
60
60
  if (!options.stopOnInteraction) {
61
61
  eventStore.add(container, "focusout", startTimer);
62
62
  }
@@ -65,7 +65,7 @@ function Autoplay(userOptions = {}) {
65
65
  if (options.playOnInit && !documentIsHidden()) startTimer();
66
66
  }
67
67
  function destroy() {
68
- emblaApi.off("pointerDown", stopTimer).off("pointerUp", startTimer);
68
+ emblaApi.off("pointerDown", stopTimer).off("pointerUp", startTimer).off("slideFocusStart", stopTimer);
69
69
  stopTimer();
70
70
  destroyed = true;
71
71
  playing = false;
@@ -1 +1 @@
1
- {"version":3,"file":"embla-carousel-autoplay.esm.cjs","sources":["../../../../../node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js"],"sourcesContent":["const defaultOptions = {\n active: true,\n breakpoints: {},\n delay: 4000,\n jump: false,\n playOnInit: true,\n stopOnFocusIn: true,\n stopOnInteraction: true,\n stopOnMouseEnter: false,\n stopOnLastSnap: false,\n rootNode: null\n};\n\nfunction Autoplay(userOptions = {}) {\n let options;\n let emblaApi;\n let destroyed;\n let playing = false;\n let resume = true;\n let jump = false;\n let timer = 0;\n function init(emblaApiInstance, optionsHandler) {\n emblaApi = emblaApiInstance;\n const {\n mergeOptions,\n optionsAtMedia\n } = optionsHandler;\n const optionsBase = mergeOptions(defaultOptions, Autoplay.globalOptions);\n const allOptions = mergeOptions(optionsBase, userOptions);\n options = optionsAtMedia(allOptions);\n if (emblaApi.scrollSnapList().length <= 1) return;\n jump = options.jump;\n destroyed = false;\n const {\n eventStore,\n ownerDocument\n } = emblaApi.internalEngine();\n const emblaRoot = emblaApi.rootNode();\n const root = options.rootNode && options.rootNode(emblaRoot) || emblaRoot;\n const container = emblaApi.containerNode();\n emblaApi.on('pointerDown', stopTimer);\n if (!options.stopOnInteraction) {\n emblaApi.on('pointerUp', startTimer);\n }\n if (options.stopOnMouseEnter) {\n eventStore.add(root, 'mouseenter', () => {\n resume = false;\n stopTimer();\n });\n if (!options.stopOnInteraction) {\n eventStore.add(root, 'mouseleave', () => {\n resume = true;\n startTimer();\n });\n }\n }\n if (options.stopOnFocusIn) {\n eventStore.add(container, 'focusin', stopTimer);\n if (!options.stopOnInteraction) {\n eventStore.add(container, 'focusout', startTimer);\n }\n }\n eventStore.add(ownerDocument, 'visibilitychange', visibilityChange);\n if (options.playOnInit && !documentIsHidden()) startTimer();\n }\n function destroy() {\n emblaApi.off('pointerDown', stopTimer).off('pointerUp', startTimer);\n stopTimer();\n destroyed = true;\n playing = false;\n }\n function startTimer() {\n if (destroyed) return;\n if (!resume) return;\n if (!playing) emblaApi.emit('autoplay:play');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = ownerWindow.setInterval(next, options.delay);\n playing = true;\n }\n function stopTimer() {\n if (destroyed) return;\n if (playing) emblaApi.emit('autoplay:stop');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = 0;\n playing = false;\n }\n function visibilityChange() {\n if (documentIsHidden()) {\n resume = playing;\n return stopTimer();\n }\n if (resume) startTimer();\n }\n function documentIsHidden() {\n const {\n ownerDocument\n } = emblaApi.internalEngine();\n return ownerDocument.visibilityState === 'hidden';\n }\n function play(jumpOverride) {\n if (typeof jumpOverride !== 'undefined') jump = jumpOverride;\n resume = true;\n startTimer();\n }\n function stop() {\n if (playing) stopTimer();\n }\n function reset() {\n if (playing) play();\n }\n function isPlaying() {\n return playing;\n }\n function next() {\n const {\n index\n } = emblaApi.internalEngine();\n const nextIndex = index.clone().add(1).get();\n const lastIndex = emblaApi.scrollSnapList().length - 1;\n const kill = options.stopOnLastSnap && nextIndex === lastIndex;\n if (kill) stopTimer();\n if (emblaApi.canScrollNext()) {\n emblaApi.scrollNext(jump);\n } else {\n emblaApi.scrollTo(0, jump);\n }\n }\n const self = {\n name: 'autoplay',\n options: userOptions,\n init,\n destroy,\n play,\n stop,\n reset,\n isPlaying\n };\n return self;\n}\nAutoplay.globalOptions = undefined;\n\nexport { Autoplay as default };\n//# sourceMappingURL=embla-carousel-autoplay.esm.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"embla-carousel-autoplay.esm.cjs","sources":["../../../../../node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js"],"sourcesContent":["const defaultOptions = {\n active: true,\n breakpoints: {},\n delay: 4000,\n jump: false,\n playOnInit: true,\n stopOnFocusIn: true,\n stopOnInteraction: true,\n stopOnMouseEnter: false,\n stopOnLastSnap: false,\n rootNode: null\n};\n\nfunction Autoplay(userOptions = {}) {\n let options;\n let emblaApi;\n let destroyed;\n let playing = false;\n let resume = true;\n let jump = false;\n let timer = 0;\n function init(emblaApiInstance, optionsHandler) {\n emblaApi = emblaApiInstance;\n const {\n mergeOptions,\n optionsAtMedia\n } = optionsHandler;\n const optionsBase = mergeOptions(defaultOptions, Autoplay.globalOptions);\n const allOptions = mergeOptions(optionsBase, userOptions);\n options = optionsAtMedia(allOptions);\n if (emblaApi.scrollSnapList().length <= 1) return;\n jump = options.jump;\n destroyed = false;\n const {\n eventStore,\n ownerDocument\n } = emblaApi.internalEngine();\n const emblaRoot = emblaApi.rootNode();\n const root = options.rootNode && options.rootNode(emblaRoot) || emblaRoot;\n const container = emblaApi.containerNode();\n emblaApi.on('pointerDown', stopTimer);\n if (!options.stopOnInteraction) {\n emblaApi.on('pointerUp', startTimer);\n }\n if (options.stopOnMouseEnter) {\n eventStore.add(root, 'mouseenter', () => {\n resume = false;\n stopTimer();\n });\n if (!options.stopOnInteraction) {\n eventStore.add(root, 'mouseleave', () => {\n resume = true;\n startTimer();\n });\n }\n }\n if (options.stopOnFocusIn) {\n emblaApi.on('slideFocusStart', stopTimer);\n if (!options.stopOnInteraction) {\n eventStore.add(container, 'focusout', startTimer);\n }\n }\n eventStore.add(ownerDocument, 'visibilitychange', visibilityChange);\n if (options.playOnInit && !documentIsHidden()) startTimer();\n }\n function destroy() {\n emblaApi.off('pointerDown', stopTimer).off('pointerUp', startTimer).off('slideFocusStart', stopTimer);\n stopTimer();\n destroyed = true;\n playing = false;\n }\n function startTimer() {\n if (destroyed) return;\n if (!resume) return;\n if (!playing) emblaApi.emit('autoplay:play');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = ownerWindow.setInterval(next, options.delay);\n playing = true;\n }\n function stopTimer() {\n if (destroyed) return;\n if (playing) emblaApi.emit('autoplay:stop');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = 0;\n playing = false;\n }\n function visibilityChange() {\n if (documentIsHidden()) {\n resume = playing;\n return stopTimer();\n }\n if (resume) startTimer();\n }\n function documentIsHidden() {\n const {\n ownerDocument\n } = emblaApi.internalEngine();\n return ownerDocument.visibilityState === 'hidden';\n }\n function play(jumpOverride) {\n if (typeof jumpOverride !== 'undefined') jump = jumpOverride;\n resume = true;\n startTimer();\n }\n function stop() {\n if (playing) stopTimer();\n }\n function reset() {\n if (playing) play();\n }\n function isPlaying() {\n return playing;\n }\n function next() {\n const {\n index\n } = emblaApi.internalEngine();\n const nextIndex = index.clone().add(1).get();\n const lastIndex = emblaApi.scrollSnapList().length - 1;\n const kill = options.stopOnLastSnap && nextIndex === lastIndex;\n if (kill) stopTimer();\n if (emblaApi.canScrollNext()) {\n emblaApi.scrollNext(jump);\n } else {\n emblaApi.scrollTo(0, jump);\n }\n }\n const self = {\n name: 'autoplay',\n options: userOptions,\n init,\n destroy,\n play,\n stop,\n reset,\n isPlaying\n };\n return self;\n}\nAutoplay.globalOptions = undefined;\n\nexport { Autoplay as default };\n//# sourceMappingURL=embla-carousel-autoplay.esm.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
@@ -54,7 +54,7 @@ function Autoplay(userOptions = {}) {
54
54
  }
55
55
  }
56
56
  if (options.stopOnFocusIn) {
57
- eventStore.add(container, "focusin", stopTimer);
57
+ emblaApi.on("slideFocusStart", stopTimer);
58
58
  if (!options.stopOnInteraction) {
59
59
  eventStore.add(container, "focusout", startTimer);
60
60
  }
@@ -63,7 +63,7 @@ function Autoplay(userOptions = {}) {
63
63
  if (options.playOnInit && !documentIsHidden()) startTimer();
64
64
  }
65
65
  function destroy() {
66
- emblaApi.off("pointerDown", stopTimer).off("pointerUp", startTimer);
66
+ emblaApi.off("pointerDown", stopTimer).off("pointerUp", startTimer).off("slideFocusStart", stopTimer);
67
67
  stopTimer();
68
68
  destroyed = true;
69
69
  playing = false;
@@ -1 +1 @@
1
- {"version":3,"file":"embla-carousel-autoplay.esm.js","sources":["../../../../../node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js"],"sourcesContent":["const defaultOptions = {\n active: true,\n breakpoints: {},\n delay: 4000,\n jump: false,\n playOnInit: true,\n stopOnFocusIn: true,\n stopOnInteraction: true,\n stopOnMouseEnter: false,\n stopOnLastSnap: false,\n rootNode: null\n};\n\nfunction Autoplay(userOptions = {}) {\n let options;\n let emblaApi;\n let destroyed;\n let playing = false;\n let resume = true;\n let jump = false;\n let timer = 0;\n function init(emblaApiInstance, optionsHandler) {\n emblaApi = emblaApiInstance;\n const {\n mergeOptions,\n optionsAtMedia\n } = optionsHandler;\n const optionsBase = mergeOptions(defaultOptions, Autoplay.globalOptions);\n const allOptions = mergeOptions(optionsBase, userOptions);\n options = optionsAtMedia(allOptions);\n if (emblaApi.scrollSnapList().length <= 1) return;\n jump = options.jump;\n destroyed = false;\n const {\n eventStore,\n ownerDocument\n } = emblaApi.internalEngine();\n const emblaRoot = emblaApi.rootNode();\n const root = options.rootNode && options.rootNode(emblaRoot) || emblaRoot;\n const container = emblaApi.containerNode();\n emblaApi.on('pointerDown', stopTimer);\n if (!options.stopOnInteraction) {\n emblaApi.on('pointerUp', startTimer);\n }\n if (options.stopOnMouseEnter) {\n eventStore.add(root, 'mouseenter', () => {\n resume = false;\n stopTimer();\n });\n if (!options.stopOnInteraction) {\n eventStore.add(root, 'mouseleave', () => {\n resume = true;\n startTimer();\n });\n }\n }\n if (options.stopOnFocusIn) {\n eventStore.add(container, 'focusin', stopTimer);\n if (!options.stopOnInteraction) {\n eventStore.add(container, 'focusout', startTimer);\n }\n }\n eventStore.add(ownerDocument, 'visibilitychange', visibilityChange);\n if (options.playOnInit && !documentIsHidden()) startTimer();\n }\n function destroy() {\n emblaApi.off('pointerDown', stopTimer).off('pointerUp', startTimer);\n stopTimer();\n destroyed = true;\n playing = false;\n }\n function startTimer() {\n if (destroyed) return;\n if (!resume) return;\n if (!playing) emblaApi.emit('autoplay:play');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = ownerWindow.setInterval(next, options.delay);\n playing = true;\n }\n function stopTimer() {\n if (destroyed) return;\n if (playing) emblaApi.emit('autoplay:stop');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = 0;\n playing = false;\n }\n function visibilityChange() {\n if (documentIsHidden()) {\n resume = playing;\n return stopTimer();\n }\n if (resume) startTimer();\n }\n function documentIsHidden() {\n const {\n ownerDocument\n } = emblaApi.internalEngine();\n return ownerDocument.visibilityState === 'hidden';\n }\n function play(jumpOverride) {\n if (typeof jumpOverride !== 'undefined') jump = jumpOverride;\n resume = true;\n startTimer();\n }\n function stop() {\n if (playing) stopTimer();\n }\n function reset() {\n if (playing) play();\n }\n function isPlaying() {\n return playing;\n }\n function next() {\n const {\n index\n } = emblaApi.internalEngine();\n const nextIndex = index.clone().add(1).get();\n const lastIndex = emblaApi.scrollSnapList().length - 1;\n const kill = options.stopOnLastSnap && nextIndex === lastIndex;\n if (kill) stopTimer();\n if (emblaApi.canScrollNext()) {\n emblaApi.scrollNext(jump);\n } else {\n emblaApi.scrollTo(0, jump);\n }\n }\n const self = {\n name: 'autoplay',\n options: userOptions,\n init,\n destroy,\n play,\n stop,\n reset,\n isPlaying\n };\n return self;\n}\nAutoplay.globalOptions = undefined;\n\nexport { Autoplay as default };\n//# sourceMappingURL=embla-carousel-autoplay.esm.js.map\n"],"names":[],"mappings":"AAAA,MAAM,iBAAiB;AAAA,EACrB,QAAQ;AAAA,EACR,aAAa,CAAE;AAAA,EACf,OAAO;AAAA,EACP,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,UAAU;AACZ;AAEA,SAAS,SAAS,cAAc,IAAI;AAClC,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,MAAI,UAAU;AACd,MAAI,SAAS;AACb,MAAI,OAAO;AACX,MAAI,QAAQ;AACZ,WAAS,KAAK,kBAAkB,gBAAgB;AAC9C,eAAW;AACX,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,IACD,IAAG;AACJ,UAAM,cAAc,aAAa,gBAAgB,SAAS,aAAa;AACvE,UAAM,aAAa,aAAa,aAAa,WAAW;AACxD,cAAU,eAAe,UAAU;AACnC,QAAI,SAAS,eAAc,EAAG,UAAU,EAAG;AAC3C,WAAO,QAAQ;AACf,gBAAY;AACZ,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,IACN,IAAQ,SAAS;AACb,UAAM,YAAY,SAAS;AAC3B,UAAM,OAAO,QAAQ,YAAY,QAAQ,SAAS,SAAS,KAAK;AAChE,UAAM,YAAY,SAAS;AAC3B,aAAS,GAAG,eAAe,SAAS;AACpC,QAAI,CAAC,QAAQ,mBAAmB;AAC9B,eAAS,GAAG,aAAa,UAAU;AAAA,IACpC;AACD,QAAI,QAAQ,kBAAkB;AAC5B,iBAAW,IAAI,MAAM,cAAc,MAAM;AACvC,iBAAS;AACT;MACR,CAAO;AACD,UAAI,CAAC,QAAQ,mBAAmB;AAC9B,mBAAW,IAAI,MAAM,cAAc,MAAM;AACvC,mBAAS;AACT;QACV,CAAS;AAAA,MACF;AAAA,IACF;AACD,QAAI,QAAQ,eAAe;AACzB,iBAAW,IAAI,WAAW,WAAW,SAAS;AAC9C,UAAI,CAAC,QAAQ,mBAAmB;AAC9B,mBAAW,IAAI,WAAW,YAAY,UAAU;AAAA,MACjD;AAAA,IACF;AACD,eAAW,IAAI,eAAe,oBAAoB,gBAAgB;AAClE,QAAI,QAAQ,cAAc,CAAC,iBAAkB,EAAE,YAAU;AAAA,EAC1D;AACD,WAAS,UAAU;AACjB,aAAS,IAAI,eAAe,SAAS,EAAE,IAAI,aAAa,UAAU;AAClE;AACA,gBAAY;AACZ,cAAU;AAAA,EACX;AACD,WAAS,aAAa;AACpB,QAAI,UAAW;AACf,QAAI,CAAC,OAAQ;AACb,QAAI,CAAC,QAAS,UAAS,KAAK,eAAe;AAC3C,UAAM;AAAA,MACJ;AAAA,IACN,IAAQ,SAAS;AACb,gBAAY,cAAc,KAAK;AAC/B,YAAQ,YAAY,YAAY,MAAM,QAAQ,KAAK;AACnD,cAAU;AAAA,EACX;AACD,WAAS,YAAY;AACnB,QAAI,UAAW;AACf,QAAI,QAAS,UAAS,KAAK,eAAe;AAC1C,UAAM;AAAA,MACJ;AAAA,IACN,IAAQ,SAAS;AACb,gBAAY,cAAc,KAAK;AAC/B,YAAQ;AACR,cAAU;AAAA,EACX;AACD,WAAS,mBAAmB;AAC1B,QAAI,iBAAgB,GAAI;AACtB,eAAS;AACT,aAAO,UAAS;AAAA,IACjB;AACD,QAAI,OAAQ;EACb;AACD,WAAS,mBAAmB;AAC1B,UAAM;AAAA,MACJ;AAAA,IACN,IAAQ,SAAS;AACb,WAAO,cAAc,oBAAoB;AAAA,EAC1C;AACD,WAAS,KAAK,cAAc;AAC1B,QAAI,OAAO,iBAAiB,YAAa,QAAO;AAChD,aAAS;AACT;EACD;AACD,WAAS,OAAO;AACd,QAAI,QAAS;EACd;AACD,WAAS,QAAQ;AACf,QAAI,QAAS;EACd;AACD,WAAS,YAAY;AACnB,WAAO;AAAA,EACR;AACD,WAAS,OAAO;AACd,UAAM;AAAA,MACJ;AAAA,IACN,IAAQ,SAAS;AACb,UAAM,YAAY,MAAM,MAAK,EAAG,IAAI,CAAC,EAAE;AACvC,UAAM,YAAY,SAAS,eAAc,EAAG,SAAS;AACrD,UAAM,OAAO,QAAQ,kBAAkB,cAAc;AACrD,QAAI,KAAM;AACV,QAAI,SAAS,iBAAiB;AAC5B,eAAS,WAAW,IAAI;AAAA,IAC9B,OAAW;AACL,eAAS,SAAS,GAAG,IAAI;AAAA,IAC1B;AAAA,EACF;AACD,QAAM,OAAO;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ;AACE,SAAO;AACT;AACA,SAAS,gBAAgB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"embla-carousel-autoplay.esm.js","sources":["../../../../../node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js"],"sourcesContent":["const defaultOptions = {\n active: true,\n breakpoints: {},\n delay: 4000,\n jump: false,\n playOnInit: true,\n stopOnFocusIn: true,\n stopOnInteraction: true,\n stopOnMouseEnter: false,\n stopOnLastSnap: false,\n rootNode: null\n};\n\nfunction Autoplay(userOptions = {}) {\n let options;\n let emblaApi;\n let destroyed;\n let playing = false;\n let resume = true;\n let jump = false;\n let timer = 0;\n function init(emblaApiInstance, optionsHandler) {\n emblaApi = emblaApiInstance;\n const {\n mergeOptions,\n optionsAtMedia\n } = optionsHandler;\n const optionsBase = mergeOptions(defaultOptions, Autoplay.globalOptions);\n const allOptions = mergeOptions(optionsBase, userOptions);\n options = optionsAtMedia(allOptions);\n if (emblaApi.scrollSnapList().length <= 1) return;\n jump = options.jump;\n destroyed = false;\n const {\n eventStore,\n ownerDocument\n } = emblaApi.internalEngine();\n const emblaRoot = emblaApi.rootNode();\n const root = options.rootNode && options.rootNode(emblaRoot) || emblaRoot;\n const container = emblaApi.containerNode();\n emblaApi.on('pointerDown', stopTimer);\n if (!options.stopOnInteraction) {\n emblaApi.on('pointerUp', startTimer);\n }\n if (options.stopOnMouseEnter) {\n eventStore.add(root, 'mouseenter', () => {\n resume = false;\n stopTimer();\n });\n if (!options.stopOnInteraction) {\n eventStore.add(root, 'mouseleave', () => {\n resume = true;\n startTimer();\n });\n }\n }\n if (options.stopOnFocusIn) {\n emblaApi.on('slideFocusStart', stopTimer);\n if (!options.stopOnInteraction) {\n eventStore.add(container, 'focusout', startTimer);\n }\n }\n eventStore.add(ownerDocument, 'visibilitychange', visibilityChange);\n if (options.playOnInit && !documentIsHidden()) startTimer();\n }\n function destroy() {\n emblaApi.off('pointerDown', stopTimer).off('pointerUp', startTimer).off('slideFocusStart', stopTimer);\n stopTimer();\n destroyed = true;\n playing = false;\n }\n function startTimer() {\n if (destroyed) return;\n if (!resume) return;\n if (!playing) emblaApi.emit('autoplay:play');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = ownerWindow.setInterval(next, options.delay);\n playing = true;\n }\n function stopTimer() {\n if (destroyed) return;\n if (playing) emblaApi.emit('autoplay:stop');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = 0;\n playing = false;\n }\n function visibilityChange() {\n if (documentIsHidden()) {\n resume = playing;\n return stopTimer();\n }\n if (resume) startTimer();\n }\n function documentIsHidden() {\n const {\n ownerDocument\n } = emblaApi.internalEngine();\n return ownerDocument.visibilityState === 'hidden';\n }\n function play(jumpOverride) {\n if (typeof jumpOverride !== 'undefined') jump = jumpOverride;\n resume = true;\n startTimer();\n }\n function stop() {\n if (playing) stopTimer();\n }\n function reset() {\n if (playing) play();\n }\n function isPlaying() {\n return playing;\n }\n function next() {\n const {\n index\n } = emblaApi.internalEngine();\n const nextIndex = index.clone().add(1).get();\n const lastIndex = emblaApi.scrollSnapList().length - 1;\n const kill = options.stopOnLastSnap && nextIndex === lastIndex;\n if (kill) stopTimer();\n if (emblaApi.canScrollNext()) {\n emblaApi.scrollNext(jump);\n } else {\n emblaApi.scrollTo(0, jump);\n }\n }\n const self = {\n name: 'autoplay',\n options: userOptions,\n init,\n destroy,\n play,\n stop,\n reset,\n isPlaying\n };\n return self;\n}\nAutoplay.globalOptions = undefined;\n\nexport { Autoplay as default };\n//# sourceMappingURL=embla-carousel-autoplay.esm.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}