newspack-components 2.0.1 → 2.1.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 (251) hide show
  1. package/copy-styles.js +1 -1
  2. package/dist/cjs/action-card/index.js +32 -22
  3. package/dist/cjs/action-card/style.scss +52 -27
  4. package/dist/cjs/autocomplete-tokenfield/style.scss +4 -4
  5. package/dist/cjs/autocomplete-with-suggestions/index.js +3 -2
  6. package/dist/cjs/autocomplete-with-suggestions/style.scss +19 -20
  7. package/dist/cjs/button/index.js +2 -13
  8. package/dist/cjs/button/style.scss +3 -344
  9. package/dist/cjs/button-card/index.js +11 -6
  10. package/dist/cjs/button-card/style.scss +69 -35
  11. package/dist/cjs/card/index.js +3 -1
  12. package/dist/cjs/card/style.scss +34 -61
  13. package/dist/cjs/category-autocomplete/index.js +52 -13
  14. package/dist/cjs/category-autocomplete/style.scss +19 -15
  15. package/dist/cjs/color-picker/index.js +17 -35
  16. package/dist/cjs/color-picker/style.scss +20 -160
  17. package/dist/cjs/custom-select-control/style.scss +12 -42
  18. package/dist/cjs/footer/index.js +21 -7
  19. package/dist/cjs/footer/style.scss +9 -10
  20. package/dist/cjs/form-token-field/index.js +2 -2
  21. package/dist/cjs/form-token-field/style.scss +8 -103
  22. package/dist/cjs/global-notices/index.js +2 -1
  23. package/dist/cjs/grid/index.js +1 -1
  24. package/dist/cjs/grid/style.scss +29 -1
  25. package/dist/cjs/handoff/index.js +7 -7
  26. package/dist/cjs/image-upload/index.js +1 -1
  27. package/dist/cjs/image-upload/style.scss +10 -11
  28. package/dist/cjs/index.js +7 -53
  29. package/dist/cjs/modal/index.js +0 -3
  30. package/dist/cjs/modal/style.scss +19 -131
  31. package/dist/cjs/newspack-icon/index.js +4 -2
  32. package/dist/cjs/newspack-icon/style.scss +15 -0
  33. package/dist/cjs/notice/index.js +8 -9
  34. package/dist/cjs/notice/style.scss +38 -10
  35. package/dist/cjs/plugin-installer/index.js +4 -2
  36. package/dist/cjs/plugin-settings/SettingsSection.js +76 -45
  37. package/dist/cjs/plugin-settings/index.js +49 -34
  38. package/dist/cjs/plugin-settings/style.scss +7 -0
  39. package/dist/cjs/plugin-toggle/index.js +22 -1
  40. package/dist/cjs/popover/style.scss +2 -2
  41. package/dist/cjs/radio-control/style.scss +1 -2
  42. package/dist/cjs/section-header/index.js +18 -5
  43. package/dist/cjs/section-header/style.scss +26 -1
  44. package/dist/cjs/select-control/ButtonGroupControl.js +8 -8
  45. package/dist/cjs/select-control/GroupedSelectControl.js +33 -30
  46. package/dist/cjs/select-control/index.js +1 -2
  47. package/dist/cjs/select-control/style.scss +46 -87
  48. package/dist/cjs/settings/MinMaxSetting.js +4 -2
  49. package/dist/cjs/settings/SettingsCard.js +6 -1
  50. package/dist/cjs/settings/SettingsSection.js +4 -4
  51. package/dist/cjs/settings/style.scss +32 -4
  52. package/dist/cjs/style-card/index.js +10 -6
  53. package/dist/cjs/style-card/style.scss +12 -8
  54. package/dist/cjs/style.scss +44 -0
  55. package/dist/cjs/tabbed-navigation/index.js +13 -20
  56. package/dist/cjs/tabbed-navigation/style.scss +56 -34
  57. package/dist/cjs/text-control/index.js +0 -3
  58. package/dist/cjs/text-control/style.scss +0 -126
  59. package/dist/cjs/waiting/index.js +9 -25
  60. package/dist/cjs/waiting/style.scss +9 -20
  61. package/dist/cjs/web-preview/index.js +18 -30
  62. package/dist/cjs/web-preview/style.scss +33 -26
  63. package/dist/cjs/with-wizard/index.js +4 -2
  64. package/dist/cjs/with-wizard/style.scss +77 -89
  65. package/dist/cjs/with-wizard-screen/index.js +17 -21
  66. package/dist/cjs/with-wizard-screen/style.scss +74 -121
  67. package/dist/cjs/wizard/components/WizardError.js +86 -0
  68. package/dist/cjs/wizard/index.js +145 -0
  69. package/dist/cjs/wizard/store/index.js +178 -0
  70. package/dist/cjs/wizard/store/utils.js +31 -0
  71. package/dist/esm/action-card/index.js +33 -23
  72. package/dist/esm/action-card/style.scss +52 -27
  73. package/dist/esm/autocomplete-tokenfield/style.scss +4 -4
  74. package/dist/esm/autocomplete-with-suggestions/index.js +3 -2
  75. package/dist/esm/autocomplete-with-suggestions/style.scss +19 -20
  76. package/dist/esm/button/index.js +2 -12
  77. package/dist/esm/button/style.scss +3 -344
  78. package/dist/esm/button-card/index.js +10 -6
  79. package/dist/esm/button-card/style.scss +69 -35
  80. package/dist/esm/card/index.js +3 -1
  81. package/dist/esm/card/style.scss +34 -61
  82. package/dist/esm/category-autocomplete/index.js +54 -14
  83. package/dist/esm/category-autocomplete/style.scss +19 -15
  84. package/dist/esm/color-picker/index.js +15 -34
  85. package/dist/esm/color-picker/style.scss +20 -160
  86. package/dist/esm/custom-select-control/style.scss +12 -42
  87. package/dist/esm/footer/index.js +21 -7
  88. package/dist/esm/footer/style.scss +9 -10
  89. package/dist/esm/form-token-field/index.js +2 -2
  90. package/dist/esm/form-token-field/style.scss +8 -103
  91. package/dist/esm/global-notices/index.js +2 -1
  92. package/dist/esm/grid/index.js +1 -1
  93. package/dist/esm/grid/style.scss +29 -1
  94. package/dist/esm/handoff/index.js +7 -7
  95. package/dist/esm/image-upload/index.js +1 -1
  96. package/dist/esm/image-upload/style.scss +10 -11
  97. package/dist/esm/index.js +3 -8
  98. package/dist/esm/modal/index.js +0 -3
  99. package/dist/esm/modal/style.scss +19 -131
  100. package/dist/esm/newspack-icon/index.js +4 -2
  101. package/dist/esm/newspack-icon/style.scss +15 -0
  102. package/dist/esm/notice/index.js +8 -3
  103. package/dist/esm/notice/style.scss +38 -10
  104. package/dist/esm/plugin-installer/index.js +5 -2
  105. package/dist/esm/plugin-settings/SettingsSection.js +74 -46
  106. package/dist/esm/plugin-settings/index.js +48 -34
  107. package/dist/esm/plugin-settings/style.scss +7 -0
  108. package/dist/esm/plugin-toggle/index.js +23 -1
  109. package/dist/esm/popover/style.scss +2 -2
  110. package/dist/esm/radio-control/style.scss +1 -2
  111. package/dist/esm/section-header/index.js +17 -5
  112. package/dist/esm/section-header/style.scss +26 -1
  113. package/dist/esm/select-control/ButtonGroupControl.js +8 -8
  114. package/dist/esm/select-control/GroupedSelectControl.js +33 -30
  115. package/dist/esm/select-control/index.js +1 -2
  116. package/dist/esm/select-control/style.scss +46 -87
  117. package/dist/esm/settings/MinMaxSetting.js +3 -2
  118. package/dist/esm/settings/SettingsCard.js +6 -1
  119. package/dist/esm/settings/SettingsSection.js +5 -5
  120. package/dist/esm/settings/style.scss +32 -4
  121. package/dist/esm/style-card/index.js +11 -8
  122. package/dist/esm/style-card/style.scss +12 -8
  123. package/dist/esm/style.scss +44 -0
  124. package/dist/esm/tabbed-navigation/index.js +14 -22
  125. package/dist/esm/tabbed-navigation/style.scss +56 -34
  126. package/dist/esm/text-control/index.js +0 -3
  127. package/dist/esm/text-control/style.scss +0 -126
  128. package/dist/esm/waiting/index.js +9 -22
  129. package/dist/esm/waiting/style.scss +9 -20
  130. package/dist/esm/web-preview/index.js +12 -25
  131. package/dist/esm/web-preview/style.scss +33 -26
  132. package/dist/esm/with-wizard/index.js +4 -2
  133. package/dist/esm/with-wizard/style.scss +77 -89
  134. package/dist/esm/with-wizard-screen/index.js +18 -22
  135. package/dist/esm/with-wizard-screen/style.scss +74 -121
  136. package/dist/esm/wizard/components/WizardError.js +78 -0
  137. package/dist/esm/wizard/index.js +128 -0
  138. package/dist/esm/wizard/store/index.js +161 -0
  139. package/dist/esm/wizard/store/utils.js +17 -0
  140. package/package.json +2 -1
  141. package/shared/scss/_colors.scss +15 -0
  142. package/src/action-card/index.js +31 -19
  143. package/src/action-card/style.scss +52 -27
  144. package/src/autocomplete-tokenfield/style.scss +4 -4
  145. package/src/autocomplete-with-suggestions/index.js +4 -2
  146. package/src/autocomplete-with-suggestions/style.scss +19 -20
  147. package/src/button/index.js +2 -9
  148. package/src/button/style.scss +3 -344
  149. package/src/button-card/index.js +19 -5
  150. package/src/button-card/style.scss +69 -35
  151. package/src/card/index.js +4 -0
  152. package/src/card/style.scss +34 -61
  153. package/src/category-autocomplete/index.js +51 -18
  154. package/src/category-autocomplete/style.scss +19 -15
  155. package/src/color-picker/index.js +16 -22
  156. package/src/color-picker/style.scss +20 -160
  157. package/src/custom-select-control/style.scss +12 -42
  158. package/src/footer/index.js +19 -8
  159. package/src/footer/style.scss +9 -10
  160. package/src/form-token-field/index.js +1 -1
  161. package/src/form-token-field/style.scss +8 -103
  162. package/src/global-notices/index.js +1 -1
  163. package/src/grid/index.js +1 -1
  164. package/src/grid/style.scss +29 -1
  165. package/src/handoff/index.js +7 -7
  166. package/src/image-upload/style.scss +10 -11
  167. package/src/index.js +3 -7
  168. package/src/modal/index.js +2 -5
  169. package/src/modal/style.scss +19 -131
  170. package/src/newspack-icon/index.js +7 -2
  171. package/src/newspack-icon/style.scss +15 -0
  172. package/src/notice/index.js +7 -1
  173. package/src/notice/style.scss +38 -10
  174. package/src/plugin-installer/index.js +4 -2
  175. package/src/plugin-settings/SettingsSection.js +65 -27
  176. package/src/plugin-settings/index.js +45 -18
  177. package/src/plugin-settings/style.scss +7 -0
  178. package/src/plugin-toggle/index.js +35 -9
  179. package/src/popover/style.scss +2 -2
  180. package/src/radio-control/style.scss +1 -2
  181. package/src/section-header/index.js +25 -6
  182. package/src/section-header/style.scss +26 -1
  183. package/src/select-control/ButtonGroupControl.js +13 -6
  184. package/src/select-control/GroupedSelectControl.js +26 -24
  185. package/src/select-control/index.js +1 -2
  186. package/src/select-control/style.scss +46 -87
  187. package/src/settings/MinMaxSetting.js +2 -1
  188. package/src/settings/SettingsCard.js +9 -7
  189. package/src/settings/SettingsSection.js +4 -4
  190. package/src/settings/style.scss +32 -4
  191. package/src/style-card/index.js +14 -16
  192. package/src/style-card/style.scss +12 -8
  193. package/src/style.scss +44 -0
  194. package/src/tabbed-navigation/index.js +12 -24
  195. package/src/tabbed-navigation/style.scss +56 -34
  196. package/src/text-control/index.js +1 -2
  197. package/src/text-control/style.scss +0 -126
  198. package/src/waiting/index.js +7 -18
  199. package/src/waiting/style.scss +9 -20
  200. package/src/web-preview/index.js +12 -33
  201. package/src/web-preview/style.scss +33 -26
  202. package/src/with-wizard/index.js +7 -5
  203. package/src/with-wizard/style.scss +77 -89
  204. package/src/with-wizard-screen/index.js +14 -17
  205. package/src/with-wizard-screen/style.scss +74 -121
  206. package/src/wizard/components/WizardError.js +57 -0
  207. package/src/wizard/index.js +133 -0
  208. package/src/wizard/store/index.js +126 -0
  209. package/src/wizard/store/utils.js +16 -0
  210. package/dist/cjs/button-group/index.js +0 -57
  211. package/dist/cjs/button-group/style.scss +0 -68
  212. package/dist/cjs/checkbox-control/index.js +0 -63
  213. package/dist/cjs/checkbox-control/style.scss +0 -78
  214. package/dist/cjs/preview-box/index.js +0 -36
  215. package/dist/cjs/preview-box/style.scss +0 -18
  216. package/dist/cjs/textarea-control/index.js +0 -54
  217. package/dist/cjs/textarea-control/style.scss +0 -76
  218. package/dist/cjs/toggle-control/index.js +0 -58
  219. package/dist/cjs/toggle-control/style.scss +0 -74
  220. package/dist/cjs/toggle-group/index.js +0 -71
  221. package/dist/cjs/toggle-group/style.scss +0 -28
  222. package/dist/cjs/wizard-pagination/index.js +0 -71
  223. package/dist/cjs/wizard-pagination/style.scss +0 -74
  224. package/dist/esm/button-group/index.js +0 -43
  225. package/dist/esm/button-group/style.scss +0 -68
  226. package/dist/esm/checkbox-control/index.js +0 -49
  227. package/dist/esm/checkbox-control/style.scss +0 -78
  228. package/dist/esm/preview-box/index.js +0 -30
  229. package/dist/esm/preview-box/style.scss +0 -18
  230. package/dist/esm/textarea-control/index.js +0 -40
  231. package/dist/esm/textarea-control/style.scss +0 -76
  232. package/dist/esm/toggle-control/index.js +0 -44
  233. package/dist/esm/toggle-control/style.scss +0 -74
  234. package/dist/esm/toggle-group/index.js +0 -58
  235. package/dist/esm/toggle-group/style.scss +0 -28
  236. package/dist/esm/wizard-pagination/index.js +0 -57
  237. package/dist/esm/wizard-pagination/style.scss +0 -74
  238. package/src/button-group/index.js +0 -35
  239. package/src/button-group/style.scss +0 -68
  240. package/src/checkbox-control/index.js +0 -38
  241. package/src/checkbox-control/style.scss +0 -78
  242. package/src/preview-box/index.js +0 -18
  243. package/src/preview-box/style.scss +0 -18
  244. package/src/textarea-control/index.js +0 -32
  245. package/src/textarea-control/style.scss +0 -76
  246. package/src/toggle-control/index.js +0 -38
  247. package/src/toggle-control/style.scss +0 -74
  248. package/src/toggle-group/index.js +0 -43
  249. package/src/toggle-group/style.scss +0 -28
  250. package/src/wizard-pagination/index.js +0 -59
  251. package/src/wizard-pagination/style.scss +0 -74
@@ -15,16 +15,21 @@ import { PatronsLogo } from '../';
15
15
  import './style.scss';
16
16
 
17
17
  const Footer = ( { simple } ) => {
18
- const componentsDemo = window && window.newspack_urls && window.newspack_urls.components_demo;
19
- const setupWizard = window && window.newspack_urls && window.newspack_urls.setup_wizard;
20
- const resetUrl = window && window.newspack_urls && window.newspack_urls.reset_url;
21
- const pluginVersion = window && window.newspack_urls && window.newspack_urls.plugin_version;
22
- const removeStarterContent =
23
- window && window.newspack_urls && window.newspack_urls.remove_starter_content;
18
+ const {
19
+ components_demo: componentsDemo = false,
20
+ support = false,
21
+ setup_wizard: setupWizard = false,
22
+ reset_url: resetUrl = false,
23
+ plugin_version: pluginVersion = { label: 'Newspack' },
24
+ remove_starter_content: removeStarterContent = false,
25
+ support_email: supportEmail,
26
+ } = window.newspack_urls || {};
27
+
24
28
  const footerElements = [
25
29
  {
26
30
  label: pluginVersion.label,
27
- url: pluginVersion.url,
31
+ url: 'https://newspack.pub/category/release-notes/',
32
+ external: true,
28
33
  },
29
34
  {
30
35
  label: __( 'About', 'newspack' ),
@@ -33,7 +38,7 @@ const Footer = ( { simple } ) => {
33
38
  },
34
39
  {
35
40
  label: __( 'Documentation', 'newspack' ),
36
- url: 'https://newspack.pub/support/',
41
+ url: support,
37
42
  external: true,
38
43
  },
39
44
  ];
@@ -61,6 +66,12 @@ const Footer = ( { simple } ) => {
61
66
  url: removeStarterContent,
62
67
  } );
63
68
  }
69
+ if ( supportEmail ) {
70
+ footerElements.push( {
71
+ label: __( 'Contact Support', 'newspack' ),
72
+ url: `mailto:${ supportEmail }`,
73
+ } );
74
+ }
64
75
  return (
65
76
  <div className="newspack-footer">
66
77
  { ! simple && (
@@ -2,7 +2,6 @@
2
2
  * Footer
3
3
  */
4
4
 
5
- @import '../../../shared/scss/colors';
6
5
  @import '~@wordpress/base-styles/colors';
7
6
 
8
7
  .newspack-footer {
@@ -45,17 +44,17 @@
45
44
 
46
45
  li {
47
46
  margin: 8px;
48
- }
49
47
 
50
- a {
51
- align-items: flex-end;
52
- color: inherit;
53
- display: flex;
48
+ a {
49
+ align-items: flex-end;
50
+ color: inherit;
51
+ display: flex;
54
52
 
55
- &:active,
56
- &:focus,
57
- &:hover {
58
- color: $gray-900;
53
+ &:active,
54
+ &:focus,
55
+ &:hover {
56
+ color: $gray-900;
57
+ }
59
58
  }
60
59
  }
61
60
 
@@ -42,7 +42,7 @@ class FormTokenField extends Component {
42
42
  ) }
43
43
  >
44
44
  <BaseComponent className={ classes } { ...otherProps } />
45
- { description && <div className="i">{ description }</div> }
45
+ { description && <p className="newspack-form-token-field__help">{ description }</p> }
46
46
  </div>
47
47
  );
48
48
  }
@@ -6,114 +6,19 @@
6
6
  @import '~@wordpress/base-styles/colors';
7
7
 
8
8
  .newspack-form-token-field {
9
- color: $gray-700;
10
- font-size: 14px;
11
- line-height: 24px;
12
- margin: 32px 0;
13
9
  width: 100%;
14
10
 
15
- label {
16
- color: $gray-900;
17
- font-size: inherit;
18
- font-weight: bold;
19
- line-height: inherit;
20
- margin: 0;
11
+ .components-form-token-field__input-container {
12
+ padding-bottom: 1px;
13
+ padding-top: 1px;
21
14
  }
22
15
 
23
- .newspack-form-token-field__input-container {
24
- background: white;
25
- border: 1px solid $gray-300;
26
- border-radius: 3px;
27
- box-shadow: none;
28
- box-sizing: border-box;
29
- color: inherit;
30
- font-size: 16px;
31
- line-height: inherit;
32
- margin: 0;
33
- min-height: 48px;
34
- padding: 9px 8px;
35
- transition: border-color 125ms ease-in-out, box-shadow 125ms ease-in-out;
36
- width: 100%;
16
+ // Help
37
17
 
38
- @media screen and ( min-width: 768px ) {
39
- font-size: inherit;
40
- }
41
-
42
- &.is-active {
43
- border-color: $primary-500;
44
- box-shadow: inset 0 0 0 2px $primary-500;
45
- }
46
-
47
- &:disabled,
48
- &.is-disabled {
49
- background: $gray-100;
50
- color: $gray-600;
51
- cursor: not-allowed;
52
- }
53
-
54
- input[type='text'] {
55
- border: 0;
56
- line-height: inherit;
57
- margin: 2px 0;
58
- padding: 0;
59
-
60
- &:focus {
61
- box-shadow: none;
62
- }
63
- }
64
-
65
- .components-form-token-field__token-text {
66
- font-size: inherit;
67
- }
68
-
69
- .components-form-token-field__remove-token {
70
- height: 24px;
71
- }
72
- }
73
-
74
- .components-form-token-field__suggestions-list {
75
- border-top-color: $gray-300;
76
- margin: 12px -8px -11px;
77
- padding: 8px 0 0;
78
-
79
- .components-form-token-field__suggestion {
80
- font-size: inherit;
81
- margin-bottom: 8px;
82
-
83
- &.is-selected {
84
- background: $primary-500;
85
- }
86
- }
87
- }
88
-
89
- // Help Text
90
-
91
- .components-form-token-field__help {
92
- margin: 0;
93
- }
94
-
95
- // Multiple Form Token Field
96
-
97
- & + & {
98
- margin-bottom: 32px;
99
- margin-top: -16px;
100
- }
101
-
102
- // Multiple Controls
103
-
104
- + .newspack-select-control,
105
- + .newspack-textarea-control,
106
- + .newspack-text-control {
107
- margin-bottom: 32px;
108
- margin-top: -16px;
109
- }
110
-
111
- // Reset
112
-
113
- .components-base-control__field,
114
- .components-base-control__label {
115
- display: block;
116
- margin: 0;
18
+ &__help {
19
+ color: $gray-700;
20
+ font-size: 12px;
21
+ margin: 8px 0 0 !important;
117
22
  }
118
23
 
119
24
  // Hidden Elements
@@ -15,7 +15,7 @@ const GlobalNotices = () => {
15
15
  }
16
16
  return notice.split( ',' ).map( ( text, i ) => {
17
17
  if ( text.indexOf( '_error_' ) === 0 ) {
18
- return <Notice isError noticeText={ text.replace( '_error_', '' ) } key={ i } />;
18
+ return <Notice isError noticeText={ text.replace( '_error_', '' ) } key={ i } rawHTML />;
19
19
  }
20
20
  return <Notice isSuccess noticeText={ text } key={ i } />;
21
21
  } );
package/src/grid/index.js CHANGED
@@ -37,7 +37,7 @@ class Grid extends Component {
37
37
 
38
38
  Grid.defaultProps = {
39
39
  columns: 2,
40
- gutter: 64,
40
+ gutter: 32,
41
41
  rowGap: null,
42
42
  };
43
43
 
@@ -16,6 +16,11 @@
16
16
  margin: 0;
17
17
  }
18
18
 
19
+ // Gutter 0
20
+ &__gutter-0 {
21
+ grid-gap: 0;
22
+ }
23
+
19
24
  // Gutter 8
20
25
  &__gutter-8 {
21
26
  grid-gap: 8px;
@@ -36,6 +41,11 @@
36
41
  grid-gap: 32px;
37
42
  }
38
43
 
44
+ // Row Gap 0
45
+ &__row-gap-0 {
46
+ grid-row-gap: 0;
47
+ }
48
+
39
49
  // Row Gap 8
40
50
  &__row-gap-8 {
41
51
  grid-row-gap: 8px;
@@ -51,6 +61,11 @@
51
61
  grid-row-gap: 32px;
52
62
  }
53
63
 
64
+ // Gutter 64
65
+ &__gutter-64 {
66
+ grid-gap: 64px;
67
+ }
68
+
54
69
  // Columns 6
55
70
  &__columns-6 {
56
71
  grid-template-columns: repeat( 2, 1fr );
@@ -103,6 +118,19 @@
103
118
  margin-top: 0 !important;
104
119
  }
105
120
 
121
+ .components-base-control {
122
+ &__field,
123
+ &__help {
124
+ margin-bottom: 0;
125
+ }
126
+ }
127
+
128
+ .components-form-token-field {
129
+ &__input-container {
130
+ margin-bottom: 0;
131
+ }
132
+ }
133
+
106
134
  // Cards
107
135
  > .newspack-card {
108
136
  > *:first-child {
@@ -116,7 +144,7 @@
116
144
 
117
145
  // Table-like
118
146
  &__thead {
119
- background: $gray-100;
147
+ background: rgba( black, 0.025 );
120
148
  border-bottom: 1px solid $gray-300;
121
149
  border-top: 1px solid $gray-300;
122
150
  color: $gray-900;
@@ -84,13 +84,13 @@ class Handoff extends Component {
84
84
  children,
85
85
  compact,
86
86
  useModal,
87
- // eslint-disable-next-line no-unused-vars
87
+ // eslint-disable-next-line no-unused-vars,@typescript-eslint/no-unused-vars
88
88
  modalTitle: _modalTitle,
89
- // eslint-disable-next-line no-unused-vars
89
+ // eslint-disable-next-line no-unused-vars,@typescript-eslint/no-unused-vars
90
90
  modalBody: _modalBody,
91
- // eslint-disable-next-line no-unused-vars
91
+ // eslint-disable-next-line no-unused-vars,@typescript-eslint/no-unused-vars
92
92
  onReady,
93
- // eslint-disable-next-line no-unused-vars
93
+ // eslint-disable-next-line no-unused-vars,@typescript-eslint/no-unused-vars
94
94
  editLink,
95
95
  ...otherProps
96
96
  } = this.props;
@@ -119,7 +119,7 @@ class Handoff extends Component {
119
119
  </Button>
120
120
  ) }
121
121
  { Name && 'active' !== Status && (
122
- <Button className={ classes } isSecondary disabled { ...otherProps }>
122
+ <Button className={ classes } variant="secondary" disabled { ...otherProps }>
123
123
  { Name + __( ' not installed', 'newspack' ) }
124
124
  </Button>
125
125
  ) }
@@ -142,10 +142,10 @@ class Handoff extends Component {
142
142
  >
143
143
  <p>{ modalBody }</p>
144
144
  <Card buttonsCard noBorder className="justify-end">
145
- <Button isSecondary onClick={ () => this.setState( { showModal: false } ) }>
145
+ <Button variant="secondary" onClick={ () => this.setState( { showModal: false } ) }>
146
146
  { dismissModalButton }
147
147
  </Button>
148
- <Button isPrimary onClick={ () => this.goToPlugin( Slug ) }>
148
+ <Button variant="primary" onClick={ () => this.goToPlugin( Slug ) }>
149
149
  { primaryModalButton }
150
150
  </Button>
151
151
  </Card>
@@ -11,18 +11,15 @@
11
11
  display: flex;
12
12
  }
13
13
  &__label {
14
- color: $gray-900;
15
- font-size: 14px;
16
- font-weight: bold;
17
- line-height: 24px;
14
+ margin: 0 0 8px;
18
15
  }
19
16
  &__image {
20
17
  align-items: center;
21
18
  background-repeat: no-repeat;
22
19
  background-size: contain;
23
20
  background-position: center;
24
- border: 1px dashed $gray-300;
25
- border-radius: 3px;
21
+ border: 1px dashed $gray-700;
22
+ border-radius: 2px;
26
23
  display: flex;
27
24
  justify-content: center;
28
25
  max-width: 100%;
@@ -34,7 +31,7 @@
34
31
  &:not( &--has-image ) {
35
32
  .newspack-button {
36
33
  background: white !important;
37
- border-radius: 3px !important;
34
+ border-radius: 2px !important;
38
35
  padding: 4px 16px !important;
39
36
 
40
37
  &:active,
@@ -53,8 +50,8 @@
53
50
  overflow: hidden;
54
51
  &::before,
55
52
  &::after {
56
- border: 1px solid rgba( black, 0.125 );
57
- border-radius: 3px;
53
+ border: 1px solid rgba( black, 0.54 );
54
+ border-radius: 2px;
58
55
  bottom: 0;
59
56
  content: '';
60
57
  left: 0;
@@ -74,7 +71,7 @@
74
71
  }
75
72
  &::after {
76
73
  background: rgba( white, 0.9 );
77
- border-color: $gray-300;
74
+ border-color: $gray-700;
78
75
  }
79
76
  &:focus-within,
80
77
  &:hover {
@@ -97,7 +94,9 @@
97
94
  }
98
95
  }
99
96
  &__image + &__help {
100
- margin: 0;
97
+ color: $gray-700;
98
+ font-size: 12px;
99
+ margin: 1em 0 0;
101
100
  }
102
101
  &__controls {
103
102
  align-items: center;
package/src/index.js CHANGED
@@ -3,11 +3,8 @@ export { default as AutocompleteTokenField } from './autocomplete-tokenfield';
3
3
  export { default as AutocompleteWithSuggestions } from './autocomplete-with-suggestions';
4
4
  export { default as Button } from './button';
5
5
  export { default as ButtonCard } from './button-card';
6
- export { default as ButtonGroup } from './button-group';
7
6
  export { default as Card } from './card';
8
- export { default as PreviewBox } from './preview-box';
9
7
  export { default as CategoryAutocomplete } from './category-autocomplete';
10
- export { default as CheckboxControl } from './checkbox-control';
11
8
  export { default as ColorPicker } from './color-picker';
12
9
  export { default as CustomSelectControl } from './custom-select-control';
13
10
  export { default as FormTokenField } from './form-token-field';
@@ -35,15 +32,14 @@ export { default as Settings } from './settings';
35
32
  export { default as StyleCard } from './style-card';
36
33
  export { default as TabbedNavigation } from './tabbed-navigation';
37
34
  export { default as TextControl } from './text-control';
38
- export { default as TextareaControl } from './textarea-control';
39
- export { default as ToggleControl } from './toggle-control';
40
- export { default as ToggleGroup } from './toggle-group';
41
35
  export { default as Waiting } from './waiting';
42
36
  export { default as WebPreview } from './web-preview';
37
+ export { default as Wizard } from './wizard';
43
38
  export { default as withWizard } from './with-wizard';
44
39
  export { default as withWizardScreen } from './with-wizard-screen';
45
- export { default as WizardPagination } from './wizard-pagination';
46
40
 
47
41
  export { default as Router } from './proxied-imports/router';
48
42
  export { default as hooks } from './hooks';
49
43
  export { default as utils } from './utils';
44
+
45
+ import './style.scss';
@@ -23,18 +23,15 @@ class Modal extends Component {
23
23
  * Render.
24
24
  */
25
25
  render() {
26
- const { className, overlayClassName, isWide, isNarrow, ...otherProps } = this.props;
26
+ const { className, isWide, isNarrow, ...otherProps } = this.props;
27
27
  const classes = classnames(
28
28
  'newspack-modal',
29
29
  isWide && 'newspack-modal--wide',
30
30
  isNarrow && 'newspack-modal--narrow',
31
31
  className
32
32
  );
33
- const overlayClasses = classnames( 'newspack-modal__overlay', overlayClassName );
34
33
 
35
- return (
36
- <BaseComponent className={ classes } overlayClassName={ overlayClasses } { ...otherProps } />
37
- );
34
+ return <BaseComponent className={ classes } { ...otherProps } />;
38
35
  }
39
36
  }
40
37
 
@@ -3,166 +3,54 @@
3
3
  */
4
4
 
5
5
  @import '../../../shared/scss/colors';
6
- @import '~@wordpress/base-styles/colors';
7
6
 
8
7
  .newspack-modal {
9
- background: white;
10
- border: 0;
11
- color: $gray-700;
12
- font-size: 14px;
13
- line-height: 24px;
14
- margin: auto;
15
- max-height: 100%;
16
- width: 100%;
17
-
18
- @media screen and ( min-width: 600px ) {
19
- border-radius: 3px;
20
- max-width: 80%;
21
- max-width: calc( 100% - 64px );
22
- }
8
+ // Color
9
+ --wp-admin-theme-color: #{$primary-500};
10
+ --wp-admin-theme-color--rgb: #{$primary-500--rgb};
11
+ --wp-admin-theme-color-darker-10: #{$primary-600};
12
+ --wp-admin-theme-color-darker-10--rgb: #{$primary-600--rgb};
13
+ --wp-admin-theme-color-darker-20: #{$primary-700};
14
+ --wp-admin-theme-color-darker-20--rgb: #{$primary-700--rgb};
23
15
 
24
16
  @media screen and ( min-width: 744px ) {
25
17
  max-width: 680px;
18
+ width: 680px;
26
19
 
27
20
  &--wide {
28
21
  max-width: 1168px;
22
+ width: 1168px;
29
23
  }
30
24
  }
31
25
 
32
26
  &--narrow {
33
27
  max-width: 360px;
28
+ width: 360px;
34
29
  }
35
30
 
36
- // Header
37
-
38
- .components-modal__header {
39
- align-items: flex-start;
40
- background: white;
41
- border: 0;
42
- height: auto;
43
- justify-content: flex-end;
44
- margin: 0 -32px 0;
45
- padding: 32px 32px 0;
46
- position: relative;
47
-
48
- .components-modal__header-heading-container {
49
- display: block;
50
- margin-right: 16px;
51
- }
52
-
53
- .components-button.has-icon {
54
- flex: 0 0 36px;
55
- left: 0;
56
- margin: -2px 0;
57
-
58
- &:hover,
59
- &[aria-expended='true'] {
60
- color: $primary-500;
61
- }
62
-
63
- &:focus:not( :disabled ) {
64
- box-shadow: 0 0 0 2px $primary-500;
65
- }
66
-
67
- svg {
68
- width: 24px;
69
- height: 24px;
70
-
71
- + span {
72
- display: none;
73
- }
74
- }
75
- }
76
-
77
- .components-modal__header-heading {
78
- color: $gray-900;
79
- font-size: 21px;
80
- font-weight: bold;
81
- line-height: 32px;
82
- }
83
- }
84
-
85
- // Content
86
-
87
- .components-modal__content {
88
- padding: 0 32px;
89
- margin: 0;
90
-
91
- &::before {
92
- display: none;
93
- }
94
- }
95
-
96
- // Typography
97
-
98
- h2,
99
- p {
100
- line-height: 24px;
101
- margin: 32px 0;
102
- padding: 0;
103
- }
104
-
105
- h2 {
106
- color: $gray-900;
107
- font-size: 17px;
108
- font-weight: bold;
109
- }
110
-
111
- p {
112
- font-size: 14px;
113
-
114
- &.is-dark {
115
- color: $gray-900;
116
- }
117
- }
118
-
119
- // Thematic Break
120
-
121
- hr {
122
- background: $gray-300;
123
- border: 0;
124
- height: 1px;
125
- margin: 48px -48px;
126
-
127
- @media screen and ( min-width: 744px ) {
128
- margin: 64px -64px;
129
- }
31
+ @media screen and ( min-width: 960px ) {
32
+ max-height: calc( 100% - 128px );
130
33
  }
131
34
 
132
35
  // Links
133
-
134
36
  a {
135
- color: $primary-500;
37
+ color: var( --wp-admin-theme-color );
136
38
 
137
39
  &:active,
138
40
  &:focus,
139
41
  &:hover {
140
- color: $primary-600;
141
- text-decoration: none;
42
+ color: var( --wp-admin-theme-color-darker-10 );
142
43
  }
143
44
 
144
45
  &:focus {
145
- box-shadow: none;
146
- outline: 2px solid $primary-500;
147
- outline-offset: 2px;
46
+ box-shadow: 0 0 0 var( --wp-admin-border-width-focus ) var( --wp-admin-theme-color );
47
+ outline: 3px solid transparent;
148
48
  }
149
49
  }
150
- }
151
-
152
- // Overlay
153
50
 
154
- .newspack-modal__overlay {
155
- background: rgba( black, 0.7 );
156
- }
157
-
158
- // Small Screens
159
-
160
- @media ( max-width: 599px ) {
161
- .newspack-modal {
162
- top: auto;
163
-
164
- .components-modal__content {
165
- height: auto;
51
+ .components-modal__content {
52
+ > *:last-child {
53
+ margin-bottom: 8px;
166
54
  }
167
55
  }
168
56
  }
@@ -23,8 +23,13 @@ class NewspackIcon extends Component {
23
23
  * Render
24
24
  */
25
25
  render() {
26
- const { className, size } = this.props;
27
- const classes = classnames( 'newspack-icon', className );
26
+ const { className, simple, size, white } = this.props;
27
+ const classes = classnames(
28
+ 'newspack-icon',
29
+ simple && 'newspack-icon--simple',
30
+ white && 'newspack-icon--white',
31
+ className
32
+ );
28
33
  return (
29
34
  <SVG
30
35
  xmlns="http://www.w3.org/2000/svg"
@@ -8,4 +8,19 @@
8
8
  background: $primary-500;
9
9
  fill: white;
10
10
  padding: 12px;
11
+
12
+ &--white {
13
+ background: white;
14
+ fill: $primary-500;
15
+ }
16
+
17
+ &--simple {
18
+ background: none;
19
+ fill: $primary-500;
20
+ padding: 0;
21
+ }
22
+
23
+ &#{&}--simple#{&}--white {
24
+ fill: white;
25
+ }
11
26
  }