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.
Files changed (293) hide show
  1. package/dist/cjs/accordion/index.js +46 -0
  2. package/dist/cjs/accordion/style.scss +27 -0
  3. package/dist/cjs/action-card/index.js +48 -25
  4. package/dist/cjs/action-card/style.scss +100 -23
  5. package/dist/cjs/autocomplete-tokenfield/index.js +13 -41
  6. package/dist/cjs/autocomplete-tokenfield/style.scss +2 -2
  7. package/dist/cjs/autocomplete-with-suggestions/index.js +30 -51
  8. package/dist/cjs/autocomplete-with-suggestions/style.scss +16 -15
  9. package/dist/cjs/button/index.js +5 -13
  10. package/dist/cjs/button-card/index.js +1 -10
  11. package/dist/cjs/button-card/style.scss +13 -13
  12. package/dist/cjs/button-group/index.js +57 -0
  13. package/dist/cjs/button-group/style.scss +73 -0
  14. package/dist/cjs/card/index.js +1 -8
  15. package/dist/cjs/card/style.scss +25 -8
  16. package/dist/cjs/category-autocomplete/index.js +18 -38
  17. package/dist/cjs/category-autocomplete/style.scss +0 -2
  18. package/dist/cjs/checkbox-control/index.js +63 -0
  19. package/dist/cjs/checkbox-control/style.scss +78 -0
  20. package/dist/cjs/color-picker/index.js +1 -15
  21. package/dist/cjs/color-picker/style.scss +0 -3
  22. package/dist/cjs/consts.js +5 -3
  23. package/dist/cjs/custom-select-control/index.js +1 -9
  24. package/dist/cjs/custom-select-control/style.scss +6 -7
  25. package/dist/cjs/date-range-picker/index.js +1 -10
  26. package/dist/cjs/date-range-picker/style.scss +12 -12
  27. package/dist/cjs/footer/index.js +5 -17
  28. package/dist/cjs/footer/style.scss +5 -5
  29. package/dist/cjs/form-token-field/index.js +1 -9
  30. package/dist/cjs/form-token-field/style.scss +2 -3
  31. package/dist/cjs/global-notices/index.js +1 -8
  32. package/dist/cjs/grid/index.js +1 -8
  33. package/dist/cjs/grid/style.scss +5 -5
  34. package/dist/cjs/handoff/index.js +8 -17
  35. package/dist/cjs/handoff-message/index.js +50 -0
  36. package/dist/cjs/hooks/index.js +1 -7
  37. package/dist/cjs/hooks/useObjectState.js +7 -13
  38. package/dist/cjs/hooks/useObjectState.test.js +0 -14
  39. package/dist/cjs/hooks/useOnClickOutside.js +3 -6
  40. package/dist/cjs/hooks/usePrompt.js +1 -13
  41. package/dist/cjs/image-upload/index.js +21 -19
  42. package/dist/cjs/image-upload/index.test.js +0 -5
  43. package/dist/cjs/image-upload/style.scss +5 -9
  44. package/dist/cjs/index.js +28 -44
  45. package/dist/cjs/info-button/index.js +3 -11
  46. package/dist/cjs/info-button/style.scss +1 -3
  47. package/dist/cjs/modal/index.js +1 -9
  48. package/dist/cjs/modal/style.scss +8 -8
  49. package/dist/cjs/newspack-icon/index.js +1 -9
  50. package/dist/cjs/newspack-icon/style.scss +4 -4
  51. package/dist/cjs/newspack-logo/index.js +1 -9
  52. package/dist/cjs/newspack-logo/style.scss +3 -3
  53. package/dist/cjs/notice/index.js +8 -15
  54. package/dist/cjs/notice/style.scss +28 -15
  55. package/dist/cjs/patrons-logo/index.js +3 -11
  56. package/dist/cjs/plugin-installer/index.js +36 -36
  57. package/dist/cjs/plugin-installer/style.scss +5 -5
  58. package/dist/cjs/plugin-settings/SettingsSection.js +9 -28
  59. package/dist/cjs/plugin-settings/index.js +39 -22
  60. package/dist/cjs/plugin-toggle/index.js +40 -33
  61. package/dist/cjs/plugin-toggle/style.scss +2 -2
  62. package/dist/cjs/popover/index.js +1 -11
  63. package/dist/cjs/popover/style.scss +19 -16
  64. package/dist/cjs/position-control/index.js +113 -0
  65. package/dist/cjs/position-control/style.scss +66 -0
  66. package/dist/cjs/preview-box/index.js +36 -0
  67. package/dist/cjs/preview-box/style.scss +18 -0
  68. package/dist/cjs/progress-bar/index.js +2 -9
  69. package/dist/cjs/progress-bar/index.test.js +2 -7
  70. package/dist/cjs/progress-bar/style.scss +4 -4
  71. package/dist/cjs/proxied-imports/router.js +0 -3
  72. package/dist/cjs/radio-control/index.js +1 -11
  73. package/dist/cjs/radio-control/style.scss +9 -9
  74. package/dist/cjs/section-header/index.js +44 -29
  75. package/dist/cjs/section-header/style.scss +2 -2
  76. package/dist/cjs/select-control/ButtonGroupControl.js +4 -13
  77. package/dist/cjs/select-control/GroupedSelectControl.js +9 -15
  78. package/dist/cjs/select-control/index.js +5 -12
  79. package/dist/cjs/select-control/style.scss +2 -2
  80. package/dist/cjs/settings/MinMaxSetting.js +3 -7
  81. package/dist/cjs/settings/SettingsCard.js +3 -7
  82. package/dist/cjs/settings/SettingsSection.js +1 -4
  83. package/dist/cjs/settings/index.js +0 -6
  84. package/dist/cjs/settings/style.scss +1 -1
  85. package/dist/cjs/steps-list/index.js +52 -0
  86. package/dist/cjs/steps-list/style.scss +11 -0
  87. package/dist/cjs/steps-list-item/index.js +56 -0
  88. package/dist/cjs/steps-list-item/style.scss +47 -0
  89. package/dist/cjs/style-card/index.js +6 -13
  90. package/dist/cjs/style-card/style.scss +9 -12
  91. package/dist/cjs/style.scss +5 -6
  92. package/dist/cjs/tabbed-navigation/index.js +19 -16
  93. package/dist/cjs/tabbed-navigation/style.scss +3 -4
  94. package/dist/cjs/text-control/index.js +6 -16
  95. package/dist/cjs/textarea-control/index.js +54 -0
  96. package/dist/cjs/textarea-control/style.scss +76 -0
  97. package/dist/cjs/toggle-control/index.js +58 -0
  98. package/dist/cjs/toggle-control/style.scss +74 -0
  99. package/dist/cjs/toggle-group/index.js +71 -0
  100. package/dist/cjs/toggle-group/style.scss +28 -0
  101. package/dist/cjs/utils/index.js +10 -5
  102. package/dist/cjs/waiting/index.js +1 -9
  103. package/dist/cjs/web-preview/index.js +13 -28
  104. package/dist/cjs/web-preview/style.scss +14 -14
  105. package/dist/cjs/with-wizard/index.js +51 -31
  106. package/dist/cjs/with-wizard/style.scss +35 -37
  107. package/dist/cjs/with-wizard-screen/index.js +11 -17
  108. package/dist/cjs/with-wizard-screen/style.scss +14 -17
  109. package/dist/cjs/wizard/components/WizardError.js +3 -15
  110. package/dist/cjs/wizard/index.js +10 -24
  111. package/dist/cjs/wizard/store/index.js +42 -55
  112. package/dist/cjs/wizard/store/utils.js +1 -6
  113. package/dist/cjs/wizard/style.scss +148 -0
  114. package/dist/esm/accordion/index.js +38 -0
  115. package/dist/esm/accordion/style.scss +27 -0
  116. package/dist/esm/action-card/index.js +50 -21
  117. package/dist/esm/action-card/style.scss +100 -23
  118. package/dist/esm/autocomplete-tokenfield/index.js +14 -37
  119. package/dist/esm/autocomplete-tokenfield/style.scss +2 -2
  120. package/dist/esm/autocomplete-with-suggestions/index.js +28 -41
  121. package/dist/esm/autocomplete-with-suggestions/style.scss +16 -15
  122. package/dist/esm/button/index.js +5 -7
  123. package/dist/esm/button-card/index.js +2 -5
  124. package/dist/esm/button-card/style.scss +13 -13
  125. package/dist/esm/button-group/index.js +43 -0
  126. package/dist/esm/button-group/style.scss +73 -0
  127. package/dist/esm/card/index.js +2 -5
  128. package/dist/esm/card/style.scss +25 -8
  129. package/dist/esm/category-autocomplete/index.js +17 -30
  130. package/dist/esm/category-autocomplete/style.scss +0 -2
  131. package/dist/esm/checkbox-control/index.js +49 -0
  132. package/dist/esm/checkbox-control/style.scss +78 -0
  133. package/dist/esm/color-picker/index.js +2 -4
  134. package/dist/esm/color-picker/style.scss +0 -3
  135. package/dist/esm/consts.js +3 -2
  136. package/dist/esm/custom-select-control/index.js +2 -5
  137. package/dist/esm/custom-select-control/style.scss +6 -7
  138. package/dist/esm/date-range-picker/index.js +1 -3
  139. package/dist/esm/date-range-picker/style.scss +12 -12
  140. package/dist/esm/footer/index.js +3 -11
  141. package/dist/esm/footer/style.scss +5 -5
  142. package/dist/esm/form-token-field/index.js +2 -5
  143. package/dist/esm/form-token-field/style.scss +2 -3
  144. package/dist/esm/global-notices/index.js +1 -6
  145. package/dist/esm/grid/index.js +2 -5
  146. package/dist/esm/grid/style.scss +5 -5
  147. package/dist/esm/handoff/index.js +3 -14
  148. package/dist/esm/handoff-message/index.js +45 -0
  149. package/dist/esm/hooks/index.js +0 -2
  150. package/dist/esm/hooks/useObjectState.js +3 -8
  151. package/dist/esm/hooks/useObjectState.test.js +0 -3
  152. package/dist/esm/hooks/useOnClickOutside.js +2 -5
  153. package/dist/esm/hooks/usePrompt.js +1 -8
  154. package/dist/esm/image-upload/index.js +17 -16
  155. package/dist/esm/image-upload/style.scss +5 -9
  156. package/dist/esm/index.js +4 -0
  157. package/dist/esm/info-button/index.js +4 -6
  158. package/dist/esm/info-button/style.scss +1 -3
  159. package/dist/esm/modal/index.js +2 -5
  160. package/dist/esm/modal/style.scss +8 -8
  161. package/dist/esm/newspack-icon/index.js +2 -5
  162. package/dist/esm/newspack-icon/style.scss +4 -4
  163. package/dist/esm/newspack-logo/index.js +2 -5
  164. package/dist/esm/newspack-logo/style.scss +3 -3
  165. package/dist/esm/notice/index.js +4 -8
  166. package/dist/esm/notice/style.scss +28 -15
  167. package/dist/esm/patrons-logo/index.js +3 -5
  168. package/dist/esm/plugin-installer/index.js +35 -39
  169. package/dist/esm/plugin-installer/style.scss +5 -5
  170. package/dist/esm/plugin-settings/SettingsSection.js +8 -21
  171. package/dist/esm/plugin-settings/index.js +38 -24
  172. package/dist/esm/plugin-toggle/index.js +39 -36
  173. package/dist/esm/plugin-toggle/style.scss +2 -2
  174. package/dist/esm/popover/index.js +3 -6
  175. package/dist/esm/popover/style.scss +19 -16
  176. package/dist/esm/position-control/index.js +109 -0
  177. package/dist/esm/position-control/style.scss +66 -0
  178. package/dist/esm/preview-box/index.js +30 -0
  179. package/dist/esm/preview-box/style.scss +18 -0
  180. package/dist/esm/progress-bar/index.js +2 -7
  181. package/dist/esm/progress-bar/index.test.js +2 -1
  182. package/dist/esm/progress-bar/style.scss +4 -4
  183. package/dist/esm/proxied-imports/router.js +1 -0
  184. package/dist/esm/radio-control/index.js +3 -6
  185. package/dist/esm/radio-control/style.scss +9 -9
  186. package/dist/esm/section-header/index.js +44 -25
  187. package/dist/esm/section-header/style.scss +2 -2
  188. package/dist/esm/select-control/ButtonGroupControl.js +5 -7
  189. package/dist/esm/select-control/GroupedSelectControl.js +5 -6
  190. package/dist/esm/select-control/index.js +6 -6
  191. package/dist/esm/select-control/style.scss +2 -2
  192. package/dist/esm/settings/MinMaxSetting.js +1 -3
  193. package/dist/esm/settings/SettingsCard.js +3 -4
  194. package/dist/esm/settings/SettingsSection.js +0 -2
  195. package/dist/esm/settings/style.scss +1 -1
  196. package/dist/esm/steps-list/index.js +43 -0
  197. package/dist/esm/steps-list/style.scss +11 -0
  198. package/dist/esm/steps-list-item/index.js +48 -0
  199. package/dist/esm/steps-list-item/style.scss +47 -0
  200. package/dist/esm/style-card/index.js +2 -5
  201. package/dist/esm/style-card/style.scss +9 -12
  202. package/dist/esm/style.scss +5 -6
  203. package/dist/esm/tabbed-navigation/index.js +20 -10
  204. package/dist/esm/tabbed-navigation/style.scss +3 -4
  205. package/dist/esm/text-control/index.js +2 -9
  206. package/dist/esm/textarea-control/index.js +40 -0
  207. package/dist/esm/textarea-control/style.scss +76 -0
  208. package/dist/esm/toggle-control/index.js +44 -0
  209. package/dist/esm/toggle-control/style.scss +74 -0
  210. package/dist/esm/toggle-group/index.js +58 -0
  211. package/dist/esm/toggle-group/style.scss +28 -0
  212. package/dist/esm/utils/index.js +9 -3
  213. package/dist/esm/waiting/index.js +2 -5
  214. package/dist/esm/web-preview/index.js +9 -24
  215. package/dist/esm/web-preview/style.scss +14 -14
  216. package/dist/esm/with-wizard/index.js +49 -34
  217. package/dist/esm/with-wizard/style.scss +35 -37
  218. package/dist/esm/with-wizard-screen/index.js +9 -11
  219. package/dist/esm/with-wizard-screen/style.scss +14 -17
  220. package/dist/esm/wizard/components/WizardError.js +1 -10
  221. package/dist/esm/wizard/index.js +10 -12
  222. package/dist/esm/wizard/store/index.js +40 -46
  223. package/dist/esm/wizard/store/utils.js +1 -1
  224. package/dist/esm/wizard/style.scss +148 -0
  225. package/package.json +4 -4
  226. package/shared/scss/_colors.scss +0 -15
  227. package/src/accordion/index.js +32 -0
  228. package/src/accordion/style.scss +27 -0
  229. package/src/action-card/index.js +43 -8
  230. package/src/action-card/style.scss +100 -23
  231. package/src/autocomplete-tokenfield/index.js +1 -1
  232. package/src/autocomplete-tokenfield/style.scss +2 -2
  233. package/src/autocomplete-with-suggestions/style.scss +16 -15
  234. package/src/button-card/style.scss +13 -13
  235. package/src/card/style.scss +25 -8
  236. package/src/category-autocomplete/index.js +3 -1
  237. package/src/category-autocomplete/style.scss +0 -2
  238. package/src/color-picker/style.scss +0 -3
  239. package/src/consts.js +2 -1
  240. package/src/custom-select-control/style.scss +6 -7
  241. package/src/date-range-picker/style.scss +12 -12
  242. package/src/footer/index.js +2 -2
  243. package/src/footer/style.scss +5 -5
  244. package/src/form-token-field/index.js +2 -7
  245. package/src/form-token-field/style.scss +2 -3
  246. package/src/grid/style.scss +5 -5
  247. package/src/handoff/index.js +3 -8
  248. package/src/handoff-message/index.js +39 -0
  249. package/src/hooks/useObjectState.js +2 -1
  250. package/src/image-upload/index.js +9 -3
  251. package/src/image-upload/style.scss +5 -9
  252. package/src/index.js +4 -0
  253. package/src/info-button/style.scss +1 -3
  254. package/src/modal/style.scss +8 -8
  255. package/src/newspack-icon/style.scss +4 -4
  256. package/src/newspack-logo/style.scss +3 -3
  257. package/src/notice/index.js +2 -0
  258. package/src/notice/style.scss +28 -15
  259. package/src/plugin-installer/index.js +15 -2
  260. package/src/plugin-installer/style.scss +5 -5
  261. package/src/plugin-settings/SettingsSection.js +7 -13
  262. package/src/plugin-settings/index.js +7 -2
  263. package/src/plugin-toggle/index.js +2 -3
  264. package/src/plugin-toggle/style.scss +2 -2
  265. package/src/popover/style.scss +19 -16
  266. package/src/position-control/index.js +122 -0
  267. package/src/position-control/style.scss +66 -0
  268. package/src/progress-bar/style.scss +4 -4
  269. package/src/radio-control/style.scss +9 -9
  270. package/src/section-header/index.js +32 -15
  271. package/src/section-header/style.scss +2 -2
  272. package/src/select-control/ButtonGroupControl.js +3 -0
  273. package/src/select-control/GroupedSelectControl.js +2 -1
  274. package/src/select-control/index.js +6 -2
  275. package/src/select-control/style.scss +2 -2
  276. package/src/settings/style.scss +1 -1
  277. package/src/steps-list/index.js +39 -0
  278. package/src/steps-list/style.scss +11 -0
  279. package/src/steps-list-item/index.js +40 -0
  280. package/src/steps-list-item/style.scss +47 -0
  281. package/src/style-card/index.js +2 -11
  282. package/src/style-card/style.scss +9 -12
  283. package/src/style.scss +5 -6
  284. package/src/tabbed-navigation/index.js +12 -4
  285. package/src/tabbed-navigation/style.scss +3 -4
  286. package/src/utils/index.js +9 -0
  287. package/src/web-preview/index.js +1 -1
  288. package/src/web-preview/style.scss +14 -14
  289. package/src/with-wizard/style.scss +35 -37
  290. package/src/with-wizard-screen/index.js +4 -1
  291. package/src/with-wizard-screen/style.scss +14 -17
  292. package/src/wizard/index.js +15 -3
  293. package/src/wizard/store/index.js +8 -2
@@ -2,7 +2,7 @@
2
2
  * Styles for AutocompleteWithSuggestions component.
3
3
  */
4
4
 
5
- @import '~@wordpress/base-styles/colors';
5
+ @use '~@wordpress/base-styles/colors' as wp-colors;
6
6
 
7
7
  .newspack-autocomplete-with-suggestions {
8
8
  width: 100%;
@@ -27,19 +27,19 @@
27
27
  }
28
28
 
29
29
  .components-input-control__backdrop {
30
- border-color: $gray-700 !important;
30
+ border-color: wp-colors.$gray-700 !important;
31
31
  }
32
32
 
33
33
  .newspack-autocomplete-with-suggestions__label,
34
34
  .components-form-token-field__label,
35
35
  .components-input-control__label,
36
36
  .components-checkbox-control__label {
37
- color: $gray-900 !important;
37
+ color: wp-colors.$gray-900 !important;
38
38
  }
39
39
 
40
40
  &__suggestions-spinner {
41
- background: $gray-100;
42
- border: 1px solid $gray-700;
41
+ background: wp-colors.$gray-100;
42
+ border: 1px solid wp-colors.$gray-700;
43
43
  border-radius: 2px;
44
44
  cursor: progress;
45
45
  margin: 16px 0;
@@ -56,15 +56,16 @@
56
56
 
57
57
  .newspack-autocomplete-tokenfield__help {
58
58
  font-size: inherit;
59
+ margin-bottom: 8px !important;
59
60
  }
60
61
 
61
62
  .components-form-token-field {
62
63
  &__input-container {
63
- border-color: $gray-700;
64
+ border-color: wp-colors.$gray-700;
64
65
  }
65
66
 
66
67
  &__suggestions-list {
67
- border-top-color: $gray-700;
68
+ border-top-color: wp-colors.$gray-700;
68
69
  margin: 4px -4px -2px;
69
70
  }
70
71
 
@@ -79,7 +80,7 @@
79
80
  }
80
81
 
81
82
  &__selected-items {
82
- border-bottom: 1px solid $gray-700;
83
+ border-bottom: 1px solid wp-colors.$gray-700;
83
84
  display: flex;
84
85
  flex-wrap: wrap;
85
86
  gap: 8px;
@@ -93,9 +94,9 @@
93
94
  }
94
95
 
95
96
  &__selected-item-button.components-button.is-tertiary {
96
- background-color: $gray-300;
97
+ background-color: wp-colors.$gray-300;
97
98
  border-radius: 2px;
98
- color: $gray-900;
99
+ color: wp-colors.$gray-900;
99
100
  font-size: 13px;
100
101
  height: auto;
101
102
  margin: 0;
@@ -116,7 +117,7 @@
116
117
  &__search-suggestions,
117
118
  &__search-suggestions-multiselect {
118
119
  border-radius: 2px;
119
- border: 1px solid $gray-700;
120
+ border: 1px solid wp-colors.$gray-700;
120
121
  max-height: 178px;
121
122
  overflow-x: visible;
122
123
  overflow-y: auto;
@@ -128,14 +129,14 @@
128
129
  margin: auto;
129
130
 
130
131
  &.is-link {
131
- color: $gray-900;
132
+ color: wp-colors.$gray-900;
132
133
  padding: 8px;
133
134
  text-decoration: none;
134
135
  width: 100%;
135
136
 
136
137
  &:active:not( :disabled ),
137
138
  &:hover:not( :disabled ) {
138
- background: $gray-900;
139
+ background: wp-colors.$gray-900;
139
140
  background: var( --wp-admin-theme-color );
140
141
  color: white;
141
142
  }
@@ -150,7 +151,7 @@
150
151
 
151
152
  &__search-suggestions {
152
153
  border-radius: 2px;
153
- border: 1px solid $gray-700;
154
+ border: 1px solid wp-colors.$gray-700;
154
155
  padding: 0;
155
156
 
156
157
  .components-button {
@@ -158,7 +159,7 @@
158
159
 
159
160
  &:focus:not( :disabled ) {
160
161
  border-radius: 0;
161
- box-shadow: inset 0 0 0 1.5px $gray-900;
162
+ box-shadow: inset 0 0 0 1.5px wp-colors.$gray-900;
162
163
  box-shadow: inset 0 0 0 var( --wp-admin-border-width-focus ) var( --wp-admin-theme-color );
163
164
  }
164
165
 
@@ -2,12 +2,12 @@
2
2
  * Button Card
3
3
  */
4
4
 
5
- @import '~@wordpress/base-styles/colors';
5
+ @use '~@wordpress/base-styles/colors' as wp-colors;
6
6
 
7
7
  .newspack-button-card {
8
8
  background: white;
9
9
  border-radius: 2px;
10
- border: 1px solid $gray-300;
10
+ border: 1px solid wp-colors.$gray-300;
11
11
  box-shadow: inset 0 0 0 var( --wp-admin-border-width-focus ) transparent;
12
12
  cursor: pointer;
13
13
  display: block;
@@ -51,11 +51,11 @@
51
51
  }
52
52
 
53
53
  .newspack-grid h3 {
54
- color: $gray-900;
54
+ color: wp-colors.$gray-900;
55
55
  }
56
56
 
57
57
  p {
58
- color: $gray-700;
58
+ color: wp-colors.$gray-700;
59
59
  }
60
60
 
61
61
  // Grouped
@@ -90,7 +90,7 @@
90
90
  &:active,
91
91
  &:hover {
92
92
  svg {
93
- fill: currentColor;
93
+ fill: currentcolor;
94
94
  }
95
95
  }
96
96
 
@@ -144,31 +144,31 @@
144
144
 
145
145
  &.is-destructive {
146
146
  .title {
147
- color: $alert-red;
147
+ color: wp-colors.$alert-red;
148
148
  }
149
149
 
150
150
  &.has-chevron,
151
151
  &.has-icon {
152
152
  svg {
153
- fill: $alert-red;
153
+ fill: wp-colors.$alert-red;
154
154
  }
155
155
  }
156
156
 
157
157
  &:focus,
158
158
  &.is-pressed {
159
- border-color: $alert-red;
160
- box-shadow: inset 0 0 0 1px $alert-red !important;
159
+ border-color: wp-colors.$alert-red;
160
+ box-shadow: inset 0 0 0 1px wp-colors.$alert-red !important;
161
161
  }
162
162
 
163
163
  &.is-pressed:focus-visible {
164
- box-shadow: inset 0 0 0 1px $alert-red, 0 0 0 1px white,
165
- 0 0 0 var( --wp-admin-border-width-focus ) $alert-red !important;
164
+ box-shadow: inset 0 0 0 1px wp-colors.$alert-red, 0 0 0 1px white,
165
+ 0 0 0 var( --wp-admin-border-width-focus ) wp-colors.$alert-red !important;
166
166
  }
167
167
 
168
168
  &:active,
169
169
  &:hover {
170
- background-color: $gray-100;
171
- border-color: $alert-red;
170
+ background-color: wp-colors.$gray-100;
171
+ border-color: wp-colors.$alert-red;
172
172
  }
173
173
  }
174
174
  }
@@ -2,12 +2,12 @@
2
2
  * Card
3
3
  */
4
4
 
5
- @import '~@wordpress/base-styles/colors';
5
+ @use '~@wordpress/base-styles/colors' as wp-colors;
6
6
 
7
7
  .newspack-card {
8
8
  border-radius: 2px;
9
- border: 1px solid $gray-300;
10
- color: $gray-900;
9
+ border: 1px solid wp-colors.$gray-300;
10
+ color: wp-colors.$gray-900;
11
11
  margin: 32px 0;
12
12
  padding: 16px 48px;
13
13
 
@@ -30,6 +30,7 @@
30
30
  align-items: center;
31
31
  display: flex;
32
32
  flex-wrap: wrap;
33
+ gap: 8px;
33
34
  justify-content: space-between;
34
35
  margin-bottom: -16px;
35
36
 
@@ -37,6 +38,12 @@
37
38
  margin-bottom: 0 !important;
38
39
  margin-top: 0 !important;
39
40
  }
41
+
42
+ .newspack-select-control {
43
+ .components-base-control__field {
44
+ margin-bottom: 0;
45
+ }
46
+ }
40
47
  }
41
48
 
42
49
  // Is Narrow
@@ -101,6 +108,16 @@
101
108
  padding: 0;
102
109
  }
103
110
 
111
+ // Margin
112
+
113
+ &.mt64 {
114
+ margin-top: 64px;
115
+ }
116
+
117
+ &.mt16 {
118
+ margin-top: 16px;
119
+ }
120
+
104
121
  // Typography
105
122
 
106
123
  small {
@@ -109,15 +126,15 @@
109
126
  }
110
127
 
111
128
  code {
112
- background: $gray-100;
113
- color: $gray-900;
129
+ background: wp-colors.$gray-100;
130
+ color: wp-colors.$gray-900;
114
131
  padding: 0 0.5em;
115
132
  }
116
133
 
117
134
  // Thematic Break
118
135
 
119
136
  hr {
120
- background: $gray-300;
137
+ background: wp-colors.$gray-300;
121
138
  border: 0;
122
139
  height: 1px;
123
140
  margin: 48px 0;
@@ -130,7 +147,7 @@
130
147
  // Separator
131
148
 
132
149
  .sep {
133
- background: $gray-300;
150
+ background: wp-colors.$gray-300;
134
151
  height: 1px;
135
152
  margin-left: 8px;
136
153
  margin-right: 8px;
@@ -146,6 +163,6 @@
146
163
  // Error
147
164
 
148
165
  .newspack-error {
149
- color: $alert-red;
166
+ color: wp-colors.$alert-red;
150
167
  }
151
168
  }
@@ -19,7 +19,9 @@ import './style.scss';
19
19
  /**
20
20
  * External dependencies
21
21
  */
22
- import { debounce, find, filter } from 'lodash';
22
+ import debounce from 'lodash/debounce';
23
+ import find from 'lodash/find';
24
+ import filter from 'lodash/filter';
23
25
  import classnames from 'classnames';
24
26
 
25
27
  /**
@@ -2,8 +2,6 @@
2
2
  * Category Autocomplete
3
3
  */
4
4
 
5
- @import '../../../shared/scss/colors';
6
-
7
5
  .newspack-category-autocomplete {
8
6
  position: relative;
9
7
 
@@ -2,9 +2,6 @@
2
2
  * Color Picker
3
3
  */
4
4
 
5
- @import '../../../shared/scss/colors';
6
- @import '~@wordpress/base-styles/colors';
7
-
8
5
  .newspack-color-picker {
9
6
  position: relative;
10
7
 
package/src/consts.js CHANGED
@@ -1,2 +1,3 @@
1
- export const NEWSPACK_SITE_URL = 'https://newspack.pub';
1
+ export const NEWSPACK_SITE_URL = 'https://newspack.com';
2
2
  export const NEWSPACK_SUPPORT_URL = `${ NEWSPACK_SITE_URL }/support`;
3
+ export const HANDOFF_KEY = 'newspack_wizard_handoff_message';
@@ -2,8 +2,7 @@
2
2
  * Custom Select Control
3
3
  */
4
4
 
5
- @import '../../../shared/scss/colors';
6
- @import '~@wordpress/base-styles/colors';
5
+ @use '~@wordpress/base-styles/colors' as wp-colors;
7
6
 
8
7
  .newspack-custom-select-control {
9
8
  label {
@@ -12,9 +11,9 @@
12
11
  }
13
12
 
14
13
  .components-custom-select-control__button {
15
- border-color: $gray-700;
14
+ border-color: wp-colors.$gray-700;
16
15
  border-radius: 2px;
17
- color: $gray-900;
16
+ color: wp-colors.$gray-900;
18
17
  font-size: inherit;
19
18
  min-height: 30px;
20
19
  min-width: 100%;
@@ -24,7 +23,7 @@
24
23
  &:focus,
25
24
  &:hover,
26
25
  &[aria-expanded='true'] {
27
- color: $gray-900;
26
+ color: wp-colors.$gray-900;
28
27
  }
29
28
 
30
29
  &:focus {
@@ -43,7 +42,7 @@
43
42
  }
44
43
 
45
44
  .components-custom-select-control__menu {
46
- border-color: $gray-700;
45
+ border-color: wp-colors.$gray-700;
47
46
  border-radius: 2px;
48
47
  box-shadow: 0 4px 8px rgba( black, 0.08 );
49
48
  margin: 8px 0 0;
@@ -64,7 +63,7 @@
64
63
  }
65
64
 
66
65
  &.is-header {
67
- background: $gray-100;
66
+ background: wp-colors.$gray-100;
68
67
  cursor: default;
69
68
  font-weight: bold;
70
69
  margin-left: 0;
@@ -1,5 +1,5 @@
1
- @import '../../../shared/scss/colors';
2
- @import '~@wordpress/base-styles/colors';
1
+ @use '../../../shared/scss/colors';
2
+ @use '~@wordpress/base-styles/colors' as wp-colors;
3
3
 
4
4
  .DateRangePicker {
5
5
  margin: 32px 0;
@@ -47,7 +47,7 @@
47
47
  }
48
48
 
49
49
  &__MonthHeader {
50
- color: $gray-900;
50
+ color: wp-colors.$gray-900;
51
51
  font-size: 17px;
52
52
  height: auto;
53
53
  line-height: 24px;
@@ -62,8 +62,8 @@
62
62
  }
63
63
 
64
64
  &__WeekdayHeading {
65
- border-bottom-color: $gray-300;
66
- color: $gray-900;
65
+ border-bottom-color: wp-colors.$gray-300;
66
+ color: wp-colors.$gray-900;
67
67
 
68
68
  abbr[title] {
69
69
  color: inherit;
@@ -76,20 +76,20 @@
76
76
  }
77
77
 
78
78
  &__Date {
79
- border-color: $gray-300;
79
+ border-color: wp-colors.$gray-300;
80
80
  border-bottom-width: 1px;
81
81
 
82
82
  &--weekend {
83
- background-color: $gray-100;
83
+ background-color: wp-colors.$gray-100;
84
84
  }
85
85
 
86
86
  &--otherMonth {
87
- color: $gray-200;
87
+ color: wp-colors.$gray-200;
88
88
  opacity: 1;
89
89
  }
90
90
 
91
91
  &--is-disabled {
92
- color: $gray-100;
92
+ color: wp-colors.$gray-100;
93
93
  cursor: not-allowed;
94
94
  }
95
95
 
@@ -100,7 +100,7 @@
100
100
 
101
101
  &__CalendarSelection,
102
102
  &__CalendarHighlight {
103
- border-color: $primary-500;
103
+ border-color: colors.$primary-500;
104
104
  bottom: 4px;
105
105
  top: 4px;
106
106
 
@@ -129,11 +129,11 @@
129
129
  }
130
130
 
131
131
  &__CalendarSelection {
132
- background-color: $primary-500;
132
+ background-color: colors.$primary-500;
133
133
  }
134
134
 
135
135
  &__CalendarHighlight {
136
- background: $primary-500;
136
+ background: colors.$primary-500;
137
137
  border: none;
138
138
  bottom: 0;
139
139
  top: 0;
@@ -28,12 +28,12 @@ const Footer = ( { simple } ) => {
28
28
  const footerElements = [
29
29
  {
30
30
  label: pluginVersion.label,
31
- url: 'https://newspack.pub/category/release-notes/',
31
+ url: 'https://newspack.com/category/release-notes/',
32
32
  external: true,
33
33
  },
34
34
  {
35
35
  label: __( 'About', 'newspack' ),
36
- url: 'https://newspack.pub/',
36
+ url: 'https://newspack.com/',
37
37
  external: true,
38
38
  },
39
39
  {
@@ -2,15 +2,15 @@
2
2
  * Footer
3
3
  */
4
4
 
5
- @import '~@wordpress/base-styles/colors';
5
+ @use '~@wordpress/base-styles/colors' as wp-colors;
6
6
 
7
7
  .newspack-footer {
8
8
  align-items: stretch;
9
9
  background: white;
10
- border: 0 solid $gray-300;
10
+ border: 0 solid wp-colors.$gray-300;
11
11
  border-width: 1px 0;
12
12
  bottom: 0;
13
- color: $gray-700;
13
+ color: wp-colors.$gray-700;
14
14
  display: flex;
15
15
  flex-wrap: wrap;
16
16
  font-size: 12px;
@@ -53,14 +53,14 @@
53
53
  &:active,
54
54
  &:focus,
55
55
  &:hover {
56
- color: $gray-900;
56
+ color: wp-colors.$gray-900;
57
57
  }
58
58
  }
59
59
  }
60
60
 
61
61
  &__logo {
62
62
  align-items: center;
63
- background: $gray-900;
63
+ background: wp-colors.$gray-900;
64
64
  display: flex;
65
65
  margin: 0 0 -1px;
66
66
  padding: 16px;
@@ -23,13 +23,8 @@ class FormTokenField extends Component {
23
23
  * Render.
24
24
  */
25
25
  render() {
26
- const {
27
- className,
28
- description,
29
- hideHelpFromVision,
30
- hideLabelFromVision,
31
- ...otherProps
32
- } = this.props;
26
+ const { className, description, hideHelpFromVision, hideLabelFromVision, ...otherProps } =
27
+ this.props;
33
28
  const classes = classnames( 'newspack-form-token-field__input-container', className );
34
29
  return (
35
30
  <div
@@ -2,8 +2,7 @@
2
2
  * Form Token Field
3
3
  */
4
4
 
5
- @import '../../../shared/scss/colors';
6
- @import '~@wordpress/base-styles/colors';
5
+ @use '~@wordpress/base-styles/colors' as wp-colors;
7
6
 
8
7
  .newspack-form-token-field {
9
8
  width: 100%;
@@ -16,7 +15,7 @@
16
15
  // Help
17
16
 
18
17
  &__help {
19
- color: $gray-700;
18
+ color: wp-colors.$gray-700;
20
19
  font-size: 12px;
21
20
  margin: 8px 0 0 !important;
22
21
  }
@@ -2,7 +2,7 @@
2
2
  * Grid
3
3
  */
4
4
 
5
- @import '~@wordpress/base-styles/colors';
5
+ @use '~@wordpress/base-styles/colors' as wp-colors;
6
6
 
7
7
  .newspack-grid {
8
8
  display: grid;
@@ -145,9 +145,9 @@
145
145
  // Table-like
146
146
  &__thead {
147
147
  background: rgba( black, 0.025 );
148
- border-bottom: 1px solid $gray-300;
149
- border-top: 1px solid $gray-300;
150
- color: $gray-900;
148
+ border-bottom: 1px solid wp-colors.$gray-300;
149
+ border-top: 1px solid wp-colors.$gray-300;
150
+ color: wp-colors.$gray-900;
151
151
 
152
152
  > *:not( .screen-reader-text ) {
153
153
  padding: 8px;
@@ -155,7 +155,7 @@
155
155
  }
156
156
 
157
157
  &__tbody {
158
- border-bottom: 1px solid $gray-300;
158
+ border-bottom: 1px solid wp-colors.$gray-300;
159
159
  padding: 8px 0;
160
160
  }
161
161
 
@@ -17,7 +17,7 @@ import { Button, Card, Modal, Waiting } from '../';
17
17
  /**
18
18
  * External dependencies.
19
19
  */
20
- import { assign } from 'lodash';
20
+ import assign from 'lodash/assign';
21
21
  import classnames from 'classnames';
22
22
 
23
23
  class Handoff extends Component {
@@ -95,13 +95,8 @@ class Handoff extends Component {
95
95
  ...otherProps
96
96
  } = this.props;
97
97
  const { pluginInfo, showModal } = this.state;
98
- const {
99
- modalBody,
100
- modalTitle,
101
- primaryButton,
102
- primaryModalButton,
103
- dismissModalButton,
104
- } = this.textForPlugin( pluginInfo );
98
+ const { modalBody, modalTitle, primaryButton, primaryModalButton, dismissModalButton } =
99
+ this.textForPlugin( pluginInfo );
105
100
  const { Configured, Name, Slug, Status } = pluginInfo;
106
101
  const classes = classnames( Configured && 'is-configured', className );
107
102
  return (
@@ -0,0 +1,39 @@
1
+ /**
2
+ * WordPress dependencies.
3
+ */
4
+ import { useEffect, useState } from '@wordpress/element';
5
+
6
+ /**
7
+ * Internal dependencies.
8
+ */
9
+ import { HANDOFF_KEY } from '../consts';
10
+ import { Notice } from '../';
11
+
12
+ /**
13
+ * Handoff Message Component.
14
+ */
15
+ export default function HandoffMessage() {
16
+ const [ handoffMessage, setHandoffMessage ] = useState( false );
17
+ useEffect( () => {
18
+ // Slight delay to allow for localStorage to be updated by RAS component.
19
+ setTimeout( () => {
20
+ const handoff = JSON.parse( localStorage.getItem( HANDOFF_KEY ) );
21
+ if ( handoff?.message ) {
22
+ setHandoffMessage( handoff.message );
23
+ } else {
24
+ setHandoffMessage( false );
25
+ }
26
+
27
+ // Clean up the notification if navigating away from the relevant page.
28
+ if ( handoff?.url && -1 === window.location.href.indexOf( handoff.url ) ) {
29
+ window.localStorage.removeItem( HANDOFF_KEY );
30
+ setHandoffMessage( false );
31
+ }
32
+ }, 100 );
33
+
34
+ // Clean up the notification when unmounting.
35
+ return () => window.localStorage.removeItem( HANDOFF_KEY );
36
+ }, [] );
37
+ if ( ! handoffMessage ) return null;
38
+ return <Notice isHandoff isDismissible={ false } rawHTML noticeText={ handoffMessage } />;
39
+ }
@@ -3,7 +3,8 @@
3
3
  */
4
4
  import { useState } from '@wordpress/element';
5
5
 
6
- import { mergeWith, isArray } from 'lodash';
6
+ import isArray from 'lodash/isArray';
7
+ import mergeWith from 'lodash/mergeWith';
7
8
 
8
9
  const mergeCustomizer = ( objValue, srcValue ) => {
9
10
  if ( isArray( objValue ) ) {
@@ -75,6 +75,7 @@ class ImageUpload extends Component {
75
75
  const {
76
76
  buttonLabel,
77
77
  className,
78
+ disabled,
78
79
  help,
79
80
  image,
80
81
  info,
@@ -104,17 +105,22 @@ class ImageUpload extends Component {
104
105
  alt={ __( 'Image preview', 'newspack' ) }
105
106
  />
106
107
  <div className="newspack-image-upload__controls">
107
- <Button onClick={ this.openModal } isLink>
108
+ <Button disabled={ disabled } onClick={ this.openModal } isLink>
108
109
  { __( 'Replace', 'newspack' ) }
109
110
  </Button>
110
111
  <span className="sep" />
111
- <Button onClick={ () => onChange( null ) } isLink isDestructive>
112
+ <Button
113
+ disabled={ disabled }
114
+ onClick={ () => onChange( null ) }
115
+ isLink
116
+ isDestructive
117
+ >
112
118
  { __( 'Remove', 'newspack' ) }
113
119
  </Button>
114
120
  </div>
115
121
  </>
116
122
  ) : (
117
- <Button onClick={ this.openModal } isLink>
123
+ <Button disabled={ disabled } onClick={ this.openModal } isLink>
118
124
  { buttonLabel ? buttonLabel : __( 'Upload', 'newspack' ) }
119
125
  </Button>
120
126
  ) }