@total_onion/onion-library 3.0.49 → 3.2.0

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 (536) hide show
  1. package/index.js +10 -0
  2. package/onion-loader.js +22 -14
  3. package/onion-modalcontroller/README.md +2 -0
  4. package/onion-modalcontroller/onion-modalcontroller.js +183 -0
  5. package/onion-utils.mjs +18 -19
  6. package/onion-videocontroller/README.md +89 -0
  7. package/{components/fields-core-functions-v3 → onion-videocontroller}/core-functions-v3.scss +1 -1
  8. package/{components/fields-core-mixins-v3 → onion-videocontroller}/core-mixins-v3.scss +2 -2
  9. package/onion-videocontroller/onion-videocontroller.js +240 -0
  10. package/onion-videocontroller/upload-video.mjs +251 -0
  11. package/onion-videocontroller/vc-styles.scss +282 -0
  12. package/onion-videocontroller/vcUtils.mjs +281 -0
  13. package/onion-videocontroller/vimeo-video.mjs +106 -0
  14. package/onion-videocontroller/youtube-video.mjs +157 -0
  15. package/package.json +29 -7
  16. package/.github/workflows/npm-publish.yml +0 -38
  17. package/__spec__/copyBlockComponent.spec.js +0 -94
  18. package/__spec__/copyFile.spec.js +0 -78
  19. package/__spec__/copyFileKeeping.spec.js +0 -74
  20. package/__spec__/files/source.txt +0 -1
  21. package/__spec__/update-all-components.spec.js +0 -99
  22. package/__spec__/update-component.spec.js +0 -165
  23. package/assembleAssetList.js +0 -69
  24. package/build-library.js +0 -4
  25. package/checkBuildAssets.js +0 -18
  26. package/components/block-accent-image-v3/accent-image-v3.js +0 -7
  27. package/components/block-accent-image-v3/accent-image-v3.scss +0 -4
  28. package/components/block-accent-image-v3/accent-image-v3.twig +0 -137
  29. package/components/block-accent-image-v3/group_6890e1233ff2d.json +0 -81
  30. package/components/block-accordion-v3/accordion-v3.js +0 -119
  31. package/components/block-accordion-v3/accordion-v3.scss +0 -197
  32. package/components/block-accordion-v3/accordion-v3.twig +0 -51
  33. package/components/block-accordion-v3/group_6888d2f0b230b.json +0 -458
  34. package/components/block-back-to-top-button-v3/back-to-top-button-v3.js +0 -12
  35. package/components/block-back-to-top-button-v3/back-to-top-button-v3.scss +0 -68
  36. package/components/block-back-to-top-button-v3/back-to-top-button-v3.twig +0 -40
  37. package/components/block-back-to-top-button-v3/group_63e24e04a1e61.json +0 -323
  38. package/components/block-betterreviews-display-v3/betterreviews-display-v3.js +0 -10
  39. package/components/block-betterreviews-display-v3/betterreviews-display-v3.scss +0 -104
  40. package/components/block-betterreviews-display-v3/betterreviews-display-v3.twig +0 -24
  41. package/components/block-betterreviews-display-v3/group_6892880fc1a00.json +0 -182
  42. package/components/block-block-interactions-v3/block-interactions-v3.js +0 -53
  43. package/components/block-block-interactions-v3/block-interactions-v3.scss +0 -32
  44. package/components/block-block-interactions-v3/block-interactions-v3.twig +0 -55
  45. package/components/block-block-interactions-v3/group_687e1575ba23d.json +0 -700
  46. package/components/block-carousel-multi-layout-v3/carousel-multi-layout-v3.js +0 -243
  47. package/components/block-carousel-multi-layout-v3/carousel-multi-layout-v3.scss +0 -156
  48. package/components/block-carousel-multi-layout-v3/carousel-multi-layout-v3.twig +0 -146
  49. package/components/block-carousel-multi-layout-v3/group_686bd42e551d6.json +0 -578
  50. package/components/block-cocktail-recipe-v3/cocktail-recipe-v3.js +0 -127
  51. package/components/block-cocktail-recipe-v3/cocktail-recipe-v3.scss +0 -345
  52. package/components/block-cocktail-recipe-v3/cocktail-recipe-v3.twig +0 -93
  53. package/components/block-cocktail-recipe-v3/group_68fff19fa4dd0.json +0 -202
  54. package/components/block-cover-link-v3/cover-link-v3.js +0 -7
  55. package/components/block-cover-link-v3/cover-link-v3.scss +0 -10
  56. package/components/block-cover-link-v3/cover-link-v3.twig +0 -16
  57. package/components/block-cover-link-v3/group_687192c28b7eb.json +0 -96
  58. package/components/block-divider-v3/divider-v3.js +0 -8
  59. package/components/block-divider-v3/divider-v3.scss +0 -103
  60. package/components/block-divider-v3/divider-v3.twig +0 -45
  61. package/components/block-divider-v3/group_686b919696bfe.json +0 -891
  62. package/components/block-featured-image-gallery-v3/featured-image-gallery-v3.js +0 -44
  63. package/components/block-featured-image-gallery-v3/featured-image-gallery-v3.scss +0 -93
  64. package/components/block-featured-image-gallery-v3/featured-image-gallery-v3.twig +0 -43
  65. package/components/block-featured-image-gallery-v3/group_5f91897095b42.json +0 -88
  66. package/components/block-form-selection-v3/form-selection-v3.js +0 -78
  67. package/components/block-form-selection-v3/form-selection-v3.scss +0 -38
  68. package/components/block-form-selection-v3/form-selection-v3.twig +0 -84
  69. package/components/block-form-selection-v3/group_68752e7949e53.json +0 -351
  70. package/components/block-gradient-layer-v3/gradient-layer-v3.js +0 -7
  71. package/components/block-gradient-layer-v3/gradient-layer-v3.scss +0 -8
  72. package/components/block-gradient-layer-v3/gradient-layer-v3.twig +0 -78
  73. package/components/block-gradient-layer-v3/group_686fdadc85df4.json +0 -206
  74. package/components/block-group-container-v3/group-container-v3.js +0 -7
  75. package/components/block-group-container-v3/group-container-v3.php +0 -14
  76. package/components/block-group-container-v3/group-container-v3.scss +0 -45
  77. package/components/block-group-container-v3/group-container-v3.twig +0 -70
  78. package/components/block-group-container-v3/group_6865578ada499.json +0 -3660
  79. package/components/block-lottie-content-v3/group_687197027216d.json +0 -177
  80. package/components/block-lottie-content-v3/lottie-content-v3.js +0 -25
  81. package/components/block-lottie-content-v3/lottie-content-v3.scss +0 -2
  82. package/components/block-lottie-content-v3/lottie-content-v3.twig +0 -15
  83. package/components/block-market-selector-v3/group_68752075dd831.json +0 -129
  84. package/components/block-market-selector-v3/market-selector-v3.js +0 -7
  85. package/components/block-market-selector-v3/market-selector-v3.scss +0 -120
  86. package/components/block-market-selector-v3/market-selector-v3.twig +0 -40
  87. package/components/block-modal-form-v3/modal-form-v3.js +0 -59
  88. package/components/block-modal-form-v3/modal-form-v3.scss +0 -6
  89. package/components/block-modal-form-v3/modal-form-v3.twig +0 -30
  90. package/components/block-nav-menu-container-v3/group_687e00b45e9a3.json +0 -187
  91. package/components/block-nav-menu-container-v3/nav-menu-container-v3.js +0 -7
  92. package/components/block-nav-menu-container-v3/nav-menu-container-v3.scss +0 -3
  93. package/components/block-nav-menu-container-v3/nav-menu-container-v3.twig +0 -23
  94. package/components/block-post-info-v3/group_6866429531436.json +0 -3112
  95. package/components/block-post-info-v3/post-info-v3/bazaarvoice-inline.twig +0 -13
  96. package/components/block-post-info-v3/post-info-v3/better-reviews.twig +0 -15
  97. package/components/block-post-info-v3/post-info-v3/divider.twig +0 -8
  98. package/components/block-post-info-v3/post-info-v3/drink-description.twig +0 -10
  99. package/components/block-post-info-v3/post-info-v3/global-image.twig +0 -22
  100. package/components/block-post-info-v3/post-info-v3/gradient-layer.twig +0 -78
  101. package/components/block-post-info-v3/post-info-v3/gradient-overlay.twig +0 -10
  102. package/components/block-post-info-v3/post-info-v3/post-author.twig +0 -17
  103. package/components/block-post-info-v3/post-info-v3/post-buy-now.twig +0 -116
  104. package/components/block-post-info-v3/post-info-v3/post-categories.twig +0 -15
  105. package/components/block-post-info-v3/post-info-v3/post-headline.twig +0 -15
  106. package/components/block-post-info-v3/post-info-v3/post-image.twig +0 -47
  107. package/components/block-post-info-v3/post-info-v3/post-info-description.twig +0 -15
  108. package/components/block-post-info-v3/post-info-v3/post-info-subtitle.twig +0 -14
  109. package/components/block-post-info-v3/post-info-v3/post-link.twig +0 -42
  110. package/components/block-post-info-v3/post-info-v3/post-name.twig +0 -12
  111. package/components/block-post-info-v3/post-info-v3/post-publish-date.twig +0 -12
  112. package/components/block-post-info-v3/post-info-v3/post-tags.twig +0 -24
  113. package/components/block-post-info-v3/post-info-v3/post-text-alternative-style.twig +0 -16
  114. package/components/block-post-info-v3/post-info-v3/post-title.twig +0 -15
  115. package/components/block-post-info-v3/post-info-v3/post-video.twig +0 -27
  116. package/components/block-post-info-v3/post-info-v3/reservebar-add-to-cart.twig +0 -32
  117. package/components/block-post-info-v3/post-info-v3/shopify-add-to-cart.twig +0 -31
  118. package/components/block-post-info-v3/post-info-v3/social-networks.twig +0 -33
  119. package/components/block-post-info-v3/post-info-v3/spacer-v3.twig +0 -9
  120. package/components/block-post-info-v3/post-info-v3.js +0 -10
  121. package/components/block-post-info-v3/post-info-v3.scss +0 -210
  122. package/components/block-post-info-v3/post-info-v3.twig +0 -67
  123. package/components/block-product-info-v3/group_68909995b6550.json +0 -3544
  124. package/components/block-product-info-v3/product-info-v3/product-abv.twig +0 -14
  125. package/components/block-product-info-v3/product-info-v3/product-cask-type-label.twig +0 -14
  126. package/components/block-product-info-v3/product-info-v3/product-cask-type.twig +0 -14
  127. package/components/block-product-info-v3/product-info-v3/product-colour-label.twig +0 -14
  128. package/components/block-product-info-v3/product-info-v3/product-colour.twig +0 -14
  129. package/components/block-product-info-v3/product-info-v3/product-description.twig +0 -14
  130. package/components/block-product-info-v3/product-info-v3/product-finish-label.twig +0 -14
  131. package/components/block-product-info-v3/product-info-v3/product-finish.twig +0 -14
  132. package/components/block-product-info-v3/product-info-v3/product-headline.twig +0 -14
  133. package/components/block-product-info-v3/product-info-v3/product-image.twig +0 -43
  134. package/components/block-product-info-v3/product-info-v3/product-name.twig +0 -14
  135. package/components/block-product-info-v3/product-info-v3/product-nose-label.twig +0 -14
  136. package/components/block-product-info-v3/product-info-v3/product-nose.twig +0 -14
  137. package/components/block-product-info-v3/product-info-v3/product-pair-with-label.twig +0 -14
  138. package/components/block-product-info-v3/product-info-v3/product-pair-with.twig +0 -14
  139. package/components/block-product-info-v3/product-info-v3/product-palate-label.twig +0 -14
  140. package/components/block-product-info-v3/product-info-v3/product-palate.twig +0 -14
  141. package/components/block-product-info-v3/product-info-v3/product-taste-label.twig +0 -14
  142. package/components/block-product-info-v3/product-info-v3/product-taste.twig +0 -14
  143. package/components/block-product-info-v3/product-info-v3/product-volume.twig +0 -14
  144. package/components/block-product-info-v3/product-info-v3/spacer-v3.twig +0 -9
  145. package/components/block-product-info-v3/product-info-v3.js +0 -7
  146. package/components/block-product-info-v3/product-info-v3.scss +0 -171
  147. package/components/block-product-info-v3/product-info-v3.twig +0 -43
  148. package/components/block-raw-html-v3/group_686ba68d603a2.json +0 -212
  149. package/components/block-raw-html-v3/raw-html-v3.js +0 -7
  150. package/components/block-raw-html-v3/raw-html-v3.scss +0 -2
  151. package/components/block-raw-html-v3/raw-html-v3.twig +0 -17
  152. package/components/block-responsive-table-v3/group_6617ecc987ddd.json +0 -394
  153. package/components/block-responsive-table-v3/responsive-table-v3.js +0 -7
  154. package/components/block-responsive-table-v3/responsive-table-v3.scss +0 -49
  155. package/components/block-responsive-table-v3/responsive-table-v3.twig +0 -47
  156. package/components/block-scrolling-banner-v3/group_68e67fca1ec80.json +0 -664
  157. package/components/block-scrolling-banner-v3/scrolling-banner-v3.js +0 -144
  158. package/components/block-scrolling-banner-v3/scrolling-banner-v3.scss +0 -104
  159. package/components/block-scrolling-banner-v3/scrolling-banner-v3.twig +0 -72
  160. package/components/block-section-separator-v3/group_6874c8d79b84b.json +0 -576
  161. package/components/block-section-separator-v3/section-separator-v3.js +0 -7
  162. package/components/block-section-separator-v3/section-separator-v3.scss +0 -42
  163. package/components/block-section-separator-v3/section-separator-v3.twig +0 -46
  164. package/components/block-single-column-container-v3/group_6887640458d61.json +0 -481
  165. package/components/block-single-column-container-v3/single-column-container-v3.js +0 -7
  166. package/components/block-single-column-container-v3/single-column-container-v3.scss +0 -14
  167. package/components/block-single-column-container-v3/single-column-container-v3.twig +0 -30
  168. package/components/block-single-responsive-image-v3/group_6867bcf24c2fc.json +0 -128
  169. package/components/block-single-responsive-image-v3/single-responsive-image-v3.js +0 -7
  170. package/components/block-single-responsive-image-v3/single-responsive-image-v3.scss +0 -9
  171. package/components/block-single-responsive-image-v3/single-responsive-image-v3.twig +0 -24
  172. package/components/block-site-copyright-notice-v3/group_66296c3716b4f.json +0 -304
  173. package/components/block-site-copyright-notice-v3/index.html +0 -33
  174. package/components/block-site-copyright-notice-v3/site-copyright-notice-v3.js +0 -58
  175. package/components/block-site-copyright-notice-v3/site-copyright-notice-v3.scss +0 -21
  176. package/components/block-site-copyright-notice-v3/site-copyright-notice-v3.twig +0 -30
  177. package/components/block-site-logo-container-v3/group_687e3b887b508.json +0 -175
  178. package/components/block-site-logo-container-v3/site-logo-container-v3.js +0 -7
  179. package/components/block-site-logo-container-v3/site-logo-container-v3.scss +0 -29
  180. package/components/block-site-logo-container-v3/site-logo-container-v3.twig +0 -40
  181. package/components/block-site-title-and-tagline-v3/site-title-and-tagline-v3.js +0 -7
  182. package/components/block-site-title-and-tagline-v3/site-title-and-tagline-v3.scss +0 -16
  183. package/components/block-site-title-and-tagline-v3/site-title-and-tagline-v3.twig +0 -24
  184. package/components/block-smash-balloon-social-media-v3/smash-balloon-social-media-v3.js +0 -8
  185. package/components/block-smash-balloon-social-media-v3/smash-balloon-social-media-v3.scss +0 -31
  186. package/components/block-smash-balloon-social-media-v3/smash-balloon-social-media-v3.twig +0 -18
  187. package/components/block-social-networks-v3/group_6891d4d7db414.json +0 -146
  188. package/components/block-social-networks-v3/social-networks-v3.js +0 -7
  189. package/components/block-social-networks-v3/social-networks-v3.scss +0 -7
  190. package/components/block-social-networks-v3/social-networks-v3.twig +0 -24
  191. package/components/block-spacer-v3/group_686b8cb48c708.json +0 -131
  192. package/components/block-spacer-v3/spacer-v3.js +0 -8
  193. package/components/block-spacer-v3/spacer-v3.scss +0 -19
  194. package/components/block-spacer-v3/spacer-v3.twig +0 -13
  195. package/components/block-spotify-embed-v3/group_67d04c4c4cf78.json +0 -120
  196. package/components/block-spotify-embed-v3/spotify-embed-v3.js +0 -7
  197. package/components/block-spotify-embed-v3/spotify-embed-v3.scss +0 -11
  198. package/components/block-spotify-embed-v3/spotify-embed-v3.twig +0 -23
  199. package/components/block-standard-content-v3/group_68655756737c9.json +0 -344
  200. package/components/block-standard-content-v3/standard-content-v3.js +0 -39
  201. package/components/block-standard-content-v3/standard-content-v3.scss +0 -11
  202. package/components/block-standard-content-v3/standard-content-v3.twig +0 -46
  203. package/components/block-sticky-buy-cta-v3/group_68b061bb56543.json +0 -172
  204. package/components/block-sticky-buy-cta-v3/sticky-buy-cta-v3.js +0 -7
  205. package/components/block-sticky-buy-cta-v3/sticky-buy-cta-v3.scss +0 -2
  206. package/components/block-sticky-buy-cta-v3/sticky-buy-cta-v3.twig +0 -92
  207. package/components/block-sub-group-container-v3/group_686ceba7d6066.json +0 -2142
  208. package/components/block-sub-group-container-v3/sub-group-container-v3.js +0 -9
  209. package/components/block-sub-group-container-v3/sub-group-container-v3.scss +0 -27
  210. package/components/block-sub-group-container-v3/sub-group-container-v3.twig +0 -59
  211. package/components/block-video-content-v3/group_687190b8d26df.json +0 -169
  212. package/components/block-video-content-v3/video-content-v3.js +0 -12
  213. package/components/block-video-content-v3/video-content-v3.scss +0 -123
  214. package/components/block-video-content-v3/video-content-v3.twig +0 -26
  215. package/components/component-accent-image-v3/accent-image-v3.twig +0 -119
  216. package/components/component-accent-image-v3/group_686cd5547efd2.json +0 -975
  217. package/components/component-accent-text-v3/accent-text-v3-extra.scss +0 -2
  218. package/components/component-accent-text-v3/accent-text-v3.scss +0 -60
  219. package/components/component-accent-text-v3/group_686b91fed8f5f.json +0 -220
  220. package/components/component-accordion-v3/accordion-v3.js +0 -113
  221. package/components/component-accordion-v3/accordion-v3.scss +0 -189
  222. package/components/component-accordion-v3/accordion-v3.twig +0 -39
  223. package/components/component-accordion-v3/group_66ab7edfc6d63.json +0 -535
  224. package/components/component-animations-style-v3/animations-style-v3.twig +0 -5
  225. package/components/component-animations-v3/animations-v3.scss +0 -161
  226. package/components/component-animations-v3/animations-v3.twig +0 -19
  227. package/components/component-animations-v3/group_689f39c37980a.json +0 -499
  228. package/components/component-better-reviews-v3/better-reviews-v3.scss +0 -137
  229. package/components/component-block-padding-v3/block-padding-v3.scss +0 -64
  230. package/components/component-block-padding-v3/block-padding-v3.twig +0 -33
  231. package/components/component-block-padding-v3/group_689f66f3e26df.json +0 -535
  232. package/components/component-block-settings-v3/block-settings-v3.scss +0 -46
  233. package/components/component-block-settings-v3/block-settings-v3.twig +0 -34
  234. package/components/component-block-settings-v3/group_689f649af2ac4.json +0 -983
  235. package/components/component-blockquote-v3/blockquote-v3.scss +0 -54
  236. package/components/component-box-shadow-v3/box-shadow-v3.scss +0 -12
  237. package/components/component-buy-now-button-v3/buy-now-buttons-v3.twig +0 -69
  238. package/components/component-carousel-fields-v3/group_686fd30f4d873.json +0 -3025
  239. package/components/component-child-block-video-fields/group_6852a4f384204.json +0 -536
  240. package/components/component-content-box-settings-v3/content-box-settings-v3.scss +0 -205
  241. package/components/component-content-box-settings-v3/content-box-settings-v3.twig +0 -156
  242. package/components/component-content-box-settings-v3/group_686e6ec702acc.json +0 -1729
  243. package/components/component-content-box-v3/content-box-v3.js +0 -6
  244. package/components/component-content-box-v3/content-box-v3.scss +0 -28
  245. package/components/component-content-box-v3/content-box-v3.twig +0 -23
  246. package/components/component-content-box-v3/group_686b8a4f1fe5d.json +0 -568
  247. package/components/component-content-image-v3/content-image-v3.scss +0 -33
  248. package/components/component-content-image-v3/content-image-v3.twig +0 -77
  249. package/components/component-content-image-v3/group_68722935c428f.json +0 -647
  250. package/components/component-core-body-close-v3/core-body-close-v3.twig +0 -2
  251. package/components/component-core-body-open-v3/core-body-open-v3.twig +0 -32
  252. package/components/component-core-group-container-styles-v3/core-group-container-styles-v3.scss +0 -48
  253. package/components/component-core-head-v3/core-head-v3.twig +0 -62
  254. package/components/component-cta-selection-v3/cta-selection-v3.twig +0 -256
  255. package/components/component-cta-selection-v3/group_686e93eb832a6.json +0 -1117
  256. package/components/component-e-shop-settings-v3/e-shop-settings-v3.twig +0 -114
  257. package/components/component-element-positioning-v3/element-positioning-v3.scss +0 -41
  258. package/components/component-element-positioning-v3/element-positioning-v3.twig +0 -42
  259. package/components/component-element-positioning-v3/group_6882281544263.json +0 -635
  260. package/components/component-endpoints/endpoints.php +0 -32
  261. package/components/component-flex-layout-container-v3/flex-layout-container-v3.scss +0 -38
  262. package/components/component-flex-layout-container-v3/flex-layout-container-v3.twig +0 -28
  263. package/components/component-flex-layout-container-v3/group_6887a026bbc33.json +0 -773
  264. package/components/component-global-content-max-width-v3/global-content-max-width-v3.twig +0 -10
  265. package/components/component-global-content-max-width-v3/group_63c83de4f0a99.json +0 -58
  266. package/components/component-gradient-overlay-v3/gradient-overlay-v3.scss +0 -43
  267. package/components/component-gradient-overlay-v3/gradient-overlay-v3.twig +0 -58
  268. package/components/component-gradient-overlay-v3/group_686fd9ca50b63.json +0 -495
  269. package/components/component-grid-gap-mults-v3/grid-gap-mults-v3.twig +0 -10
  270. package/components/component-grid-gap-mults-v3/group_689221b94ce69.json +0 -220
  271. package/components/component-grid-layout-container-v3/grid-layout-container-v3.scss +0 -154
  272. package/components/component-grid-layout-container-v3/grid-layout-container-v3.twig +0 -88
  273. package/components/component-grid-layout-container-v3/group_6882282e65bf2.json +0 -1525
  274. package/components/component-grid-layout-element-v3/grid-layout-element-v3.scss +0 -47
  275. package/components/component-grid-layout-element-v3/grid-layout-element-v3.twig +0 -23
  276. package/components/component-grid-layout-element-v3/group_68822860bda9f.json +0 -728
  277. package/components/component-nav-menu-v3/group_68da703f710ff.json +0 -432
  278. package/components/component-nav-menu-v3/nav-menu-v3.scss +0 -43
  279. package/components/component-nav-menu-v3/nav-menu-v3.twig +0 -75
  280. package/components/component-responsive-image-v3/group_6867bc53f1da8.json +0 -1515
  281. package/components/component-responsive-image-v3/responsive-image-v3.scss +0 -63
  282. package/components/component-responsive-image-v3/responsive-image-v3.twig +0 -71
  283. package/components/component-responsive-picture-element-v3/responsive-picture-element-v3.twig +0 -35
  284. package/components/component-responsive-show-hide/responsive-show-hide-v3.twig +0 -9
  285. package/components/component-social-media-share-v3/social-media-share-v3-extra.scss +0 -6
  286. package/components/component-social-media-share-v3/social-media-share-v3.scss +0 -131
  287. package/components/component-social-networks-v3/social-networks-v3.scss +0 -73
  288. package/components/component-social-networks-v3/social-networks-v3.twig +0 -43
  289. package/components/component-text-editor-settings-container-classes-v3/text-editor-settings-container-classes-v3.twig +0 -9
  290. package/components/component-text-editor-settings-element-classes-v3/text-editor-settings-element-classes-v3.twig +0 -13
  291. package/components/component-text-editor-settings-v3/group_687a4e2334e37.json +0 -1377
  292. package/components/component-text-editor-settings-variables-v3/text-editor-settings-variables-v3.twig +0 -61
  293. package/components/component-video-component-v3/video-component-v3.twig +0 -90
  294. package/components/component-video-fields-v3/group_6872282f44634.json +0 -1013
  295. package/components/component-video-trigger-button-v3/video-trigger-button-v3.twig +0 -14
  296. package/components/component-wysiwyg-editor-v3/group_6867e153af466.json +0 -127
  297. package/components/component-wysiwyg-editor-v3/wysiwyg-editor-v3.twig +0 -18
  298. package/components/core-block-editor-assets-v3/core-block-editor-assets-v3.php +0 -14
  299. package/components/core-core-block-render-function-v3/core-block-render-function-v3.php +0 -39
  300. package/components/core-core-design-settings-v3/core-design-settings-v3.php +0 -43
  301. package/components/core-core-post-overrides-v3/core-post-overrides-v3.php +0 -21
  302. package/components/core-core-themes/core-themes-v3.php +0 -68
  303. package/components/core-core-typography-v3/core-typography-v3.php +0 -239
  304. package/components/core-globals/globals.php +0 -39
  305. package/components/entrypoint-entry-point-classes-v3/entry-point-classes-v3.twig +0 -12
  306. package/components/entrypoint-entry-point-html-v3/entry-point-html-v3.twig +0 -19
  307. package/components/entrypoint-entry-point-style-v3/entry-point-style-v3.twig +0 -11
  308. package/components/fields-acf-wysiwyg-options-v3/acf-wysiwyg-options-v3.php +0 -221
  309. package/components/fields-animations-v3/animations-v3.scss +0 -127
  310. package/components/fields-archive-pages-v3/group_635e777ce46d4.json +0 -150
  311. package/components/fields-cocktail-info-v3/group_64c29b7f188ca.json +0 -686
  312. package/components/fields-content-container-settings-v3/content-container-settings-v3.scss +0 -213
  313. package/components/fields-content-container-v3/content-container-v3.js +0 -96
  314. package/components/fields-content-container-v3/content-container-v3.scss +0 -31
  315. package/components/fields-core-critical-v3/core-critical-v3.scss +0 -13
  316. package/components/fields-core-css-modules-v3/core-css-modules-v3.scss +0 -13
  317. package/components/fields-core-css-sizing-vars-v3/core-css-sizing-vars-v3.scss +0 -125
  318. package/components/fields-core-cta-v3/core-cta-v3.scss +0 -276
  319. package/components/fields-core-generic-v3/core-generic-v3.scss +0 -299
  320. package/components/fields-core-root-variables-v3/core-root-variables-v3.scss +0 -47
  321. package/components/fields-core-typography-mixins-v3/core-typography-mixins-v3.scss +0 -1080
  322. package/components/fields-core-typography-v3/core-typography-v3.scss +0 -457
  323. package/components/fields-core-wordpress-block-editor-preview-v3/core-wordpress-block-editor-preview-v3.js +0 -270
  324. package/components/fields-core-wordpress-block-editor-preview-v3/core-wordpress-block-editor-preview-v3.scss +0 -106
  325. package/components/fields-drink-responsibly-notice-v3/group_68751257883ad.json +0 -266
  326. package/components/fields-dynamic-critical-css-v3/group_65abcd463e8d0.json +0 -126
  327. package/components/fields-e-shop-settings-v3/e-shop-settings-v3.twig +0 -87
  328. package/components/fields-e-shop-settings-v3/group_650b24b4e623d.json +0 -803
  329. package/components/fields-global-preload-v3/group_65e0bd35e781b.json +0 -289
  330. package/components/fields-image-management-service-v3/group_677813165b633.json +0 -149
  331. package/components/fields-ingredients-list/group_6900f19dadebf.json +0 -225
  332. package/components/fields-modal-popup-content-v3/group_689876f1ee3fc.json +0 -403
  333. package/components/fields-modal-popup-content-v3/modal-popup-content-v3.twig +0 -18
  334. package/components/fields-post-info-v3/group_6867bbe167dd2.json +0 -1089
  335. package/components/fields-product-info-v3/group_689098dd3a131.json +0 -721
  336. package/components/fields-upload-filesize-limit-v3/group_659d259760a1d.json +0 -56
  337. package/components/fields-video-management-services-v3/group_67b4cac05cb30.json +0 -146
  338. package/components/webc-counter-display/counter-display.css +0 -2
  339. package/components/webc-counter-display/counter-display.html +0 -5
  340. package/components/webc-counter-display/counter-display.js +0 -30
  341. package/components/webc-counter-display/index.html +0 -30
  342. package/components/webc-layout-container/index.html +0 -108
  343. package/components/webc-layout-container/layout-container.css +0 -9
  344. package/components/webc-layout-container/layout-container.html +0 -5
  345. package/components/webc-layout-container/layout-container.js +0 -22
  346. package/components/webc-loadmore-trigger/index.html +0 -30
  347. package/components/webc-loadmore-trigger/loadmore-trigger.css +0 -20
  348. package/components/webc-loadmore-trigger/loadmore-trigger.html +0 -6
  349. package/components/webc-loadmore-trigger/loadmore-trigger.js +0 -34
  350. package/components/webc-post-carousel-display-module/index.html +0 -30
  351. package/components/webc-post-carousel-display-module/post-carousel-display-module.css +0 -36
  352. package/components/webc-post-carousel-display-module/post-carousel-display-module.html +0 -5
  353. package/components/webc-post-carousel-display-module/post-carousel-display-module.js +0 -48
  354. package/components/webc-post-filter-module/dev-content/amber.webp +0 -0
  355. package/components/webc-post-filter-module/dev-content/bluey.webp +0 -0
  356. package/components/webc-post-filter-module/dev-content/chucky-vanille.webp +0 -0
  357. package/components/webc-post-filter-module/dev-content/dev-content.js +0 -347
  358. package/components/webc-post-filter-module/dev-content/dev-contentlocal.js +0 -362
  359. package/components/webc-post-filter-module/dev-content/fat-gigio-basket-life.webp +0 -0
  360. package/components/webc-post-filter-module/dev-content/fat-gigio-kitten.webp +0 -0
  361. package/components/webc-post-filter-module/dev-content/fat-gigio-sleepy.webp +0 -0
  362. package/components/webc-post-filter-module/dev-content/kai-lounging.webp +0 -0
  363. package/components/webc-post-filter-module/dev-content/kai-selfie.webp +0 -0
  364. package/components/webc-post-filter-module/dev-content/kai.webp +0 -0
  365. package/components/webc-post-filter-module/dev-content/lulu-mad.webp +0 -0
  366. package/components/webc-post-filter-module/dev-content/lulu-serious.webp +0 -0
  367. package/components/webc-post-filter-module/dev-content/martha-on-the-mat.webp +0 -0
  368. package/components/webc-post-filter-module/dev-content/max-on-the-mat.webp +0 -0
  369. package/components/webc-post-filter-module/dev-content/mephy-dreams-of-mice.webp +0 -0
  370. package/components/webc-post-filter-module/dev-content/mr-business-doing-work.webp +0 -0
  371. package/components/webc-post-filter-module/dev-content/mr-business-on-top.webp +0 -0
  372. package/components/webc-post-filter-module/dev-content/peanut-keeping-an-eye.webp +0 -0
  373. package/components/webc-post-filter-module/dev-content/pete-at-work.webp +0 -0
  374. package/components/webc-post-filter-module/dev-content/pete-bath.webp +0 -0
  375. package/components/webc-post-filter-module/dev-content/pete-dinosaur.webp +0 -0
  376. package/components/webc-post-filter-module/dev-content/pete-lawn.webp +0 -0
  377. package/components/webc-post-filter-module/dev-content/pete-snacks.webp +0 -0
  378. package/components/webc-post-filter-module/dev-content/ramses-kitten.webp +0 -0
  379. package/components/webc-post-filter-module/dev-content/ramses-school-day.webp +0 -0
  380. package/components/webc-post-filter-module/dev-content/ramses-tired.webp +0 -0
  381. package/components/webc-post-filter-module/dev-content/remy-garden-contemplation.webp +0 -0
  382. package/components/webc-post-filter-module/dev-content/sky-field.webp +0 -0
  383. package/components/webc-post-filter-module/dev-content/sky-luxury-2.webp +0 -0
  384. package/components/webc-post-filter-module/dev-content/sky-luxury.webp +0 -0
  385. package/components/webc-post-filter-module/dev-content/sky-puppy-good-dog.webp +0 -0
  386. package/components/webc-post-filter-module/dev-content/sky-puppy-pose.webp +0 -0
  387. package/components/webc-post-filter-module/dev-content/sky-security.webp +0 -0
  388. package/components/webc-post-filter-module/dev-content/vanille-asleep.webp +0 -0
  389. package/components/webc-post-filter-module/dev-content/vanille-bass.webp +0 -0
  390. package/components/webc-post-filter-module/dev-content/vanille-party.webp +0 -0
  391. package/components/webc-post-filter-module/dev-content/vanille-puppy-eyes.webp +0 -0
  392. package/components/webc-post-filter-module/dev-content/vanille-puppy.webp +0 -0
  393. package/components/webc-post-filter-module/index.html +0 -30
  394. package/components/webc-post-filter-module/post-filter-module.css +0 -59
  395. package/components/webc-post-filter-module/post-filter-module.html +0 -13
  396. package/components/webc-post-filter-module/post-filter-module.js +0 -359
  397. package/components/webc-post-filter-module-no-group/index.html +0 -30
  398. package/components/webc-post-filter-module-no-group/post-filter-module-no-group.css +0 -59
  399. package/components/webc-post-filter-module-no-group/post-filter-module-no-group.html +0 -13
  400. package/components/webc-post-filter-module-no-group/post-filter-module-no-group.js +0 -312
  401. package/components/webc-post-grid-display-module/index.html +0 -30
  402. package/components/webc-post-grid-display-module/post-grid-display-module.css +0 -42
  403. package/components/webc-post-grid-display-module/post-grid-display-module.html +0 -6
  404. package/components/webc-post-grid-display-module/post-grid-display-module.js +0 -48
  405. package/components/webc-ptfg-9000/index.html +0 -108
  406. package/components/webc-ptfg-9000/ptfg-9000.css +0 -14
  407. package/components/webc-ptfg-9000/ptfg-9000.html +0 -1
  408. package/components/webc-ptfg-9000/ptfg-9000.js +0 -42
  409. package/components/webc-responsive-image/index.html +0 -108
  410. package/components/webc-responsive-image/layout-container.css +0 -9
  411. package/components/webc-responsive-image/layout-container.js +0 -22
  412. package/components/webc-responsive-image/responsive-image.html +0 -15
  413. package/components/webc-slot-test/slot-test.html +0 -25
  414. package/components/webc-text-input-trigger/index.html +0 -30
  415. package/components/webc-text-input-trigger/text-input-trigger.css +0 -6
  416. package/components/webc-text-input-trigger/text-input-trigger.html +0 -4
  417. package/components/webc-text-input-trigger/text-input-trigger.js +0 -33
  418. package/components/webc-toggle-trigger/index.html +0 -30
  419. package/components/webc-toggle-trigger/toggle-trigger.css +0 -13
  420. package/components/webc-toggle-trigger/toggle-trigger.html +0 -8
  421. package/components/webc-toggle-trigger/toggle-trigger.js +0 -53
  422. package/createDynamicBlockScss-v3.js +0 -25
  423. package/createJsAssets-v3.js +0 -35
  424. package/createJsAssets.js +0 -31
  425. package/createNewBlock.js +0 -131
  426. package/createNewChildBlock2.js +0 -142
  427. package/createPreviewScss.js +0 -35
  428. package/datalayer-tools.mjs +0 -2
  429. package/duplicateBlock.js +0 -123
  430. package/esbuild.mjs +0 -87
  431. package/exportAllBlocks.js +0 -144
  432. package/exportBlock.js +0 -109
  433. package/exportChildBlock.js +0 -102
  434. package/exportCustomCachesToLibrary.js +0 -73
  435. package/exportEntrypointToLibrary.js +0 -76
  436. package/exportImagesToLibrary.js +0 -68
  437. package/exportSEOExtrasToLibrary.js +0 -73
  438. package/exportToLibrary.js +0 -548
  439. package/importBlock.js +0 -92
  440. package/importChildBlock.js +0 -76
  441. package/install-component.js +0 -204
  442. package/list-components.js +0 -9
  443. package/new-block-templates/template-block-json.js +0 -37
  444. package/new-block-templates/template-default.js +0 -21
  445. package/new-block-templates/template-js-blank.js +0 -12
  446. package/new-block-templates/template-scss-blank.js +0 -6
  447. package/no-audio.vtt +0 -4
  448. package/onion-loader-dev.js +0 -260
  449. package/onion-loader-local.js +0 -222
  450. package/public/.gitkeep +0 -0
  451. package/public/assetList.mjs +0 -3
  452. package/public/block-accent-image-v3/accent-image-v3.css +0 -2
  453. package/public/block-accent-image-v3/accent-image-v3.js +0 -7
  454. package/public/block-accordion-v3/accordion-v3.css +0 -380
  455. package/public/block-accordion-v3/accordion-v3.js +0 -117
  456. package/public/block-back-to-top-button-v3/back-to-top-button-v3.css +0 -64
  457. package/public/block-back-to-top-button-v3/back-to-top-button-v3.js +0 -12
  458. package/public/block-betterreviews-display-v3/betterreviews-display-v3.css +0 -95
  459. package/public/block-betterreviews-display-v3/betterreviews-display-v3.js +0 -7
  460. package/public/block-block-interactions-v3/block-interactions-v3.css +0 -36
  461. package/public/block-block-interactions-v3/block-interactions-v3.js +0 -44
  462. package/public/block-carousel-multi-layout-v3/carousel-multi-layout-v3.css +0 -187
  463. package/public/block-carousel-multi-layout-v3/carousel-multi-layout-v3.js +0 -185
  464. package/public/block-cocktail-recipe-v3/cocktail-recipe-v3.css +0 -268
  465. package/public/block-cocktail-recipe-v3/cocktail-recipe-v3.js +0 -93
  466. package/public/block-cover-link-v3/cover-link-v3.css +0 -8
  467. package/public/block-cover-link-v3/cover-link-v3.js +0 -7
  468. package/public/block-divider-v3/divider-v3.css +0 -74
  469. package/public/block-divider-v3/divider-v3.js +0 -7
  470. package/public/block-featured-image-gallery-v3/featured-image-gallery-v3.css +0 -98
  471. package/public/block-featured-image-gallery-v3/featured-image-gallery-v3.js +0 -44
  472. package/public/block-form-selection-v3/form-selection-v3.css +0 -31
  473. package/public/block-form-selection-v3/form-selection-v3.js +0 -61
  474. package/public/block-gradient-layer-v3/gradient-layer-v3.css +0 -45
  475. package/public/block-gradient-layer-v3/gradient-layer-v3.js +0 -7
  476. package/public/block-group-container-v3/group-container-v3.css +0 -303
  477. package/public/block-group-container-v3/group-container-v3.js +0 -7
  478. package/public/block-lottie-content-v3/lottie-content-v3.css +0 -0
  479. package/public/block-lottie-content-v3/lottie-content-v3.js +0 -25
  480. package/public/block-market-selector-v3/market-selector-v3.css +0 -136
  481. package/public/block-market-selector-v3/market-selector-v3.js +0 -7
  482. package/public/block-modal-form-v3/modal-form-v3.css +0 -0
  483. package/public/block-modal-form-v3/modal-form-v3.js +0 -44
  484. package/public/block-nav-menu-container-v3/nav-menu-container-v3.css +0 -3
  485. package/public/block-nav-menu-container-v3/nav-menu-container-v3.js +0 -7
  486. package/public/block-post-info-v3/post-info-v3.css +0 -1148
  487. package/public/block-post-info-v3/post-info-v3.js +0 -7
  488. package/public/block-post-type-filter-grid-v3/post-type-filter-grid-v3.css +0 -873
  489. package/public/block-post-type-filter-grid-v3/post-type-filter-grid-v3.js +0 -13
  490. package/public/block-product-info-v3/product-info-v3.css +0 -846
  491. package/public/block-product-info-v3/product-info-v3.js +0 -7
  492. package/public/block-raw-html-v3/raw-html-v3.css +0 -0
  493. package/public/block-raw-html-v3/raw-html-v3.js +0 -7
  494. package/public/block-responsive-table-v3/responsive-table-v3.css +0 -50
  495. package/public/block-responsive-table-v3/responsive-table-v3.js +0 -7
  496. package/public/block-scrolling-banner-v3/scrolling-banner-v3.css +0 -93
  497. package/public/block-scrolling-banner-v3/scrolling-banner-v3.js +0 -118
  498. package/public/block-section-separator-v3/section-separator-v3.css +0 -43
  499. package/public/block-section-separator-v3/section-separator-v3.js +0 -7
  500. package/public/block-single-column-container-v3/single-column-container-v3.css +0 -14
  501. package/public/block-single-column-container-v3/single-column-container-v3.js +0 -7
  502. package/public/block-single-responsive-image-v3/single-responsive-image-v3.css +0 -61
  503. package/public/block-single-responsive-image-v3/single-responsive-image-v3.js +0 -7
  504. package/public/block-site-copyright-notice-v3/site-copyright-notice-v3.css +0 -20
  505. package/public/block-site-copyright-notice-v3/site-copyright-notice-v3.js +0 -44
  506. package/public/block-site-logo-container-v3/site-logo-container-v3.css +0 -18
  507. package/public/block-site-logo-container-v3/site-logo-container-v3.js +0 -7
  508. package/public/block-site-title-and-tagline-v3/site-title-and-tagline-v3.css +0 -12
  509. package/public/block-site-title-and-tagline-v3/site-title-and-tagline-v3.js +0 -7
  510. package/public/block-smash-balloon-social-media-v3/smash-balloon-social-media-v3.css +0 -25
  511. package/public/block-smash-balloon-social-media-v3/smash-balloon-social-media-v3.js +0 -8
  512. package/public/block-social-networks-v3/social-networks-v3.css +0 -74
  513. package/public/block-social-networks-v3/social-networks-v3.js +0 -7
  514. package/public/block-spacer-v3/spacer-v3.css +0 -16
  515. package/public/block-spacer-v3/spacer-v3.js +0 -2
  516. package/public/block-spotify-embed-v3/spotify-embed-v3.css +0 -7
  517. package/public/block-spotify-embed-v3/spotify-embed-v3.js +0 -7
  518. package/public/block-standard-content-v3/standard-content-v3.css +0 -423
  519. package/public/block-standard-content-v3/standard-content-v3.js +0 -7
  520. package/public/block-sticky-buy-cta-v3/sticky-buy-cta-v3.css +0 -0
  521. package/public/block-sticky-buy-cta-v3/sticky-buy-cta-v3.js +0 -7
  522. package/public/block-sub-group-container-v3/sub-group-container-v3.css +0 -288
  523. package/public/block-sub-group-container-v3/sub-group-container-v3.js +0 -2
  524. package/public/block-video-content-v3/video-content-v3.css +0 -102
  525. package/public/block-video-content-v3/video-content-v3.js +0 -11
  526. package/public/dynamicBlockScss-v3.css +0 -6392
  527. package/public/dynamicBlockScss-v3.scss +0 -37
  528. package/public/jsAssets.mjs +0 -4
  529. package/public/publicBundleBase.css +0 -4742
  530. package/public/publicBundleBase.scss +0 -11
  531. package/removeBlock.js +0 -124
  532. package/update-all-components.js +0 -135
  533. package/update-component.js +0 -537
  534. package/update-template.js +0 -537
  535. /package/{.prettierrc → onion-videocontroller/.prettierrc} +0 -0
  536. /package/{breakpoints.scss → onion-videocontroller/breakpoints.scss} +0 -0
@@ -0,0 +1,251 @@
1
+ import {
2
+ hideVideoElement,
3
+ revealVideoElement,
4
+ generateModal,
5
+ resizeDebouncer,
6
+ stopVideos,
7
+ dataLayerPush,
8
+ } from "./vcUtils.mjs";
9
+
10
+ function uploadedVideoInit(videoObject) {
11
+ const {
12
+ videocontainer,
13
+ globalSettings,
14
+ fullscreen,
15
+ autoplay,
16
+ controls,
17
+ muted,
18
+ loop,
19
+ } = videoObject;
20
+ globalSettings.enableDebugLogs && console.log("running uploaded init");
21
+
22
+ const videoPlayer = videocontainer.querySelector(
23
+ ".cblvc-video-container__video-player",
24
+ );
25
+ videoObject.videoplayer = videoPlayer;
26
+ videoObject.elementType = "video";
27
+ if (loop) {
28
+ videoPlayer.setAttribute("loop", true);
29
+ }
30
+ if (controls) {
31
+ videoPlayer.setAttribute("controls", true);
32
+ }
33
+ if (muted) {
34
+ videoPlayer.setAttribute("muted", true);
35
+ }
36
+ if (autoplay) {
37
+ videoPlayer.setAttribute("autoplay", true);
38
+ }
39
+
40
+ if (fullscreen) {
41
+ videoPlayer.removeAttribute("playsinline");
42
+ }
43
+
44
+ videoPlayer.addEventListener("play", () => {
45
+ videoObject.instance.setVideoReadyState(videoObject, true);
46
+ if (!autoplay) {
47
+ stopVideos(videoObject);
48
+ }
49
+ revealVideoElement(videoObject, false);
50
+ if (videoObject.dataLayerPush) {
51
+ if (!videoPlayer.duration) {
52
+ videoPlayer.addEventListener("durationchange", () => {
53
+ dataLayerPush({ eventname: "play", videoObject });
54
+ });
55
+ } else {
56
+ dataLayerPush({ eventname: "play", videoObject });
57
+ }
58
+ }
59
+ });
60
+ videoPlayer.addEventListener("pause", (e) => {
61
+ const target = e.target;
62
+ if (videoObject.dataLayerPush) {
63
+ dataLayerPush({ eventname: "pause", videoObject });
64
+ }
65
+ });
66
+
67
+ videoPlayer.addEventListener("ended", () => {
68
+ if (document.fullscreenElement !== null) {
69
+ if (document.exitFullscreen) {
70
+ document.exitFullscreen();
71
+ }
72
+ }
73
+ hideVideoElement(videoObject);
74
+ if (videoObject.dataLayerPush) {
75
+ dataLayerPush({ eventname: "ended", videoObject });
76
+ }
77
+ });
78
+
79
+ let quarterFired = false;
80
+ let halfwayFired = false;
81
+ let threeQuartersFired = false;
82
+ let completedFired = false;
83
+ videoPlayer.addEventListener("timeupdate", () => {
84
+ if (
85
+ !quarterFired &&
86
+ videoPlayer.currentTime >= videoPlayer.duration * 0.25
87
+ ) {
88
+ quarterFired = true;
89
+ if (videoObject.dataLayerPush) {
90
+ dataLayerPush({ eventname: "progress", videoObject });
91
+ }
92
+ }
93
+ if (!halfwayFired && videoPlayer.currentTime >= videoPlayer.duration / 2) {
94
+ halfwayFired = true;
95
+ if (videoObject.dataLayerPush) {
96
+ dataLayerPush({ eventname: "progress", videoObject });
97
+ }
98
+ }
99
+ if (
100
+ !threeQuartersFired &&
101
+ videoPlayer.currentTime >= videoPlayer.duration * 0.75
102
+ ) {
103
+ threeQuartersFired = true;
104
+ if (videoObject.dataLayerPush) {
105
+ dataLayerPush({ eventname: "progress", videoObject });
106
+ }
107
+ }
108
+ if (quarterFired && !completedFired && videoPlayer.currentTime < 0.2) {
109
+ completedFired = true;
110
+ if (videoObject.dataLayerPush) {
111
+ videoObject.completed = true;
112
+ dataLayerPush({ eventname: "progress", videoObject });
113
+ }
114
+ }
115
+ });
116
+
117
+ if (videoObject.autoplay) {
118
+ triggerUploadedVideo(videoObject);
119
+ }
120
+ }
121
+ function triggerUploadedVideo(videoObject) {
122
+ const { videocontainer, modal, sources, globalSettings, isAdmin } =
123
+ videoObject;
124
+ globalSettings.enableDebugLogs && console.log("triggering upload video");
125
+
126
+ if (modal && !isAdmin) {
127
+ console.log("modal video");
128
+
129
+ globalSettings.enableDebugLogs && console.log("triggering modal");
130
+ generateModal(videoObject);
131
+ const modalVideoElement = videoObject.modalcontainer.querySelector("video");
132
+ modalVideoElement.addEventListener("play", () => {
133
+ revealVideoElement(videoObject, true);
134
+ });
135
+ modalVideoElement.addEventListener("ended", () => {
136
+ hideVideoElement(videoObject, true);
137
+ });
138
+ let currentSource = setSrc(modalVideoElement, sources, false, videoObject);
139
+ resizeDebouncer(() => {
140
+ currentSource = setSrc(
141
+ modalVideoElement,
142
+ sources,
143
+ currentSource,
144
+ videoObject,
145
+ );
146
+ });
147
+ togglePlay(videoObject);
148
+ } else {
149
+ const videoPlayer = videocontainer.querySelector(
150
+ ".cblvc-video-container__video-player",
151
+ );
152
+ globalSettings.enableDebugLogs && console.log("triggering inline video");
153
+ let currentSource = setSrc(videoPlayer, sources, false, videoObject);
154
+ resizeDebouncer(() => {
155
+ currentSource = setSrc(videoPlayer, sources, currentSource, videoObject);
156
+ });
157
+ togglePlay(videoObject);
158
+ }
159
+ }
160
+
161
+ function togglePlay(videoObject) {
162
+ const {
163
+ videocontainer,
164
+ fullscreen,
165
+ isAdmin,
166
+ modalcontainer,
167
+ modal,
168
+ muted,
169
+ autoplay,
170
+ globalSettings,
171
+ } = videoObject;
172
+ globalSettings.enableDebugLogs && console.log("running togglePlay");
173
+ let videoPlayer;
174
+ if (modal && !isAdmin) {
175
+ videoPlayer = modalcontainer.querySelector("video");
176
+ } else {
177
+ videoPlayer = videocontainer.querySelector(
178
+ ".cblvc-video-container__video-player",
179
+ );
180
+ }
181
+ if (videoPlayer.paused) {
182
+ if (autoplay) {
183
+ videoPlayer.muted = true;
184
+ }
185
+ if (fullscreen && !isAdmin) {
186
+ document.addEventListener("fullscreenchange", () => {
187
+ if (
188
+ document.fullscreenElement !== null &&
189
+ document.fullscreenElement === videoPlayer
190
+ ) {
191
+ setTimeout(() => {
192
+ videoPlayer.play();
193
+ }, 500);
194
+ }
195
+ });
196
+ if (videoPlayer.requestFullscreen) {
197
+ videoPlayer.requestFullscreen();
198
+ } else {
199
+ videoPlayer.play();
200
+ }
201
+ } else {
202
+ videoPlayer.play();
203
+ }
204
+ } else {
205
+ videoPlayer.pause();
206
+ }
207
+ }
208
+
209
+ /**
210
+ * Set Source function :
211
+ * this function is important for mobile/desktop responsiveness as it checks whether to
212
+ * switch to the mobile or desktop video src when the page loads or
213
+ * the screen size changes.
214
+ *
215
+ * @param {HTMLElement} player - this is the selected video element
216
+ * @param {Object} sources - the mobile and desktop video source urls
217
+ * @param {string} source - this is the currently playing video source url
218
+ * @param {Object} videoObject - the current video and its various properties
219
+ */
220
+ function setSrc(player, sources, source = false, videoObject) {
221
+ const globalSettings = videoObject.instance.getGlobalSettings();
222
+ let newVideoUrl;
223
+ if (window.innerWidth >= globalSettings.srcBreakpoint) {
224
+ newVideoUrl = sources.desktop;
225
+ if (source && source !== newVideoUrl) {
226
+ player.setAttribute("src", newVideoUrl);
227
+ } else if (player.paused) {
228
+ player.setAttribute("src", newVideoUrl);
229
+ player.pause();
230
+ }
231
+ } else {
232
+ newVideoUrl = sources.mobile;
233
+ if (!newVideoUrl) {
234
+ newVideoUrl = sources.desktop;
235
+ }
236
+ if (source && source !== newVideoUrl) {
237
+ player.setAttribute("src", newVideoUrl);
238
+ } else if (player.paused) {
239
+ player.setAttribute("src", newVideoUrl);
240
+ player.pause();
241
+ }
242
+ }
243
+ return newVideoUrl;
244
+ }
245
+
246
+ const api = {
247
+ triggerUploadedVideo,
248
+ uploadedVideoInit,
249
+ };
250
+
251
+ export default api;
@@ -0,0 +1,282 @@
1
+ @use './core-mixins-v3';
2
+ @use './core-functions-v3';
3
+ @use './breakpoints';
4
+
5
+ @mixin basic() {
6
+ &__video-container {
7
+ display: grid;
8
+ grid-template: 'video' / 1fr;
9
+ grid-area: main;
10
+ opacity: 0;
11
+ pointer-events: none;
12
+ height: 100%;
13
+ width: 100%;
14
+ background-color: black;
15
+ transition: opacity 0.5s, background-color 1s;
16
+ z-index: -1;
17
+
18
+ @include core-mixins-v3.device(breakpoints.$tabPortrait) {
19
+ object-fit: cover;
20
+ grid-area: main;
21
+ }
22
+
23
+ &.video-playing {
24
+ pointer-events: all;
25
+ opacity: 1;
26
+ z-index: 10;
27
+ }
28
+
29
+ &.lock-video-aspect-to-image {
30
+ iframe,
31
+ video {
32
+ position: absolute;
33
+ inset: 0;
34
+ width: 100%;
35
+ height: 100%;
36
+ }
37
+ }
38
+
39
+ &.set-video-to-cover {
40
+ iframe,
41
+ video {
42
+ object-fit: cover;
43
+ object-position: center;
44
+ }
45
+ }
46
+
47
+ .loading-wrapper {
48
+ position: absolute;
49
+ left: 50%;
50
+ top: 50%;
51
+ transform: translate(-50%, -50%);
52
+ width: core-functions-v3.fluidSize(84);
53
+ height: core-functions-v3.fluidSize(84);
54
+
55
+ --spinner-bg-colour: #ffffff54;
56
+ --spinner-colour: white;
57
+
58
+ &:before {
59
+ content: '';
60
+ top: 0;
61
+ left: 0;
62
+ width: core-functions-v3.fluidSize(84);
63
+ height: core-functions-v3.fluidSize(84);
64
+ position: absolute;
65
+ border-radius: 50%;
66
+ border-right: solid core-functions-v3.fluidSize(5)
67
+ var(--spinner-bg-colour);
68
+ border-left: solid core-functions-v3.fluidSize(5)
69
+ var(--spinner-bg-colour);
70
+ border-top: solid core-functions-v3.fluidSize(5)
71
+ var(--spinner-bg-colour);
72
+ border-bottom: solid core-functions-v3.fluidSize(5)
73
+ var(--spinner-colour);
74
+ animation: rotate 1s linear infinite;
75
+ }
76
+ }
77
+ }
78
+
79
+ &__video-play-button {
80
+ grid-area: main;
81
+ place-self: center;
82
+ @include playButtonDefault();
83
+ transform: scale(1);
84
+ transition: transform 0.3s 0.5s;
85
+
86
+ &.video-playing {
87
+ transform: scale(0);
88
+ transition: transform 0.5s;
89
+ opacity: 0;
90
+ pointer-events: none;
91
+ max-height: 0px;
92
+ }
93
+ }
94
+
95
+ &__video-inner-container {
96
+ grid-area: video;
97
+ display: flex;
98
+ width: 100%;
99
+ position: relative;
100
+
101
+ iframe {
102
+ left: 0;
103
+ top: 0;
104
+ width: 100%;
105
+ height: 100%;
106
+ }
107
+ }
108
+
109
+ &__video-player {
110
+ height: auto;
111
+ object-fit: contain;
112
+ width: 100%;
113
+ }
114
+ }
115
+
116
+ @mixin modal() {
117
+ &.modal-video-playing {
118
+ overflow-y: hidden;
119
+ }
120
+
121
+ .cblvc-modal-container {
122
+ position: fixed;
123
+ z-index: 10;
124
+ inset: 0;
125
+ display: grid;
126
+ pointer-events: none;
127
+ grid-template: 'main' / 1fr;
128
+ place-items: center;
129
+ background-color: rgba(0, 0, 0, 0.601);
130
+ padding: var(--global-block-spacing) var(--global-inline-spacing);
131
+
132
+ @include core-mixins-v3.device(breakpoints.$desktop) {
133
+ padding: core-functions-v3.fluidSize(100);
134
+ }
135
+
136
+ &.video-playing {
137
+ z-index: 999;
138
+ pointer-events: all;
139
+
140
+ .cblvc-modal-container__modal-close {
141
+ opacity: 1;
142
+ transition: opacity 1s 1s;
143
+ }
144
+
145
+ .cblvc-modal-container__modal-inner {
146
+ opacity: 1;
147
+ transition: opacity 1s 1s;
148
+ }
149
+ }
150
+
151
+ &__modal-inner {
152
+ grid-area: main;
153
+ display: grid;
154
+ grid-template: 'modal' / 1fr;
155
+ background: var(--black);
156
+ opacity: 0;
157
+ transition: opacity 1s;
158
+ width: 100%;
159
+ max-width: core-functions-v3.fluidSize(1000);
160
+
161
+ @include core-mixins-v3.device(breakpoints.$tabPortrait) {
162
+ width: auto;
163
+ max-width: core-functions-v3.fluidSize(1000);
164
+ }
165
+
166
+ @include core-mixins-v3.device(breakpoints.$tabLandscape) {
167
+ max-width: core-functions-v3.fluidSize(1000);
168
+ }
169
+ }
170
+
171
+ &__video-player {
172
+ grid-area: modal;
173
+ height: auto;
174
+ width: 100%;
175
+ max-height: 90vh;
176
+
177
+ @include core-mixins-v3.device(breakpoints.$tabPortrait) {
178
+ max-height: 80vh;
179
+ min-height: 50vh;
180
+ }
181
+ }
182
+
183
+ &__modal-close {
184
+ grid-area: modal;
185
+ align-self: flex-start;
186
+ justify-self: flex-end;
187
+ z-index: 99;
188
+ transform: translate(50%, -50%);
189
+ @include closeButtonDefault();
190
+ }
191
+ }
192
+ }
193
+
194
+ @mixin playButtonDefault() {
195
+ display: grid;
196
+ place-items: center;
197
+ background-color: white;
198
+ opacity: 1;
199
+ border-radius: 50px;
200
+ width: core-functions-v3.fluidSize(84);
201
+ height: core-functions-v3.fluidSize(84);
202
+ border: none;
203
+ z-index: 100;
204
+ padding: 0;
205
+ position: relative;
206
+
207
+ &:hover {
208
+ cursor: pointer;
209
+ }
210
+
211
+ &::before {
212
+ position: absolute;
213
+ content: '';
214
+ height: core-functions-v3.fluidSize(34);
215
+ width: core-functions-v3.fluidSize(25);
216
+ transform: translateX(18%);
217
+ clip-path: polygon(100% 50%, 0 0, 0 100%);
218
+ background-color: black;
219
+
220
+ @supports not (aspect-ratio: 1/1) {
221
+ top: 50%;
222
+ left: 50%;
223
+ transform: translate(-25%, -50%);
224
+ }
225
+ }
226
+ }
227
+
228
+ @mixin closeButtonDefault() {
229
+ transition: opacity 1s;
230
+ display: grid;
231
+ place-items: center;
232
+ background-color: white;
233
+ opacity: 1;
234
+ border-radius: 50px;
235
+ width: core-functions-v3.fluidSize(35);
236
+ height: core-functions-v3.fluidSize(35);
237
+ border: none;
238
+ z-index: 100;
239
+ padding: 0;
240
+ position: relative;
241
+
242
+ &:hover {
243
+ cursor: pointer;
244
+ }
245
+
246
+ &::before {
247
+ position: absolute;
248
+ content: '';
249
+ height: core-functions-v3.fluidSize(20);
250
+ width: core-functions-v3.fluidSize(20);
251
+ clip-path: polygon(
252
+ 15% 0,
253
+ 0 15%,
254
+ 35% 50%,
255
+ 0 85%,
256
+ 15% 100%,
257
+ 50% 65%,
258
+ 85% 100%,
259
+ 100% 85%,
260
+ 65% 50%,
261
+ 100% 15%,
262
+ 85% 0,
263
+ 50% 35%
264
+ );
265
+ background-color: black;
266
+
267
+ @supports not (aspect-ratio: 1/1) {
268
+ top: 50%;
269
+ left: 50%;
270
+ transform: translate(-25%, -50%);
271
+ }
272
+ }
273
+ }
274
+
275
+ @keyframes rotate {
276
+ 0% {
277
+ transform: rotate(0deg);
278
+ }
279
+ 100% {
280
+ transform: rotate(360deg);
281
+ }
282
+ }