newspack-components 4.3.0 → 4.4.0-alpha.1

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 (263) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/DEVELOPMENT.md +868 -0
  3. package/colors/colors.module.scss +52 -2
  4. package/copy-styles.js +3 -2
  5. package/dist/cjs/accordion/index.js +17 -12
  6. package/dist/cjs/action-card/index.js +176 -139
  7. package/dist/cjs/autocomplete-tokenfield/index.js +254 -234
  8. package/dist/cjs/autocomplete-with-latest-posts/index.js +172 -110
  9. package/dist/cjs/autocomplete-with-suggestions/index.js +229 -126
  10. package/dist/cjs/badge/index.js +7 -7
  11. package/dist/cjs/box-contrast/index.js +19 -15
  12. package/dist/cjs/button/index.js +41 -26
  13. package/dist/cjs/button-props/button-props.js +5 -5
  14. package/dist/cjs/button-props/index.js +2 -2
  15. package/dist/cjs/card/core-card.js +110 -52
  16. package/dist/cjs/card/index.js +74 -67
  17. package/dist/cjs/card/style-core.scss +93 -25
  18. package/dist/cjs/card/style.scss +2 -2
  19. package/dist/cjs/card-feature/index.js +141 -0
  20. package/dist/cjs/card-feature/style.scss +75 -0
  21. package/dist/cjs/card-form/index.js +144 -0
  22. package/dist/cjs/card-form/style.scss +20 -0
  23. package/dist/cjs/card-settings-group/index.js +36 -16
  24. package/dist/cjs/card-sortable-list/index.js +176 -140
  25. package/dist/cjs/category-autocomplete/index.js +175 -155
  26. package/dist/cjs/color-picker/index.js +41 -23
  27. package/dist/cjs/color-picker/index.test.js +82 -0
  28. package/dist/cjs/color-picker/style.scss +11 -13
  29. package/dist/cjs/confirm-dialog/index.js +86 -22
  30. package/dist/cjs/consts.js +1 -1
  31. package/dist/cjs/custom-select-control/index.js +39 -28
  32. package/dist/cjs/dataviews/index.js +38 -0
  33. package/dist/cjs/dataviews/style.scss +9 -0
  34. package/dist/cjs/divider/index.js +26 -21
  35. package/dist/cjs/footer/index.js +36 -30
  36. package/dist/cjs/form-token-field/index.js +51 -40
  37. package/dist/cjs/global-notices/index.js +5 -5
  38. package/dist/cjs/grid/index.js +25 -19
  39. package/dist/cjs/grid/style.scss +6 -1
  40. package/dist/cjs/handoff/index.js +204 -156
  41. package/dist/cjs/handoff-message/index.js +12 -7
  42. package/dist/cjs/hooks/index.js +10 -8
  43. package/dist/cjs/hooks/use-confirm-dialog.js +79 -0
  44. package/dist/cjs/hooks/use-unsaved-changes-dialog.js +144 -0
  45. package/dist/cjs/hooks/useObjectState.js +21 -12
  46. package/dist/cjs/hooks/useObjectState.test.js +55 -33
  47. package/dist/cjs/hooks/useOnClickOutside.js +6 -6
  48. package/dist/cjs/hooks/usePrompt.js +10 -13
  49. package/dist/cjs/image-upload/index.js +114 -123
  50. package/dist/cjs/image-upload/index.test.js +11 -13
  51. package/dist/cjs/image-upload/style.scss +12 -40
  52. package/dist/cjs/index.js +136 -104
  53. package/dist/cjs/info-button/index.js +43 -32
  54. package/dist/cjs/integration-icons/active-campaign.js +22 -0
  55. package/dist/cjs/integration-icons/constant-contact.js +28 -0
  56. package/dist/cjs/integration-icons/fundraise-up.js +25 -0
  57. package/dist/cjs/integration-icons/index.js +48 -0
  58. package/dist/cjs/integration-icons/mailchimp.js +19 -0
  59. package/dist/cjs/integration-icons/salesforce.js +17 -0
  60. package/dist/cjs/integration-icons/wisepops.js +20 -0
  61. package/dist/cjs/modal/index.js +22 -19
  62. package/dist/cjs/modal/style.scss +4 -0
  63. package/dist/cjs/newspack-icon/index.js +45 -38
  64. package/dist/cjs/notice/index.js +64 -55
  65. package/dist/cjs/plugin-installer/index.js +259 -253
  66. package/dist/cjs/plugin-settings/SettingsSection.js +66 -60
  67. package/dist/cjs/plugin-settings/index.js +217 -200
  68. package/dist/cjs/plugin-toggle/index.js +192 -199
  69. package/dist/cjs/popover/index.js +41 -28
  70. package/dist/cjs/position-control/index.js +24 -23
  71. package/dist/cjs/progress-bar/index.js +71 -59
  72. package/dist/cjs/progress-bar/index.test.js +62 -68
  73. package/dist/cjs/proxied-imports/router.js +3 -3
  74. package/dist/cjs/radio-control/index.js +40 -27
  75. package/dist/cjs/section-header/index.js +103 -58
  76. package/dist/cjs/section-header/style.scss +31 -11
  77. package/dist/cjs/select-control/ButtonGroupControl.js +26 -21
  78. package/dist/cjs/select-control/GroupedSelectControl.js +41 -35
  79. package/dist/cjs/select-control/index.js +52 -40
  80. package/dist/cjs/settings/MinMaxSetting.js +30 -20
  81. package/dist/cjs/settings/SettingsCard.js +20 -17
  82. package/dist/cjs/settings/SettingsSection.js +22 -21
  83. package/dist/cjs/settings/index.js +5 -5
  84. package/dist/cjs/sortable-newsletter-list-control/index.js +78 -57
  85. package/dist/cjs/steps-list/index.js +44 -34
  86. package/dist/cjs/steps-list-item/index.js +47 -39
  87. package/dist/cjs/style-card/index.js +70 -63
  88. package/dist/cjs/tabbed-navigation/index.js +38 -36
  89. package/dist/cjs/text-control/index.js +27 -25
  90. package/dist/cjs/utils/color.js +4 -4
  91. package/dist/cjs/utils/editor-toolbar-back-button.js +61 -0
  92. package/dist/cjs/utils/index.js +31 -19
  93. package/dist/cjs/utils/style.scss +8 -0
  94. package/dist/cjs/waiting/index.js +48 -37
  95. package/dist/cjs/web-preview/index.js +217 -211
  96. package/dist/cjs/with-wizard/index.js +362 -364
  97. package/dist/cjs/with-wizard/style.scss +4 -54
  98. package/dist/cjs/with-wizard-screen/index.js +54 -58
  99. package/dist/cjs/with-wizard-screen/style.scss +41 -3
  100. package/dist/cjs/wizard/components/WizardError.js +20 -18
  101. package/dist/cjs/wizard/components/WizardSnackbar.js +26 -23
  102. package/dist/cjs/wizard/index.js +176 -114
  103. package/dist/cjs/wizard/store/index.js +171 -123
  104. package/dist/cjs/wizard/store/utils.js +13 -8
  105. package/dist/esm/accordion/index.js +14 -9
  106. package/dist/esm/action-card/index.js +168 -123
  107. package/dist/esm/autocomplete-tokenfield/index.js +248 -222
  108. package/dist/esm/autocomplete-with-latest-posts/index.js +169 -103
  109. package/dist/esm/autocomplete-with-suggestions/index.js +226 -119
  110. package/dist/esm/badge/index.js +5 -5
  111. package/dist/esm/box-contrast/index.js +15 -11
  112. package/dist/esm/button/index.js +39 -21
  113. package/dist/esm/button-props/button-props.js +1 -1
  114. package/dist/esm/card/core-card.js +109 -47
  115. package/dist/esm/card/index.js +69 -54
  116. package/dist/esm/card/style-core.scss +93 -25
  117. package/dist/esm/card/style.scss +2 -2
  118. package/dist/esm/card-feature/index.js +131 -0
  119. package/dist/esm/card-feature/style.scss +75 -0
  120. package/dist/esm/card-form/index.js +134 -0
  121. package/dist/esm/card-form/style.scss +20 -0
  122. package/dist/esm/card-settings-group/index.js +33 -14
  123. package/dist/esm/card-sortable-list/index.js +170 -126
  124. package/dist/esm/category-autocomplete/index.js +168 -140
  125. package/dist/esm/color-picker/index.js +39 -21
  126. package/dist/esm/color-picker/index.test.js +78 -0
  127. package/dist/esm/color-picker/style.scss +11 -13
  128. package/dist/esm/confirm-dialog/index.js +85 -18
  129. package/dist/esm/consts.js +1 -1
  130. package/dist/esm/custom-select-control/index.js +34 -15
  131. package/dist/esm/dataviews/index.js +34 -0
  132. package/dist/esm/dataviews/style.scss +9 -0
  133. package/dist/esm/divider/index.js +24 -16
  134. package/dist/esm/footer/index.js +34 -28
  135. package/dist/esm/form-token-field/index.js +46 -27
  136. package/dist/esm/global-notices/index.js +3 -3
  137. package/dist/esm/grid/index.js +23 -14
  138. package/dist/esm/grid/style.scss +6 -1
  139. package/dist/esm/handoff/index.js +199 -143
  140. package/dist/esm/handoff-message/index.js +10 -6
  141. package/dist/esm/hooks/index.js +8 -6
  142. package/dist/esm/hooks/use-confirm-dialog.js +73 -0
  143. package/dist/esm/hooks/use-unsaved-changes-dialog.js +136 -0
  144. package/dist/esm/hooks/useObjectState.js +19 -9
  145. package/dist/esm/hooks/useObjectState.test.js +54 -32
  146. package/dist/esm/hooks/useOnClickOutside.js +4 -4
  147. package/dist/esm/hooks/usePrompt.js +9 -11
  148. package/dist/esm/image-upload/index.js +110 -111
  149. package/dist/esm/image-upload/index.test.js +11 -13
  150. package/dist/esm/image-upload/style.scss +12 -40
  151. package/dist/esm/index.js +7 -1
  152. package/dist/esm/info-button/index.js +38 -19
  153. package/dist/esm/integration-icons/active-campaign.js +16 -0
  154. package/dist/esm/integration-icons/constant-contact.js +22 -0
  155. package/dist/esm/integration-icons/fundraise-up.js +19 -0
  156. package/dist/esm/integration-icons/index.js +6 -0
  157. package/dist/esm/integration-icons/mailchimp.js +13 -0
  158. package/dist/esm/integration-icons/salesforce.js +11 -0
  159. package/dist/esm/integration-icons/wisepops.js +14 -0
  160. package/dist/esm/modal/index.js +20 -13
  161. package/dist/esm/modal/style.scss +4 -0
  162. package/dist/esm/newspack-icon/index.js +40 -25
  163. package/dist/esm/notice/index.js +59 -42
  164. package/dist/esm/plugin-installer/index.js +255 -243
  165. package/dist/esm/plugin-settings/SettingsSection.js +61 -50
  166. package/dist/esm/plugin-settings/index.js +212 -189
  167. package/dist/esm/plugin-toggle/index.js +187 -190
  168. package/dist/esm/popover/index.js +35 -16
  169. package/dist/esm/position-control/index.js +22 -18
  170. package/dist/esm/progress-bar/index.js +66 -49
  171. package/dist/esm/progress-bar/index.test.js +61 -67
  172. package/dist/esm/radio-control/index.js +34 -15
  173. package/dist/esm/section-header/index.js +102 -57
  174. package/dist/esm/section-header/style.scss +31 -11
  175. package/dist/esm/select-control/ButtonGroupControl.js +23 -18
  176. package/dist/esm/select-control/GroupedSelectControl.js +38 -30
  177. package/dist/esm/select-control/index.js +47 -27
  178. package/dist/esm/settings/MinMaxSetting.js +27 -16
  179. package/dist/esm/settings/SettingsCard.js +18 -13
  180. package/dist/esm/settings/SettingsSection.js +20 -19
  181. package/dist/esm/settings/index.js +3 -3
  182. package/dist/esm/sortable-newsletter-list-control/index.js +74 -53
  183. package/dist/esm/steps-list/index.js +39 -21
  184. package/dist/esm/steps-list-item/index.js +42 -26
  185. package/dist/esm/style-card/index.js +65 -50
  186. package/dist/esm/tabbed-navigation/index.js +35 -33
  187. package/dist/esm/text-control/index.js +25 -19
  188. package/dist/esm/utils/color.js +4 -4
  189. package/dist/esm/utils/editor-toolbar-back-button.js +53 -0
  190. package/dist/esm/utils/index.js +29 -16
  191. package/dist/esm/utils/style.scss +8 -0
  192. package/dist/esm/waiting/index.js +43 -24
  193. package/dist/esm/web-preview/index.js +213 -201
  194. package/dist/esm/with-wizard/index.js +360 -358
  195. package/dist/esm/with-wizard/style.scss +4 -54
  196. package/dist/esm/with-wizard-screen/index.js +48 -46
  197. package/dist/esm/with-wizard-screen/style.scss +41 -3
  198. package/dist/esm/wizard/components/WizardError.js +18 -16
  199. package/dist/esm/wizard/components/WizardSnackbar.js +23 -17
  200. package/dist/esm/wizard/index.js +171 -103
  201. package/dist/esm/wizard/store/index.js +169 -116
  202. package/dist/esm/wizard/store/utils.js +13 -6
  203. package/package.json +30 -16
  204. package/release.config.js +1 -0
  205. package/shared/hooks/use-coauthors.js +195 -27
  206. package/shared/hooks/use-coauthors.test.js +232 -6
  207. package/shared/scss/_mixins.scss +13 -5
  208. package/src/accordion/index.js +8 -7
  209. package/src/action-card/index.js +15 -1
  210. package/src/badge/index.tsx +3 -1
  211. package/src/card/core-card.js +95 -18
  212. package/src/card/index.js +1 -0
  213. package/src/card/style-core.scss +93 -25
  214. package/src/card/style.scss +2 -2
  215. package/src/card-feature/README.md +188 -0
  216. package/src/card-feature/index.tsx +186 -0
  217. package/src/card-feature/style.scss +75 -0
  218. package/src/card-form/README.md +113 -0
  219. package/src/card-form/index.tsx +128 -0
  220. package/src/card-form/style.scss +20 -0
  221. package/src/card-settings-group/index.tsx +28 -3
  222. package/src/card-sortable-list/index.tsx +27 -4
  223. package/src/color-picker/index.js +15 -8
  224. package/src/color-picker/index.test.js +52 -0
  225. package/src/color-picker/style.scss +11 -13
  226. package/src/confirm-dialog/README.md +128 -0
  227. package/src/confirm-dialog/index.tsx +74 -6
  228. package/src/dataviews/index.tsx +34 -0
  229. package/src/dataviews/style.scss +9 -0
  230. package/src/grid/style.scss +6 -1
  231. package/src/handoff/README.md +93 -0
  232. package/src/handoff/index.js +46 -8
  233. package/src/hooks/index.ts +2 -1
  234. package/src/hooks/use-confirm-dialog.tsx +80 -0
  235. package/src/hooks/use-unsaved-changes-dialog.tsx +140 -0
  236. package/src/image-upload/index.js +10 -15
  237. package/src/image-upload/style.scss +12 -40
  238. package/src/index.js +7 -1
  239. package/src/integration-icons/active-campaign.js +14 -0
  240. package/src/integration-icons/constant-contact.js +22 -0
  241. package/src/integration-icons/fundraise-up.js +18 -0
  242. package/src/integration-icons/index.js +6 -0
  243. package/src/integration-icons/mailchimp.js +10 -0
  244. package/src/integration-icons/salesforce.js +10 -0
  245. package/src/integration-icons/wisepops.js +14 -0
  246. package/src/modal/style.scss +4 -0
  247. package/src/plugin-installer/index.js +30 -19
  248. package/src/section-header/index.js +56 -24
  249. package/src/section-header/style.scss +31 -11
  250. package/src/select-control/index.js +4 -0
  251. package/src/utils/editor-toolbar-back-button.tsx +48 -0
  252. package/src/utils/index.js +6 -0
  253. package/src/utils/style.scss +8 -0
  254. package/src/with-wizard/style.scss +4 -54
  255. package/src/with-wizard-screen/style.scss +41 -3
  256. package/src/wizard/index.js +90 -53
  257. package/src/wizard/store/index.js +2 -2
  258. package/dist/cjs/button-card/index.js +0 -72
  259. package/dist/cjs/button-card/style.scss +0 -180
  260. package/dist/esm/button-card/index.js +0 -64
  261. package/dist/esm/button-card/style.scss +0 -180
  262. package/src/button-card/index.js +0 -52
  263. package/src/button-card/style.scss +0 -180
@@ -4,44 +4,60 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports["default"] = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
8
12
  var _components = require("@wordpress/components");
9
13
  var _element = require("@wordpress/element");
10
14
  var _router = _interopRequireDefault(require("../proxied-imports/router"));
11
15
  require("./style.scss");
12
16
  var _jsxRuntime = require("react/jsx-runtime");
17
+ var _excluded = ["href", "loading", "onClick"];
13
18
  /**
14
19
  * Button
15
20
  */
16
-
17
21
  /**
18
22
  * WordPress dependencies.
19
23
  */
20
-
21
24
  /**
22
25
  * Internal dependencies
23
26
  */
24
-
25
- const {
26
- useHistory
27
- } = _router.default;
28
- const Button = ({
29
- href,
30
- loading = undefined,
31
- onClick,
32
- ...otherProps
33
- }) => {
34
- const history = useHistory();
35
- const [isAwaitingOnClick, setIsAwaitingOnClick] = (0, _element.useState)(false);
27
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
30
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
31
+ var useHistory = _router["default"].useHistory;
32
+ var Button = function Button(_ref) {
33
+ var href = _ref.href,
34
+ _ref$loading = _ref.loading,
35
+ loading = _ref$loading === void 0 ? undefined : _ref$loading,
36
+ onClick = _ref.onClick,
37
+ otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
38
+ var history = useHistory();
39
+ var _useState = (0, _element.useState)(false),
40
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
41
+ isAwaitingOnClick = _useState2[0],
42
+ setIsAwaitingOnClick = _useState2[1];
36
43
 
37
44
  // If both onClick and href are present, await the onClick action an then redirect.
38
45
  if (href && onClick) {
39
- otherProps.onClick = async () => {
40
- setIsAwaitingOnClick(true);
41
- await onClick();
42
- setIsAwaitingOnClick(false);
43
- history.push((href || '').replace('#', ''));
44
- };
46
+ otherProps.onClick = /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee() {
47
+ return _regenerator().w(function (_context) {
48
+ while (1) switch (_context.n) {
49
+ case 0:
50
+ setIsAwaitingOnClick(true);
51
+ _context.n = 1;
52
+ return onClick();
53
+ case 1:
54
+ setIsAwaitingOnClick(false);
55
+ history.push((href || '').replace('#', ''));
56
+ case 2:
57
+ return _context.a(2);
58
+ }
59
+ }, _callee);
60
+ }));
45
61
  } else {
46
62
  otherProps.href = href;
47
63
  otherProps.onClick = onClick;
@@ -50,9 +66,8 @@ const Button = ({
50
66
  otherProps.disabled = true;
51
67
  }
52
68
  // @ts-expect-error - @wordpress/components' Button can only have either href or onClick, not both.
53
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
54
- loading: loading ? true : undefined,
55
- ...otherProps
56
- });
69
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, _objectSpread({
70
+ loading: loading ? true : undefined
71
+ }, otherProps));
57
72
  };
58
- var _default = exports.default = Button;
73
+ var _default = exports["default"] = Button;
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = buttonProps;
7
+ exports["default"] = buttonProps;
8
8
  var _isFunction = _interopRequireDefault(require("lodash/isFunction"));
9
9
  var _isObject = _interopRequireDefault(require("lodash/isObject"));
10
10
  var _isString = _interopRequireDefault(require("lodash/isString"));
@@ -16,14 +16,14 @@ var _isString = _interopRequireDefault(require("lodash/isString"));
16
16
  * Creates button props based on an action
17
17
  */
18
18
  function buttonProps(action) {
19
- const props = {};
20
- if ((0, _isFunction.default)(action)) {
19
+ var props = {};
20
+ if ((0, _isFunction["default"])(action)) {
21
21
  props.onClick = action;
22
22
  }
23
- if ((0, _isString.default)(action)) {
23
+ if ((0, _isString["default"])(action)) {
24
24
  props.href = action;
25
25
  }
26
- if ((0, _isObject.default)(action)) {
26
+ if ((0, _isObject["default"])(action)) {
27
27
  if (action.handoff) {
28
28
  props.plugin = action.handoff;
29
29
  if (action.editLink) {
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  Object.defineProperty(exports, "buttonProps", {
8
8
  enumerable: true,
9
- get: function () {
10
- return _buttonProps.default;
9
+ get: function get() {
10
+ return _buttonProps["default"];
11
11
  }
12
12
  });
13
13
  var _buttonProps = _interopRequireDefault(require("./button-props"));
@@ -4,56 +4,68 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports["default"] = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
8
10
  var _i18n = require("@wordpress/i18n");
9
11
  var _components = require("@wordpress/components");
10
12
  var _icons = require("@wordpress/icons");
11
13
  require("./style-core.scss");
12
14
  var _classnames = _interopRequireDefault(require("classnames"));
13
15
  var _jsxRuntime = require("react/jsx-runtime");
16
+ var _excluded = ["actions", "actionType", "as", "buttonsCard", "className", "footer", "header", "headerAction", "headerStyle", "childrenStyle", "footerStyle", "disabled", "icon", "iconBackgroundColor", "isActive", "isDraggable", "isFirstTarget", "isLastTarget", "isNarrow", "isSmall", "dragIndex", "onDragCallback", "onToggle", "onHeaderClick", "noBorder", "noMargin", "children", "hasGreyHeader", "hasHeaderBorder"];
14
17
  /**
15
18
  * Card using WP Core's Card component.
16
19
  * https://wordpress.github.io/gutenberg/?path=/docs/components-card--docs
17
20
  */
18
-
19
21
  /**
20
22
  * WordPress dependencies
21
23
  */
22
-
23
24
  /**
24
25
  * Internal dependencies
25
26
  */
26
-
27
27
  /**
28
28
  * External dependencies
29
29
  */
30
-
31
- const CoreCard = ({
32
- actions,
33
- actionType,
34
- as,
35
- buttonsCard,
36
- className,
37
- footer,
38
- header,
39
- icon,
40
- iconBackgroundColor,
41
- isActive,
42
- isDraggable,
43
- isFirstTarget,
44
- isLastTarget,
45
- isNarrow,
46
- isSmall,
47
- dragIndex,
48
- onDragCallback = () => {},
49
- onHeaderClick,
50
- noBorder,
51
- noMargin,
52
- children = null,
53
- ...otherProps
54
- }) => {
55
- const classes = (0, _classnames.default)('newspack-card--core', className, (buttonsCard || as === 'a') && 'newspack-card--core__buttons-card', isDraggable && 'newspack-card--core__is-draggable', isNarrow && 'newspack-card--core__is-narrow', isSmall && 'newspack-card--core__is-small', icon && 'newspack-card--core__has-icon', iconBackgroundColor && 'newspack-card--core__has-icon-background-color', isActive && 'newspack-card--core__is-active', children && 'newspack-card--core__has-children', noMargin && 'newspack-card--core__no-margin');
56
- let sizeProps = isSmall ? 'small' : otherProps.size;
30
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
31
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
32
+ var CoreCard = function CoreCard(_ref) {
33
+ var actions = _ref.actions,
34
+ actionType = _ref.actionType,
35
+ as = _ref.as,
36
+ buttonsCard = _ref.buttonsCard,
37
+ className = _ref.className,
38
+ footer = _ref.footer,
39
+ header = _ref.header,
40
+ headerAction = _ref.headerAction,
41
+ headerStyle = _ref.headerStyle,
42
+ childrenStyle = _ref.childrenStyle,
43
+ footerStyle = _ref.footerStyle,
44
+ disabled = _ref.disabled,
45
+ icon = _ref.icon,
46
+ iconBackgroundColor = _ref.iconBackgroundColor,
47
+ isActive = _ref.isActive,
48
+ isDraggable = _ref.isDraggable,
49
+ isFirstTarget = _ref.isFirstTarget,
50
+ isLastTarget = _ref.isLastTarget,
51
+ isNarrow = _ref.isNarrow,
52
+ isSmall = _ref.isSmall,
53
+ dragIndex = _ref.dragIndex,
54
+ _ref$onDragCallback = _ref.onDragCallback,
55
+ onDragCallback = _ref$onDragCallback === void 0 ? function () {} : _ref$onDragCallback,
56
+ _ref$onToggle = _ref.onToggle,
57
+ onToggle = _ref$onToggle === void 0 ? function () {} : _ref$onToggle,
58
+ onHeaderClick = _ref.onHeaderClick,
59
+ noBorder = _ref.noBorder,
60
+ noMargin = _ref.noMargin,
61
+ _ref$children = _ref.children,
62
+ children = _ref$children === void 0 ? null : _ref$children,
63
+ hasGreyHeader = _ref.hasGreyHeader,
64
+ _ref$hasHeaderBorder = _ref.hasHeaderBorder,
65
+ hasHeaderBorder = _ref$hasHeaderBorder === void 0 ? true : _ref$hasHeaderBorder,
66
+ otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
67
+ var classes = (0, _classnames["default"])('newspack-card--core', className, (buttonsCard || as === 'a') && 'newspack-card--core__buttons-card', (actions === null || actions === void 0 ? void 0 : actions.length) > 0 && 'newspack-card--core__header--has-actions', isDraggable && 'newspack-card--core__is-draggable', isNarrow && 'newspack-card--core__is-narrow', isSmall && 'newspack-card--core__is-small', icon && 'newspack-card--core__has-icon', iconBackgroundColor && 'newspack-card--core__has-icon-background-color', isActive && 'newspack-card--core__is-active', disabled && 'newspack-card--core__is-disabled', children && 'newspack-card--core__has-children', noMargin && 'newspack-card--core__no-margin', hasGreyHeader && 'newspack-card--core__has-grey-header');
68
+ var sizeProps = isSmall ? 'small' : otherProps.size;
57
69
  if (buttonsCard || as === 'a') {
58
70
  if (!isSmall) {
59
71
  sizeProps = 'large';
@@ -65,15 +77,19 @@ const CoreCard = ({
65
77
  if (noBorder) {
66
78
  otherProps.isBorderless = true;
67
79
  }
68
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Card, {
80
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Card, _objectSpread(_objectSpread({
69
81
  as: as,
70
- className: classes,
71
- ...otherProps,
82
+ className: classes
83
+ }, otherProps), {}, {
72
84
  children: [(header || icon) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.CardHeader, {
73
85
  as: onHeaderClick ? 'button' : undefined,
74
- className: (0, _classnames.default)('newspack-card--core__header', isDraggable && 'newspack-card--core__header--is-draggable'),
86
+ className: (0, _classnames["default"])('newspack-card--core__header', isDraggable && 'newspack-card--core__header--is-draggable', !hasHeaderBorder && 'newspack-card--core__header--no-border'),
87
+ style: headerStyle,
75
88
  size: sizeProps,
76
- onClick: onHeaderClick,
89
+ gap: 4,
90
+ onClick: disabled ? undefined : onHeaderClick,
91
+ disabled: onHeaderClick && disabled ? true : undefined,
92
+ "aria-disabled": onHeaderClick && disabled ? true : undefined,
77
93
  children: [isDraggable && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
78
94
  className: "newspack-card--core__header__draggable-controls",
79
95
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -85,13 +101,17 @@ const CoreCard = ({
85
101
  className: "newspack-card--core__header__draggable-controls__move-buttons",
86
102
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
87
103
  icon: _icons.chevronUp,
88
- onClick: () => onDragCallback(dragIndex, dragIndex - 1),
104
+ onClick: function onClick() {
105
+ return onDragCallback(dragIndex, dragIndex - 1);
106
+ },
89
107
  disabled: isFirstTarget,
90
108
  label: (0, _i18n.__)('Move one position up', 'newspack-plugin'),
91
109
  size: "small"
92
110
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
93
111
  icon: _icons.chevronDown,
94
- onClick: () => onDragCallback(dragIndex, dragIndex + 1),
112
+ onClick: function onClick() {
113
+ return onDragCallback(dragIndex, dragIndex + 1);
114
+ },
95
115
  disabled: isLastTarget,
96
116
  label: (0, _i18n.__)('Move one position down', 'newspack-plugin'),
97
117
  size: "small"
@@ -104,38 +124,76 @@ const CoreCard = ({
104
124
  height: isSmall ? 24 : 48,
105
125
  width: isSmall ? 24 : 48
106
126
  })
127
+ }), (actions === null || actions === void 0 ? void 0 : actions.length) > 0 && actionType === 'toggle' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
128
+ className: "newspack-card--core__action",
129
+ label: otherProps.title,
130
+ hideLabelFromVision: true,
131
+ checked: isActive,
132
+ onChange: onToggle
107
133
  }), header && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
108
134
  className: "newspack-card--core__header-content",
109
135
  children: header
110
- }), !actions?.length > 0 && actionType === 'chevron' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.Icon, {
136
+ }), !(actions !== null && actions !== void 0 && actions.length) > 0 && actionType === 'chevron' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.Icon, {
111
137
  className: "newspack-card--core__action",
112
138
  icon: _icons.chevronRight,
113
139
  height: 24,
114
140
  width: 24
115
- }), !actions?.length > 0 && actionType === 'toggle' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
141
+ }), !(actions !== null && actions !== void 0 && actions.length) > 0 && actionType === 'toggle' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
116
142
  className: "newspack-card--core__action",
117
143
  label: otherProps.title,
118
144
  hideLabelFromVision: true,
119
145
  checked: isActive,
120
- onChange: () => {}
121
- }), actions?.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.DropdownMenu, {
146
+ onChange: onToggle
147
+ }), (actions === null || actions === void 0 ? void 0 : actions.length) > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.DropdownMenu, {
122
148
  icon: _icons.moreVertical,
123
149
  label: (0, _i18n.__)('More', 'newspack-plugin'),
124
- children: () => actions.map((action, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.MenuItem, {
125
- icon: action.icon,
126
- onClick: action.action,
127
- disabled: action.disabled || false,
128
- isDestructive: action.destructive || false,
129
- children: action.label
130
- }, index))
150
+ children: function children() {
151
+ return actions.map(function (action, index) {
152
+ // Actions can be an array of sub-actions, which are rendered within a MenuGroup.
153
+ if (Array.isArray(action)) {
154
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.MenuGroup, {
155
+ children: action.map(function (subAction, i) {
156
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.MenuItem, {
157
+ icon: subAction.icon,
158
+ onClick: subAction.action,
159
+ href: subAction.href,
160
+ disabled: subAction.disabled || false,
161
+ isDestructive: subAction.destructive || false,
162
+ children: subAction.label
163
+ }, i);
164
+ })
165
+ }, index);
166
+ }
167
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.MenuItem, {
168
+ icon: action.icon,
169
+ onClick: action.action,
170
+ href: action.href,
171
+ disabled: action.disabled || false,
172
+ isDestructive: action.destructive || false,
173
+ children: action.label
174
+ }, index);
175
+ });
176
+ }
177
+ }), headerAction && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
178
+ className: "newspack-card--core__header__action",
179
+ icon: headerAction.icon,
180
+ href: headerAction.href,
181
+ disabled: headerAction.disabled || false,
182
+ isDestructive: headerAction.destructive || false,
183
+ onClick: headerAction.onClick,
184
+ tone: headerAction.tone || 'primary',
185
+ variant: headerAction.variant || 'secondary',
186
+ children: headerAction.label
131
187
  })]
132
188
  }), children && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
133
- className: "newspack-card--core__body",
189
+ className: (0, _classnames["default"])('newspack-card--core__body', !hasHeaderBorder && 'newspack-card--core__body--no-header-border'),
190
+ style: childrenStyle,
134
191
  children: children
135
192
  }), footer && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.CardFooter, {
136
193
  size: sizeProps,
194
+ style: footerStyle,
137
195
  children: footer
138
196
  })]
139
- });
197
+ }));
140
198
  };
141
- var _default = exports.default = CoreCard;
199
+ var _default = exports["default"] = CoreCard;
@@ -4,81 +4,88 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports["default"] = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
8
15
  var _element = require("@wordpress/element");
9
16
  var _coreCard = _interopRequireDefault(require("./core-card"));
10
17
  require("./style.scss");
11
18
  var _classnames = _interopRequireDefault(require("classnames"));
12
19
  var _jsxRuntime = require("react/jsx-runtime");
13
- /**
20
+ var _excluded = ["buttonsCard", "className", "headerActions", "isNarrow", "isMedium", "isSmall", "isWhite", "noBorder", "__experimentalCoreCard", "__experimentalCoreProps"];
21
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
24
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /**
14
25
  * Card
15
- */
16
-
17
- /**
26
+ */ /**
18
27
  * WordPress dependencies
19
- */
20
-
21
- /**
28
+ */ /**
22
29
  * Internal dependencies
23
- */
24
-
25
- /**
30
+ */ /**
26
31
  * External dependencies
27
32
  */
28
-
29
- class Card extends _element.Component {
30
- /**
31
- * Render
32
- */
33
- render() {
34
- const {
35
- buttonsCard,
36
- className,
37
- headerActions,
38
- isNarrow,
39
- isMedium,
40
- isSmall,
41
- isWhite,
42
- noBorder,
43
- // Pass as `true` to render using WP Core's Card component: https://wordpress.github.io/gutenberg/?path=/docs/components-card--docs
44
- __experimentalCoreCard,
45
- // Pass props supported by WP Core's Card component in this single prop.
46
- __experimentalCoreProps = {
47
- actionType: null,
48
- // chevron | toggle | button | link | none
49
- header: null,
50
- // Pass a React component to render in a CardHeader component.
51
- icon: null,
52
- footer: null,
53
- // Pass a React component to render in a CardFooter component.
54
- noMargin: false,
55
- isDraggable: false,
56
- dragIndex: null,
57
- onDragCallback: () => {}
58
- },
59
- ...otherProps
60
- } = this.props;
61
- if (__experimentalCoreCard) {
62
- const props = {
63
- buttonsCard,
64
- className,
65
- isMedium,
66
- isNarrow,
67
- isSmall,
68
- isWhite,
69
- noBorder,
70
- ...otherProps,
71
- ...__experimentalCoreProps
72
- };
73
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_coreCard.default, {
74
- ...props
75
- });
76
- }
77
- const classes = (0, _classnames.default)('newspack-card', className, buttonsCard && 'newspack-card__buttons-card', headerActions && 'newspack-card__header-actions', isMedium && 'newspack-card__is-medium', isNarrow && 'newspack-card__is-narrow', isSmall && 'newspack-card__is-small', isWhite && 'newspack-card__is-white', noBorder && 'newspack-card__no-border');
78
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
79
- className: classes,
80
- ...otherProps
81
- });
33
+ var Card = /*#__PURE__*/function (_Component) {
34
+ function Card() {
35
+ (0, _classCallCheck2["default"])(this, Card);
36
+ return _callSuper(this, Card, arguments);
82
37
  }
83
- }
84
- var _default = exports.default = Card;
38
+ (0, _inherits2["default"])(Card, _Component);
39
+ return (0, _createClass2["default"])(Card, [{
40
+ key: "render",
41
+ value:
42
+ /**
43
+ * Render
44
+ */
45
+ function render() {
46
+ var _this$props = this.props,
47
+ buttonsCard = _this$props.buttonsCard,
48
+ className = _this$props.className,
49
+ headerActions = _this$props.headerActions,
50
+ isNarrow = _this$props.isNarrow,
51
+ isMedium = _this$props.isMedium,
52
+ isSmall = _this$props.isSmall,
53
+ isWhite = _this$props.isWhite,
54
+ noBorder = _this$props.noBorder,
55
+ __experimentalCoreCard = _this$props.__experimentalCoreCard,
56
+ _this$props$__experim = _this$props.__experimentalCoreProps,
57
+ __experimentalCoreProps = _this$props$__experim === void 0 ? {
58
+ actionType: null,
59
+ // chevron | toggle | button | link | none
60
+ header: null,
61
+ // Pass a React component to render in a CardHeader component.
62
+ icon: null,
63
+ footer: null,
64
+ // Pass a React component to render in a CardFooter component.
65
+ noMargin: false,
66
+ isDraggable: false,
67
+ dragIndex: null,
68
+ hasGreyHeader: false,
69
+ onDragCallback: function onDragCallback() {}
70
+ } : _this$props$__experim,
71
+ otherProps = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
72
+ if (__experimentalCoreCard) {
73
+ var props = _objectSpread(_objectSpread({
74
+ buttonsCard: buttonsCard,
75
+ className: className,
76
+ isMedium: isMedium,
77
+ isNarrow: isNarrow,
78
+ isSmall: isSmall,
79
+ isWhite: isWhite,
80
+ noBorder: noBorder
81
+ }, otherProps), __experimentalCoreProps);
82
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_coreCard["default"], _objectSpread({}, props));
83
+ }
84
+ var classes = (0, _classnames["default"])('newspack-card', className, buttonsCard && 'newspack-card__buttons-card', headerActions && 'newspack-card__header-actions', isMedium && 'newspack-card__is-medium', isNarrow && 'newspack-card__is-narrow', isSmall && 'newspack-card__is-small', isWhite && 'newspack-card__is-white', noBorder && 'newspack-card__no-border');
85
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread({
86
+ className: classes
87
+ }, otherProps));
88
+ }
89
+ }]);
90
+ }(_element.Component);
91
+ var _default = exports["default"] = Card;