@automattic/newspack-blocks 1.67.0 → 1.68.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 (103) hide show
  1. package/.cache/babel/078314f1ffd302d32bbe1124c797c4a8.json.gz +0 -0
  2. package/.cache/babel/08bd669298cd26a7d3a62aadcf637516.json.gz +0 -0
  3. package/.cache/babel/0988afa42fd3fe14da7ae43c9d02661e.json.gz +0 -0
  4. package/.cache/babel/0d164bb53cdb3442a8c8ab37dde2e4ce.json.gz +0 -0
  5. package/.cache/babel/0f96392a3b96da0b4dce7a77edef76ca.json.gz +0 -0
  6. package/.cache/babel/2dc630cecd79488c7912540ac3a1ae93.json.gz +0 -0
  7. package/.cache/babel/3807c3306deecdbdb91968cb3c978235.json.gz +0 -0
  8. package/.cache/babel/45308b31d062a1fb08079849840aaa43.json.gz +0 -0
  9. package/.cache/babel/48df6fe3b45d872e1ded6f33a70e3176.json.gz +0 -0
  10. package/.cache/babel/58350a62e3ef63157722789bf187a8d1.json.gz +0 -0
  11. package/.cache/babel/5ac50f37a9913d9f63c8751f5c415ba4.json.gz +0 -0
  12. package/.cache/babel/6170ac021bca94b65aaf9d91313c47a9.json.gz +0 -0
  13. package/.cache/babel/66c747a8bdec1ed403f703e47256fa03.json.gz +0 -0
  14. package/.cache/babel/695780d53e2d31de09fc42456ad05cff.json.gz +0 -0
  15. package/.cache/babel/6bc92299b6332d48bcc944e155ce08cd.json.gz +0 -0
  16. package/.cache/babel/900ca42963bd0a74c1498a6d1212d82f.json.gz +0 -0
  17. package/.cache/babel/91e706536d45a88f098e9394344dbeb9.json.gz +0 -0
  18. package/.cache/babel/ab39cbb804689d063293f37fa4485487.json.gz +0 -0
  19. package/.cache/babel/c0e75e9017dcf69507da774f93b23422.json.gz +0 -0
  20. package/.cache/babel/c917c2bc027ccb946305c9305b05755e.json.gz +0 -0
  21. package/.cache/babel/cf24b1c63d0cf0e037eb598706a79f88.json.gz +0 -0
  22. package/.cache/babel/e452902bef688c901938b578c6834c50.json.gz +0 -0
  23. package/.cache/babel/e499e66d1cc40fb9b6c4238bf3dd2e6a.json.gz +0 -0
  24. package/.cache/babel/f7fd26614549b5cbb31416d632c38ccd.json.gz +0 -0
  25. package/.cache/babel/fa8281f6c9d0ec08fd8106dcfff2b6ba.json.gz +0 -0
  26. package/CHANGELOG.md +42 -0
  27. package/block-list.json +10 -1
  28. package/composer.lock +7 -7
  29. package/dist/carousel/view.asset.php +1 -1
  30. package/dist/carousel/view.js +1 -1
  31. package/dist/{donateCheckoutBlock.asset.php → checkout-button/view.asset.php} +1 -1
  32. package/dist/checkout-button/view.css +1 -0
  33. package/dist/checkout-button/view.rtl.css +1 -0
  34. package/dist/donate/view.asset.php +1 -1
  35. package/dist/donate/view.css +1 -1
  36. package/dist/donate/view.rtl.css +1 -1
  37. package/dist/editor.asset.php +1 -1
  38. package/dist/editor.css +1 -1
  39. package/dist/editor.js +3 -3
  40. package/dist/editor.rtl.css +1 -1
  41. package/dist/{donateCheckoutModal.asset.php → modal.asset.php} +1 -1
  42. package/dist/modal.css +1 -0
  43. package/dist/modal.js +1 -0
  44. package/dist/modal.rtl.css +1 -0
  45. package/dist/modalCheckout.asset.php +1 -0
  46. package/dist/modalCheckout.js +1 -0
  47. package/includes/class-modal-checkout.php +383 -0
  48. package/includes/class-newspack-blocks.php +30 -6
  49. package/newspack-blocks.php +3 -2
  50. package/package.json +3 -3
  51. package/src/blocks/carousel/edit.js +21 -0
  52. package/src/blocks/carousel/index.js +3 -0
  53. package/src/blocks/carousel/view.php +7 -0
  54. package/src/blocks/checkout-button/block.json +79 -0
  55. package/src/blocks/checkout-button/edit.js +247 -0
  56. package/src/blocks/checkout-button/edit.scss +40 -0
  57. package/src/blocks/checkout-button/editor.js +23 -0
  58. package/src/blocks/checkout-button/index.js +27 -0
  59. package/src/blocks/checkout-button/save.js +64 -0
  60. package/src/blocks/{donate/checkout-modal/index.js → checkout-button/view.js} +1 -1
  61. package/src/blocks/checkout-button/view.php +35 -0
  62. package/src/blocks/checkout-button/view.scss +18 -0
  63. package/src/blocks/donate/frontend/class-newspack-blocks-donate-renderer.php +1 -233
  64. package/src/blocks/donate/styles/view.scss +0 -95
  65. package/src/blocks/homepage-articles/block.json +5 -0
  66. package/src/blocks/homepage-articles/edit.js +18 -0
  67. package/src/blocks/homepage-articles/utils.ts +4 -0
  68. package/src/components/query-controls.js +60 -0
  69. package/src/{blocks/donate/checkout-modal/view.scss → modal-checkout/checkout.scss} +1 -1
  70. package/src/modal-checkout/index.js +4 -0
  71. package/src/{blocks/donate/checkout-modal/block.js → modal-checkout/modal.js} +14 -11
  72. package/src/modal-checkout/modal.scss +97 -0
  73. package/src/{blocks/donate → modal-checkout}/templates/checkout-form.php +3 -3
  74. package/src/types/index.d.ts +1 -0
  75. package/vendor/autoload.php +1 -1
  76. package/vendor/composer/autoload_real.php +4 -4
  77. package/vendor/composer/autoload_static.php +2 -2
  78. package/vendor/composer/installed.php +2 -2
  79. package/webpack.config.js +2 -2
  80. package/.cache/babel/1d8b42985da54f10a9bfd0a9f87b5844.json.gz +0 -0
  81. package/.cache/babel/37bd7f90c2e7ea1e10bf840775d1b262.json.gz +0 -0
  82. package/.cache/babel/3a66da0fe7ab175effa6a338812e46cb.json.gz +0 -0
  83. package/.cache/babel/4ba56fc2684f5bebdd2c8c488ea03683.json.gz +0 -0
  84. package/.cache/babel/60ac312fdf07fb7730b1a8a9c1b5bd5a.json.gz +0 -0
  85. package/.cache/babel/61d00fc8add441f0b915e3af4b518ead.json.gz +0 -0
  86. package/.cache/babel/646a7267e14986e70c74dc9c32ca6a14.json.gz +0 -0
  87. package/.cache/babel/7464c382b8a939e4e43f9349d76843a8.json.gz +0 -0
  88. package/.cache/babel/917cc52662d270e7c529afbf210a2703.json.gz +0 -0
  89. package/.cache/babel/a1dde270d38efa30dfbbfe2b97be9e51.json.gz +0 -0
  90. package/.cache/babel/a5447d9807699029636883e96c6aa4c6.json.gz +0 -0
  91. package/.cache/babel/a7575c7f77cb736dbfe8a4d01910cc79.json.gz +0 -0
  92. package/.cache/babel/b13e3fd47c6307f8c1f8786edc053ed9.json.gz +0 -0
  93. package/.cache/babel/b38122e026094b152ef69677468e4415.json.gz +0 -0
  94. package/.cache/babel/bb3ca1de54603d2730484164ed55902b.json.gz +0 -0
  95. package/.cache/babel/c762aee66625f48b1de4e3b329d8c9fe.json.gz +0 -0
  96. package/.cache/babel/c9d601b83fd7c6412dd9ac187c06d7c1.json.gz +0 -0
  97. package/.cache/babel/fa5e94ee19268ccad7790a312d6fca4e.json.gz +0 -0
  98. package/.cache/babel/fe8f3849250ae54c53096ec8db55a8d6.json.gz +0 -0
  99. package/.cache/babel/fe99fe0bebf3e9d74bb240487620bdd4.json.gz +0 -0
  100. package/dist/donateCheckoutBlock.js +0 -1
  101. /package/dist/{donateCheckoutModal.js → checkout-button/view.js} +0 -0
  102. /package/dist/{donateCheckoutModal.css → modalCheckout.css} +0 -0
  103. /package/dist/{donateCheckoutModal.rtl.css → modalCheckout.rtl.css} +0 -0
@@ -0,0 +1,97 @@
1
+ @use '../shared/sass/colors';
2
+ @use '../shared/sass/variables';
3
+
4
+ @keyframes spin {
5
+ 0% {
6
+ transform: rotate( 0deg );
7
+ }
8
+ 50% {
9
+ transform: rotate( 180deg );
10
+ }
11
+ 100% {
12
+ transform: rotate( 360deg );
13
+ }
14
+ }
15
+
16
+ .newspack-blocks-checkout-modal {
17
+ position: fixed;
18
+ top: 0;
19
+ left: 0;
20
+ width: 100%;
21
+ height: 100%;
22
+ background: rgba( 0, 0, 0, 0.75 );
23
+ z-index: 99999;
24
+ &__content {
25
+ position: absolute;
26
+ top: 50%;
27
+ left: 50%;
28
+ transform: translate( -50%, -50% );
29
+ width: calc( 100vw - 32px );
30
+ max-width: 580px;
31
+ min-height: 200px;
32
+ max-height: calc( 100vh - 32px );
33
+ background: colors.$color__background-body;
34
+ border-radius: 5px;
35
+ > *:not( .newspack-blocks-checkout-modal__close ) {
36
+ width: 100%;
37
+ height: 100%;
38
+ border: 0;
39
+ border-radius: 5px;
40
+ }
41
+ }
42
+ &__spinner {
43
+ position: absolute;
44
+ top: 50%;
45
+ left: 50%;
46
+ transform: translate( -50%, -50% );
47
+ width: 100%;
48
+ height: 100%;
49
+ display: flex;
50
+ align-items: center;
51
+ justify-content: center;
52
+ background: #fff;
53
+ border-radius: 5px;
54
+ > span {
55
+ width: 25px;
56
+ height: 25px;
57
+ border: 2px solid colors.$color__background-body;
58
+ border-top-color: colors.$color__text-light;
59
+ border-radius: 50%;
60
+ animation: spin 1s infinite linear;
61
+ }
62
+ }
63
+ &__close {
64
+ position: absolute;
65
+ top: 0;
66
+ right: 0;
67
+ padding: 8px;
68
+ border: 0;
69
+ background: transparent;
70
+ color: colors.$color__text-main;
71
+ cursor: pointer;
72
+ &:focus,
73
+ &:hover {
74
+ color: colors.$color__text-light;
75
+ }
76
+ svg {
77
+ display: block;
78
+ }
79
+ }
80
+ }
81
+
82
+ @media ( max-width: 600px ) {
83
+ .newspack-blocks-checkout-modal {
84
+ &__content {
85
+ max-width: 100%;
86
+ width: 100%;
87
+ border-radius: 0;
88
+ top: auto;
89
+ bottom: 0;
90
+ left: 0;
91
+ transform: none;
92
+ > *:not( .newspack-blocks-checkout-modal__close ) {
93
+ border-radius: 0;
94
+ }
95
+ }
96
+ }
97
+ }
@@ -15,13 +15,13 @@ if ( ! defined( 'ABSPATH' ) ) {
15
15
 
16
16
  $order_details_display = get_theme_mod( 'collapse_order_details', 'hide' );
17
17
 
18
- $has_filled_billing = Newspack_Blocks_Donate_Renderer::has_filled_required_fields( 'billing' );
18
+ $has_filled_billing = \Newspack_Blocks\Modal_Checkout::has_filled_required_fields( 'billing' );
19
19
  $edit_billing = ! $has_filled_billing || isset( $_REQUEST['edit_billing'] ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
20
20
 
21
21
  $form_action = $edit_billing ? '#checkout' : wc_get_checkout_url();
22
22
  $form_class = $edit_billing ? 'edit-billing' : 'checkout woocommerce-checkout';
23
23
  $form_method = $edit_billing ? 'get' : 'post';
24
- $form_billing_fields = Newspack_Blocks_Donate_Renderer::get_prefilled_fields();
24
+ $form_billing_fields = \Newspack_Blocks\Modal_Checkout::get_prefilled_fields();
25
25
 
26
26
  do_action( 'woocommerce_before_checkout_form', $checkout );
27
27
 
@@ -37,7 +37,7 @@ if ( ! $checkout->is_registration_enabled() && $checkout->is_registration_requir
37
37
  <input type="hidden" name="modal_checkout" value="1" />
38
38
  <?php
39
39
  if ( $edit_billing ) {
40
- wp_nonce_field( 'newspack_donate_edit_billing', 'newspack_donate_edit_billing_nonce' );
40
+ wp_nonce_field( 'newspack_blocks_edit_billing', 'newspack_blocks_edit_billing_nonce' );
41
41
  }
42
42
  ?>
43
43
  <?php if ( 'toggle' === $order_details_display ) : ?>
@@ -28,6 +28,7 @@ declare global {
28
28
  type PostId = number;
29
29
  type CategoryId = number;
30
30
  type TagId = number;
31
+ type BrandId = number;
31
32
  type AuthorId = number;
32
33
 
33
34
  type PostType = { name: string; slug: string; supports: { newspack_blocks: boolean } };
@@ -22,4 +22,4 @@ if (PHP_VERSION_ID < 50600) {
22
22
 
23
23
  require_once __DIR__ . '/composer/autoload_real.php';
24
24
 
25
- return ComposerAutoloaderInit79db08fdf8dc5f56c327bbcd4eaa32d4::getLoader();
25
+ return ComposerAutoloaderInit378cc5bf45271e1052c410a5db669ad7::getLoader();
@@ -2,7 +2,7 @@
2
2
 
3
3
  // autoload_real.php @generated by Composer
4
4
 
5
- class ComposerAutoloaderInit79db08fdf8dc5f56c327bbcd4eaa32d4
5
+ class ComposerAutoloaderInit378cc5bf45271e1052c410a5db669ad7
6
6
  {
7
7
  private static $loader;
8
8
 
@@ -22,12 +22,12 @@ class ComposerAutoloaderInit79db08fdf8dc5f56c327bbcd4eaa32d4
22
22
  return self::$loader;
23
23
  }
24
24
 
25
- spl_autoload_register(array('ComposerAutoloaderInit79db08fdf8dc5f56c327bbcd4eaa32d4', 'loadClassLoader'), true, true);
25
+ spl_autoload_register(array('ComposerAutoloaderInit378cc5bf45271e1052c410a5db669ad7', 'loadClassLoader'), true, true);
26
26
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
27
- spl_autoload_unregister(array('ComposerAutoloaderInit79db08fdf8dc5f56c327bbcd4eaa32d4', 'loadClassLoader'));
27
+ spl_autoload_unregister(array('ComposerAutoloaderInit378cc5bf45271e1052c410a5db669ad7', 'loadClassLoader'));
28
28
 
29
29
  require __DIR__ . '/autoload_static.php';
30
- call_user_func(\Composer\Autoload\ComposerStaticInit79db08fdf8dc5f56c327bbcd4eaa32d4::getInitializer($loader));
30
+ call_user_func(\Composer\Autoload\ComposerStaticInit378cc5bf45271e1052c410a5db669ad7::getInitializer($loader));
31
31
 
32
32
  $loader->register(true);
33
33
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  namespace Composer\Autoload;
6
6
 
7
- class ComposerStaticInit79db08fdf8dc5f56c327bbcd4eaa32d4
7
+ class ComposerStaticInit378cc5bf45271e1052c410a5db669ad7
8
8
  {
9
9
  public static $classMap = array (
10
10
  'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
@@ -13,7 +13,7 @@ class ComposerStaticInit79db08fdf8dc5f56c327bbcd4eaa32d4
13
13
  public static function getInitializer(ClassLoader $loader)
14
14
  {
15
15
  return \Closure::bind(function () use ($loader) {
16
- $loader->classMap = ComposerStaticInit79db08fdf8dc5f56c327bbcd4eaa32d4::$classMap;
16
+ $loader->classMap = ComposerStaticInit378cc5bf45271e1052c410a5db669ad7::$classMap;
17
17
 
18
18
  }, null, ClassLoader::class);
19
19
  }
@@ -3,7 +3,7 @@
3
3
  'name' => 'automattic/newspack-blocks',
4
4
  'pretty_version' => 'dev-master',
5
5
  'version' => 'dev-master',
6
- 'reference' => '73978d3eb10563ae4acbd3c3284bc4519eca6db0',
6
+ 'reference' => 'fe53d897b29ce578b5c22541207ac9064a5a18f2',
7
7
  'type' => 'wordpress-plugin',
8
8
  'install_path' => __DIR__ . '/../../',
9
9
  'aliases' => array(),
@@ -13,7 +13,7 @@
13
13
  'automattic/newspack-blocks' => array(
14
14
  'pretty_version' => 'dev-master',
15
15
  'version' => 'dev-master',
16
- 'reference' => '73978d3eb10563ae4acbd3c3284bc4519eca6db0',
16
+ 'reference' => 'fe53d897b29ce578b5c22541207ac9064a5a18f2',
17
17
  'type' => 'wordpress-plugin',
18
18
  'install_path' => __DIR__ . '/../../',
19
19
  'aliases' => array(),
package/webpack.config.js CHANGED
@@ -57,8 +57,8 @@ const webpackConfig = getBaseWebpackConfig(
57
57
  placeholder_blocks: placeholderBlocksScript,
58
58
  editor: editorScript,
59
59
  block_styles: blockStylesScript,
60
- donateCheckoutModal: path.join( __dirname, 'src/blocks/donate/checkout-modal' ),
61
- donateCheckoutBlock: path.join( __dirname, 'src/blocks/donate/checkout-modal/block.js' ),
60
+ modal: path.join( __dirname, 'src/modal-checkout/modal.js' ),
61
+ modalCheckout: path.join( __dirname, 'src/modal-checkout' ),
62
62
  donateStreamlined: path.join( __dirname, 'src/blocks/donate/streamlined' ),
63
63
  frequencyBased: path.join( __dirname, 'src/blocks/donate/frequency-based' ),
64
64
  tiersBased: path.join( __dirname, 'src/blocks/donate/tiers-based' ),
@@ -1 +0,0 @@
1
- (()=>{var e,t,n={};function o(t){var n=t.querySelector("iframe");n&&(n.src="about:blank"),document.body.classList.remove("newspack-modal-checkout-open"),e.disconnect(),t.style.display="none"}t=function(){var t=document.querySelector(".newspack-blocks-donate-checkout-modal");if(t){var n=document.querySelector(".newspack-blocks-donate-checkout-modal__spinner"),c="newspack_modal_checkout",a=document.createElement("input");a.type="hidden",a.name="modal_checkout",a.value="1";var d=t.querySelector(".newspack-blocks-donate-checkout-modal__content"),r=document.createElement("iframe");r.name=c,d.appendChild(r),document.querySelectorAll(".wpbnbd.wpbnbd--platform-wc").forEach((function(o){o.querySelectorAll("form").forEach((function(o){o.appendChild(a.cloneNode()),o.target=c,o.addEventListener("submit",(function(){n.style.display="flex",t.style.display="block",document.body.classList.add("newspack-modal-checkout-open"),e=new ResizeObserver((function(e){if(e&&e.length){var t=e[0].contentRect;t&&(d.style.height=t.top+t.bottom+"px")}})),r.addEventListener("load",(function(){var t=r.contentWindow.location;if(window.newspackReaderActivation&&t.href.indexOf("order-received")>-1){var o=window.newspackReaderActivation,c=new Proxy(new URLSearchParams(t.search),{get:function(e,t){return e.get(t)}});c.email&&(o.setReaderEmail(c.email),o.setAuthenticated(!0))}var a=r.contentWindow.document.querySelector("#newspack_modal_checkout");a&&e.observe(a),n.style.display="none"}))}))}))})),t.addEventListener("click",(function(e){e.target===t&&o(t)})),t.querySelectorAll(".newspack-blocks-donate-checkout-modal__close").forEach((function(e){e.addEventListener("click",(function(e){e.preventDefault(),o(t)}))}))}},"undefined"!=typeof document&&("complete"!==document.readyState&&"interactive"!==document.readyState?document.addEventListener("DOMContentLoaded",t):t());var c=window;for(var a in n)c[a]=n[a];n.__esModule&&Object.defineProperty(c,"__esModule",{value:!0})})();