@total_onion/onion-library 1.0.3 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (639) hide show
  1. package/.github/workflows/npm-publish.yml +2 -2
  2. package/README.md +5 -5
  3. package/components/{block-carousel-multi-layout-v2/carousel-multi-layout-v2.js → block-carousel-multi-layout-v3/carousel-multi-layout-v3.js} +3 -11
  4. package/components/{block-carousel-multi-layout-v2/carousel-multi-layout-v2.php → block-carousel-multi-layout-v3/carousel-multi-layout-v3.php} +2 -2
  5. package/components/{block-carousel-multi-layout-v2/carousel-multi-layout-v2.scss → block-carousel-multi-layout-v3/carousel-multi-layout-v3.scss} +4 -4
  6. package/components/{block-carousel-multi-layout-v2/carousel-multi-layout-v2.twig → block-carousel-multi-layout-v3/carousel-multi-layout-v3.twig} +2 -2
  7. package/components/{block-slide-in-panel/group_644e7531c41b6.json → block-carousel-multi-layout-v3/group_686bd42e551d6.json} +125 -170
  8. package/components/{block-mikmak-wtb/mikmak-wtb.js → block-cover-link-v3/cover-link-v3.js} +1 -1
  9. package/components/{block-single-lottie/single-lottie.php → block-cover-link-v3/cover-link-v3.php} +2 -2
  10. package/components/{block-mikmak-wtb/mikmak-wtb.scss → block-cover-link-v3/cover-link-v3.scss} +3 -3
  11. package/components/block-cover-link-v3/cover-link-v3.twig +17 -0
  12. package/components/{component-content-container/group_65e3707a7a50f.json → block-cover-link-v3/group_687192c28b7eb.json} +10 -35
  13. package/components/{block-divider/divider.js → block-divider-v3/divider-v3.js} +1 -1
  14. package/components/{block-divider/divider.php → block-divider-v3/divider-v3.php} +2 -2
  15. package/components/{block-divider/divider.scss → block-divider-v3/divider-v3.scss} +24 -24
  16. package/components/{block-divider/divider.twig → block-divider-v3/divider-v3.twig} +3 -6
  17. package/components/{block-divider/group_63a4486b818b1.json → block-divider-v3/group_686b919696bfe.json} +50 -50
  18. package/components/{block-gradient-layer/gradient-layer.js → block-gradient-layer-v3/gradient-layer-v3.js} +1 -1
  19. package/components/{block-debrain-wtb/debrain-wtb.php → block-gradient-layer-v3/gradient-layer-v3.php} +2 -2
  20. package/components/{block-gradient-layer/gradient-layer.scss → block-gradient-layer-v3/gradient-layer-v3.scss} +3 -3
  21. package/components/{block-gradient-layer/gradient-layer.twig → block-gradient-layer-v3/gradient-layer-v3.twig} +1 -1
  22. package/components/{block-gradient-layer/group_6787dab17f83e.json → block-gradient-layer-v3/group_686fdadc85df4.json} +13 -13
  23. package/components/{block-group-container/group-container.js → block-group-container-v3/group-container-v3.js} +1 -1
  24. package/components/{block-nav-menu-container/nav-menu-container.php → block-group-container-v3/group-container-v3.php} +2 -2
  25. package/components/{block-group-container/group-container.scss → block-group-container-v3/group-container-v3.scss} +6 -5
  26. package/components/{block-group-container/group-container.twig → block-group-container-v3/group-container-v3.twig} +12 -10
  27. package/components/{block-standard-content-v2/group_63a06c993ad35.json → block-group-container-v3/group_6865578ada499.json} +841 -1461
  28. package/components/{block-single-lottie/group_65ccfe68d38cb.json → block-lottie-content-v3/group_687197027216d.json} +26 -81
  29. package/components/block-lottie-content-v3/lottie-content-v3.js +14 -0
  30. package/components/{block-gradient-layer/gradient-layer.php → block-lottie-content-v3/lottie-content-v3.php} +2 -2
  31. package/components/{block-theme-switcher/theme-switcher.scss → block-lottie-content-v3/lottie-content-v3.scss} +3 -3
  32. package/components/{block-post-type-scroller/post-type-scroller.twig → block-lottie-content-v3/lottie-content-v3.twig} +11 -8
  33. package/components/{block-current-post-info/group_681f29c027d42.json → block-post-info-v3/group_6866429531436.json} +442 -1007
  34. package/components/block-post-info-v3/post-info-v3/article-description.twig +13 -0
  35. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/bazaarvoice-inline.twig +6 -3
  36. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/better-reviews.twig +6 -4
  37. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/buy-now.twig +42 -26
  38. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-glass-type.twig +7 -5
  39. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-ingredients-description.twig +6 -2
  40. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-ingredients-title.twig +6 -2
  41. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-instructions-title.twig +6 -2
  42. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-prep-time.twig +6 -2
  43. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-recipe-ingredients.twig +6 -2
  44. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-skill-level.twig +6 -2
  45. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-taste.twig +6 -2
  46. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-tasting-notes.twig +6 -2
  47. package/components/block-post-info-v3/post-info-v3/divider.twig +8 -0
  48. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/drink-description.twig +6 -3
  49. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/global-image.twig +7 -8
  50. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/gradient-overlay.twig +7 -3
  51. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-categories.twig +6 -3
  52. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-headline.twig +6 -3
  53. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-image.twig +13 -18
  54. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-info-description.twig +6 -2
  55. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-info-subtitle.twig +6 -2
  56. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-link.twig +8 -9
  57. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-name.twig +6 -2
  58. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-publish-date.twig +8 -4
  59. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-tags.twig +3 -9
  60. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-text-alternative-style.twig +6 -2
  61. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/post-title.twig +6 -2
  62. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-abv.twig +8 -4
  63. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-age-statement.twig +6 -2
  64. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-cask-type.twig +6 -3
  65. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-country.twig +6 -3
  66. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-details-brand.twig +6 -2
  67. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-details-description.twig +6 -2
  68. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-details-name.twig +6 -2
  69. package/components/block-post-info-v3/post-info-v3/product-details-price.twig +9 -0
  70. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-finish.twig +6 -3
  71. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-history.twig +6 -3
  72. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-logo.twig +7 -1
  73. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-name.twig +6 -2
  74. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-nose.twig +6 -3
  75. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-price.twig +6 -2
  76. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-taste.twig +6 -3
  77. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/product-whisky-type.twig +6 -3
  78. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/reservebar-add-to-cart.twig +7 -4
  79. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/shopify-add-to-cart.twig +12 -12
  80. package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/spacer-v2.twig +6 -1
  81. package/components/block-post-info-v3/post-info-v3-extra.scss +14 -0
  82. package/components/{block-post-info/post-info.js → block-post-info-v3/post-info-v3.js} +3 -4
  83. package/components/{block-post-info/post-info.php → block-post-info-v3/post-info-v3.php} +2 -2
  84. package/components/{block-post-info/post-info.scss → block-post-info-v3/post-info-v3.scss} +56 -21
  85. package/components/{block-post-info/post-info.twig → block-post-info-v3/post-info-v3.twig} +6 -13
  86. package/components/block-post-type-filter-grid-v2/group_64690c62487bc.json +22 -1
  87. package/components/block-post-type-filter-grid-v2/post-type-filter-grid-v2/ptfg-posts.twig +81 -36
  88. package/components/block-post-type-filter-grid-v2/post-type-filter-grid-v2.twig +4 -2
  89. package/components/block-post-type-filter-grid-v2/post-type-filter-grid-v2.vue +7 -2
  90. package/components/{block-single-responsive-image/group_65a6674d41afa.json → block-single-responsive-image-v3/group_6867bcf24c2fc.json} +19 -22
  91. package/components/{block-single-responsive-image/single-responsive-image.twig → block-single-responsive-image-v3/single-responsive-image-v3.twig} +1 -2
  92. package/components/{block-spacer-v2/group_64060dc280525.json → block-spacer-v3/group_686b8cb48c708.json} +8 -8
  93. package/components/{block-spacer-v2/spacer-v2.js → block-spacer-v3/spacer-v3.js} +1 -1
  94. package/components/{block-spacer-v2/spacer-v2.php → block-spacer-v3/spacer-v3.php} +2 -2
  95. package/components/{block-spacer-v2/spacer-v2.scss → block-spacer-v3/spacer-v3.scss} +1 -1
  96. package/components/{block-spacer-v2/spacer-v2.twig → block-spacer-v3/spacer-v3.twig} +2 -2
  97. package/components/{block-section-separator/group_63e635d6a198a.json → block-standard-content-v3/group_68655756737c9.json} +237 -219
  98. package/components/{block-standard-content-v2/standard-content-v2-extra.scss → block-standard-content-v3/standard-content-v3-extra.scss} +4 -4
  99. package/components/{block-standard-content-v2/standard-content-v2.js → block-standard-content-v3/standard-content-v3.js} +3 -21
  100. package/components/{block-standard-content-v2/standard-content-v2.php → block-standard-content-v3/standard-content-v3.php} +2 -2
  101. package/components/block-standard-content-v3/standard-content-v3.scss +17 -0
  102. package/components/{block-standard-content-v2/standard-content-v2.twig → block-standard-content-v3/standard-content-v3.twig} +2 -2
  103. package/components/{block-sub-group-container/group_65de580781a2b.json → block-sub-group-container-v3/group_686ceba7d6066.json} +188 -342
  104. package/components/{block-sub-group-container/sub-group-container.js → block-sub-group-container-v3/sub-group-container-v3.js} +1 -1
  105. package/components/{block-site-title-and-tagline/site-title-and-tagline.php → block-sub-group-container-v3/sub-group-container-v3.php} +2 -2
  106. package/components/{block-sub-group-container/sub-group-container.scss → block-sub-group-container-v3/sub-group-container-v3.scss} +3 -3
  107. package/components/{block-sub-group-container/sub-group-container.twig → block-sub-group-container-v3/sub-group-container-v3.twig} +5 -9
  108. package/components/{block-theme-switcher/group_674e319102e49.json → block-video-content-v3/group_687190b8d26df.json} +51 -41
  109. package/components/block-video-content-v3/video-content-v3.js +10 -0
  110. package/components/{block-responsive-table/responsive-table.php → block-video-content-v3/video-content-v3.php} +2 -2
  111. package/components/{component-responsive-video/responsive-video.scss → block-video-content-v3/video-content-v3.scss} +11 -5
  112. package/components/block-video-content-v3/video-content-v3.twig +17 -0
  113. package/components/{component-accent-image-v2/accent-image-v2.twig → component-accent-image-v3/accent-image-v3.twig} +46 -51
  114. package/components/{component-accent-image-v2/group_6595613d07b2d.json → component-accent-image-v3/group_686cd5547efd2.json} +76 -79
  115. package/components/{component-accent-text/group_63e10c602d136.json → component-accent-text-v3/group_686b91fed8f5f.json} +11 -11
  116. package/components/{component-carousel-standard/group_6282c52bf38d7.json → component-carousel-fields-v3/group_686fd30f4d873.json} +171 -171
  117. package/components/{component-content-container-settings/group_65b58da6d24b8.json → component-content-box-settings-v3/group_686e6ec702acc.json} +123 -585
  118. package/components/component-content-box-v3/content-box-v3.twig +23 -0
  119. package/components/{block-carousel-multi-layout-v2/group_63f1ff16340b1.json → component-content-box-v3/group_686b8a4f1fe5d.json} +115 -340
  120. package/components/{component-content-image-v2/content-image-v2.twig → component-content-image-v3/content-image-v3.twig} +0 -7
  121. package/components/{component-content-image-v2/group_63d7ba80aeac7.json → component-content-image-v3/group_68722935c428f.json} +41 -41
  122. package/components/{component-cta-selection/cta-selection.twig → component-cta-selection-v3/cta-selection-v3.twig} +4 -60
  123. package/components/{component-cta-selection/group_64b24a4e10761.json → component-cta-selection-v3/group_686e93eb832a6.json} +94 -239
  124. package/components/{component-gradient-overlay/group_65995d4f1a4b5.json → component-gradient-overlay-v3/group_686fd9ca50b63.json} +61 -33
  125. package/components/{component-responsive-image/group_6258aff982b23.json → component-responsive-image-v3/group_6867bc53f1da8.json} +174 -983
  126. package/components/{component-responsive-image/responsive-image.twig → component-responsive-image-v3/responsive-image-v3.twig} +4 -2
  127. package/components/component-video-component-v3/video-component-v3.twig +83 -0
  128. package/components/{component-video-standard/group_6258a8ba5e629.json → component-video-fields-v3/group_6872282f44634.json} +253 -69
  129. package/components/component-video-trigger-button-v3/video-trigger-button-v3.twig +14 -0
  130. package/components/{component-standard-content-box-v2/group_6580636e7794b.json → component-wysiwyg-editor/group_6867e153af466.json} +10 -16
  131. package/components/{component-standard-content-box-v2/standard-content-box-v2.twig → component-wysiwyg-editor/wysiwyg-editor.twig} +6 -18
  132. package/components/{entrypoint-entry-point-html/entry-point-html.twig → entrypoint-entry-point-html-v3/entry-point-html-v3.twig} +6 -12
  133. package/components/{fields-design-system/group_63e7fd39c8e35.json → fields-design-system-v3/group_6870e9e74a347.json} +190 -413
  134. package/components/{fields-post-info/group_64c29bf97fba2.json → fields-post-info-v3/group_6867bbe167dd2.json} +153 -38
  135. package/createNewChildBlock.js +11 -2
  136. package/package.json +4 -4
  137. package/removeBlock.js +122 -0
  138. package/update-all-components.js +1 -1
  139. package/components/admin-filter-pages-by-block/filter-pages-by-block.php +0 -81
  140. package/components/admin-resizable-editor-sidebar/resizable-editor-sidebar.php +0 -224
  141. package/components/block-animated-sections/animated-sections-extra.scss +0 -631
  142. package/components/block-animated-sections/animated-sections.js +0 -1642
  143. package/components/block-animated-sections/animated-sections.php +0 -14
  144. package/components/block-animated-sections/animated-sections.scss +0 -470
  145. package/components/block-animated-sections/animated-sections.twig +0 -324
  146. package/components/block-animated-sections/group_63f350c04d418.json +0 -4122
  147. package/components/block-back-to-top-button/back-to-top-button-extra.scss +0 -6
  148. package/components/block-back-to-top-button/back-to-top-button.js +0 -12
  149. package/components/block-back-to-top-button/back-to-top-button.php +0 -14
  150. package/components/block-back-to-top-button/back-to-top-button.scss +0 -71
  151. package/components/block-back-to-top-button/back-to-top-button.twig +0 -40
  152. package/components/block-back-to-top-button/group_63e24e04a1e61.json +0 -315
  153. package/components/block-bambuser-display/bambuser-display.js +0 -43
  154. package/components/block-bambuser-display/bambuser-display.php +0 -14
  155. package/components/block-bambuser-display/bambuser-display.scss +0 -7
  156. package/components/block-bambuser-display/bambuser-display.twig +0 -43
  157. package/components/block-bambuser-display/group_671658042eba7.json +0 -489
  158. package/components/block-bazaarvoice-display/bazaarvoice-display-extra.scss +0 -5
  159. package/components/block-bazaarvoice-display/bazaarvoice-display.js +0 -7
  160. package/components/block-bazaarvoice-display/bazaarvoice-display.php +0 -14
  161. package/components/block-bazaarvoice-display/bazaarvoice-display.scss +0 -42
  162. package/components/block-bazaarvoice-display/bazaarvoice-display.twig +0 -38
  163. package/components/block-bazaarvoice-display/group_64f744285585d.json +0 -382
  164. package/components/block-better-reviews/better-reviews-extra.scss +0 -5
  165. package/components/block-betterreviews-display/betterreviews-display-extra.scss +0 -309
  166. package/components/block-betterreviews-display/betterreviews-display.js +0 -8
  167. package/components/block-betterreviews-display/betterreviews-display.php +0 -14
  168. package/components/block-betterreviews-display/betterreviews-display.scss +0 -25
  169. package/components/block-betterreviews-display/betterreviews-display.twig +0 -31
  170. package/components/block-betterreviews-display/group_651c206555d43.json +0 -331
  171. package/components/block-breadcrumb-display/breadcrumb-display-extra.scss +0 -6
  172. package/components/block-breadcrumb-display/breadcrumb-display.js +0 -8
  173. package/components/block-breadcrumb-display/breadcrumb-display.php +0 -14
  174. package/components/block-breadcrumb-display/breadcrumb-display.scss +0 -17
  175. package/components/block-breadcrumb-display/breadcrumb-display.twig +0 -50
  176. package/components/block-breadcrumb-display/group_652aea92326b9.json +0 -211
  177. package/components/block-card-carousel-v2/card-carousel-v2.js +0 -138
  178. package/components/block-card-carousel-v2/card-carousel-v2.php +0 -17
  179. package/components/block-card-carousel-v2/card-carousel-v2.scss +0 -408
  180. package/components/block-card-carousel-v2/card-carousel-v2.twig +0 -145
  181. package/components/block-card-carousel-v2/group_64f46e5ea695b.json +0 -1171
  182. package/components/block-carousel-thumbnail-gallery/carousel-thumbnail-gallery-extra.scss +0 -6
  183. package/components/block-carousel-thumbnail-gallery/carousel-thumbnail-gallery.js +0 -89
  184. package/components/block-carousel-thumbnail-gallery/carousel-thumbnail-gallery.php +0 -17
  185. package/components/block-carousel-thumbnail-gallery/carousel-thumbnail-gallery.scss +0 -87
  186. package/components/block-carousel-thumbnail-gallery/carousel-thumbnail-gallery.twig +0 -70
  187. package/components/block-carousel-thumbnail-gallery/group_63dfd38732f6c.json +0 -605
  188. package/components/block-collection-carousel/collection-carousel-extra.scss +0 -5
  189. package/components/block-collection-carousel/collection-carousel.js +0 -132
  190. package/components/block-collection-carousel/collection-carousel.php +0 -14
  191. package/components/block-collection-carousel/collection-carousel.scss +0 -59
  192. package/components/block-collection-carousel/collection-carousel.twig +0 -87
  193. package/components/block-collection-carousel/group_645b93da4e5d5.json +0 -225
  194. package/components/block-current-post-info/current-post-info-extra.scss +0 -6
  195. package/components/block-current-post-info/current-post-info.js +0 -11
  196. package/components/block-current-post-info/current-post-info.php +0 -17
  197. package/components/block-current-post-info/current-post-info.scss +0 -173
  198. package/components/block-current-post-info/current-post-info.twig +0 -44
  199. package/components/block-debrain-label-shop/debrain-label-shop.js +0 -7
  200. package/components/block-debrain-label-shop/debrain-label-shop.php +0 -73
  201. package/components/block-debrain-label-shop/debrain-label-shop.scss +0 -4
  202. package/components/block-debrain-label-shop/debrain-label-shop.twig +0 -116
  203. package/components/block-debrain-label-shop/group_63935b63f198c.json +0 -1613
  204. package/components/block-debrain-wtb/debrain-wtb.js +0 -8
  205. package/components/block-debrain-wtb/debrain-wtb.scss +0 -7
  206. package/components/block-debrain-wtb/debrain-wtb.twig +0 -18
  207. package/components/block-debrain-wtb/group_66349f620692e.json +0 -73
  208. package/components/block-event-details-banner/event-details-banner-extra.scss +0 -15
  209. package/components/block-event-details-banner/event-details-banner.js +0 -9
  210. package/components/block-event-details-banner/event-details-banner.php +0 -14
  211. package/components/block-event-details-banner/event-details-banner.scss +0 -216
  212. package/components/block-event-details-banner/event-details-banner.twig +0 -78
  213. package/components/block-event-details-banner/group_63d934fc2895a.json +0 -736
  214. package/components/block-floating-links/floating-links-extra.scss +0 -4
  215. package/components/block-floating-links/floating-links.js +0 -8
  216. package/components/block-floating-links/floating-links.php +0 -14
  217. package/components/block-floating-links/floating-links.scss +0 -73
  218. package/components/block-floating-links/floating-links.twig +0 -25
  219. package/components/block-floating-links/group_63d7ab19e9b15.json +0 -531
  220. package/components/block-group-container/group-container.php +0 -14
  221. package/components/block-group-container/group_644ce9a48943b.json +0 -5097
  222. package/components/block-iframe-container/group_645d4a0c3e5ca.json +0 -459
  223. package/components/block-iframe-container/iframe-container.js +0 -31
  224. package/components/block-iframe-container/iframe-container.php +0 -14
  225. package/components/block-iframe-container/iframe-container.scss +0 -26
  226. package/components/block-iframe-container/iframe-container.twig +0 -23
  227. package/components/block-list-builder/group_640ebbadc584f.json +0 -739
  228. package/components/block-list-builder/list-builder-extra.scss +0 -6
  229. package/components/block-list-builder/list-builder.js +0 -7
  230. package/components/block-list-builder/list-builder.php +0 -14
  231. package/components/block-list-builder/list-builder.scss +0 -62
  232. package/components/block-list-builder/list-builder.twig +0 -47
  233. package/components/block-map-container/group_670fe49f73f13.json +0 -406
  234. package/components/block-map-container/map-container-extra.scss +0 -2
  235. package/components/block-map-container/map-container.js +0 -230
  236. package/components/block-map-container/map-container.php +0 -14
  237. package/components/block-map-container/map-container.scss +0 -70
  238. package/components/block-map-container/map-container.twig +0 -35
  239. package/components/block-menu-presentation/group_63d7ea144187d.json +0 -489
  240. package/components/block-menu-presentation/menu-presentation-extra.scss +0 -2
  241. package/components/block-menu-presentation/menu-presentation.js +0 -11
  242. package/components/block-menu-presentation/menu-presentation.php +0 -14
  243. package/components/block-menu-presentation/menu-presentation.scss +0 -111
  244. package/components/block-menu-presentation/menu-presentation.twig +0 -60
  245. package/components/block-mikmak-wtb/group_6674604cd3920.json +0 -54
  246. package/components/block-mikmak-wtb/mikmak-wtb.php +0 -14
  247. package/components/block-mikmak-wtb/mikmak-wtb.twig +0 -19
  248. package/components/block-nav-menu-container/group_65d29435959e5.json +0 -185
  249. package/components/block-nav-menu-container/nav-menu-container-extra.scss +0 -6
  250. package/components/block-nav-menu-container/nav-menu-container.js +0 -21
  251. package/components/block-nav-menu-container/nav-menu-container.scss +0 -13
  252. package/components/block-nav-menu-container/nav-menu-container.twig +0 -19
  253. package/components/block-post-info/group_64ef2bc27ec59.json +0 -13315
  254. package/components/block-post-info/post-info/article-description.twig +0 -7
  255. package/components/block-post-info/post-info/cocktail-instructions-description.twig +0 -7
  256. package/components/block-post-info/post-info/divider.twig +0 -3
  257. package/components/block-post-info/post-info/person-email.twig +0 -10
  258. package/components/block-post-info/post-info/person-name.twig +0 -7
  259. package/components/block-post-info/post-info/person-questionaire.twig +0 -15
  260. package/components/block-post-info/post-info/person-rating.twig +0 -24
  261. package/components/block-post-info/post-info/post-author.twig +0 -7
  262. package/components/block-post-info/post-info/product-details-price.twig +0 -5
  263. package/components/block-post-info/post-info/social-media-item.twig +0 -34
  264. package/components/block-post-info/post-info/treat-recipe-ingredients.twig +0 -83
  265. package/components/block-post-info/post-info-extra.scss +0 -14
  266. package/components/block-post-type-scroller/group_65de1e6cda9fd.json +0 -405
  267. package/components/block-post-type-scroller/post-type-scroller-extra.scss +0 -6
  268. package/components/block-post-type-scroller/post-type-scroller.js +0 -15
  269. package/components/block-post-type-scroller/post-type-scroller.php +0 -14
  270. package/components/block-post-type-scroller/post-type-scroller.scss +0 -4
  271. package/components/block-responsive-image/responsive-image.js +0 -14
  272. package/components/block-responsive-image/responsive-image.scss +0 -3
  273. package/components/block-responsive-table/group_6617ecc987ddd.json +0 -461
  274. package/components/block-responsive-table/responsive-table-extra.scss +0 -6
  275. package/components/block-responsive-table/responsive-table.js +0 -7
  276. package/components/block-responsive-table/responsive-table.scss +0 -51
  277. package/components/block-responsive-table/responsive-table.twig +0 -45
  278. package/components/block-section-separator/section-separator.js +0 -8
  279. package/components/block-section-separator/section-separator.php +0 -14
  280. package/components/block-section-separator/section-separator.scss +0 -38
  281. package/components/block-section-separator/section-separator.twig +0 -46
  282. package/components/block-single-column-container/group_656858f72acd7.json +0 -1065
  283. package/components/block-single-column-container/single-column-container.js +0 -8
  284. package/components/block-single-column-container/single-column-container.php +0 -14
  285. package/components/block-single-column-container/single-column-container.scss +0 -20
  286. package/components/block-single-column-container/single-column-container.twig +0 -31
  287. package/components/block-single-content-box/group_65b776f4d75a3.json +0 -1734
  288. package/components/block-single-content-box/single-content-box-extra.scss +0 -7
  289. package/components/block-single-content-box/single-content-box.js +0 -15
  290. package/components/block-single-content-box/single-content-box.php +0 -14
  291. package/components/block-single-content-box/single-content-box.scss +0 -13
  292. package/components/block-single-content-box/single-content-box.twig +0 -21
  293. package/components/block-single-lottie/single-lottie-extra.scss +0 -6
  294. package/components/block-single-lottie/single-lottie.js +0 -10
  295. package/components/block-single-lottie/single-lottie.scss +0 -10
  296. package/components/block-single-lottie/single-lottie.twig +0 -16
  297. package/components/block-single-responsive-image/single-responsive-image-extra.scss +0 -7
  298. package/components/block-single-responsive-image/single-responsive-image.js +0 -7
  299. package/components/block-single-responsive-image/single-responsive-image.php +0 -14
  300. package/components/block-single-responsive-image/single-responsive-image.scss +0 -9
  301. package/components/block-single-video/group_65afa6aedbeac.json +0 -280
  302. package/components/block-single-video/single-video-extra.js +0 -1
  303. package/components/block-single-video/single-video-extra.scss +0 -6
  304. package/components/block-single-video/single-video.js +0 -12
  305. package/components/block-single-video/single-video.php +0 -14
  306. package/components/block-single-video/single-video.scss +0 -36
  307. package/components/block-single-video/single-video.twig +0 -21
  308. package/components/block-site-copyright-notice/group_66296c3716b4f.json +0 -287
  309. package/components/block-site-copyright-notice/site-copyright-notice-extra.scss +0 -5
  310. package/components/block-site-copyright-notice/site-copyright-notice.js +0 -7
  311. package/components/block-site-copyright-notice/site-copyright-notice.php +0 -14
  312. package/components/block-site-copyright-notice/site-copyright-notice.scss +0 -32
  313. package/components/block-site-copyright-notice/site-copyright-notice.twig +0 -26
  314. package/components/block-site-logo-container/group_65dda9cbda1a0.json +0 -182
  315. package/components/block-site-logo-container/site-logo-container-extra.scss +0 -6
  316. package/components/block-site-logo-container/site-logo-container.js +0 -7
  317. package/components/block-site-logo-container/site-logo-container.php +0 -14
  318. package/components/block-site-logo-container/site-logo-container.scss +0 -30
  319. package/components/block-site-logo-container/site-logo-container.twig +0 -42
  320. package/components/block-site-title-and-tagline/group_65d258a4d4ee1.json +0 -393
  321. package/components/block-site-title-and-tagline/site-title-and-tagline-extra.scss +0 -5
  322. package/components/block-site-title-and-tagline/site-title-and-tagline.js +0 -7
  323. package/components/block-site-title-and-tagline/site-title-and-tagline.scss +0 -19
  324. package/components/block-site-title-and-tagline/site-title-and-tagline.twig +0 -24
  325. package/components/block-slide-in-panel/slide-in-panel-extra.scss +0 -9
  326. package/components/block-slide-in-panel/slide-in-panel.js +0 -23
  327. package/components/block-slide-in-panel/slide-in-panel.php +0 -14
  328. package/components/block-slide-in-panel/slide-in-panel.scss +0 -40
  329. package/components/block-slide-in-panel/slide-in-panel.twig +0 -33
  330. package/components/block-standard-content-v2/standard-content-v2-extra.js +0 -1
  331. package/components/block-standard-content-v2/standard-content-v2.scss +0 -25
  332. package/components/block-sticky-link/group_63d78d7f41d23.json +0 -134
  333. package/components/block-sticky-link/sticky-link-extra.scss +0 -1
  334. package/components/block-sticky-link/sticky-link.js +0 -8
  335. package/components/block-sticky-link/sticky-link.php +0 -14
  336. package/components/block-sticky-link/sticky-link.scss +0 -41
  337. package/components/block-sticky-link/sticky-link.twig +0 -25
  338. package/components/block-sub-group-container/sub-group-container-extra.scss +0 -2
  339. package/components/block-sub-group-container/sub-group-container.php +0 -14
  340. package/components/block-sub-tabbed-content/group_6629506ec3a1e.json +0 -1091
  341. package/components/block-sub-tabbed-content/sub-tabbed-content-extra.scss +0 -2
  342. package/components/block-sub-tabbed-content/sub-tabbed-content.js +0 -38
  343. package/components/block-sub-tabbed-content/sub-tabbed-content.php +0 -14
  344. package/components/block-sub-tabbed-content/sub-tabbed-content.scss +0 -74
  345. package/components/block-sub-tabbed-content/sub-tabbed-content.twig +0 -50
  346. package/components/block-tabbed-content-v2/group_6471dffc728cf.json +0 -1270
  347. package/components/block-tabbed-content-v2/tabbed-content-v2-extra.scss +0 -1
  348. package/components/block-tabbed-content-v2/tabbed-content-v2.js +0 -38
  349. package/components/block-tabbed-content-v2/tabbed-content-v2.php +0 -14
  350. package/components/block-tabbed-content-v2/tabbed-content-v2.scss +0 -73
  351. package/components/block-tabbed-content-v2/tabbed-content-v2.twig +0 -58
  352. package/components/block-theme-switcher/theme-switcher-extra.scss +0 -6
  353. package/components/block-theme-switcher/theme-switcher.js +0 -17
  354. package/components/block-theme-switcher/theme-switcher.php +0 -14
  355. package/components/block-theme-switcher/theme-switcher.twig +0 -29
  356. package/components/cache-cta-styles/cache-cta-styles.php +0 -54
  357. package/components/cache-custom-cache-config/custom-cache-config.php +0 -8
  358. package/components/cache-custom-cache-config/group_66f3e16f8c024.json +0 -79
  359. package/components/cache-global-settings/cache-global-settings.php +0 -36
  360. package/components/cache-market-settings/cache-market-settings.php +0 -39
  361. package/components/cache-themes/cache-themes.php +0 -53
  362. package/components/cache-typography/cache-typography.php +0 -53
  363. package/components/component-accent-image/accent-image.twig +0 -75
  364. package/components/component-accent-image/group_6265189d8a694.json +0 -890
  365. package/components/component-accent-text/accent-text-extra.scss +0 -6
  366. package/components/component-accent-text/accent-text.scss +0 -61
  367. package/components/component-accent-text/accent-text.twig +0 -11
  368. package/components/component-accordion-v2/accordion-v2-extra.scss +0 -6
  369. package/components/component-accordion-v2/accordion-v2.js +0 -113
  370. package/components/component-accordion-v2/accordion-v2.scss +0 -172
  371. package/components/component-accordion-v2/accordion-v2.twig +0 -38
  372. package/components/component-accordion-v2/group_65086e92b21c1.json +0 -516
  373. package/components/component-acf-wysiwyg-options/acf-wysiwyg-options.php +0 -221
  374. package/components/component-animations/animations.scss +0 -117
  375. package/components/component-animations/animations.twig +0 -18
  376. package/components/component-animations/group_659e9c280bdda.json +0 -458
  377. package/components/component-animations-style/animations-style.twig +0 -5
  378. package/components/component-athena-body-close/athena-body-close.twig +0 -1
  379. package/components/component-athena-body-open/athena-body-open.twig +0 -32
  380. package/components/component-athena-head/athena-head.twig +0 -4
  381. package/components/component-better-reviews/better-reviews-extra.scss +0 -5
  382. package/components/component-better-reviews/better-reviews.scss +0 -356
  383. package/components/component-better-reviews/better-reviews.twig +0 -6
  384. package/components/component-better-reviews-display-settings/group_671f47cc17aa9.json +0 -91
  385. package/components/component-block-padding/block-padding.scss +0 -62
  386. package/components/component-block-padding/block-padding.twig +0 -53
  387. package/components/component-block-padding/group_638f4148bc10b.json +0 -889
  388. package/components/component-block-settings/block-settings.scss +0 -42
  389. package/components/component-block-settings/block-settings.twig +0 -31
  390. package/components/component-block-settings/group_65a45ada4e128.json +0 -699
  391. package/components/component-blockquote/blockquote.scss +0 -64
  392. package/components/component-blockquote/blockquote.twig +0 -55
  393. package/components/component-blockquote/group_659d2bbc948e1.json +0 -280
  394. package/components/component-box-shadow/box-shadow.scss +0 -9
  395. package/components/component-box-shadow/box-shadow.twig +0 -7
  396. package/components/component-box-shadow/group_666ed2bece4c3.json +0 -210
  397. package/components/component-buy-now-button/buy-now-button.js +0 -15
  398. package/components/component-buy-now-button/buy-now-button.twig +0 -97
  399. package/components/component-buy-now-button/group_658430fa58bf1.json +0 -717
  400. package/components/component-child-pattern-settings/group_670b7ac92563c.json +0 -76
  401. package/components/component-classic-nav-items-center/classic-nav-items-center.js +0 -58
  402. package/components/component-classic-nav-items-center/classic-nav-items-center.scss +0 -811
  403. package/components/component-classic-nav-items-center/classic-nav-items-center.twig +0 -144
  404. package/components/component-classic-nav-items-center/group_66a2b63ae5cad.json +0 -277
  405. package/components/component-code-block/code-block.scss +0 -10
  406. package/components/component-code-block/code-block.twig +0 -7
  407. package/components/component-code-block/group_657eeb3aeb09e.json +0 -58
  408. package/components/component-competition-selection/competition-selection.twig +0 -5
  409. package/components/component-content-container/content-container.js +0 -92
  410. package/components/component-content-container/content-container.scss +0 -57
  411. package/components/component-content-container/content-container.twig +0 -34
  412. package/components/component-content-container-settings/content-container-settings.scss +0 -213
  413. package/components/component-content-image-v2/content-image-v2.scss +0 -33
  414. package/components/component-content-tooltip/content-tooltip-extra.scss +0 -6
  415. package/components/component-content-tooltip/content-tooltip.js +0 -44
  416. package/components/component-content-tooltip/content-tooltip.scss +0 -41
  417. package/components/component-countdown/countdown-extra.scss +0 -6
  418. package/components/component-countdown/countdown.js +0 -58
  419. package/components/component-countdown/countdown.scss +0 -15
  420. package/components/component-countdown/countdown.twig +0 -16
  421. package/components/component-countdown/group_6520a0c1ae809.json +0 -334
  422. package/components/component-cover-link/cover-link.scss +0 -11
  423. package/components/component-cover-link/cover-link.twig +0 -4
  424. package/components/component-cover-link/group_65ca55f45368c.json +0 -103
  425. package/components/component-eager-loading/eager-loading.twig +0 -4
  426. package/components/component-eager-loading/group_654bee047f2f0.json +0 -55
  427. package/components/component-element-positioning/element-positioning.scss +0 -21
  428. package/components/component-element-positioning/element-positioning.twig +0 -34
  429. package/components/component-element-positioning/group_65b0e17675b81.json +0 -471
  430. package/components/component-form-selection/form-selection-extra.scss +0 -6
  431. package/components/component-form-selection/form-selection.js +0 -18
  432. package/components/component-form-selection/form-selection.scss +0 -41
  433. package/components/component-form-selection/form-selection.twig +0 -23
  434. package/components/component-form-selection/group_63f4889ebf085.json +0 -161
  435. package/components/component-global-content-max-width/global-content-max-width.twig +0 -11
  436. package/components/component-global-content-max-width/group_63c83de4f0a99.json +0 -55
  437. package/components/component-global-image/group_65b7c7e412941.json +0 -256
  438. package/components/component-gradient-overlay/gradient-overlay.scss +0 -46
  439. package/components/component-grid-layout-container/grid-layout-container.scss +0 -61
  440. package/components/component-grid-layout-container/grid-layout-container.twig +0 -38
  441. package/components/component-grid-layout-container/group_6504a88c17463.json +0 -886
  442. package/components/component-grid-layout-element/grid-layout-element.scss +0 -27
  443. package/components/component-grid-layout-element/grid-layout-element.twig +0 -39
  444. package/components/component-grid-layout-element/group_6504a81a0623c.json +0 -705
  445. package/components/component-inline-raw-svg/group_6714e19ec95cc.json +0 -55
  446. package/components/component-lottie-animations/group_65cb36d6cb82e.json +0 -250
  447. package/components/component-lottie-animations/lottie-animations-extra.scss +0 -2
  448. package/components/component-lottie-animations/lottie-animations.js +0 -25
  449. package/components/component-lottie-animations/lottie-animations.scss +0 -13
  450. package/components/component-lottie-animations/lottie-animations.twig +0 -8
  451. package/components/component-market-selector/group_66a7b8ec15615.json +0 -53
  452. package/components/component-market-selector/market-selector-extra.scss +0 -2
  453. package/components/component-market-selector/market-selector.js +0 -71
  454. package/components/component-market-selector/market-selector.scss +0 -247
  455. package/components/component-market-selector/market-selector.twig +0 -16
  456. package/components/component-nav-menu/group_64b814182a570.json +0 -432
  457. package/components/component-nav-menu/nav-menu.scss +0 -44
  458. package/components/component-nav-menu/nav-menu.twig +0 -76
  459. package/components/component-nav-menu-slide-in-panel/group_65db1f6c9cba8.json +0 -172
  460. package/components/component-nav-menu-slide-in-panel/nav-menu-slide-in-panel-extra.scss +0 -7
  461. package/components/component-nav-menu-slide-in-panel/nav-menu-slide-in-panel.js +0 -176
  462. package/components/component-nav-menu-slide-in-panel/nav-menu-slide-in-panel.scss +0 -638
  463. package/components/component-nav-menu-slide-in-panel/nav-menu-slide-in-panel.twig +0 -95
  464. package/components/component-page-properties/page-properties.twig +0 -27
  465. package/components/component-parallax-animations/parallax-animations.js +0 -40
  466. package/components/component-post-author/group_67a1430a08630.json +0 -482
  467. package/components/component-post-author/post-author-extra.scss +0 -6
  468. package/components/component-post-author/post-author.scss +0 -46
  469. package/components/component-post-author/post-author.twig +0 -80
  470. package/components/component-post-image/group_65b375fc0d10d.json +0 -460
  471. package/components/component-post-tags/group_67090920e08e5.json +0 -100
  472. package/components/component-responsive-image/responsive-image.scss +0 -61
  473. package/components/component-responsive-show-hide/group_645a741c8da2e.json +0 -108
  474. package/components/component-responsive-show-hide/responsive-show-hide.twig +0 -9
  475. package/components/component-scrolling-banner/group_626472bf26f5c.json +0 -501
  476. package/components/component-scrolling-banner/scrolling-banner-extra.scss +0 -5
  477. package/components/component-scrolling-banner/scrolling-banner.js +0 -118
  478. package/components/component-scrolling-banner/scrolling-banner.scss +0 -98
  479. package/components/component-scrolling-banner/scrolling-banner.twig +0 -31
  480. package/components/component-scrolling-posts/group_65de1ebc8e0bc.json +0 -404
  481. package/components/component-scrolling-posts/scrolling-posts.js +0 -16
  482. package/components/component-scrolling-posts/scrolling-posts.scss +0 -52
  483. package/components/component-scrolling-posts/scrolling-posts.twig +0 -76
  484. package/components/component-shopify/shop-shopify.js +0 -390
  485. package/components/component-shopify/shop.js +0 -104
  486. package/components/component-shopify/shopify.scss +0 -250
  487. package/components/component-single-image/single-image.twig +0 -7
  488. package/components/component-social-media-share/group_6807bb08ab942.json +0 -596
  489. package/components/component-social-media-share/social-media-share-extra.scss +0 -6
  490. package/components/component-social-media-share/social-media-share.js +0 -69
  491. package/components/component-social-media-share/social-media-share.scss +0 -128
  492. package/components/component-social-media-share/social-media-share.twig +0 -213
  493. package/components/component-social-networks/group_668c110442111.json +0 -467
  494. package/components/component-social-networks/social-networks.scss +0 -65
  495. package/components/component-social-networks/social-networks.twig +0 -38
  496. package/components/component-spotify-embed/group_67d04c4c4cf78.json +0 -123
  497. package/components/component-spotify-embed/spotify-embed-extra.scss +0 -5
  498. package/components/component-spotify-embed/spotify-embed.js +0 -7
  499. package/components/component-spotify-embed/spotify-embed.scss +0 -17
  500. package/components/component-spotify-embed/spotify-embed.twig +0 -4
  501. package/components/component-standard-content-box/group_62a5ca6aa81d7.json +0 -973
  502. package/components/component-standard-content-box/standard-content-box.twig +0 -64
  503. package/components/component-text-editor-settings/group_657305390de77.json +0 -1236
  504. package/components/component-truncated-text/group_677bd1bc69968.json +0 -379
  505. package/components/component-truncated-text/truncated-text-extra.scss +0 -6
  506. package/components/component-truncated-text/truncated-text.js +0 -76
  507. package/components/component-truncated-text/truncated-text.scss +0 -42
  508. package/components/component-truncated-text/truncated-text.twig +0 -31
  509. package/components/component-typography-style-select/group_6511f390d8357.json +0 -83
  510. package/components/controller-password-protected/password-protected.css +0 -46
  511. package/components/controller-password-protected/password-protected.php +0 -14
  512. package/components/controller-password-protected/password-protected.twig +0 -9
  513. package/components/entrypoint-data-attribute/entry-point-data-attribute.twig +0 -6
  514. package/components/entrypoint-entry-point-classes/entry-point-classes.twig +0 -13
  515. package/components/entrypoint-entry-point-style/entry-point-style.twig +0 -14
  516. package/components/entrypoint-preview-info/entry-point-preview-info.twig +0 -7
  517. package/components/fields-add-manage-patterns/add-manage-patterns-menu-link.php +0 -13
  518. package/components/fields-add-svg-support/add-svg-support.php +0 -50
  519. package/components/fields-allowed-block-types/allowed-block-types.php +0 -34
  520. package/components/fields-animations-style/animations-style.twig +0 -2
  521. package/components/fields-archive-pages/group_635e777ce46d4.json +0 -135
  522. package/components/fields-background-image-body/background-image-body.twig +0 -16
  523. package/components/fields-background-image-footer/background-image-footer.twig +0 -8
  524. package/components/fields-background-image-main/background-image-main.twig +0 -8
  525. package/components/fields-background-video-body/background-video-body.twig +0 -14
  526. package/components/fields-bazaarvoice-review/bazaarvoice-review.scss +0 -10
  527. package/components/fields-block-categories/block-categories.php +0 -18
  528. package/components/fields-block-editor-assets/block-editor-assets.php +0 -17
  529. package/components/fields-blockquote/blockquote.scss +0 -64
  530. package/components/fields-blockquote/blockquote.twig +0 -55
  531. package/components/fields-blocks-post-type-public/blocks-post-type-public.php +0 -18
  532. package/components/fields-box-shadow/box-shadow.scss +0 -9
  533. package/components/fields-check-file-type/check-file-type.php +0 -13
  534. package/components/fields-cloudflare-configuration/cloudflare-configuration.php +0 -72
  535. package/components/fields-cocktail-info/group_64c29b7f188ca.json +0 -1461
  536. package/components/fields-content-image-v2/content-image-v2.scss +0 -30
  537. package/components/fields-content-image-v2/content-image-v2.twig +0 -73
  538. package/components/fields-core-acf-wysiwyg-toolbars/core-acf-wysiwyg-toolbars.php +0 -38
  539. package/components/fields-core-athena-block-render-function/core-athena-block-render-function.php +0 -50
  540. package/components/fields-core-colour-data-config/core-colour-data-config.js +0 -2
  541. package/components/fields-core-colour-data-config/core-colour-data-config.php +0 -60
  542. package/components/fields-core-critical/core-critical.scss +0 -6
  543. package/components/fields-core-critical-css/core-critical-css.php +0 -6
  544. package/components/fields-core-css-modules/core-css-modules.scss +0 -12
  545. package/components/fields-core-css-sizing-vars/core-css-sizing-vars.scss +0 -156
  546. package/components/fields-core-cta/core-cta.php +0 -240
  547. package/components/fields-core-cta/core-cta.scss +0 -280
  548. package/components/fields-core-design-settings/core-design-settings.twig +0 -6
  549. package/components/fields-core-design-system/core-design-system.php +0 -44
  550. package/components/fields-core-editor-cta-style-select/core-editor-cta-style-select.js +0 -16
  551. package/components/fields-core-editor-cta-style-select/core-editor-cta-style-select.php +0 -18
  552. package/components/fields-core-editor-theme-select/core-editor-theme-select.js +0 -16
  553. package/components/fields-core-editor-theme-select/core-editor-theme-select.php +0 -19
  554. package/components/fields-core-font-modifiers/core-font-modifiers.php +0 -46
  555. package/components/fields-core-font-modifiers/group_65abf0fc06efd.json +0 -489
  556. package/components/fields-core-functions/core-functions.scss +0 -111
  557. package/components/fields-core-generic/core-generic.scss +0 -132
  558. package/components/fields-core-gradient-designer/core-gradient-designer.scss +0 -92
  559. package/components/fields-core-mixins/core-mixins.scss +0 -1076
  560. package/components/fields-core-root-variables/core-root-variables.scss +0 -48
  561. package/components/fields-core-themes/core-themes.php +0 -65
  562. package/components/fields-core-typography/core-typography.php +0 -194
  563. package/components/fields-core-typography/core-typography.scss +0 -384
  564. package/components/fields-core-wordpress-block-editor-preview/core-wordpress-block-editor-preview.js +0 -121
  565. package/components/fields-core-wordpress-block-editor-preview/core-wordpress-block-editor-preview.scss +0 -101
  566. package/components/fields-cover-link/cover-link.scss +0 -11
  567. package/components/fields-cover-link/cover-link.twig +0 -4
  568. package/components/fields-cta-icon-map/cta-icon-map.php +0 -11
  569. package/components/fields-cta-icons/group_677ed96c3c64f.json +0 -677
  570. package/components/fields-cta-styles/group_65abe1a526214.json +0 -3238
  571. package/components/fields-cta-styles-ui-page/ui_options_page_66000817bcbaf.json +0 -22
  572. package/components/fields-data-enables/data-enables.twig +0 -21
  573. package/components/fields-debrain-label-shop/group_63dd19dc3ba18.json +0 -271
  574. package/components/fields-default-theme/group_663c9818d16ea.json +0 -79
  575. package/components/fields-dynamic-critical-css/dynamic-critical-css.php +0 -113
  576. package/components/fields-dynamic-critical-css/group_65abcd463e8d0.json +0 -126
  577. package/components/fields-dynamic-image-preload/group_665f1f240337a.json +0 -56
  578. package/components/fields-e-shop-settings/e-shop-settings.twig +0 -69
  579. package/components/fields-e-shop-settings/group_650b24b4e623d.json +0 -702
  580. package/components/fields-get-asset-uri/get-asset-uri.php +0 -36
  581. package/components/fields-get-pattern/get-pattern.php +0 -639
  582. package/components/fields-get-raw-svg/get_raw_svg.php +0 -24
  583. package/components/fields-get-svg-icon-content/get-svg-icon-content.php +0 -10
  584. package/components/fields-global-images/group_6519888a76006.json +0 -121
  585. package/components/fields-global-preload/global-preload.twig +0 -18
  586. package/components/fields-global-preload/group_65e0bd35e781b.json +0 -289
  587. package/components/fields-global-settings/ui_options_page_65d2558ee2392.json +0 -22
  588. package/components/fields-grid-gap-mults/grid-gap-mults.twig +0 -10
  589. package/components/fields-header-and-footer-patterns/group_67224e439992d.json +0 -107
  590. package/components/fields-image-management-service/group_677813165b633.json +0 -149
  591. package/components/fields-image-sizes/image-sizes.php +0 -24
  592. package/components/fields-imagekit-configuration/imagekit-configuration.php +0 -250
  593. package/components/fields-inline-css-file/inline-css-file.php +0 -24
  594. package/components/fields-library-images/blue-brick.svg +0 -19
  595. package/components/fields-library-images/brick.svg +0 -19
  596. package/components/fields-library-images/chevron-library.svg +0 -3
  597. package/components/fields-library-images/green-brick.svg +0 -19
  598. package/components/fields-market-settings-ui-page/ui_options_page_65d4926a854a9.json +0 -22
  599. package/components/fields-noscript/noscript.twig +0 -11
  600. package/components/fields-notes/group_66573c9838918.json +0 -55
  601. package/components/fields-pantheon-page-cache-config/pantheon-page-cache-config.php +0 -61
  602. package/components/fields-people/group_6525b74551434.json +0 -179
  603. package/components/fields-preload/preload.twig +0 -2
  604. package/components/fields-product-info/group_64c29a6750b1c.json +0 -501
  605. package/components/fields-registers-menus/registers-menus.php +0 -18
  606. package/components/fields-reservebar-popup/reservebar-popup.js +0 -44
  607. package/components/fields-reservebar-popup/reservebar-popup.scss +0 -33
  608. package/components/fields-site-copyright-notice/group_66317dcfcb01a.json +0 -78
  609. package/components/fields-site-logos/group_67b50a5b01f1d.json +0 -120
  610. package/components/fields-site-menus/site-menus.php +0 -19
  611. package/components/fields-text-style/group_6509a986674f1.json +0 -328
  612. package/components/fields-text-style/text-style.twig +0 -14
  613. package/components/fields-theme-attribute/core-theme-attribute.twig +0 -15
  614. package/components/fields-theme-font-select/group_64e627319dd51.json +0 -68
  615. package/components/fields-themes/group_65ac3c7583bdf.json +0 -1086
  616. package/components/fields-themes-ui-page/ui_options_page_660007a245fa0.json +0 -22
  617. package/components/fields-twig-filters-functions/twig-filters-functions.php +0 -321
  618. package/components/fields-typography-settings/group_657438bf04b09.json +0 -5668
  619. package/components/fields-typography-ui-page/ui_options_page_65ff1174bed38.json +0 -22
  620. package/components/fields-upload-file-size-limit/upload-file-size-limit.php +0 -36
  621. package/components/fields-upload-filesize-limit/group_659d259760a1d.json +0 -56
  622. package/components/fields-video-management-services/group_67b4cac05cb30.json +0 -144
  623. package/components/fields-wysiwyg-add-content-tooltip/wysiwyg-add-content-tooltip.php +0 -45
  624. package/components/security-password-protected/password-protected.php +0 -25
  625. /package/components/{block-carousel-multi-layout-v2/carousel-multi-layout-v2-extra.js → block-carousel-multi-layout-v3/carousel-multi-layout-v3-extra.js} +0 -0
  626. /package/components/{block-carousel-multi-layout-v2/carousel-multi-layout-v2-extra.scss → block-carousel-multi-layout-v3/carousel-multi-layout-v3-extra.scss} +0 -0
  627. /package/components/{block-bambuser-display/bambuser-display-extra.scss → block-cover-link-v3/cover-link-v3-extra.scss} +0 -0
  628. /package/components/{block-divider/divider-extra.scss → block-divider-v3/divider-v3-extra.scss} +0 -0
  629. /package/components/{block-debrain-wtb/debrain-wtb-extra.scss → block-gradient-layer-v3/gradient-layer-v3-extra.scss} +0 -0
  630. /package/components/{block-group-container/group-container-extra.scss → block-group-container-v3/group-container-v3-extra.scss} +0 -0
  631. /package/components/{block-gradient-layer/gradient-layer-extra.scss → block-lottie-content-v3/lottie-content-v3-extra.scss} +0 -0
  632. /package/components/{block-post-info/post-info → block-post-info-v3/post-info-v3}/cocktail-recipe-instructions.twig +0 -0
  633. /package/components/{block-current-post-info/current-post-info-extra.js → block-post-info-v3/post-info-v3-extra.js} +0 -0
  634. /package/components/{block-single-column-container/single-column-container-extra.scss → block-single-responsive-image-v3/single-responsive-image-v3-extra.scss} +0 -0
  635. /package/components/{block-post-info/post-info-extra.js → block-standard-content-v3/standard-content-v3-extra.js} +0 -0
  636. /package/components/{block-iframe-container/iframe-container-extra.scss → block-sub-group-container-v3/sub-group-container-v3-extra.scss} +0 -0
  637. /package/components/{block-mikmak-wtb/mikmak-wtb-extra.scss → block-video-content-v3/video-content-v3-extra.scss} +0 -0
  638. /package/components/{component-content-container-settings/content-container-settings.twig → component-content-box-settings-v3/content-box-settings-v3.twig} +0 -0
  639. /package/components/{component-gradient-overlay/gradient-overlay.twig → component-gradient-overlay-v3/gradient-overlay-v3.twig} +0 -0
@@ -1,1642 +0,0 @@
1
- import {getGsap, getSwiperAssetsV2} from '@pernod-ricard-global-cms/jsutils';
2
- import('swiper/css/bundle');
3
-
4
- export default function animatedsectionsJs(options = {}) {
5
- try {
6
- const {block} = options;
7
- Promise.all([getGsap(), getSwiperAssetsV2()]).then((results) => {
8
- // Modules and Libraries
9
- const gsap = results[0][0];
10
- const {
11
- Swiper,
12
- Navigation,
13
- Pagination,
14
- Lazy,
15
- Autoplay,
16
- EffectFade,
17
- EffectCreative
18
- } = results[1][0];
19
-
20
- //Flags
21
- const MOBILE_BREAKPOINT = 768; //px
22
-
23
- // Dom Declarations
24
- let foregroundElements;
25
- let backgroundElements;
26
- let timelineElements;
27
-
28
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
29
- foregroundElements = Array.from(
30
- block.querySelectorAll(
31
- '.animated-sections__foreground-element--mobile'
32
- )
33
- );
34
- backgroundElements = Array.from(
35
- block.querySelectorAll(
36
- '.animated-sections__background-element--mobile'
37
- )
38
- );
39
- timelineElements = block.querySelectorAll(
40
- '.animated-sections__timeline--tablet-mobile'
41
- );
42
- } else {
43
- foregroundElements = Array.from(
44
- block.querySelectorAll(
45
- '.animated-sections__foreground-element--desktop'
46
- )
47
- );
48
- backgroundElements = Array.from(
49
- block.querySelectorAll(
50
- '.animated-sections__background-element--desktop'
51
- )
52
- );
53
- timelineElements = block.querySelectorAll(
54
- '.animated-sections__timeline--desktop'
55
- );
56
- }
57
-
58
- const allElements = [...backgroundElements, ...foregroundElements];
59
-
60
- // DOM Constants
61
- const siteHeader = document.getElementsByTagName('header')[0];
62
- const elementCanvas = block.querySelector(
63
- '.animated-sections__canvas-inner'
64
- );
65
- const contentElements = block.querySelectorAll(
66
- '.animated-sections__content-element'
67
- );
68
- const contentButtons = document.querySelectorAll(
69
- '[data-content-button]'
70
- );
71
- const backButton = block.querySelector(
72
- '.animated-sections__ui-element-back-button'
73
- );
74
- const nextButton = block.querySelector(
75
- '.animated-sections__ui-element-down-arrow'
76
- );
77
- const swiperWrapper = document.querySelector(
78
- '.animated-sections__swiper-content-wrapper'
79
- );
80
- const swiperOverlay = document.querySelector(
81
- '.animated-sections__swiper-content-overlay'
82
- );
83
- const timelineNavWrapper = document.querySelector(
84
- '.animated-sections__ui-element-timeline-nav-wrapper'
85
- );
86
- const dots = document.querySelectorAll(
87
- '.animated-sections__ui-element-timeline-dot'
88
- );
89
- const menuItems = document.querySelectorAll(
90
- '.animated-sections__ui-element-timeline-name'
91
- );
92
- const scrollBar = block.querySelector(
93
- '.animated-sections__progress-bar'
94
- );
95
- // const uiElementsContainer = block.querySelector(
96
- // '.animated-sections__ui-elements'
97
- // );
98
-
99
- // Constants
100
- const figmaDesktopHeight = parseFloat(block.dataset.desktopHeight);
101
- const figmaDesktopWidth = parseFloat(block.dataset.desktopWidth);
102
- const figmaMobileHeight = parseFloat(block.dataset.mobileHeight);
103
- const figmaMobileWidth = parseFloat(block.dataset.mobileWidth);
104
-
105
- const figmaTransformOrigin = block.dataset.transformOrigin;
106
-
107
- const swiperEnabled = block.dataset.swiperEnabled;
108
-
109
- // Variable Declarations
110
- let timelines = [];
111
- let allNavTimelines = [];
112
- let lastTime = null;
113
- let scrollAmount = 0;
114
- let lastScrollTop = 0;
115
- let forwardPlaybackHistory = [];
116
-
117
- let touchStartY = 0;
118
- let touchEndY = 0;
119
- let scrollVelocity = 0;
120
- let isDecelerating = false;
121
- let lastTouchY = 0;
122
- let isTouching = false;
123
-
124
- const state = {
125
- currentTimelineIndex: 0,
126
- canSwipe: true,
127
- timelinesVisited: false,
128
- lastSwipeFalseTime: 0
129
- };
130
-
131
- const SwiperManager = {
132
- swiper: null,
133
- init: function () {
134
- this.swiper = new Swiper('.swiper-container', {
135
- modules: [
136
- Navigation,
137
- Pagination,
138
- Lazy,
139
- Autoplay,
140
- EffectFade,
141
- EffectCreative
142
- ],
143
- pagination: {
144
- el: '.animated-sections .swiper-pagination',
145
- clickable: true
146
- },
147
- allowTouchMove: false,
148
- effect: 'creative',
149
- speed: 1000,
150
- creativeEffect: {
151
- prev: {
152
- opacity: 0
153
- },
154
- next: {
155
- opacity: 0
156
- }
157
- },
158
- on: {
159
- init: function () {
160
- const swiperSlides = this.slides;
161
- swiperSlides.forEach((slide) => {
162
- const overlayColor = slide.dataset.color;
163
- swiperOverlay.className = '';
164
- swiperOverlay.classList.add(
165
- 'animated-sections__swiper-content-overlay'
166
- );
167
- swiperOverlay.classList.add(
168
- 'animated-sections__swiper-content-overlay--' +
169
- overlayColor
170
- );
171
- });
172
- }
173
- }
174
- });
175
- },
176
- initSwiperPaginationListener: function () {
177
- this.swiper.pagination.el.addEventListener('click', (e) => {
178
- if (!getState('canSwipe')) {
179
- return;
180
- }
181
- if (
182
- e.target.classList.contains(
183
- 'swiper-pagination-bullet'
184
- )
185
- ) {
186
- const index = [
187
- ...this.swiper.pagination.el.childNodes
188
- ].indexOf(e.target);
189
- const targetStepIndex =
190
- parseInt(
191
- this.swiper.slides[index].dataset.slideId
192
- ) - 1;
193
- const currentStepIndex = getState(
194
- 'currentTimelineIndex'
195
- );
196
- const stepDifference =
197
- targetStepIndex - currentStepIndex;
198
-
199
- if (
200
- Math.abs(stepDifference) > 1 ||
201
- Math.abs(stepDifference) < -1
202
- ) {
203
- TimelineManager.fadeToBlack(() => {
204
- TimelineManager.navigateToTimeline(
205
- targetStepIndex
206
- );
207
- });
208
- } else if (Math.abs(stepDifference) == 0) {
209
- return;
210
- } else {
211
- TimelineManager.changeTimeline(stepDifference);
212
- }
213
- }
214
- });
215
- }
216
- };
217
- const TimelineManager = {
218
- createTimelinesAndNavigation: function () {
219
- timelineElements.forEach((step, index) => {
220
- const animation = step.dataset.animation;
221
- const animationObj = JSON.parse(animation);
222
- const tweens = this.createTweens(animationObj);
223
- const timeline = new TimelineLite({paused: true});
224
-
225
- timeline.add(tweens);
226
- timelines[index] = timeline;
227
- });
228
- },
229
- createTweens: function (animationObj) {
230
- const {
231
- widthRatio,
232
- heightRatio,
233
- scaleFactorWidth,
234
- scaleFactorHeight
235
- } = this.getFigmaDimensions();
236
-
237
- return allElements
238
- .map((elm) => {
239
- const obj = animationObj.find(
240
- (o) => o.name === elm.dataset.assetName
241
- );
242
- if (obj) {
243
- if (figmaTransformOrigin == '__top-left') {
244
- return TweenLite.to(elm, {
245
- x: obj.x,
246
- y: obj.y,
247
- scaleX: obj.width / elm.width,
248
- scaleY: obj.height / elm.height,
249
- opacity: obj.opacity,
250
- duration: obj.duration,
251
- backfaceVisibility: {
252
- visible: false
253
- }
254
- });
255
- } else if (figmaTransformOrigin == '__center') {
256
- return TweenLite.to(elm, {
257
- x:
258
- obj.x *
259
- widthRatio *
260
- scaleFactorWidth,
261
- y:
262
- obj.y *
263
- heightRatio *
264
- scaleFactorHeight,
265
- scale: Math.min(
266
- obj.width,
267
- obj.height,
268
- scaleFactorWidth,
269
- scaleFactorHeight
270
- ),
271
- opacity: obj.opacity,
272
- duration: obj.duration,
273
- backfaceVisibility: {
274
- visible: false
275
- }
276
- });
277
- }
278
-
279
- return TweenLite.to(elm, {
280
- x: newX,
281
- y: newY,
282
- scaleX: obj.width / elm.width,
283
- scaleY: obj.height / elm.height,
284
- opacity: obj.opacity,
285
- duration: obj.duration,
286
- // display: displayValue,
287
- backfaceVisibility: {
288
- visible: false
289
- }
290
- });
291
- }
292
-
293
- return null;
294
- })
295
- .filter((tween) => tween !== null);
296
- },
297
- animationFrame: function (now) {
298
- if (!lastTime) {
299
- lastTime = now;
300
- }
301
- const deltaTime = now - lastTime;
302
- if (deltaTime >= 16) {
303
- timelines[getState('currentTimelineIndex')].time(
304
- timelines[getState('currentTimelineIndex')].time() +
305
- deltaTime / 1000
306
- );
307
- lastTime = now;
308
- }
309
- requestAnimationFrame(animationFrame);
310
- },
311
- changeTimeline: function (timelineIndex) {
312
- if (!getState('canSwipe')) {
313
- return;
314
- }
315
- setState('canSwipe', false);
316
-
317
- const currentTimelineIndex = getState(
318
- 'currentTimelineIndex'
319
- );
320
- const nextTimelineIndex =
321
- currentTimelineIndex + timelineIndex;
322
- const isMovingBackwards = timelineIndex < 0;
323
- const currentTimeline = timelines[currentTimelineIndex];
324
-
325
- const tweensElements = currentTimeline.getChildren();
326
-
327
- let tweenElementType;
328
-
329
- tweensElements.forEach((tween) => {
330
- tween._targets.forEach((target) => {
331
- if (target.tagName == 'IMG') {
332
- tweenElementType = 'IMAGE';
333
- } else if (target.tagName == 'VIDEO') {
334
- tweenElementType = 'VIDEO';
335
- }
336
- });
337
- });
338
-
339
- const nextTimeline = timelines[nextTimelineIndex];
340
- if (
341
- nextTimelineIndex >= 0 &&
342
- nextTimelineIndex < timelineElements.length
343
- ) {
344
- if (isMovingBackwards) {
345
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
346
- currentTimeline.pause();
347
- setTimeout(() => {
348
- currentTimeline.reverse();
349
- }, 1000);
350
-
351
- setState(
352
- 'currentTimelineIndex',
353
- parseInt(nextTimelineIndex)
354
- );
355
-
356
- setTimeout(() => {
357
- this.updateToNextTimeline();
358
- }, 100);
359
- VideoUtils.playReverseVideo(
360
- parseInt(nextTimelineIndex),
361
- () => {
362
- allElements.forEach(
363
- (elm) =>
364
- (elm.style.display = 'block')
365
- );
366
- nextTimeline.play();
367
- }
368
- );
369
- } else {
370
- if (tweenElementType == 'VIDEO') {
371
- currentTimeline.pause();
372
- setTimeout(() => {
373
- currentTimeline.reverse();
374
- }, 1000);
375
-
376
- setState(
377
- 'currentTimelineIndex',
378
- parseInt(nextTimelineIndex)
379
- );
380
- setTimeout(() => {
381
- this.updateToNextTimeline();
382
- }, 100);
383
- VideoUtils.playReverseVideo(
384
- parseInt(nextTimelineIndex),
385
- () => {
386
- allElements.forEach(
387
- (elm) =>
388
- (elm.style.display =
389
- 'block')
390
- );
391
- nextTimeline.play();
392
- }
393
- );
394
- } else if (tweenElementType == 'IMAGE') {
395
- currentTimeline.pause();
396
- currentTimeline.reverse();
397
- setState(
398
- 'currentTimelineIndex',
399
- parseInt(nextTimelineIndex)
400
- );
401
- this.updateToNextTimeline();
402
- nextTimeline.play();
403
- }
404
- }
405
- } else {
406
- if (tweenElementType == 'VIDEO') {
407
- setState(
408
- 'currentTimelineIndex',
409
- parseInt(nextTimelineIndex)
410
- );
411
-
412
- VideoUtils.handleVideoForward(false, () => {
413
- setTimeout(() => {
414
- this.updateToNextTimeline();
415
- }, 100);
416
-
417
- currentTimeline.pause();
418
- nextTimeline.play(0);
419
- });
420
- } else if (tweenElementType == 'IMAGE') {
421
- setState(
422
- 'currentTimelineIndex',
423
- parseInt(nextTimelineIndex)
424
- );
425
- this.updateToNextTimeline();
426
- currentTimeline.pause();
427
- nextTimeline.play(0);
428
- }
429
- }
430
- }
431
-
432
- //Temporary Scroll Out Approach
433
- if (nextTimelineIndex === timelines.length - 1) {
434
- if (block.dataset.enableScrollOut == 1) {
435
- setTimeout(() => {
436
- setState('timelinesVisited', true);
437
- TouchScrollEventManager.removeScrollLockScreen();
438
- smoothScrollToTarget(block.nextElementSibling);
439
- }, block.dataset.scrollOutDelay * 1000);
440
- }
441
- }
442
-
443
- setTimeout(() => {
444
- if (nextTimelineIndex === timelineElements.length - 1) {
445
- return;
446
- }
447
- setState('canSwipe', true);
448
- }, 3000);
449
- },
450
- fadeToBlack: function (callback) {
451
- let overlay = block.querySelector(
452
- '.animated-sections__transition-overlay'
453
- );
454
- overlay.classList.add('active');
455
- setTimeout(() => {
456
- callback();
457
- setTimeout(() => {
458
- overlay.classList.remove('active');
459
- }, 1000);
460
- }, 500);
461
- },
462
- rebuildTweens: function () {
463
- this.createTimelinesAndNavigation();
464
- this.navigateToTimeline(getState('currentTimelineIndex'));
465
- },
466
- getFigmaDimensions: function () {
467
- let figmaWidth,
468
- figmaHeight,
469
- widthRatio,
470
- heightRatio,
471
- scaleFactorWidth,
472
- scaleFactorHeight;
473
-
474
- let actualCanvasWidth = elementCanvas.offsetWidth;
475
- let actualCanvasHeight = elementCanvas.offsetHeight;
476
-
477
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
478
- figmaWidth = figmaMobileWidth;
479
- figmaHeight = figmaMobileHeight;
480
- } else {
481
- figmaWidth = figmaDesktopWidth;
482
- figmaHeight = figmaDesktopHeight;
483
- }
484
-
485
- widthRatio = actualCanvasWidth / figmaWidth;
486
- heightRatio = actualCanvasHeight / figmaHeight;
487
-
488
- scaleFactorWidth = actualCanvasWidth / figmaWidth;
489
- scaleFactorHeight = actualCanvasHeight / figmaHeight;
490
-
491
- return {
492
- figmaWidth,
493
- figmaHeight,
494
- widthRatio,
495
- heightRatio,
496
- scaleFactorWidth,
497
- scaleFactorHeight
498
- };
499
- },
500
- navigateToTimeline: function (index) {
501
- if (index >= 0 && index < timelineElements.length) {
502
- timelines.forEach((timeline) => timeline.pause());
503
- const increment =
504
- index - getState('currentTimelineIndex');
505
- this.changeTimeline(increment);
506
- } else {
507
- this.changeTimeline(index);
508
- }
509
- },
510
- updateToNextTimeline: function () {
511
- ContentManager.contentFrame();
512
-
513
- if (swiperEnabled == 'true') {
514
- this.handleSwiper(getState('currentTimelineIndex'));
515
- ContentManager.swiperFrame();
516
- }
517
-
518
- createBackButton(getState('currentTimelineIndex'));
519
- // updateUrl('currentTimelineIndex');
520
- this.timelineNavUpdateNavigation(
521
- getState('currentTimelineIndex')
522
- );
523
- },
524
- timelineNavUpdateNavigation: function (timelineIndex) {
525
- dots.forEach((dot, index) => {
526
- dot.classList.toggle('active', index === timelineIndex);
527
-
528
- if (
529
- dot.classList.contains(
530
- 'hide_from_timeline_navigation'
531
- )
532
- ) {
533
- dot.remove();
534
- } else {
535
- dot.style.display = 'block';
536
- }
537
- });
538
-
539
- menuItems.forEach((name, index) => {
540
- if (!name) {
541
- console.error(
542
- "Error: Found undefined 'menuItem' at index",
543
- index
544
- );
545
- } else {
546
- name.classList.toggle(
547
- 'selected',
548
- index === timelineIndex
549
- );
550
- name.style.display =
551
- index === timelineIndex ||
552
- index === timelineIndex - 1 ||
553
- (index === timelineIndex + 1 &&
554
- timelineIndex !== menuItems.length - 1)
555
- ? 'flex'
556
- : 'none';
557
- }
558
- });
559
-
560
- if (timelineNavWrapper && dots[timelineIndex]) {
561
- timelineNavWrapper.style.opacity = dots[
562
- timelineIndex
563
- ].classList.contains('hide_from_timeline_navigation')
564
- ? 0
565
- : 'var(--timeline-nav-opacity)';
566
- }
567
- },
568
- handleSwiper: function () {
569
- const swiperSlides = SwiperManager.swiper.slides;
570
- swiperSlides.forEach((slide) => {
571
- if (
572
- parseInt(slide.dataset.slideId) ===
573
- getState('currentTimelineIndex')
574
- ) {
575
- SwiperManager.swiper.slideTo(slide.currentIndex);
576
- const overlayColor = slide.dataset.color;
577
- swiperOverlay.className = '';
578
- swiperOverlay.classList.add(
579
- 'animated-sections__swiper-content-overlay'
580
- );
581
- swiperOverlay.classList.add(
582
- 'animated-sections__swiper-content-overlay--' +
583
- overlayColor
584
- );
585
- }
586
- });
587
- }
588
- };
589
- const VideoUtils = {
590
- calculateSeconds: function (timeString, defaultSeconds = 0) {
591
- if (timeString) {
592
- let timeParts = timeString.split(':');
593
- return (
594
- parseInt(timeParts[0]) * 60 + parseInt(timeParts[1])
595
- );
596
- }
597
- return defaultSeconds;
598
- },
599
- pauseAllVideos: function () {
600
- allElements.forEach((elm) => {
601
- if (elm.tagName === 'VIDEO') {
602
- elm.pause();
603
- }
604
- });
605
- },
606
- saveVideoData: function () {
607
- const videoElementData = [];
608
-
609
- timelineElements.forEach((step, index) => {
610
- const stepData = {
611
- stepIndex: index,
612
- videoElements: []
613
- };
614
-
615
- allElements.forEach((elm) => {
616
- const animation = step.dataset.animation;
617
- const animationObj = JSON.parse(animation);
618
- const obj = animationObj.find(
619
- (o) => o.name === elm.dataset.assetName
620
- );
621
-
622
- if (obj) {
623
- let animationName = obj.name;
624
- let animationUrl = elm.src;
625
-
626
- let isLoaded = elm.dataset.isLoaded === 'true';
627
-
628
- stepData.videoElements.push({
629
- name: animationName,
630
- autoplay: obj.autoplay,
631
- url: animationUrl,
632
- startpos: obj.startpos,
633
- loop: obj.loop,
634
- endpos: obj.endpos,
635
- reversevideo: obj.reversevideo,
636
- activevideo: obj.enable_video_slide,
637
- isLoaded: isLoaded
638
- });
639
- }
640
- });
641
-
642
- videoElementData.push(stepData);
643
- });
644
-
645
- return videoElementData;
646
- },
647
- addVideoSource: function (videoElement, sourceUrl, type) {
648
- let source = document.createElement('source');
649
- source.src = sourceUrl;
650
- source.type = type;
651
- videoElement.appendChild(source);
652
- },
653
- handleVideoForward: function (fromReverse = false, callback) {
654
- this.pauseAllVideos();
655
- let nestedVideoData = this.saveVideoData();
656
- let currentStepData =
657
- nestedVideoData[getState('currentTimelineIndex')];
658
-
659
- if (currentStepData && currentStepData.videoElements) {
660
- allElements.forEach(async (element) => {
661
- let foundElement =
662
- currentStepData.videoElements.find(
663
- (data) =>
664
- element.dataset.assetName === data.name
665
- );
666
-
667
- if (foundElement) {
668
- let videoElement;
669
- if (foundElement.autoplay) {
670
- videoElement = allElements.find(
671
- (el) =>
672
- el.dataset.assetName ===
673
- foundElement.name
674
- );
675
-
676
- if (videoElement) {
677
- videoElement.loop = foundElement.loop;
678
- videoElement.muted = true;
679
- videoElement._currentAnimation =
680
- foundElement.name;
681
-
682
- if (
683
- videoElement.currentSrc !==
684
- foundElement.url
685
- ) {
686
- videoElement.load();
687
- }
688
-
689
- videoElement.onloadeddata = () => {
690
- if (foundElement.autoplay) {
691
- if (
692
- videoElement.readyState >= 2
693
- ) {
694
- setTimeout(() => {
695
- videoElement.play();
696
- }, 250);
697
- }
698
- }
699
-
700
- if (
701
- typeof callback === 'function'
702
- ) {
703
- callback();
704
- }
705
- };
706
-
707
- videoElement.ontimeupdate = () => {
708
- let secondsEnd =
709
- this.calculateSeconds(
710
- foundElement.endpos,
711
- videoElement.duration
712
- );
713
- if (
714
- videoElement.currentTime >=
715
- secondsEnd
716
- ) {
717
- if (foundElement.loop) {
718
- videoElement.currentTime =
719
- this.calculateSeconds(
720
- foundElement.startpos
721
- );
722
- } else {
723
- videoElement.pause();
724
- }
725
- }
726
- };
727
-
728
- if (fromReverse) {
729
- this.setVideoToEnd(videoElement);
730
- }
731
- }
732
- }
733
- }
734
- });
735
- }
736
- },
737
- playReverseVideo: function (timelineIndex, callback) {
738
- let nestedVideoData = this.saveVideoData();
739
- let relevantStepData = nestedVideoData[timelineIndex + 1];
740
-
741
- let activeVideoElement =
742
- relevantStepData.videoElements.find(
743
- (ve) => ve.autoplay
744
- );
745
-
746
- if (activeVideoElement) {
747
- let originalVideoElement;
748
- if (window.innerWidth >= MOBILE_BREAKPOINT) {
749
- originalVideoElement = document.querySelector(
750
- `.animated-sections__foreground-element--desktop[data-asset-name="${activeVideoElement.name}"]`
751
- );
752
- } else {
753
- originalVideoElement = document.querySelector(
754
- `.animated-sections__foreground-element--mobile[data-asset-name="${activeVideoElement.name}"]`
755
- );
756
- }
757
- let reverseVideoElement = document.querySelector(
758
- `[data-asset-name="${activeVideoElement.name}_reverse"]`
759
- );
760
-
761
- if (reverseVideoElement && originalVideoElement) {
762
- let computedStyle =
763
- window.getComputedStyle(originalVideoElement);
764
- for (let key of computedStyle) {
765
- reverseVideoElement.style[key] =
766
- computedStyle[key];
767
- }
768
-
769
- reverseVideoElement.style.opacity = '1';
770
- reverseVideoElement.style.visibility = 'visible';
771
- reverseVideoElement.muted = true;
772
- reverseVideoElement.autoplay = true;
773
- reverseVideoElement.load();
774
- reverseVideoElement.onloadedmetadata = () => {
775
- reverseVideoElement.currentTime = 0;
776
- reverseVideoElement.play();
777
- allElements.forEach(
778
- (elm) => (elm.style.display = 'none')
779
- );
780
- this.handleVideoForward(true);
781
- };
782
-
783
- reverseVideoElement.onended = () => {
784
- reverseVideoElement.style.visibility = 'hidden';
785
- originalVideoElement.currentTime = 0;
786
-
787
- if (typeof callback === 'function') {
788
- callback();
789
- }
790
- };
791
- } else {
792
- if (typeof callback === 'function') {
793
- callback();
794
- }
795
- }
796
- }
797
- },
798
- setVideoToEnd: function (videoElement) {
799
- return new Promise((resolve, reject) => {
800
- if (!videoElement)
801
- return reject('Video element not provided');
802
-
803
- const setEndPosition = () => {
804
- if (videoElement.seekable.length === 0) {
805
- setTimeout(setEndPosition, 100);
806
- } else {
807
- videoElement.currentTime = Math.max(
808
- 0,
809
- videoElement.duration - 0.1
810
- );
811
- resolve();
812
- }
813
- };
814
-
815
- setEndPosition();
816
- });
817
- },
818
- preloadAllVideoSources: function () {
819
- let nestedVideoData = this.saveVideoData();
820
- let timelineIndex = getState('currentTimelineIndex');
821
-
822
- if (nestedVideoData[timelineIndex]) {
823
- let stepData = nestedVideoData[timelineIndex];
824
-
825
- if (stepData && stepData.videoElements) {
826
- stepData.videoElements.forEach((videoData) => {
827
- let videoElement;
828
- if (window.innerWidth >= MOBILE_BREAKPOINT) {
829
- videoElement = document.querySelector(
830
- `.animated-sections__foreground-element--desktop[data-asset-name="${videoData.name}"]`
831
- );
832
- } else {
833
- videoElement = document.querySelector(
834
- `.animated-sections__foreground-element--mobile[data-asset-name="${videoData.name}"]`
835
- );
836
- }
837
-
838
- if (videoElement) {
839
- if (
840
- videoElement &&
841
- videoElement.dataset.originalSource
842
- ) {
843
- if (isSafari()) {
844
- let safariSource =
845
- videoElement.dataset
846
- .safariSource;
847
- if (safariSource) {
848
- this.addVideoSource(
849
- videoElement,
850
- safariSource,
851
- 'video/mp4; codecs="hvc1"'
852
- );
853
- }
854
- } else {
855
- let sourceType =
856
- videoElement.dataset.originalSource.endsWith(
857
- '.webm'
858
- )
859
- ? 'video/webm'
860
- : 'video/mp4';
861
- this.addVideoSource(
862
- videoElement,
863
- videoElement.dataset
864
- .originalSource,
865
- sourceType
866
- );
867
- }
868
- }
869
-
870
- if (
871
- videoElement &&
872
- videoElement.dataset.reverseSource
873
- ) {
874
- let reverseElement =
875
- document.createElement('video');
876
- reverseElement.muted = true;
877
- reverseElement.dataset.assetName =
878
- videoData.name + '_reverse';
879
- reverseElement.preload = 'auto';
880
- reverseElement.style.opacity = '0';
881
- reverseElement.playsInline = true;
882
- reverseElement.setAttribute(
883
- 'muted',
884
- ''
885
- );
886
- reverseElement.setAttribute(
887
- 'autoplay',
888
- 'autoplay'
889
- );
890
-
891
- if (isSafari()) {
892
- let safariSource =
893
- videoElement.dataset
894
- .reverseSourceSafari;
895
- if (safariSource) {
896
- this.addVideoSource(
897
- reverseElement,
898
- safariSource,
899
- 'video/mp4; codecs="hvc1"'
900
- );
901
- }
902
- } else {
903
- let sourceType =
904
- videoElement.dataset.reverseSource.endsWith(
905
- '.webm'
906
- )
907
- ? 'video/webm'
908
- : 'video/mp4';
909
- this.addVideoSource(
910
- reverseElement,
911
- videoElement.dataset
912
- .reverseSource,
913
- sourceType
914
- );
915
- }
916
-
917
- if (elementCanvas) {
918
- elementCanvas.appendChild(
919
- reverseElement
920
- );
921
- }
922
- }
923
- }
924
- });
925
- }
926
- }
927
- }
928
- };
929
- const TimelineNavigation = {
930
- init: function () {
931
- const hideFromNavData = JSON.parse(
932
- block.dataset.hideFromNavSlides
933
- );
934
- this.timelineIdsToHide = hideFromNavData;
935
-
936
- this.toggleItemVisibility(this.timelineIdsToHide);
937
- this.toggleFirstThreeItems();
938
- this.timelineNavClickListener();
939
- this.updateAllNavTimelines();
940
- },
941
- toggleItemVisibility: function (timelineIdsToHide) {
942
- dots.forEach((dot, index) => {
943
- const stringIndex = (index + 1).toString();
944
- if (timelineIdsToHide.includes(stringIndex)) {
945
- dot.classList.add('hide_from_timeline_navigation');
946
- }
947
- });
948
- menuItems.forEach((item, index) => {
949
- const stringIndex = (index + 1).toString();
950
- if (timelineIdsToHide.includes(stringIndex)) {
951
- item.classList.add('hide_from_timeline_navigation');
952
- }
953
- });
954
- },
955
- toggleFirstThreeItems: function () {
956
- const firstThreeItems = [...menuItems].slice(0, 3);
957
- firstThreeItems.forEach(
958
- (name) => (name.style.display = 'flex')
959
- );
960
- },
961
- timelineNavClickListener: function () {
962
- const items = [...dots, ...menuItems];
963
- items.forEach((item, index) => {
964
- item.addEventListener('click', () =>
965
- this.timelineNavHandleClick(item, index, items)
966
- );
967
- });
968
- },
969
- timelineNavHandleClick: function (item) {
970
- if (!getState('canSwipe')) {
971
- return;
972
- }
973
- const targetStepIndex =
974
- parseInt(item.getAttribute('data-step')) - 1;
975
- const currentStepIndex = getState('currentTimelineIndex');
976
- const stepDifference = targetStepIndex - currentStepIndex;
977
-
978
- if (
979
- Math.abs(stepDifference) > 1 ||
980
- Math.abs(stepDifference) < -1
981
- ) {
982
- TimelineManager.fadeToBlack(() => {
983
- TimelineManager.navigateToTimeline(targetStepIndex);
984
- });
985
- } else if (Math.abs(stepDifference) == 0) {
986
- return;
987
- } else {
988
- TimelineManager.changeTimeline(stepDifference);
989
- }
990
- },
991
- updateAllNavTimelines: function () {
992
- allNavTimelines = Array.from(menuItems)
993
- .filter(
994
- (item) =>
995
- !item.classList.contains(
996
- 'hide_from_timeline_navigation'
997
- )
998
- )
999
- .map(
1000
- (item) =>
1001
- parseInt(item.getAttribute('data-step')) - 1
1002
- );
1003
- }
1004
- };
1005
- const ContentManager = {
1006
- contentFrame: function () {
1007
- const currentTimelineIndex = getState(
1008
- 'currentTimelineIndex'
1009
- );
1010
- contentElements.forEach((elm) => {
1011
- const contentDelay = elm.dataset.slideDelay;
1012
- const parts = contentDelay.split(':');
1013
- const seconds =
1014
- parseInt(parts[0], 10) * 60 +
1015
- parseInt(parts[1], 10);
1016
- const delay = seconds * 200;
1017
-
1018
- const contentActiveSlidesValue = elm.dataset.slideId;
1019
- const contentActiveSlidesArray = JSON.parse(
1020
- contentActiveSlidesValue
1021
- );
1022
- const parsedContentSlidesArray =
1023
- contentActiveSlidesArray.map((value) =>
1024
- parseInt(value)
1025
- );
1026
- const isActive = parsedContentSlidesArray.includes(
1027
- currentTimelineIndex + 1
1028
- );
1029
-
1030
- setTimeout(() => {
1031
- elm.classList.toggle('active', isActive);
1032
- }, delay);
1033
- });
1034
- },
1035
- swiperFrame: function () {
1036
- const currentTimelineIndex = getState(
1037
- 'currentTimelineIndex'
1038
- );
1039
- const swiperSlides = SwiperManager.swiper.slides;
1040
-
1041
- swiperSlides.forEach((slide) => {
1042
- if (slide.dataset.slideId == currentTimelineIndex + 1) {
1043
- SwiperManager.swiper.slideTo(
1044
- slide.dataset.swiperSlideId - 1
1045
- );
1046
- }
1047
- });
1048
-
1049
- const swiperActiveSlidesValue =
1050
- swiperWrapper.dataset.swiperActiveSlides;
1051
-
1052
- const swiperDelay = swiperWrapper.dataset.swiperDelay;
1053
- const swiperParts = swiperDelay.split(':');
1054
- const swiperSeconds =
1055
- parseInt(swiperParts[0], 10) * 60 +
1056
- parseInt(swiperParts[1], 10);
1057
- const swiperDelayTimeout = swiperSeconds * 2500;
1058
-
1059
- const swiperActiveSlidesArray = JSON.parse(
1060
- swiperActiveSlidesValue
1061
- );
1062
- const parsedSwiperActiveSlidesArray =
1063
- swiperActiveSlidesArray.map((value) => parseInt(value));
1064
- const isActive = parsedSwiperActiveSlidesArray.includes(
1065
- currentTimelineIndex + 1
1066
- );
1067
-
1068
- if (isActive) {
1069
- setTimeout(() => {
1070
- swiperWrapper.classList.add('active');
1071
- }, swiperDelayTimeout);
1072
- } else {
1073
- swiperWrapper.classList.remove('active');
1074
- }
1075
- }
1076
- };
1077
- const ScrollTypeSwitch = {
1078
- init: function (block) {
1079
- const isFullScreen =
1080
- parseFloat(block.dataset.fullscreen) === 1;
1081
-
1082
- if (isFullScreen) {
1083
- document.body.classList.add(
1084
- 'animated-sections-fullscreen'
1085
- );
1086
- startBlock();
1087
- TouchScrollEventManager.addScrollLockScreen();
1088
- } else {
1089
- document.body.classList.remove(
1090
- 'animated-sections-fullscreen'
1091
- );
1092
- startBlock();
1093
- }
1094
- }
1095
- };
1096
- const TouchScrollEventManager = {
1097
- decelerateScroll: function () {
1098
- this.scrollVelocity *= 0.9;
1099
-
1100
- if (Math.abs(this.scrollVelocity) < 1) {
1101
- this.isDecelerating = false;
1102
- return;
1103
- }
1104
-
1105
- window.scrollBy(0, this.scrollVelocity);
1106
-
1107
- requestAnimationFrame(this.decelerateScroll.bind(this));
1108
- },
1109
- isElementAtTop: function (element) {
1110
- const headerHeight = siteHeader.offsetHeight;
1111
- const bounding = element.getBoundingClientRect();
1112
- return bounding.top <= headerHeight; // Adjusted to account for header height
1113
- },
1114
- isElementAtBottom: function (element) {
1115
- const bounding = element.getBoundingClientRect();
1116
- return bounding.bottom >= window.innerHeight;
1117
- },
1118
- addScrollLockScreen: function () {
1119
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
1120
- isTouching = false;
1121
- window.removeEventListener(
1122
- 'touchstart',
1123
- handleTouchStart
1124
- );
1125
- window.removeEventListener(
1126
- 'touchmove',
1127
- handleTouchMove
1128
- );
1129
- window.removeEventListener('touchend', handleTouchEnd);
1130
- window.removeEventListener('wheel', handleWheelEvent);
1131
-
1132
- TimelineManager.navigateToTimeline(
1133
- getState('currentTimelineIndex')
1134
- );
1135
- } else {
1136
- window.removeEventListener('wheel', handleWheelEvent);
1137
- }
1138
-
1139
- document.body.classList.add(
1140
- 'animated-sections-scroll-lock'
1141
- );
1142
- // siteHeader.classList.add('animated-sections-header-lock');
1143
- smoothScrollToTarget(block);
1144
-
1145
- setTimeout(() => {
1146
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
1147
- block.addEventListener(
1148
- 'touchstart',
1149
- handleTimelineTouchStart
1150
- );
1151
- block.addEventListener(
1152
- 'touchmove',
1153
- handleTimelineTouchMove
1154
- );
1155
- block.addEventListener(
1156
- 'touchend',
1157
- handleTimelineTouchEnd
1158
- );
1159
- block.addEventListener(
1160
- 'wheel',
1161
- handleTimelineScrollControl
1162
- );
1163
- } else {
1164
- block.addEventListener(
1165
- 'wheel',
1166
- handleTimelineScrollControl
1167
- );
1168
- }
1169
- }, 100);
1170
- },
1171
- removeScrollLockScreen: function () {
1172
- document.body.classList.remove(
1173
- 'animated-sections-scroll-lock'
1174
- );
1175
- // siteHeader.classList.remove('animated-sections-header-lock');
1176
-
1177
- setState('canSwipe', false);
1178
-
1179
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
1180
- block.removeEventListener(
1181
- 'touchstart',
1182
- handleTimelineTouchStart
1183
- );
1184
- block.removeEventListener(
1185
- 'touchmove',
1186
- handleTimelineTouchMove
1187
- );
1188
- block.removeEventListener(
1189
- 'touchend',
1190
- handleTimelineTouchEnd
1191
- );
1192
- block.removeEventListener(
1193
- 'wheel',
1194
- handleTimelineScrollControl
1195
- );
1196
- } else {
1197
- block.removeEventListener(
1198
- 'wheel',
1199
- handleTimelineScrollControl
1200
- );
1201
- }
1202
-
1203
- setTimeout(() => {
1204
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
1205
- window.addEventListener(
1206
- 'touchstart',
1207
- handleTouchStart
1208
- );
1209
- window.addEventListener(
1210
- 'touchmove',
1211
- handleTouchMove
1212
- );
1213
- window.addEventListener('touchend', handleTouchEnd);
1214
- window.addEventListener('wheel', handleWheelEvent);
1215
- } else {
1216
- window.addEventListener('wheel', handleWheelEvent);
1217
- }
1218
- }, 2000);
1219
- }
1220
- };
1221
- const addEventListeners = {
1222
- init: function () {
1223
- backButton.addEventListener('click', handleBackButtonClick);
1224
- nextButton.addEventListener('click', handleNextButtonClick);
1225
- if (window.innerWidth <= MOBILE_BREAKPOINT) {
1226
- window.addEventListener(
1227
- 'touchstart',
1228
- handleTouchStart,
1229
- {passive: true}
1230
- );
1231
- window.addEventListener('touchmove', handleTouchMove, {
1232
- passive: true
1233
- });
1234
- window.addEventListener('touchend', handleTouchEnd, {
1235
- passive: true
1236
- });
1237
- window.addEventListener('wheel', handleWheelEvent);
1238
- } else {
1239
- window.addEventListener(
1240
- 'resize',
1241
- debounce(handleResize, 100)
1242
- );
1243
- window.addEventListener('wheel', handleWheelEvent);
1244
- }
1245
-
1246
- if (contentButtons) {
1247
- contentButtons.forEach((button) => {
1248
- button.addEventListener(
1249
- 'click',
1250
- handleContentButtonClick
1251
- );
1252
- });
1253
- }
1254
- }
1255
- };
1256
-
1257
- // Initialize
1258
- function init() {
1259
- setState('canSwipe', false);
1260
- setState('currentTimelineIndex', 0);
1261
- setState('timelinesVisited', false);
1262
- setState('lastSwipeFalseTime', 0);
1263
-
1264
- addEventListeners.init();
1265
- VideoUtils.preloadAllVideoSources();
1266
-
1267
- TimelineManager.createTimelinesAndNavigation();
1268
- console.log('init');
1269
- TimelineNavigation.init();
1270
- ScrollTypeSwitch.init(block);
1271
-
1272
- if (swiperEnabled == 'true') {
1273
- SwiperManager.init();
1274
- SwiperManager.initSwiperPaginationListener();
1275
- }
1276
- }
1277
-
1278
- // Utility Functions
1279
- function getState(key) {
1280
- return state[key];
1281
- }
1282
- function setState(key, value) {
1283
- console.log(key);
1284
- if (key === 'canSwipe') {
1285
- if (value === false) {
1286
- state[key] = value;
1287
- updateScrollWrapperClass(value);
1288
- state.lastSwipeFalseTime = Date.now();
1289
- } else if (value === true) {
1290
- const timeSinceLastFalse =
1291
- Date.now() - state.lastSwipeFalseTime;
1292
- if (timeSinceLastFalse >= 2000) {
1293
- state[key] = value;
1294
- updateScrollWrapperClass(value);
1295
- }
1296
- }
1297
- } else {
1298
- state[key] = value;
1299
- }
1300
- }
1301
- function debounce(func, wait) {
1302
- let timeout;
1303
- return function executedFunction(...args) {
1304
- const later = () => {
1305
- clearTimeout(timeout);
1306
- func(...args);
1307
- };
1308
- clearTimeout(timeout);
1309
- timeout = setTimeout(later, wait);
1310
- };
1311
- }
1312
- function smoothScrollToTarget(target) {
1313
- let targetPosition = target.offsetTop;
1314
- const startPosition = window.pageYOffset;
1315
- const distance = targetPosition - startPosition;
1316
- let startTime = null;
1317
-
1318
- const scrollSpeed = Math.abs(scrollVelocity);
1319
- const dynamicDurationFactor = 250;
1320
- const duration = Math.max(
1321
- 300,
1322
- Math.min(
1323
- 1000,
1324
- (distance / (scrollSpeed + 1)) * dynamicDurationFactor
1325
- )
1326
- );
1327
-
1328
- function animation(currentTime) {
1329
- if (startTime === null) startTime = currentTime;
1330
- const timeElapsed = currentTime - startTime;
1331
- let run = easeOutCubic(
1332
- timeElapsed,
1333
- startPosition,
1334
- distance,
1335
- duration
1336
- );
1337
-
1338
- if (
1339
- (distance > 0 && run > targetPosition) ||
1340
- (distance < 0 && run < targetPosition)
1341
- ) {
1342
- run = targetPosition;
1343
- }
1344
-
1345
- window.scrollTo(0, run);
1346
- if (timeElapsed < duration && run !== targetPosition) {
1347
- requestAnimationFrame(animation);
1348
- }
1349
- }
1350
-
1351
- function easeOutCubic(t, b, c, d) {
1352
- t /= d;
1353
- t--;
1354
- return c * (t * t * t + 1) + b;
1355
- }
1356
-
1357
- requestAnimationFrame(animation);
1358
- }
1359
- function isSafari() {
1360
- return (
1361
- /^((?!chrome|android).)*safari/i.test(
1362
- navigator.userAgent
1363
- ) ||
1364
- (/iPad|iPhone|iPod/.test(navigator.userAgent) &&
1365
- !window.MSStream)
1366
- );
1367
- }
1368
- function handleWheelEvent(event) {
1369
- let currentScrollTop =
1370
- window.pageYOffset || document.documentElement.scrollTop;
1371
- let wheelScrollDelta = event.deltaY;
1372
- checkBlockPosition(wheelScrollDelta, currentScrollTop);
1373
- }
1374
- function handleTimelineScrollControl() {
1375
- if (!getState('canSwipe')) {
1376
- return;
1377
- }
1378
-
1379
- scrollAmount += event.deltaY;
1380
-
1381
- const currentTimelineIndex = getState('currentTimelineIndex');
1382
- const totalTimelines = timelineElements.length;
1383
-
1384
- if (scrollAmount >= 100) {
1385
- // Move forward
1386
- if (currentTimelineIndex === totalTimelines - 1) {
1387
- TouchScrollEventManager.removeScrollLockScreen();
1388
- setState('timelinesVisited', true);
1389
- } else {
1390
- TimelineManager.changeTimeline(1);
1391
- scrollAmount = 5;
1392
- }
1393
- } else if (scrollAmount <= -100) {
1394
- // Move backward
1395
- if (currentTimelineIndex === 0) {
1396
- TouchScrollEventManager.removeScrollLockScreen();
1397
- setState('timelinesVisited', false);
1398
- } else {
1399
- TimelineManager.changeTimeline(-1);
1400
- scrollAmount = -5;
1401
- }
1402
- }
1403
-
1404
- if (scrollAmount > 0) {
1405
- scrollBar.style.top = '0%';
1406
- scrollBar.style.bottom = '';
1407
- } else {
1408
- scrollBar.style.top = '';
1409
- scrollBar.style.bottom = '0%';
1410
- }
1411
-
1412
- const scrollPercentage = (Math.abs(scrollAmount) / 100) * 100;
1413
-
1414
- scrollBar.style.height = `${scrollPercentage}%`;
1415
- }
1416
- function handleTouchStart(event) {
1417
- if (event.touches.length === 1) {
1418
- lastTouchY = event.touches[0].clientY;
1419
- isTouching = true;
1420
- }
1421
- }
1422
- function handleTouchMove(event) {
1423
- if (isTouching) {
1424
- let currentScrollTop =
1425
- window.pageYOffset ||
1426
- document.documentElement.scrollTop;
1427
- let touchScrollDelta =
1428
- event.touches[0].clientY - lastTouchY;
1429
- if (
1430
- checkBlockPosition(touchScrollDelta, currentScrollTop)
1431
- ) {
1432
- if (event.cancelable) {
1433
- event.preventDefault();
1434
- event.stopPropagation(); // Stop event from propagating
1435
- }
1436
- isTouching = false;
1437
- return;
1438
- }
1439
- lastTouchY = event.touches[0].clientY;
1440
- }
1441
- }
1442
-
1443
- function handleTouchEnd() {
1444
- isTouching = false;
1445
- // Start listening to scroll events
1446
- window.addEventListener('scroll', handleScroll, {
1447
- passive: true
1448
- });
1449
- }
1450
-
1451
- function handleScroll() {
1452
- let currentScrollTop =
1453
- window.pageYOffset || document.documentElement.scrollTop;
1454
- if (checkBlockPosition(0, currentScrollTop)) {
1455
- // Take action if the block position is exceeded
1456
- // For example, scroll back to a safe position
1457
- window.removeEventListener('scroll', handleScroll); // Remove the event listener if needed
1458
- }
1459
- }
1460
-
1461
- function handleTimelineTouchStart(e) {
1462
- if (!getState('canSwipe')) {
1463
- return;
1464
- }
1465
- e.preventDefault();
1466
- e.stopPropagation();
1467
- touchStartY = e.touches[0].screenY;
1468
- }
1469
- function handleTimelineTouchMove(e) {
1470
- // if (!getState('canSwipe')) {
1471
- // return;
1472
- // }
1473
- // e.preventDefault();
1474
- // e.stopPropagation();
1475
- }
1476
- function handleTimelineTouchEnd(e) {
1477
- if (!getState('canSwipe')) {
1478
- return;
1479
- }
1480
- touchEndY = e.changedTouches[0].screenY;
1481
-
1482
- e.preventDefault();
1483
- e.stopPropagation();
1484
- const currentTimelineIndex = getState('currentTimelineIndex');
1485
- const totalTimelines = timelineElements.length;
1486
-
1487
- if (touchEndY < touchStartY) {
1488
- if (currentTimelineIndex === totalTimelines - 1) {
1489
- TouchScrollEventManager.removeScrollLockScreen();
1490
- setState('timelinesVisited', true);
1491
- } else {
1492
- TimelineManager.changeTimeline(1);
1493
- }
1494
- } else if (touchEndY > touchStartY) {
1495
- if (currentTimelineIndex === 0) {
1496
- TouchScrollEventManager.removeScrollLockScreen();
1497
- setState('timelinesVisited', false);
1498
- } else {
1499
- TimelineManager.changeTimeline(-1);
1500
- }
1501
- }
1502
-
1503
- const scrollPercentage = Math.abs(touchEndY) * 100;
1504
- scrollBar.style.height = `${scrollPercentage}%`;
1505
- if (touchEndY > 0) {
1506
- scrollBar.style.left = '0%';
1507
- scrollBar.style.right = '';
1508
- } else {
1509
- scrollBar.style.left = '';
1510
- scrollBar.style.right = '0%';
1511
- }
1512
- }
1513
-
1514
- //UI Functions
1515
- function createBackButton() {
1516
- const slidesJson = JSON.parse(
1517
- block.dataset.slidesToHaveBackButton
1518
- );
1519
- const slides_to_have_back_button = slidesJson;
1520
-
1521
- let showBackButton = false;
1522
- slides_to_have_back_button.forEach((slide) => {
1523
- const stepId = slide;
1524
- if (
1525
- stepId &&
1526
- parseInt(stepId) ===
1527
- getState('currentTimelineIndex') + 1
1528
- ) {
1529
- showBackButton = true;
1530
- }
1531
- });
1532
- if (showBackButton) {
1533
- backButton.style.visibility = 'visible';
1534
- backButton.style.opacity = '1';
1535
- } else {
1536
- backButton.style.opacity = '0';
1537
- backButton.style.visibility = 'hidden';
1538
- }
1539
- }
1540
- function updateScrollWrapperClass(canSwipe) {
1541
- const scrollWrapper = block.querySelector(
1542
- '.animated-sections__progress-inner'
1543
- );
1544
- if (scrollWrapper) {
1545
- if (canSwipe) {
1546
- scrollWrapper.classList.remove('loading');
1547
- if (SwiperManager.swiper) {
1548
- SwiperManager.swiper.pagination.el.classList.remove(
1549
- 'loading'
1550
- );
1551
- }
1552
- } else {
1553
- scrollWrapper.classList.add('loading');
1554
- if (SwiperManager.swiper) {
1555
- SwiperManager.swiper.pagination.el.classList.add(
1556
- 'loading'
1557
- );
1558
- }
1559
- }
1560
- }
1561
- }
1562
-
1563
- //Event Listener Functions
1564
- function handleResize() {
1565
- TimelineManager.rebuildTweens();
1566
- if (getState('canSwipe')) {
1567
- smoothScrollToTarget(block);
1568
- }
1569
- }
1570
- function handleBackButtonClick() {
1571
- if (getState('canSwipe')) {
1572
- TimelineManager.navigateToTimeline(
1573
- backButton.dataset.backButton
1574
- );
1575
- }
1576
- }
1577
- function handleNextButtonClick() {
1578
- if (getState('canSwipe')) {
1579
- TimelineManager.changeTimeline(1);
1580
- }
1581
- }
1582
- function handleContentButtonClick() {
1583
- if (getState('canSwipe')) {
1584
- TimelineManager.navigateToTimeline(
1585
- this.dataset.contentButton
1586
- );
1587
- }
1588
- }
1589
-
1590
- function startBlock() {
1591
- setState('canSwipe', true);
1592
- TimelineManager.navigateToTimeline(
1593
- getState('currentTimelineIndex')
1594
- );
1595
- // splashScreen.classList.remove('active');
1596
- // uiElementsContainer.classList.remove('disabled');
1597
- }
1598
-
1599
- //Dev Zone
1600
- function checkBlockPosition(scrollDelta, currentScrollTop) {
1601
- TouchScrollEventManager.scrollVelocity = scrollDelta;
1602
- if (currentScrollTop > lastScrollTop) {
1603
- if (!getState('timelinesVisited')) {
1604
- if (TouchScrollEventManager.isElementAtTop(block)) {
1605
- TouchScrollEventManager.addScrollLockScreen(true);
1606
-
1607
- if (!isDecelerating && scrollVelocity !== 0) {
1608
- isDecelerating = true;
1609
- TouchScrollEventManager.decelerateScroll();
1610
- }
1611
- if (!getState('canSwipe')) {
1612
- setTimeout(() => {
1613
- setState('canSwipe', true);
1614
- }, 1000);
1615
- }
1616
- return true;
1617
- }
1618
- }
1619
- } else {
1620
- if (getState('timelinesVisited')) {
1621
- if (TouchScrollEventManager.isElementAtBottom(block)) {
1622
- TouchScrollEventManager.addScrollLockScreen();
1623
-
1624
- setTimeout(() => {
1625
- setState('canSwipe', true);
1626
- }, 1000);
1627
- return true;
1628
- }
1629
- }
1630
- }
1631
- lastScrollTop = currentScrollTop <= 0 ? 0 : currentScrollTop;
1632
- return false;
1633
- }
1634
-
1635
- // Make the magic happen
1636
- init();
1637
- // fadeIn(block);
1638
- });
1639
- } catch (error) {
1640
- console.error(error);
1641
- }
1642
- }