@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
@@ -1,94 +0,0 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
- const { promisify } = require('util');
4
-
5
- // Import the function to be tested
6
- const updateComponent = require('../update-component');
7
-
8
- // Promisify the fs functions used in the copyBlockComponent function
9
- const readdirPromisified = promisify(fs.readdir);
10
- const accessPromisified = promisify(fs.access);
11
-
12
- // Create a utility function to remove the file (used after each test)
13
- const removeFile = async (filePath) => {
14
- try {
15
- await fs.promises.unlink(filePath);
16
- } catch (err) {
17
- // If the file doesn't exist, ignore the error
18
- if (err.code !== 'ENOENT') {
19
- console.error('Error removing the file:', err);
20
- }
21
- }
22
- };
23
-
24
- xdescribe('copyBlockComponent function', () => {
25
- const libraryPath = 'testFiles/library'; // Assuming the libraryPath is defined for the tests
26
- const componentName = 'TestComponent';
27
-
28
- // Before each test, create the source directory with some test files
29
- beforeEach(async () => {
30
- try {
31
- const sourceDir = path.join(libraryPath, 'components', componentName);
32
- await fs.promises.mkdir(sourceDir, { recursive: true });
33
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.php'), 'Test PHP content');
34
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.js'), 'Test JS content');
35
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.scss'), 'Test SCSS content');
36
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.json'), 'Test JSON content');
37
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.twig'), 'Test Twig content');
38
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.vue'), 'Test Vue content');
39
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.extra'), 'Test Extra content');
40
- await fs.promises.writeFile(path.join(sourceDir, 'TestComponent.spec'), 'Test Spec content');
41
- } catch (err) {
42
- console.error('Error creating the source directory:', err);
43
- }
44
- });
45
-
46
- // After each test, remove the source and destination files
47
- afterEach(async () => {
48
- try {
49
- const sourceDir = path.join(libraryPath, 'components', componentName);
50
- await fs.promises.rmdir(sourceDir, { recursive: true });
51
- await removeFile('./inc/acf-blocks/TestComponent.php');
52
- await removeFile('./assets/js/blocks/TestComponent.js');
53
- await removeFile('./assets/scss/blocks/TestComponent.scss');
54
- await removeFile('./acf-json/TestComponent.json');
55
- await removeFile('./views/blocks/TestComponent.twig');
56
- await removeFile('./assets/vue/blocks/TestComponent.vue');
57
- await removeFile('./assets/scss/blocks/TestComponent/TestComponent.extra');
58
- } catch (err) {
59
- console.error('Error cleaning up the test files:', err);
60
- }
61
- });
62
-
63
- it('should copy files from source to destination based on the file types', async () => {
64
- // Call the function to be tested
65
- await updateComponent.copyBlockComponent(componentName);
66
-
67
- // Assert that the destination files exist for each file type
68
- const destinationFiles = [
69
- './inc/acf-blocks/TestComponent.php',
70
- './assets/js/blocks/TestComponent.js',
71
- './assets/scss/blocks/TestComponent.scss',
72
- './acf-json/TestComponent.json',
73
- './views/blocks/TestComponent.twig',
74
- './assets/vue/blocks/TestComponent.vue',
75
- './assets/scss/blocks/TestComponent/TestComponent.extra',
76
- ];
77
-
78
- for (const filePath of destinationFiles) {
79
- const fileExists = await accessPromisified(filePath)
80
- .then(() => true)
81
- .catch(() => false);
82
- expect(fileExists).toBe(true);
83
- }
84
-
85
- // Assert that the destination files contain the same content as the source files
86
- const sourceDir = path.join(libraryPath, 'components', componentName);
87
- const fileTypes = ['php', 'js', 'scss', 'json', 'twig', 'vue', 'extra'];
88
- for (const fileType of fileTypes) {
89
- const sourceContent = await fs.promises.readFile(path.join(sourceDir, `TestComponent.${fileType}`), 'utf-8');
90
- const destinationContent = await fs.promises.readFile(path.join(`./${fileType === 'extra' ? 'assets/scss/blocks/TestComponent' : fileType}s/TestComponent.${fileType}`), 'utf-8');
91
- expect(destinationContent).toBe(sourceContent);
92
- }
93
- });
94
- });
@@ -1,78 +0,0 @@
1
- 'use strict';
2
-
3
- const fs = require('fs');
4
- const path = require('path');
5
- const updateComponent = require('../update-component');
6
-
7
-
8
- describe('copyFile function', () => {
9
- const sourceFilePath = './__spec__/files/source.txt';
10
- const destinationFilePath = './__spec__/files/destination.txt';
11
-
12
- // Helper function to delete a file if it exists
13
- const deleteFileIfExists = (filePath) => {
14
- if (fs.existsSync(filePath)) {
15
- fs.unlinkSync(destinationFilePath);
16
- }
17
- };
18
-
19
- beforeEach(() => {
20
- deleteFileIfExists(destinationFilePath);
21
- jest.resetModules();
22
- jest.clearAllMocks();
23
- });
24
- afterEach(() => {
25
- deleteFileIfExists(destinationFilePath);
26
- });
27
-
28
-
29
- // Test case 1: Ensure the file is copied when destination does not exists
30
- test('copies file if it does not exist', async () => {
31
- await updateComponent.copyFile(sourceFilePath, destinationFilePath);
32
-
33
- // Wait for a short delay to allow the asynchronous operation to complete
34
- await new Promise((resolve) => setTimeout(resolve, 150)); // Adjust the delay time as needed
35
-
36
- expect(fs.existsSync(destinationFilePath)).toBe(true);
37
- });
38
-
39
- // Test case 2: Ensure the file is copied even if the destination exists
40
- test('overwrite file when destination file already exists', async () => {
41
- // Create a dummy destination file to simulate an existing file
42
- fs.writeFileSync(destinationFilePath, 'Dummy content Newer');
43
-
44
- await updateComponent.copyFile(sourceFilePath, destinationFilePath);
45
- // Wait for a short delay to allow the asynchronous operation to complete
46
- await new Promise((resolve) => setTimeout(resolve, 50)); // Adjust the delay time as needed
47
-
48
- // Assert that the destination file still exists after the function call
49
- expect(fs.existsSync(destinationFilePath)).toBe(true);
50
-
51
- // get file content
52
- const destinationContent = fs.readFileSync(destinationFilePath, 'utf8');
53
-
54
- // content should be
55
- expect(destinationContent).toBe('Dummy content');
56
- });
57
-
58
- // Test case 3: Ensure the function handles errors properly
59
- test('handles errors when copying the file', async () => {
60
- // Create a dummy destination file to simulate an existing file
61
- // fs.writeFileSync(destinationFilePath, 'Dummy content');
62
- const sourceFilePath = './__spec__/nonexistent_source.txt';
63
-
64
- // Ensure that console.error is called with the error message
65
- const consoleErrorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
66
-
67
- await updateComponent.copyFileKeeping(sourceFilePath, destinationFilePath);
68
- // Wait for a short delay to allow the asynchronous operation to complete
69
- await new Promise((resolve) => setTimeout(resolve, 50)); // Adjust the delay time as needed
70
-
71
- // Assert that console.error was called with the expected error message
72
- expect(consoleErrorSpy).toHaveBeenCalled();
73
-
74
- // Restore the original console.error function
75
- consoleErrorSpy.mockRestore();
76
- });
77
-
78
- });
@@ -1,74 +0,0 @@
1
- 'use strict';
2
-
3
- const fs = require('fs');
4
- // const path = require('path');
5
- const updateComponent = require('../update-component');
6
-
7
- describe('copyFileKeeping', () => {
8
- const sourceFilePath = './__spec__/files/source.txt';
9
- const destinationFilePath = './__spec__/files/destination.txt';
10
-
11
- // Helper function to delete a file if it exists
12
- const deleteFileIfExists = (filePath) => {
13
- if (fs.existsSync(filePath)) {
14
- fs.unlinkSync(destinationFilePath);
15
- }
16
- };
17
-
18
- beforeEach(() => {
19
- deleteFileIfExists(destinationFilePath);
20
- jest.resetModules();
21
- jest.clearAllMocks();
22
- });
23
- afterEach(() => {
24
- deleteFileIfExists(destinationFilePath);
25
- });
26
-
27
- // Test case 1: Ensure the file is copied when destination does not exists
28
- test('copies file if it does not exist', async () => {
29
- await updateComponent.copyFileKeeping(sourceFilePath, destinationFilePath);
30
-
31
- // Wait for a short delay to allow the asynchronous operation to complete
32
- await new Promise((resolve) => setTimeout(resolve, 50)); // Adjust the delay time as needed
33
-
34
- expect(fs.existsSync(destinationFilePath)).toBe(true);
35
- });
36
-
37
- // Test case 2: Ensure the file is NOT copied when destination exists
38
- test('copies file when destination file already exists', async () => {
39
- // Create a dummy destination file to simulate an existing file
40
- fs.writeFileSync(destinationFilePath, 'Dummy content Newer');
41
-
42
- await updateComponent.copyFileKeeping(sourceFilePath, destinationFilePath);
43
- // Wait for a short delay to allow the asynchronous operation to complete
44
- await new Promise((resolve) => setTimeout(resolve, 50)); // Adjust the delay time as needed
45
-
46
- // Assert that the destination file still exists after the function call
47
- expect(fs.existsSync(destinationFilePath)).toBe(true);
48
-
49
- // get file content
50
- const destinationContent = fs.readFileSync(destinationFilePath, 'utf8');
51
-
52
- expect(destinationContent).toBe('Dummy content Newer');
53
- });
54
-
55
- // Test case 3: Ensure the function handles errors properly
56
- test('handles errors when copying the file', async () => {
57
- // Create a dummy destination file to simulate an existing file
58
- // fs.writeFileSync(destinationFilePath, 'Dummy content');
59
- const sourceFilePath = './__spec__/nonexistent_source.txt';
60
-
61
- // Ensure that console.error is called with the error message
62
- const consoleErrorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
63
-
64
- await updateComponent.copyFileKeeping(sourceFilePath, destinationFilePath);
65
- // Wait for a short delay to allow the asynchronous operation to complete
66
- await new Promise((resolve) => setTimeout(resolve, 50)); // Adjust the delay time as needed
67
-
68
- // Assert that console.error was called with the expected error message
69
- expect(consoleErrorSpy).toHaveBeenCalled();
70
-
71
- // Restore the original console.error function
72
- consoleErrorSpy.mockRestore();
73
- });
74
- });
@@ -1 +0,0 @@
1
- Dummy content
@@ -1,99 +0,0 @@
1
- 'use strict';
2
-
3
- const glob = require('glob');
4
- const fs = jest.mock('fs');
5
- const updateAllComponents = require('../update-all-components');
6
-
7
- describe('getComponentsList', () => {
8
- afterEach(() => {
9
- jest.resetModules(); // Reset all mocked modules after each test
10
- });
11
-
12
- it('returns the correct components list when project-components-list.json is found', () => {
13
- const projectComponentsList = {
14
- "block": [
15
- "accordion",
16
- "standard-content-v2"
17
- ],
18
- "fields": [
19
- "video-standard",
20
- "responsive-show-hide"
21
- ],
22
- "admin": [
23
- "filter-pages-by-block",
24
- "resizable-editor-sidebar"
25
- ]
26
- };
27
-
28
- jest.mock('fs', () => ({
29
- existsSync: jest.fn().mockReturnValue(true),
30
- readFileSync: jest
31
- .fn()
32
- .mockReturnValue(JSON.stringify(projectComponentsList)),
33
- }));
34
-
35
- const result = updateAllComponents.getComponentsList();
36
-
37
- // random order
38
- result.map(m => expect([
39
- "block-accordion",
40
- "block-standard-content-v2",
41
-
42
- "admin-core-mixins",
43
- "admin-core-design-system",
44
- "admin-core-generic",
45
- "admin-core-critical",
46
- "admin-core-functions",
47
-
48
- "admin-filter-pages-by-block",
49
- "admin-resizable-editor-sidebar",
50
- "fields-video-standard",
51
- "fields-responsive-show-hide",
52
-
53
- "admin-core-cta",
54
- "admin-core-root-variables",
55
- "admin-core-css-sizing-vars",
56
- "admin-core-colour-data-config",
57
- "admin-core-wordpress-block-editor-preview",
58
- "admin-core-editor-cta-style-select",
59
- "admin-core-gradient-designer",
60
- "admin-core-typography",
61
- ]).toContain(m));
62
- });
63
-
64
- it('returns the correct components list when project-components-list.json is not found', () => {
65
- jest.mock('fs', () => ({
66
- existsSync: jest.fn().mockReturnValue(false), // Simulate 'project-components-list.json' not existing
67
- }));
68
-
69
- jest.mock('glob', () => ({
70
- // mock components in the filesystem
71
- sync: jest.fn().mockReturnValue([
72
- `./node_modules/@pernod-ricard-global-cms/cbl-component-library/components/component1`,
73
- `./node_modules/@pernod-ricard-global-cms/cbl-component-library/components/component2`,
74
- ]),
75
- }));
76
- const result = updateAllComponents.getComponentsList();
77
-
78
- // random order
79
- result.map(m => expect([
80
- "admin-core-mixins",
81
- "admin-core-design-system",
82
- "admin-core-generic",
83
- "admin-core-critical",
84
- "admin-core-functions",
85
-
86
- "component1",
87
- "component2",
88
-
89
- "admin-core-cta",
90
- "admin-core-root-variables",
91
- "admin-core-css-sizing-vars",
92
- "admin-core-colour-data-config",
93
- "admin-core-wordpress-block-editor-preview",
94
- "admin-core-editor-cta-style-select",
95
- "admin-core-gradient-designer",
96
- "admin-core-typography",
97
- ]).toContain(m));
98
- });
99
- });
@@ -1,165 +0,0 @@
1
- 'use strict';
2
-
3
- // const glob = require('glob');
4
- const fs = require('fs');
5
- // const fse = require("fs-extra");
6
-
7
- // const path = require('path');
8
- const updateComponent = require('../update-component');
9
-
10
- jest.mock('fs');
11
-
12
- describe('getExtension', () => {
13
- test('Check getExtension js', () => {
14
- const result = updateComponent.getExtension('testing.js')
15
- expect(result).toBe('js');
16
- });
17
-
18
- test('Check getExtension spec.js', () => {
19
- const result = updateComponent.getExtension('testing.spec.js')
20
- expect(result).toBe('js');
21
- });
22
- });
23
-
24
- describe('getFileType function', () => {
25
- it('should return "extra" for filenames ending with "-extra.scss"', () => {
26
- const result = updateComponent.getFileType('styles-extra.scss');
27
- expect(result).toBe('extra');
28
- });
29
-
30
- it('should return "spec" for filenames ending with "spec.js"', () => {
31
- const result = updateComponent.getFileType('test.spec.js');
32
- expect(result).toBe('spec');
33
- });
34
-
35
- it('should return the correct file extension for other filenames', () => {
36
- const result = updateComponent.getFileType('script.js');
37
- expect(result).toBe('js');
38
- });
39
-
40
- it('should return an empty string for filenames without extensions', () => {
41
- const result = updateComponent.getFileType('README');
42
- expect(result).toBe('');
43
- });
44
- });
45
-
46
- describe('checkFolder function', () => {
47
- beforeEach(() => {
48
- jest.resetModules();
49
- jest.clearAllMocks();
50
- });
51
-
52
- it('should return true for an existing directory', () => {
53
- // Mocking fs.existsSync to return true
54
- fs.existsSync.mockReturnValue(true);
55
- // Mocking fs.statSync to return an object with isDirectory function returning true
56
- fs.statSync.mockReturnValue({ isDirectory: () => true });
57
-
58
- const result = updateComponent.checkFolder('/path/to/existing/folder');
59
- expect(result).toBe(true);
60
- // Ensure that the fs.existsSync function was called with the correct argument
61
- expect(fs.existsSync).toHaveBeenCalledWith('/path/to/existing/folder');
62
- // Ensure that the fs.statSync function was called with the correct argument
63
- expect(fs.statSync).toHaveBeenCalledWith('/path/to/existing/folder');
64
- });
65
-
66
- it('should return false for a non-existing directory', () => {
67
- // Mocking fs.existsSync to return false
68
- fs.existsSync.mockReturnValue(false);
69
-
70
- const result = updateComponent.checkFolder('/path/to/non_existing/folder');
71
- expect(result).toBe(false);
72
- // Ensure that the fs.existsSync function was called with the correct argument
73
- expect(fs.existsSync).toHaveBeenCalledWith('/path/to/non_existing/folder');
74
- // Ensure that the fs.statSync function was not called (since the folder does not exist)
75
- expect(fs.statSync).not.toHaveBeenCalled();
76
- });
77
-
78
- it('should return false for an existing file (not a directory)', () => {
79
- // Mocking fs.existsSync to return true
80
- fs.existsSync.mockReturnValue(true);
81
- // Mocking fs.statSync to return an object with isDirectory function returning false
82
- fs.statSync.mockReturnValue({ isDirectory: () => false });
83
-
84
- const result = updateComponent.checkFolder('/path/to/existing/file');
85
- expect(result).toBe(false);
86
- // Ensure that the fs.existsSync function was called with the correct argument
87
- expect(fs.existsSync).toHaveBeenCalledWith('/path/to/existing/file');
88
- // Ensure that the fs.statSync function was called with the correct argument
89
- expect(fs.statSync).toHaveBeenCalledWith('/path/to/existing/file');
90
- });
91
- });
92
-
93
- describe('getProjectName function', () => {
94
- beforeEach(() => {
95
- jest.resetModules();
96
- });
97
-
98
- test('should return the project name from package.json', () => {
99
- const projectName = 'Your Project Name';
100
- const packageJson = {
101
- name: projectName
102
- };
103
- fs.readFileSync.mockReturnValue(JSON.stringify(packageJson));
104
- const result = updateComponent.getProjectName();
105
- expect(result).toBe(projectName);
106
- });
107
-
108
- test('should capitalize the project name if it does not start with "the"', () => {
109
- const projectName = 'your project name';
110
- const packageJson = {
111
- name: projectName
112
- };
113
- fs.readFileSync.mockReturnValue(JSON.stringify(packageJson));
114
- const result = updateComponent.getProjectName();
115
- expect(result).toBe('Your project name');
116
- });
117
-
118
- test('should capitalize and prepend "The" to the project name if it starts with "the"', () => {
119
- const projectName = 'theglenlivet';
120
- const packageJson = {
121
- name: projectName
122
- };
123
- fs.readFileSync.mockReturnValue(JSON.stringify(packageJson));
124
- const result = updateComponent.getProjectName();
125
- expect(result).toBe('The Glenlivet');
126
- });
127
-
128
- test('should return default project name if package.json is not found', () => {
129
- fs.readFileSync.mockImplementation(() => {
130
- throw new Error('File not found');
131
- });
132
- // Ensure that console.error is called with the error message
133
- const consoleErrorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
134
-
135
- const result = updateComponent.getProjectName();
136
- expect(result).toBe('Global Theme');
137
- // Assert that console.error was called with the expected error message
138
- expect(consoleErrorSpy).toHaveBeenCalled();
139
- });
140
- });
141
-
142
- describe('getFileType function', () => {
143
- it('should return "extra" for filenames ending with "-extra.scss"', () => {
144
- const filename = 'style-extra.scss';
145
- expect(updateComponent.getFileType(filename)).toBe('extra');
146
- });
147
-
148
- it('should return "spec" for filenames ending with "spec.js"', () => {
149
- const filename = 'test.spec.js';
150
- expect(updateComponent.getFileType(filename)).toBe('spec');
151
- });
152
-
153
- it('should call getExtension for other filenames', () => {
154
- const addSpy = jest.spyOn(updateComponent, 'getExtension');
155
- // console.log(addSpy)
156
- // return
157
- const filename = 'example.txt';
158
- const result = updateComponent.getFileType(filename);
159
- // expect(addSpy).toHaveBeenCalledWith(filename);
160
- expect(result).toBe('txt');
161
-
162
- // Don't forget to restore the original 'add' function after the test
163
- addSpy.mockRestore();
164
- });
165
- });
@@ -1,69 +0,0 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
- const {globSync} = require('glob');
4
-
5
- const dynamicEntryPointsJs = globSync(`./components/block-*/*-v3.js`).map(
6
- (filePath) => {
7
- const assetKey = path.basename(filePath, '.js');
8
- return assetKey;
9
- }
10
- );
11
- const dynamicEntryPointsJsV4 = globSync(`./components/block-*/*-v4.js`).map(
12
- (filePath) => {
13
- const assetKey = path.basename(filePath, '.js');
14
- return assetKey;
15
- }
16
- );
17
- const dynamicEntryPointsScss = globSync(`./components/block-*/*-v3.scss`).map(
18
- (filePath) => {
19
- const assetKey = path.basename(filePath, '.js');
20
- return assetKey;
21
- }
22
- );
23
- const dynamicEntryPointsCss = globSync(`./components/block-*/*-v4.css`).map(
24
- (filePath) => {
25
- const assetKey = path.basename(filePath, '.js');
26
- return assetKey;
27
- }
28
- );
29
- const assetArrayJs = dynamicEntryPointsJs.map((entry) => {
30
- return `./components/block-${entry}/${entry}.js`;
31
- });
32
- const assetArrayJsV4 = dynamicEntryPointsJsV4.map((entry) => {
33
- return `./components/block-${entry}/${entry}.js`;
34
- });
35
-
36
- const assetArrayScss = dynamicEntryPointsScss.map((entry) => {
37
- let filename = entry.replace('.scss', '');
38
- return `./components/block-${filename}/${filename}.scss`;
39
- });
40
- const assetArrayCss = dynamicEntryPointsCss.map((entry) => {
41
- let filename = entry.replace('.css', '');
42
- return `./components/block-${filename}/${filename}.css`;
43
- });
44
-
45
- // Create the directory path for the target file
46
- const jsModulePath = path.join('./public');
47
- const jsAssetsFilePath = path.join(jsModulePath, 'assetList.mjs');
48
-
49
- // Create directories if they don't exist
50
- fs.mkdirSync(jsModulePath, {recursive: true});
51
-
52
- // Write the initial content to the target file
53
- fs.writeFileSync(jsAssetsFilePath, '// This file is auto-generated.\n');
54
-
55
- // Create directories if they don't exist
56
- const dirPath = path.dirname(jsAssetsFilePath);
57
- fs.mkdirSync(dirPath, {recursive: true});
58
-
59
- const data = `
60
- const dynamicAssets = ${JSON.stringify([
61
- ...assetArrayScss,
62
- ...assetArrayCss,
63
- ...assetArrayJs,
64
- ...assetArrayJsV4
65
- ])};
66
- export default dynamicAssets;
67
- `;
68
-
69
- fs.writeFileSync(jsAssetsFilePath, data);
package/build-library.js DELETED
@@ -1,4 +0,0 @@
1
- import('./assembleAssetList.js');
2
- import('./createDynamicBlockScss-v3.js');
3
- import('./createJsAssets-v3.js');
4
- import('./esbuild.mjs');
@@ -1,18 +0,0 @@
1
- /* eslint-disable global-require */
2
- require('dotenv').config();
3
- const fs = require( 'fs' );
4
- const themePath = process.env.THEME_PATH || 'web/wp-content/themes/global-theme';
5
-
6
- const paths = {
7
- createJsAssets:
8
- `${themePath}/assets/js/modules/jsAssets.js`,
9
- createPreviewScss:
10
- `${themePath}/assets/scss/modules/dynamicBlocksPreview.scss`,
11
- };
12
-
13
- Object.keys( paths ).forEach( ( key ) => {
14
- if ( ! fs.existsSync( paths[ key ] ) ) {
15
- console.log( `creating missing assets with ${ key }` );
16
- require( 'child_process' ).fork( `./node_modules/@pernod-ricard-global-cms/jsbuildutils/${ key }.js` );
17
- }
18
- } );
@@ -1,7 +0,0 @@
1
- export default function accentimagev3Js ( options = {} ) {
2
- try {
3
- const { block } = options;
4
- } catch ( error ) {
5
- console.error( error );
6
- }
7
- }
@@ -1,4 +0,0 @@
1
- @layer base-styles {
2
- .accent-image-v3 {
3
- }
4
- }