newspack-components 2.1.0 → 2.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.
- package/dist/cjs/accordion/index.js +46 -0
- package/dist/cjs/accordion/style.scss +27 -0
- package/dist/cjs/action-card/index.js +48 -25
- package/dist/cjs/action-card/style.scss +100 -23
- package/dist/cjs/autocomplete-tokenfield/index.js +13 -41
- package/dist/cjs/autocomplete-tokenfield/style.scss +2 -2
- package/dist/cjs/autocomplete-with-suggestions/index.js +30 -51
- package/dist/cjs/autocomplete-with-suggestions/style.scss +16 -15
- package/dist/cjs/button/index.js +5 -13
- package/dist/cjs/button-card/index.js +1 -10
- package/dist/cjs/button-card/style.scss +13 -13
- package/dist/cjs/button-group/index.js +57 -0
- package/dist/cjs/button-group/style.scss +73 -0
- package/dist/cjs/card/index.js +1 -8
- package/dist/cjs/card/style.scss +25 -8
- package/dist/cjs/category-autocomplete/index.js +18 -38
- package/dist/cjs/category-autocomplete/style.scss +0 -2
- package/dist/cjs/checkbox-control/index.js +63 -0
- package/dist/cjs/checkbox-control/style.scss +78 -0
- package/dist/cjs/color-picker/index.js +1 -15
- package/dist/cjs/color-picker/style.scss +0 -3
- package/dist/cjs/consts.js +5 -3
- package/dist/cjs/custom-select-control/index.js +1 -9
- package/dist/cjs/custom-select-control/style.scss +6 -7
- package/dist/cjs/date-range-picker/index.js +1 -10
- package/dist/cjs/date-range-picker/style.scss +12 -12
- package/dist/cjs/footer/index.js +5 -17
- package/dist/cjs/footer/style.scss +5 -5
- package/dist/cjs/form-token-field/index.js +1 -9
- package/dist/cjs/form-token-field/style.scss +2 -3
- package/dist/cjs/global-notices/index.js +1 -8
- package/dist/cjs/grid/index.js +1 -8
- package/dist/cjs/grid/style.scss +5 -5
- package/dist/cjs/handoff/index.js +8 -17
- package/dist/cjs/handoff-message/index.js +50 -0
- package/dist/cjs/hooks/index.js +1 -7
- package/dist/cjs/hooks/useObjectState.js +7 -13
- package/dist/cjs/hooks/useObjectState.test.js +0 -14
- package/dist/cjs/hooks/useOnClickOutside.js +3 -6
- package/dist/cjs/hooks/usePrompt.js +1 -13
- package/dist/cjs/image-upload/index.js +21 -19
- package/dist/cjs/image-upload/index.test.js +0 -5
- package/dist/cjs/image-upload/style.scss +5 -9
- package/dist/cjs/index.js +28 -44
- package/dist/cjs/info-button/index.js +3 -11
- package/dist/cjs/info-button/style.scss +1 -3
- package/dist/cjs/modal/index.js +1 -9
- package/dist/cjs/modal/style.scss +8 -8
- package/dist/cjs/newspack-icon/index.js +1 -9
- package/dist/cjs/newspack-icon/style.scss +4 -4
- package/dist/cjs/newspack-logo/index.js +1 -9
- package/dist/cjs/newspack-logo/style.scss +3 -3
- package/dist/cjs/notice/index.js +8 -15
- package/dist/cjs/notice/style.scss +28 -15
- package/dist/cjs/patrons-logo/index.js +3 -11
- package/dist/cjs/plugin-installer/index.js +36 -36
- package/dist/cjs/plugin-installer/style.scss +5 -5
- package/dist/cjs/plugin-settings/SettingsSection.js +9 -28
- package/dist/cjs/plugin-settings/index.js +39 -22
- package/dist/cjs/plugin-toggle/index.js +40 -33
- package/dist/cjs/plugin-toggle/style.scss +2 -2
- package/dist/cjs/popover/index.js +1 -11
- package/dist/cjs/popover/style.scss +19 -16
- package/dist/cjs/position-control/index.js +113 -0
- package/dist/cjs/position-control/style.scss +66 -0
- package/dist/cjs/preview-box/index.js +36 -0
- package/dist/cjs/preview-box/style.scss +18 -0
- package/dist/cjs/progress-bar/index.js +2 -9
- package/dist/cjs/progress-bar/index.test.js +2 -7
- package/dist/cjs/progress-bar/style.scss +4 -4
- package/dist/cjs/proxied-imports/router.js +0 -3
- package/dist/cjs/radio-control/index.js +1 -11
- package/dist/cjs/radio-control/style.scss +9 -9
- package/dist/cjs/section-header/index.js +44 -29
- package/dist/cjs/section-header/style.scss +2 -2
- package/dist/cjs/select-control/ButtonGroupControl.js +4 -13
- package/dist/cjs/select-control/GroupedSelectControl.js +9 -15
- package/dist/cjs/select-control/index.js +5 -12
- package/dist/cjs/select-control/style.scss +2 -2
- package/dist/cjs/settings/MinMaxSetting.js +3 -7
- package/dist/cjs/settings/SettingsCard.js +3 -7
- package/dist/cjs/settings/SettingsSection.js +1 -4
- package/dist/cjs/settings/index.js +0 -6
- package/dist/cjs/settings/style.scss +1 -1
- package/dist/cjs/steps-list/index.js +52 -0
- package/dist/cjs/steps-list/style.scss +11 -0
- package/dist/cjs/steps-list-item/index.js +56 -0
- package/dist/cjs/steps-list-item/style.scss +47 -0
- package/dist/cjs/style-card/index.js +6 -13
- package/dist/cjs/style-card/style.scss +9 -12
- package/dist/cjs/style.scss +5 -6
- package/dist/cjs/tabbed-navigation/index.js +19 -16
- package/dist/cjs/tabbed-navigation/style.scss +3 -4
- package/dist/cjs/text-control/index.js +6 -16
- package/dist/cjs/textarea-control/index.js +54 -0
- package/dist/cjs/textarea-control/style.scss +76 -0
- package/dist/cjs/toggle-control/index.js +58 -0
- package/dist/cjs/toggle-control/style.scss +74 -0
- package/dist/cjs/toggle-group/index.js +71 -0
- package/dist/cjs/toggle-group/style.scss +28 -0
- package/dist/cjs/utils/index.js +10 -5
- package/dist/cjs/waiting/index.js +1 -9
- package/dist/cjs/web-preview/index.js +13 -28
- package/dist/cjs/web-preview/style.scss +14 -14
- package/dist/cjs/with-wizard/index.js +51 -31
- package/dist/cjs/with-wizard/style.scss +35 -37
- package/dist/cjs/with-wizard-screen/index.js +11 -17
- package/dist/cjs/with-wizard-screen/style.scss +14 -17
- package/dist/cjs/wizard/components/WizardError.js +3 -15
- package/dist/cjs/wizard/index.js +10 -24
- package/dist/cjs/wizard/store/index.js +42 -55
- package/dist/cjs/wizard/store/utils.js +1 -6
- package/dist/cjs/wizard/style.scss +148 -0
- package/dist/esm/accordion/index.js +38 -0
- package/dist/esm/accordion/style.scss +27 -0
- package/dist/esm/action-card/index.js +50 -21
- package/dist/esm/action-card/style.scss +100 -23
- package/dist/esm/autocomplete-tokenfield/index.js +14 -37
- package/dist/esm/autocomplete-tokenfield/style.scss +2 -2
- package/dist/esm/autocomplete-with-suggestions/index.js +28 -41
- package/dist/esm/autocomplete-with-suggestions/style.scss +16 -15
- package/dist/esm/button/index.js +5 -7
- package/dist/esm/button-card/index.js +2 -5
- package/dist/esm/button-card/style.scss +13 -13
- package/dist/esm/button-group/index.js +43 -0
- package/dist/esm/button-group/style.scss +73 -0
- package/dist/esm/card/index.js +2 -5
- package/dist/esm/card/style.scss +25 -8
- package/dist/esm/category-autocomplete/index.js +17 -30
- package/dist/esm/category-autocomplete/style.scss +0 -2
- package/dist/esm/checkbox-control/index.js +49 -0
- package/dist/esm/checkbox-control/style.scss +78 -0
- package/dist/esm/color-picker/index.js +2 -4
- package/dist/esm/color-picker/style.scss +0 -3
- package/dist/esm/consts.js +3 -2
- package/dist/esm/custom-select-control/index.js +2 -5
- package/dist/esm/custom-select-control/style.scss +6 -7
- package/dist/esm/date-range-picker/index.js +1 -3
- package/dist/esm/date-range-picker/style.scss +12 -12
- package/dist/esm/footer/index.js +3 -11
- package/dist/esm/footer/style.scss +5 -5
- package/dist/esm/form-token-field/index.js +2 -5
- package/dist/esm/form-token-field/style.scss +2 -3
- package/dist/esm/global-notices/index.js +1 -6
- package/dist/esm/grid/index.js +2 -5
- package/dist/esm/grid/style.scss +5 -5
- package/dist/esm/handoff/index.js +3 -14
- package/dist/esm/handoff-message/index.js +45 -0
- package/dist/esm/hooks/index.js +0 -2
- package/dist/esm/hooks/useObjectState.js +3 -8
- package/dist/esm/hooks/useObjectState.test.js +0 -3
- package/dist/esm/hooks/useOnClickOutside.js +2 -5
- package/dist/esm/hooks/usePrompt.js +1 -8
- package/dist/esm/image-upload/index.js +17 -16
- package/dist/esm/image-upload/style.scss +5 -9
- package/dist/esm/index.js +4 -0
- package/dist/esm/info-button/index.js +4 -6
- package/dist/esm/info-button/style.scss +1 -3
- package/dist/esm/modal/index.js +2 -5
- package/dist/esm/modal/style.scss +8 -8
- package/dist/esm/newspack-icon/index.js +2 -5
- package/dist/esm/newspack-icon/style.scss +4 -4
- package/dist/esm/newspack-logo/index.js +2 -5
- package/dist/esm/newspack-logo/style.scss +3 -3
- package/dist/esm/notice/index.js +4 -8
- package/dist/esm/notice/style.scss +28 -15
- package/dist/esm/patrons-logo/index.js +3 -5
- package/dist/esm/plugin-installer/index.js +35 -39
- package/dist/esm/plugin-installer/style.scss +5 -5
- package/dist/esm/plugin-settings/SettingsSection.js +8 -21
- package/dist/esm/plugin-settings/index.js +38 -24
- package/dist/esm/plugin-toggle/index.js +39 -36
- package/dist/esm/plugin-toggle/style.scss +2 -2
- package/dist/esm/popover/index.js +3 -6
- package/dist/esm/popover/style.scss +19 -16
- package/dist/esm/position-control/index.js +109 -0
- package/dist/esm/position-control/style.scss +66 -0
- package/dist/esm/preview-box/index.js +30 -0
- package/dist/esm/preview-box/style.scss +18 -0
- package/dist/esm/progress-bar/index.js +2 -7
- package/dist/esm/progress-bar/index.test.js +2 -1
- package/dist/esm/progress-bar/style.scss +4 -4
- package/dist/esm/proxied-imports/router.js +1 -0
- package/dist/esm/radio-control/index.js +3 -6
- package/dist/esm/radio-control/style.scss +9 -9
- package/dist/esm/section-header/index.js +44 -25
- package/dist/esm/section-header/style.scss +2 -2
- package/dist/esm/select-control/ButtonGroupControl.js +5 -7
- package/dist/esm/select-control/GroupedSelectControl.js +5 -6
- package/dist/esm/select-control/index.js +6 -6
- package/dist/esm/select-control/style.scss +2 -2
- package/dist/esm/settings/MinMaxSetting.js +1 -3
- package/dist/esm/settings/SettingsCard.js +3 -4
- package/dist/esm/settings/SettingsSection.js +0 -2
- package/dist/esm/settings/style.scss +1 -1
- package/dist/esm/steps-list/index.js +43 -0
- package/dist/esm/steps-list/style.scss +11 -0
- package/dist/esm/steps-list-item/index.js +48 -0
- package/dist/esm/steps-list-item/style.scss +47 -0
- package/dist/esm/style-card/index.js +2 -5
- package/dist/esm/style-card/style.scss +9 -12
- package/dist/esm/style.scss +5 -6
- package/dist/esm/tabbed-navigation/index.js +20 -10
- package/dist/esm/tabbed-navigation/style.scss +3 -4
- package/dist/esm/text-control/index.js +2 -9
- package/dist/esm/textarea-control/index.js +40 -0
- package/dist/esm/textarea-control/style.scss +76 -0
- package/dist/esm/toggle-control/index.js +44 -0
- package/dist/esm/toggle-control/style.scss +74 -0
- package/dist/esm/toggle-group/index.js +58 -0
- package/dist/esm/toggle-group/style.scss +28 -0
- package/dist/esm/utils/index.js +9 -3
- package/dist/esm/waiting/index.js +2 -5
- package/dist/esm/web-preview/index.js +9 -24
- package/dist/esm/web-preview/style.scss +14 -14
- package/dist/esm/with-wizard/index.js +49 -34
- package/dist/esm/with-wizard/style.scss +35 -37
- package/dist/esm/with-wizard-screen/index.js +9 -11
- package/dist/esm/with-wizard-screen/style.scss +14 -17
- package/dist/esm/wizard/components/WizardError.js +1 -10
- package/dist/esm/wizard/index.js +10 -12
- package/dist/esm/wizard/store/index.js +40 -46
- package/dist/esm/wizard/store/utils.js +1 -1
- package/dist/esm/wizard/style.scss +148 -0
- package/package.json +4 -4
- package/shared/scss/_colors.scss +0 -15
- package/src/accordion/index.js +32 -0
- package/src/accordion/style.scss +27 -0
- package/src/action-card/index.js +43 -8
- package/src/action-card/style.scss +100 -23
- package/src/autocomplete-tokenfield/index.js +1 -1
- package/src/autocomplete-tokenfield/style.scss +2 -2
- package/src/autocomplete-with-suggestions/style.scss +16 -15
- package/src/button-card/style.scss +13 -13
- package/src/card/style.scss +25 -8
- package/src/category-autocomplete/index.js +3 -1
- package/src/category-autocomplete/style.scss +0 -2
- package/src/color-picker/style.scss +0 -3
- package/src/consts.js +2 -1
- package/src/custom-select-control/style.scss +6 -7
- package/src/date-range-picker/style.scss +12 -12
- package/src/footer/index.js +2 -2
- package/src/footer/style.scss +5 -5
- package/src/form-token-field/index.js +2 -7
- package/src/form-token-field/style.scss +2 -3
- package/src/grid/style.scss +5 -5
- package/src/handoff/index.js +3 -8
- package/src/handoff-message/index.js +39 -0
- package/src/hooks/useObjectState.js +2 -1
- package/src/image-upload/index.js +9 -3
- package/src/image-upload/style.scss +5 -9
- package/src/index.js +4 -0
- package/src/info-button/style.scss +1 -3
- package/src/modal/style.scss +8 -8
- package/src/newspack-icon/style.scss +4 -4
- package/src/newspack-logo/style.scss +3 -3
- package/src/notice/index.js +2 -0
- package/src/notice/style.scss +28 -15
- package/src/plugin-installer/index.js +15 -2
- package/src/plugin-installer/style.scss +5 -5
- package/src/plugin-settings/SettingsSection.js +7 -13
- package/src/plugin-settings/index.js +7 -2
- package/src/plugin-toggle/index.js +2 -3
- package/src/plugin-toggle/style.scss +2 -2
- package/src/popover/style.scss +19 -16
- package/src/position-control/index.js +122 -0
- package/src/position-control/style.scss +66 -0
- package/src/progress-bar/style.scss +4 -4
- package/src/radio-control/style.scss +9 -9
- package/src/section-header/index.js +32 -15
- package/src/section-header/style.scss +2 -2
- package/src/select-control/ButtonGroupControl.js +3 -0
- package/src/select-control/GroupedSelectControl.js +2 -1
- package/src/select-control/index.js +6 -2
- package/src/select-control/style.scss +2 -2
- package/src/settings/style.scss +1 -1
- package/src/steps-list/index.js +39 -0
- package/src/steps-list/style.scss +11 -0
- package/src/steps-list-item/index.js +40 -0
- package/src/steps-list-item/style.scss +47 -0
- package/src/style-card/index.js +2 -11
- package/src/style-card/style.scss +9 -12
- package/src/style.scss +5 -6
- package/src/tabbed-navigation/index.js +12 -4
- package/src/tabbed-navigation/style.scss +3 -4
- package/src/utils/index.js +9 -0
- package/src/web-preview/index.js +1 -1
- package/src/web-preview/style.scss +14 -14
- package/src/with-wizard/style.scss +35 -37
- package/src/with-wizard-screen/index.js +4 -1
- package/src/with-wizard-screen/style.scss +14 -17
- package/src/wizard/index.js +15 -3
- package/src/wizard/store/index.js +8 -2
package/dist/cjs/notice/index.js
CHANGED
|
@@ -1,33 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _element = require("@wordpress/element");
|
|
11
|
-
|
|
12
9
|
var _icons = require("@wordpress/icons");
|
|
13
|
-
|
|
14
10
|
var _i18n = require("@wordpress/i18n");
|
|
15
|
-
|
|
16
11
|
require("./style.scss");
|
|
17
|
-
|
|
18
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
|
-
|
|
20
13
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
21
|
-
|
|
22
14
|
/**
|
|
23
15
|
* Notice
|
|
24
16
|
*/
|
|
25
|
-
|
|
26
17
|
/**
|
|
27
18
|
* WordPress dependencies.
|
|
28
19
|
*/
|
|
20
|
+
/**
|
|
21
|
+
* Internal dependencies.
|
|
22
|
+
*/
|
|
29
23
|
const __ = _i18n.__;
|
|
30
|
-
|
|
24
|
+
/**
|
|
25
|
+
* External dependencies.
|
|
26
|
+
*/
|
|
31
27
|
class Notice extends _element.Component {
|
|
32
28
|
/**
|
|
33
29
|
* Render
|
|
@@ -37,6 +33,7 @@ class Notice extends _element.Component {
|
|
|
37
33
|
className,
|
|
38
34
|
debugMode,
|
|
39
35
|
isError,
|
|
36
|
+
isHandoff,
|
|
40
37
|
isHelp,
|
|
41
38
|
isSuccess,
|
|
42
39
|
isWarning,
|
|
@@ -45,9 +42,8 @@ class Notice extends _element.Component {
|
|
|
45
42
|
style = {},
|
|
46
43
|
children = null
|
|
47
44
|
} = this.props;
|
|
48
|
-
const classes = (0, _classnames.default)('newspack-notice', className, debugMode && 'newspack-notice__is-debug', isError && 'newspack-notice__is-error', isHelp && 'newspack-notice__is-help', isSuccess && 'newspack-notice__is-success', isWarning && 'newspack-notice__is-warning');
|
|
45
|
+
const classes = (0, _classnames.default)('newspack-notice', className, debugMode && 'newspack-notice__is-debug', isError && 'newspack-notice__is-error', isHandoff && 'newspack-notice__is-handoff', isHelp && 'newspack-notice__is-help', isSuccess && 'newspack-notice__is-success', isWarning && 'newspack-notice__is-warning');
|
|
49
46
|
let noticeIcon;
|
|
50
|
-
|
|
51
47
|
if (isHelp) {
|
|
52
48
|
noticeIcon = _icons.help;
|
|
53
49
|
} else if (isSuccess) {
|
|
@@ -57,7 +53,6 @@ class Notice extends _element.Component {
|
|
|
57
53
|
} else {
|
|
58
54
|
noticeIcon = _icons.info;
|
|
59
55
|
}
|
|
60
|
-
|
|
61
56
|
return (0, _jsxRuntime.jsxs)("div", {
|
|
62
57
|
className: classes,
|
|
63
58
|
style: style,
|
|
@@ -71,8 +66,6 @@ class Notice extends _element.Component {
|
|
|
71
66
|
})]
|
|
72
67
|
});
|
|
73
68
|
}
|
|
74
|
-
|
|
75
69
|
}
|
|
76
|
-
|
|
77
70
|
var _default = Notice;
|
|
78
71
|
exports.default = _default;
|
|
@@ -2,13 +2,14 @@
|
|
|
2
2
|
* Notice
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
@
|
|
6
|
-
@
|
|
5
|
+
@use 'sass:color';
|
|
6
|
+
@use '~@wordpress/base-styles/colors' as wp-colors;
|
|
7
|
+
@use '../../../shared/scss/colors';
|
|
7
8
|
|
|
8
9
|
.newspack-notice {
|
|
9
10
|
align-items: center;
|
|
10
|
-
background:
|
|
11
|
-
color:
|
|
11
|
+
background: wp-colors.$gray-100;
|
|
12
|
+
color: wp-colors.$gray-900;
|
|
12
13
|
display: flex;
|
|
13
14
|
justify-content: flex-start;
|
|
14
15
|
margin: 32px 0;
|
|
@@ -16,13 +17,13 @@
|
|
|
16
17
|
|
|
17
18
|
> svg {
|
|
18
19
|
display: block;
|
|
19
|
-
fill:
|
|
20
|
+
fill: wp-colors.$gray-900;
|
|
20
21
|
flex: 0 0 24px;
|
|
21
22
|
margin-right: 4px;
|
|
22
23
|
}
|
|
23
24
|
|
|
24
25
|
&__is-debug {
|
|
25
|
-
background:
|
|
26
|
+
background: colors.$primary-700;
|
|
26
27
|
border-radius: 2px;
|
|
27
28
|
bottom: 16px;
|
|
28
29
|
box-shadow: 0 0 8px 4px rgba( black, 0.08 );
|
|
@@ -39,35 +40,47 @@
|
|
|
39
40
|
}
|
|
40
41
|
|
|
41
42
|
&__is-error {
|
|
42
|
-
background:
|
|
43
|
+
background: color.adjust( wp-colors.$alert-red, $lightness: 51% );
|
|
43
44
|
|
|
44
45
|
> svg {
|
|
45
|
-
fill:
|
|
46
|
+
fill: wp-colors.$alert-red;
|
|
46
47
|
transform: rotate( 180deg );
|
|
47
48
|
}
|
|
48
49
|
}
|
|
49
50
|
|
|
51
|
+
&__is-handoff {
|
|
52
|
+
background: color.adjust( wp-colors.$alert-yellow, $lightness: 30% );
|
|
53
|
+
margin-top: 0;
|
|
54
|
+
position: sticky;
|
|
55
|
+
top: 46px;
|
|
56
|
+
z-index: 100;
|
|
57
|
+
|
|
58
|
+
@media ( min-width: 782px ) {
|
|
59
|
+
top: 32px;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
50
63
|
&__is-help {
|
|
51
|
-
background:
|
|
64
|
+
background: colors.$primary-050;
|
|
52
65
|
|
|
53
66
|
> svg {
|
|
54
|
-
fill:
|
|
67
|
+
fill: colors.$primary-500;
|
|
55
68
|
}
|
|
56
69
|
}
|
|
57
70
|
|
|
58
71
|
&__is-success {
|
|
59
|
-
background:
|
|
72
|
+
background: color.adjust( wp-colors.$alert-green, $lightness: 42% );
|
|
60
73
|
|
|
61
74
|
> svg {
|
|
62
|
-
fill:
|
|
75
|
+
fill: wp-colors.$alert-green;
|
|
63
76
|
}
|
|
64
77
|
}
|
|
65
78
|
|
|
66
79
|
&__is-warning {
|
|
67
|
-
background:
|
|
80
|
+
background: color.adjust( wp-colors.$alert-yellow, $lightness: 30% );
|
|
68
81
|
|
|
69
82
|
> svg {
|
|
70
|
-
fill:
|
|
83
|
+
fill: wp-colors.$alert-yellow;
|
|
71
84
|
transform: rotate( 180deg );
|
|
72
85
|
}
|
|
73
86
|
}
|
|
@@ -87,7 +100,7 @@
|
|
|
87
100
|
}
|
|
88
101
|
|
|
89
102
|
&:focus {
|
|
90
|
-
box-shadow: 0 0 0 var( --wp-admin-border-width-focus )
|
|
103
|
+
box-shadow: 0 0 0 var( --wp-admin-border-width-focus ) currentcolor;
|
|
91
104
|
}
|
|
92
105
|
}
|
|
93
106
|
}
|
|
@@ -1,34 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
9
|
var _element = require("@wordpress/element");
|
|
13
|
-
|
|
14
10
|
var _components = require("@wordpress/components");
|
|
15
|
-
|
|
16
11
|
var _i18n = require("@wordpress/i18n");
|
|
17
|
-
|
|
18
12
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
19
|
-
|
|
20
13
|
/**
|
|
21
14
|
* WordPress.com and Google News Initiative Logos.
|
|
22
15
|
*/
|
|
23
|
-
|
|
24
16
|
/**
|
|
25
17
|
* WordPress dependencies
|
|
26
18
|
*/
|
|
27
19
|
const __ = _i18n.__;
|
|
28
|
-
|
|
29
20
|
class PatronsLogo extends _element.Component {
|
|
30
21
|
constructor() {
|
|
31
22
|
super(...arguments);
|
|
23
|
+
/**
|
|
24
|
+
* Render.
|
|
25
|
+
*/
|
|
32
26
|
(0, _defineProperty2.default)(this, "render", () => {
|
|
33
27
|
return (0, _jsxRuntime.jsxs)(_components.SVG, {
|
|
34
28
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -83,8 +77,6 @@ class PatronsLogo extends _element.Component {
|
|
|
83
77
|
});
|
|
84
78
|
});
|
|
85
79
|
}
|
|
86
|
-
|
|
87
80
|
}
|
|
88
|
-
|
|
89
81
|
var _default = PatronsLogo;
|
|
90
82
|
exports.default = _default;
|
|
@@ -1,42 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
9
|
var _apiFetch = _interopRequireDefault(require("@wordpress/api-fetch"));
|
|
13
|
-
|
|
14
10
|
var _element = require("@wordpress/element");
|
|
15
|
-
|
|
16
11
|
var _i18n = require("@wordpress/i18n");
|
|
17
|
-
|
|
18
12
|
var _icons = require("@wordpress/icons");
|
|
19
|
-
|
|
20
13
|
var _ = require("../");
|
|
21
|
-
|
|
22
14
|
require("./style.scss");
|
|
23
|
-
|
|
24
15
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
25
|
-
|
|
26
16
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
27
|
-
|
|
28
17
|
/**
|
|
29
18
|
* Plugin Installer
|
|
30
19
|
*/
|
|
31
|
-
|
|
32
20
|
/**
|
|
33
21
|
* WordPress dependencies.
|
|
34
22
|
*/
|
|
35
23
|
const __ = _i18n.__;
|
|
24
|
+
/**
|
|
25
|
+
* Internal dependencies.
|
|
26
|
+
*/
|
|
36
27
|
const PLUGIN_STATE_NONE = 0;
|
|
37
28
|
const PLUGIN_STATE_ACTIVE = 1;
|
|
38
29
|
const PLUGIN_STATE_INSTALLING = 2;
|
|
39
30
|
const PLUGIN_STATE_ERROR = 3;
|
|
31
|
+
|
|
40
32
|
/**
|
|
41
33
|
* External dependencies.
|
|
42
34
|
*/
|
|
@@ -47,7 +39,6 @@ const PLUGIN_STATE_ERROR = 3;
|
|
|
47
39
|
class PluginInstaller extends _element.Component {
|
|
48
40
|
constructor() {
|
|
49
41
|
var _this;
|
|
50
|
-
|
|
51
42
|
super(...arguments);
|
|
52
43
|
_this = this;
|
|
53
44
|
(0, _defineProperty2.default)(this, "componentDidMount", () => {
|
|
@@ -68,11 +59,9 @@ class PluginInstaller extends _element.Component {
|
|
|
68
59
|
const {
|
|
69
60
|
installationInitialized
|
|
70
61
|
} = this.state;
|
|
71
|
-
|
|
72
62
|
if (plugins !== prevProps.plugins) {
|
|
73
63
|
this.retrievePluginInfo(plugins);
|
|
74
64
|
}
|
|
75
|
-
|
|
76
65
|
if (autoInstall && !installationInitialized) {
|
|
77
66
|
this.installAllPlugins();
|
|
78
67
|
}
|
|
@@ -86,8 +75,8 @@ class PluginInstaller extends _element.Component {
|
|
|
86
75
|
if (plugins.indexOf(slug) === -1) {
|
|
87
76
|
return result;
|
|
88
77
|
}
|
|
89
|
-
|
|
90
|
-
|
|
78
|
+
result[slug] = {
|
|
79
|
+
...response[slug],
|
|
91
80
|
installationStatus: response[slug].Status === 'active' ? PLUGIN_STATE_ACTIVE : PLUGIN_STATE_NONE
|
|
92
81
|
};
|
|
93
82
|
return result;
|
|
@@ -117,8 +106,10 @@ class PluginInstaller extends _element.Component {
|
|
|
117
106
|
pluginInfo
|
|
118
107
|
} = this.state;
|
|
119
108
|
this.props.onInstalled(slug);
|
|
120
|
-
this.updatePluginInfo({
|
|
121
|
-
|
|
109
|
+
this.updatePluginInfo({
|
|
110
|
+
...pluginInfo,
|
|
111
|
+
[slug]: {
|
|
112
|
+
...response,
|
|
122
113
|
installationStatus: PLUGIN_STATE_ACTIVE
|
|
123
114
|
}
|
|
124
115
|
});
|
|
@@ -130,8 +121,10 @@ class PluginInstaller extends _element.Component {
|
|
|
130
121
|
const {
|
|
131
122
|
pluginInfo
|
|
132
123
|
} = this.state;
|
|
133
|
-
this.updatePluginInfo({
|
|
134
|
-
|
|
124
|
+
this.updatePluginInfo({
|
|
125
|
+
...pluginInfo,
|
|
126
|
+
[slug]: {
|
|
127
|
+
...pluginInfo[slug],
|
|
135
128
|
checked
|
|
136
129
|
}
|
|
137
130
|
});
|
|
@@ -141,9 +134,10 @@ class PluginInstaller extends _element.Component {
|
|
|
141
134
|
const {
|
|
142
135
|
pluginInfo
|
|
143
136
|
} = _this.state;
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
[slug]: {
|
|
137
|
+
_this.updatePluginInfo({
|
|
138
|
+
...pluginInfo,
|
|
139
|
+
[slug]: {
|
|
140
|
+
...pluginInfo[slug],
|
|
147
141
|
installationStatus,
|
|
148
142
|
notification
|
|
149
143
|
}
|
|
@@ -172,13 +166,10 @@ class PluginInstaller extends _element.Component {
|
|
|
172
166
|
switch (status) {
|
|
173
167
|
case PLUGIN_STATE_ACTIVE:
|
|
174
168
|
return 'newspack-plugin-installer__status-active';
|
|
175
|
-
|
|
176
169
|
case PLUGIN_STATE_INSTALLING:
|
|
177
170
|
return 'newspack-plugin-installer__status-installing';
|
|
178
|
-
|
|
179
171
|
case PLUGIN_STATE_ERROR:
|
|
180
172
|
return 'newspack-plugin-installer__status-error';
|
|
181
|
-
|
|
182
173
|
default:
|
|
183
174
|
return 'newspack-plugin-installer__status-none';
|
|
184
175
|
}
|
|
@@ -188,7 +179,6 @@ class PluginInstaller extends _element.Component {
|
|
|
188
179
|
installationInitialized: false
|
|
189
180
|
};
|
|
190
181
|
}
|
|
191
|
-
|
|
192
182
|
/**
|
|
193
183
|
* Render.
|
|
194
184
|
*/
|
|
@@ -201,16 +191,20 @@ class PluginInstaller extends _element.Component {
|
|
|
201
191
|
const {
|
|
202
192
|
pluginInfo
|
|
203
193
|
} = this.state;
|
|
204
|
-
const
|
|
194
|
+
const {
|
|
195
|
+
is_atomic: isAtomic
|
|
196
|
+
} = window;
|
|
197
|
+
const slugs = Object.keys(pluginInfo);
|
|
205
198
|
|
|
199
|
+
// Store all plugin status info for installer button text value based on current status.
|
|
206
200
|
const currentPluginStatuses = [];
|
|
207
201
|
slugs.forEach(slug => {
|
|
208
202
|
const plugin = pluginInfo[slug];
|
|
209
203
|
currentPluginStatuses.push(plugin.Status);
|
|
210
|
-
});
|
|
204
|
+
});
|
|
211
205
|
|
|
206
|
+
// Make sure plugin status falls in either one of these, to handle button text.
|
|
212
207
|
const pluginInstalled = currentStatus => currentStatus === 'active' || currentStatus === 'inactive';
|
|
213
|
-
|
|
214
208
|
const buttonText = currentPluginStatuses.every(pluginInstalled) ? __('Activate', 'newspack') : __('Install', 'newspack');
|
|
215
209
|
const needsInstall = slugs.some(slug => {
|
|
216
210
|
const plugin = pluginInfo[slug];
|
|
@@ -227,16 +221,24 @@ class PluginInstaller extends _element.Component {
|
|
|
227
221
|
const {
|
|
228
222
|
Name,
|
|
229
223
|
Description,
|
|
224
|
+
Download,
|
|
230
225
|
Status,
|
|
231
226
|
installationStatus,
|
|
232
227
|
notification
|
|
233
228
|
} = plugin;
|
|
234
229
|
const isWaiting = installationStatus === PLUGIN_STATE_INSTALLING;
|
|
235
230
|
const isButton = !isWaiting && Status !== 'active';
|
|
231
|
+
const installable = Download || pluginInstalled(Status);
|
|
236
232
|
let actionText;
|
|
237
|
-
|
|
238
233
|
if (installationStatus === PLUGIN_STATE_INSTALLING) {
|
|
239
|
-
actionText = __('Installing…');
|
|
234
|
+
actionText = 'inactive' === Status ? __('Activating…') : __('Installing…');
|
|
235
|
+
} else if (!installable) {
|
|
236
|
+
actionText = (0, _jsxRuntime.jsxs)("span", {
|
|
237
|
+
className: "newspack-plugin-installer__status",
|
|
238
|
+
children: [isAtomic ? __('Contact Newspack support to install', 'newspack') : __('Plugin must be installed manually', 'newspack'), (0, _jsxRuntime.jsx)("span", {
|
|
239
|
+
className: "newspack-checkbox-icon"
|
|
240
|
+
})]
|
|
241
|
+
});
|
|
240
242
|
} else if (Status === 'uninstalled') {
|
|
241
243
|
actionText = (0, _jsxRuntime.jsxs)("span", {
|
|
242
244
|
className: "newspack-plugin-installer__status",
|
|
@@ -262,12 +264,12 @@ class PluginInstaller extends _element.Component {
|
|
|
262
264
|
})]
|
|
263
265
|
});
|
|
264
266
|
}
|
|
265
|
-
|
|
266
267
|
const classes = (0, _classnames.default)('newspack-action-card__plugin-installer', this.classForInstallationStatus(installationStatus));
|
|
267
268
|
const onClick = isButton ? () => this.installPlugin(slug) : null;
|
|
268
269
|
return (0, _jsxRuntime.jsx)(_.ActionCard, {
|
|
269
270
|
title: Name,
|
|
270
271
|
description: Description,
|
|
272
|
+
disabled: !installable,
|
|
271
273
|
actionText: actionText,
|
|
272
274
|
isSmall: isSmall,
|
|
273
275
|
isWaiting: isWaiting,
|
|
@@ -288,9 +290,7 @@ class PluginInstaller extends _element.Component {
|
|
|
288
290
|
})]
|
|
289
291
|
});
|
|
290
292
|
}
|
|
291
|
-
|
|
292
293
|
}
|
|
293
|
-
|
|
294
294
|
PluginInstaller.defaultProps = {
|
|
295
295
|
onStatus: () => {},
|
|
296
296
|
onInstalled: () => {}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Plugin Installer
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
@
|
|
5
|
+
@use '~@wordpress/base-styles/colors' as wp-colors;
|
|
6
6
|
|
|
7
7
|
.newspack-card {
|
|
8
8
|
.newspack-plugin-installer__status {
|
|
@@ -35,10 +35,10 @@
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
&.newspack-plugin-installer__status-active {
|
|
38
|
-
box-shadow: inset 4px 0 0
|
|
38
|
+
box-shadow: inset 4px 0 0 wp-colors.$alert-green;
|
|
39
39
|
|
|
40
40
|
.newspack-plugin-installer__checkbox {
|
|
41
|
-
background:
|
|
41
|
+
background: wp-colors.$alert-green;
|
|
42
42
|
box-shadow: none;
|
|
43
43
|
}
|
|
44
44
|
|
|
@@ -48,12 +48,12 @@
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
&.newspack-plugin-installer__status-error {
|
|
51
|
-
box-shadow: inset 4px 0 0
|
|
51
|
+
box-shadow: inset 4px 0 0 wp-colors.$alert-red;
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
&.newspack-plugin-installer__status-installing,
|
|
55
55
|
&.newspack-plugin-installer__status-none {
|
|
56
|
-
box-shadow: inset 4px 0 0
|
|
56
|
+
box-shadow: inset 4px 0 0 wp-colors.$gray-100;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
// Is Small
|
|
@@ -4,49 +4,38 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _element = require("@wordpress/element");
|
|
9
|
-
|
|
10
8
|
var _hooks = require("@wordpress/hooks");
|
|
11
|
-
|
|
12
9
|
var _i18n = require("@wordpress/i18n");
|
|
13
|
-
|
|
14
10
|
var _components = require("@wordpress/components");
|
|
15
|
-
|
|
16
11
|
var _ = require("../");
|
|
17
|
-
|
|
18
12
|
require("./style.scss");
|
|
19
|
-
|
|
20
13
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
21
|
-
|
|
22
14
|
/**
|
|
23
15
|
* Ads Settings Section.
|
|
24
16
|
*/
|
|
25
|
-
|
|
26
17
|
/**
|
|
27
18
|
* WordPress dependencies
|
|
28
19
|
*/
|
|
29
20
|
const __ = _i18n.__;
|
|
30
|
-
|
|
21
|
+
/**
|
|
22
|
+
* Internal dependencies
|
|
23
|
+
*/
|
|
31
24
|
const isSelectControl = setting => {
|
|
32
25
|
return Array.isArray(setting.options) && setting.options.length;
|
|
33
26
|
};
|
|
34
|
-
|
|
35
27
|
const getControlComponent = setting => {
|
|
36
28
|
if (isSelectControl(setting)) {
|
|
37
29
|
return _.SelectControl;
|
|
38
30
|
}
|
|
39
|
-
|
|
40
31
|
switch (setting.type) {
|
|
41
32
|
case 'checkbox':
|
|
42
33
|
case 'boolean':
|
|
43
34
|
return _components.CheckboxControl;
|
|
44
|
-
|
|
45
35
|
default:
|
|
46
36
|
return _.TextControl;
|
|
47
37
|
}
|
|
48
38
|
};
|
|
49
|
-
|
|
50
39
|
const getControlType = setting => {
|
|
51
40
|
switch (setting.type) {
|
|
52
41
|
case 'int':
|
|
@@ -54,24 +43,20 @@ const getControlType = setting => {
|
|
|
54
43
|
case 'float':
|
|
55
44
|
case 'number':
|
|
56
45
|
return 'number';
|
|
57
|
-
|
|
58
46
|
case 'string':
|
|
59
47
|
case 'text':
|
|
60
48
|
return 'text';
|
|
61
|
-
|
|
62
49
|
case 'password':
|
|
63
50
|
return 'password';
|
|
64
|
-
|
|
65
51
|
case 'boolean':
|
|
66
52
|
case 'checkbox':
|
|
67
53
|
return 'checkbox';
|
|
68
|
-
|
|
69
54
|
default:
|
|
70
55
|
return null;
|
|
71
56
|
}
|
|
72
57
|
};
|
|
73
|
-
|
|
74
58
|
const SettingsSection = props => {
|
|
59
|
+
const [saveDisabled, setSaveDisabled] = (0, _element.useState)(true);
|
|
75
60
|
const {
|
|
76
61
|
error,
|
|
77
62
|
sectionKey,
|
|
@@ -83,7 +68,6 @@ const SettingsSection = props => {
|
|
|
83
68
|
onChange,
|
|
84
69
|
onUpdate
|
|
85
70
|
} = props;
|
|
86
|
-
|
|
87
71
|
const getControlProps = setting => ({
|
|
88
72
|
disabled,
|
|
89
73
|
name: `${setting.section}_${setting.key}`,
|
|
@@ -99,22 +83,19 @@ const SettingsSection = props => {
|
|
|
99
83
|
checked: setting.type === 'boolean' ? !!setting.value : null,
|
|
100
84
|
onChange: value => {
|
|
101
85
|
onChange(setting.key, value);
|
|
86
|
+
setSaveDisabled(false);
|
|
102
87
|
}
|
|
103
88
|
});
|
|
104
|
-
|
|
105
89
|
const createFilter = function (name) {
|
|
106
90
|
let defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
107
91
|
return (0, _hooks.applyFilters)(`newspack.settingSection.${sectionKey}.${name}`, defaultComponent, props);
|
|
108
92
|
};
|
|
109
|
-
|
|
110
93
|
let columns = 2;
|
|
111
|
-
|
|
112
94
|
if (fields.length % 3 === 0) {
|
|
113
95
|
columns = 3;
|
|
114
96
|
} else if (fields.length === 1) {
|
|
115
97
|
columns = 1;
|
|
116
98
|
}
|
|
117
|
-
|
|
118
99
|
return (0, _jsxRuntime.jsx)(_.ActionCard, {
|
|
119
100
|
isMedium: true,
|
|
120
101
|
disabled: disabled,
|
|
@@ -127,9 +108,10 @@ const SettingsSection = props => {
|
|
|
127
108
|
}) : null,
|
|
128
109
|
actionContent: (active || null === active) && createFilter('buttons', (0, _jsxRuntime.jsx)(_.Button, {
|
|
129
110
|
variant: "primary",
|
|
130
|
-
disabled: disabled,
|
|
111
|
+
disabled: disabled || saveDisabled,
|
|
131
112
|
onClick: () => {
|
|
132
113
|
onUpdate();
|
|
114
|
+
setSaveDisabled(true);
|
|
133
115
|
},
|
|
134
116
|
children: __('Save Settings', 'newspack')
|
|
135
117
|
})),
|
|
@@ -142,8 +124,8 @@ const SettingsSection = props => {
|
|
|
142
124
|
gutter: 32,
|
|
143
125
|
children: fields.map(setting => {
|
|
144
126
|
const Control = getControlComponent(setting); // eslint-disable-line @wordpress/no-unused-vars-before-return, no-unused-vars
|
|
145
|
-
|
|
146
|
-
|
|
127
|
+
return (0, _hooks.applyFilters)(`newspack.settingsSection.${sectionKey}.control`, (0, _jsxRuntime.jsx)(Control, {
|
|
128
|
+
...getControlProps(setting)
|
|
147
129
|
}, setting.key), {
|
|
148
130
|
sectionKey,
|
|
149
131
|
setting,
|
|
@@ -154,6 +136,5 @@ const SettingsSection = props => {
|
|
|
154
136
|
})
|
|
155
137
|
});
|
|
156
138
|
};
|
|
157
|
-
|
|
158
139
|
var _default = SettingsSection;
|
|
159
140
|
exports.default = _default;
|