newspack-components 2.2.0 → 3.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/dist/cjs/action-card/index.js +3 -4
  2. package/dist/cjs/autocomplete-tokenfield/index.js +52 -15
  3. package/dist/cjs/autocomplete-tokenfield/style.scss +11 -5
  4. package/dist/cjs/autocomplete-with-suggestions/index.js +45 -57
  5. package/dist/cjs/autocomplete-with-suggestions/style.scss +1 -9
  6. package/dist/cjs/button/index.js +8 -9
  7. package/dist/cjs/button-card/index.js +1 -2
  8. package/dist/cjs/card/index.js +1 -2
  9. package/dist/cjs/category-autocomplete/index.js +4 -8
  10. package/dist/cjs/color-picker/index.js +7 -9
  11. package/dist/cjs/consts.js +2 -7
  12. package/dist/cjs/custom-select-control/index.js +1 -2
  13. package/dist/cjs/footer/index.js +24 -29
  14. package/dist/cjs/form-token-field/index.js +1 -2
  15. package/dist/cjs/global-notices/index.js +1 -2
  16. package/dist/cjs/grid/index.js +14 -31
  17. package/dist/cjs/handoff/index.js +7 -8
  18. package/dist/cjs/hooks/index.js +2 -3
  19. package/dist/cjs/hooks/useObjectState.js +1 -2
  20. package/dist/cjs/hooks/useOnClickOutside.js +1 -2
  21. package/dist/cjs/hooks/usePrompt.js +1 -4
  22. package/dist/cjs/image-upload/index.js +5 -6
  23. package/dist/cjs/index.js +0 -14
  24. package/dist/cjs/info-button/index.js +1 -2
  25. package/dist/cjs/modal/index.js +1 -2
  26. package/dist/cjs/newspack-icon/index.js +1 -2
  27. package/dist/cjs/newspack-logo/index.js +1 -2
  28. package/dist/cjs/notice/index.js +2 -3
  29. package/dist/cjs/patrons-logo/index.js +4 -5
  30. package/dist/cjs/plugin-installer/index.js +9 -13
  31. package/dist/cjs/plugin-settings/SettingsSection.js +2 -4
  32. package/dist/cjs/plugin-settings/index.js +2 -3
  33. package/dist/cjs/plugin-toggle/index.js +16 -20
  34. package/dist/cjs/popover/index.js +1 -2
  35. package/dist/cjs/position-control/index.js +22 -23
  36. package/dist/cjs/progress-bar/index.js +1 -2
  37. package/dist/cjs/progress-bar/index.test.js +4 -5
  38. package/dist/cjs/proxied-imports/router.js +1 -2
  39. package/dist/cjs/radio-control/index.js +1 -2
  40. package/dist/cjs/section-header/index.js +13 -14
  41. package/dist/cjs/section-header/style.scss +4 -0
  42. package/dist/cjs/select-control/ButtonGroupControl.js +10 -12
  43. package/dist/cjs/select-control/GroupedSelectControl.js +21 -25
  44. package/dist/cjs/select-control/index.js +1 -2
  45. package/dist/cjs/settings/MinMaxSetting.js +17 -15
  46. package/dist/cjs/settings/SettingsCard.js +10 -12
  47. package/dist/cjs/settings/SettingsSection.js +20 -24
  48. package/dist/cjs/settings/index.js +2 -3
  49. package/dist/cjs/settings/style.scss +14 -1
  50. package/dist/cjs/sortable-newsletter-list-control/index.js +134 -0
  51. package/dist/cjs/sortable-newsletter-list-control/style.scss +45 -0
  52. package/dist/cjs/steps-list/index.js +1 -2
  53. package/dist/cjs/steps-list-item/index.js +1 -2
  54. package/dist/cjs/style-card/index.js +6 -7
  55. package/dist/cjs/style.scss +13 -1
  56. package/dist/cjs/tabbed-navigation/index.js +11 -14
  57. package/dist/cjs/text-control/index.js +32 -42
  58. package/dist/cjs/utils/index.js +15 -19
  59. package/dist/cjs/waiting/index.js +1 -2
  60. package/dist/cjs/web-preview/index.js +7 -8
  61. package/dist/cjs/with-wizard/index.js +6 -7
  62. package/dist/cjs/with-wizard-screen/index.js +20 -24
  63. package/dist/cjs/wizard/components/WizardError.js +7 -9
  64. package/dist/cjs/wizard/index.js +16 -21
  65. package/dist/cjs/wizard/store/index.js +36 -37
  66. package/dist/cjs/wizard/store/utils.js +1 -4
  67. package/dist/esm/action-card/index.js +3 -4
  68. package/dist/esm/autocomplete-tokenfield/index.js +52 -15
  69. package/dist/esm/autocomplete-tokenfield/style.scss +11 -5
  70. package/dist/esm/autocomplete-with-suggestions/index.js +46 -59
  71. package/dist/esm/autocomplete-with-suggestions/style.scss +1 -9
  72. package/dist/esm/button/index.js +7 -7
  73. package/dist/esm/button-card/index.js +1 -2
  74. package/dist/esm/category-autocomplete/index.js +4 -8
  75. package/dist/esm/color-picker/index.js +7 -9
  76. package/dist/esm/consts.js +0 -2
  77. package/dist/esm/footer/index.js +24 -29
  78. package/dist/esm/form-token-field/index.js +1 -2
  79. package/dist/esm/grid/index.js +13 -29
  80. package/dist/esm/handoff/index.js +7 -8
  81. package/dist/esm/hooks/useObjectState.js +1 -2
  82. package/dist/esm/hooks/useObjectState.test.js +1 -2
  83. package/dist/esm/hooks/usePrompt.js +1 -4
  84. package/dist/esm/image-upload/index.js +5 -7
  85. package/dist/esm/index.js +0 -2
  86. package/dist/esm/notice/index.js +2 -3
  87. package/dist/esm/patrons-logo/index.js +4 -5
  88. package/dist/esm/plugin-installer/index.js +9 -14
  89. package/dist/esm/plugin-settings/SettingsSection.js +2 -4
  90. package/dist/esm/plugin-settings/index.js +2 -3
  91. package/dist/esm/plugin-toggle/index.js +16 -20
  92. package/dist/esm/position-control/index.js +23 -25
  93. package/dist/esm/progress-bar/index.js +1 -2
  94. package/dist/esm/progress-bar/index.test.js +4 -5
  95. package/dist/esm/section-header/index.js +13 -14
  96. package/dist/esm/section-header/style.scss +4 -0
  97. package/dist/esm/select-control/ButtonGroupControl.js +9 -10
  98. package/dist/esm/select-control/GroupedSelectControl.js +22 -27
  99. package/dist/esm/settings/MinMaxSetting.js +17 -16
  100. package/dist/esm/settings/SettingsCard.js +9 -10
  101. package/dist/esm/settings/SettingsSection.js +20 -24
  102. package/dist/esm/settings/style.scss +14 -1
  103. package/dist/esm/sortable-newsletter-list-control/index.js +128 -0
  104. package/dist/esm/sortable-newsletter-list-control/style.scss +45 -0
  105. package/dist/esm/steps-list-item/index.js +1 -2
  106. package/dist/esm/style-card/index.js +6 -7
  107. package/dist/esm/style.scss +13 -1
  108. package/dist/esm/tabbed-navigation/index.js +11 -14
  109. package/dist/esm/text-control/index.js +32 -41
  110. package/dist/esm/utils/index.js +13 -16
  111. package/dist/esm/web-preview/index.js +7 -8
  112. package/dist/esm/with-wizard/index.js +7 -9
  113. package/dist/esm/with-wizard-screen/index.js +21 -27
  114. package/dist/esm/wizard/components/WizardError.js +7 -9
  115. package/dist/esm/wizard/index.js +16 -22
  116. package/dist/esm/wizard/store/index.js +35 -35
  117. package/dist/esm/wizard/store/utils.js +1 -4
  118. package/package.json +7 -8
  119. package/shared/js/button-props.js +3 -1
  120. package/shared/scss/_colors.scss +15 -0
  121. package/shared/scss/_mixins.scss +12 -0
  122. package/src/autocomplete-tokenfield/index.js +48 -15
  123. package/src/autocomplete-tokenfield/style.scss +11 -5
  124. package/src/autocomplete-with-suggestions/index.js +17 -22
  125. package/src/autocomplete-with-suggestions/style.scss +1 -9
  126. package/src/button/{index.js → index.tsx} +12 -5
  127. package/src/consts.js +0 -2
  128. package/src/footer/index.js +7 -7
  129. package/src/grid/index.tsx +34 -0
  130. package/src/handoff/index.js +7 -6
  131. package/src/hooks/{index.js → index.ts} +1 -1
  132. package/src/hooks/{usePrompt.js → usePrompt.ts} +4 -8
  133. package/src/image-upload/index.js +4 -4
  134. package/src/index.js +0 -2
  135. package/src/notice/index.js +1 -1
  136. package/src/patrons-logo/index.js +4 -1
  137. package/src/plugin-installer/index.js +7 -7
  138. package/src/plugin-settings/index.js +1 -1
  139. package/src/plugin-toggle/index.js +7 -5
  140. package/src/position-control/index.js +13 -13
  141. package/src/section-header/index.js +3 -3
  142. package/src/section-header/style.scss +4 -0
  143. package/src/select-control/GroupedSelectControl.js +1 -1
  144. package/src/settings/MinMaxSetting.js +8 -6
  145. package/src/settings/style.scss +14 -1
  146. package/src/sortable-newsletter-list-control/index.js +137 -0
  147. package/src/sortable-newsletter-list-control/style.scss +45 -0
  148. package/src/style-card/index.js +11 -5
  149. package/src/style.scss +13 -1
  150. package/src/tabbed-navigation/index.js +1 -1
  151. package/src/text-control/index.tsx +65 -0
  152. package/src/web-preview/index.js +6 -6
  153. package/src/with-wizard/index.js +4 -4
  154. package/src/with-wizard-screen/index.js +1 -1
  155. package/src/wizard/components/WizardError.js +1 -1
  156. package/src/wizard/index.js +3 -3
  157. package/src/wizard/store/index.js +9 -2
  158. package/dist/cjs/accordion/index.js +0 -46
  159. package/dist/cjs/accordion/style.scss +0 -27
  160. package/dist/cjs/button-group/index.js +0 -57
  161. package/dist/cjs/button-group/style.scss +0 -73
  162. package/dist/cjs/checkbox-control/index.js +0 -63
  163. package/dist/cjs/checkbox-control/style.scss +0 -78
  164. package/dist/cjs/date-range-picker/index.js +0 -41
  165. package/dist/cjs/date-range-picker/style.scss +0 -148
  166. package/dist/cjs/preview-box/index.js +0 -36
  167. package/dist/cjs/preview-box/style.scss +0 -18
  168. package/dist/cjs/textarea-control/index.js +0 -54
  169. package/dist/cjs/textarea-control/style.scss +0 -76
  170. package/dist/cjs/toggle-control/index.js +0 -58
  171. package/dist/cjs/toggle-control/style.scss +0 -74
  172. package/dist/cjs/toggle-group/index.js +0 -71
  173. package/dist/cjs/toggle-group/style.scss +0 -28
  174. package/dist/cjs/wizard/style.scss +0 -148
  175. package/dist/esm/accordion/index.js +0 -38
  176. package/dist/esm/accordion/style.scss +0 -27
  177. package/dist/esm/button-group/index.js +0 -43
  178. package/dist/esm/button-group/style.scss +0 -73
  179. package/dist/esm/checkbox-control/index.js +0 -49
  180. package/dist/esm/checkbox-control/style.scss +0 -78
  181. package/dist/esm/date-range-picker/index.js +0 -32
  182. package/dist/esm/date-range-picker/style.scss +0 -148
  183. package/dist/esm/preview-box/index.js +0 -30
  184. package/dist/esm/preview-box/style.scss +0 -18
  185. package/dist/esm/textarea-control/index.js +0 -40
  186. package/dist/esm/textarea-control/style.scss +0 -76
  187. package/dist/esm/toggle-control/index.js +0 -44
  188. package/dist/esm/toggle-control/style.scss +0 -74
  189. package/dist/esm/toggle-group/index.js +0 -58
  190. package/dist/esm/toggle-group/style.scss +0 -28
  191. package/dist/esm/wizard/style.scss +0 -148
  192. package/src/accordion/index.js +0 -32
  193. package/src/accordion/style.scss +0 -27
  194. package/src/date-range-picker/index.js +0 -31
  195. package/src/date-range-picker/style.scss +0 -148
  196. package/src/grid/index.js +0 -44
  197. package/src/text-control/index.js +0 -56
@@ -1,74 +0,0 @@
1
- /**
2
- * Toggle Control
3
- */
4
-
5
- @import '../../../shared/scss/colors';
6
- @import '~@wordpress/base-styles/colors';
7
-
8
- .newspack-toggle-control {
9
- margin: 32px 0;
10
-
11
- .components-base-control__field {
12
- align-items: flex-start;
13
- margin: 0;
14
-
15
- .components-toggle-control__label {
16
- color: $gray-700;
17
- font-size: 14px;
18
- line-height: 24px;
19
- margin: 0;
20
- }
21
-
22
- .components-form-toggle {
23
- margin: 3px 8px 3px 0;
24
-
25
- &.is-checked {
26
- .components-form-toggle__track {
27
- background: $primary-500;
28
- border-color: transparent;
29
- }
30
- }
31
- }
32
- }
33
-
34
- // Is Dark
35
-
36
- &.newspack-toggle-control--is-dark {
37
- .components-base-control__field label {
38
- color: $gray-900;
39
- font-weight: bold;
40
- }
41
-
42
- .components-base-control__help {
43
- font-style: normal;
44
- }
45
- }
46
-
47
- // Is disabled
48
-
49
- &.newspack-toggle-control--is-disabled {
50
- opacity: 0.5;
51
- pointer-events: none;
52
- }
53
-
54
- // Focus
55
-
56
- .components-form-toggle__input:focus {
57
- + .components-form-toggle__track {
58
- box-shadow: 0 0 0 2px white, 0 0 0 4px $primary-500;
59
- }
60
- }
61
-
62
- // Multiple Toggle Controls
63
-
64
- & + & {
65
- margin-bottom: 32px;
66
- margin-top: -24px;
67
- }
68
-
69
- // Reset
70
-
71
- .components-base-control__help {
72
- margin: 0 0 0 44px;
73
- }
74
- }
@@ -1,58 +0,0 @@
1
- /**
2
- * Toggle Group
3
- */
4
-
5
- /**
6
- * WordPress dependencies.
7
- */
8
- import { Component } from '@wordpress/element';
9
- /**
10
- * Internal dependencies.
11
- */
12
-
13
- import { ToggleControl } from '../';
14
- import './style.scss';
15
- /**
16
- * External dependencies.
17
- */
18
-
19
- import classnames from 'classnames';
20
- import { jsx as _jsx } from "@emotion/react/jsx-runtime";
21
- import { jsxs as _jsxs } from "@emotion/react/jsx-runtime";
22
-
23
- class ToggleGroup extends Component {
24
- /**
25
- * Render.
26
- */
27
- render() {
28
- const {
29
- checked,
30
- children,
31
- description,
32
- onChange,
33
- title,
34
- className
35
- } = this.props;
36
- const classes = classnames('newspack-toggle-group', className);
37
- return _jsxs("div", {
38
- className: classes,
39
- children: [_jsx(ToggleControl, {
40
- checked: checked || false,
41
- onChange: onChange
42
- }), _jsxs("div", {
43
- className: "newspack-toggle-group__description",
44
- children: [_jsx("p", {
45
- className: "is-dark",
46
- children: _jsx("strong", {
47
- children: title
48
- })
49
- }), _jsx("p", {
50
- children: description
51
- }), checked && children]
52
- })]
53
- });
54
- }
55
-
56
- }
57
-
58
- export default ToggleGroup;
@@ -1,28 +0,0 @@
1
- /**
2
- * Toggle Group
3
- */
4
-
5
- .newspack-toggle-group {
6
- display: flex;
7
- margin: 32px 0;
8
-
9
- & &__description p {
10
- margin-bottom: 0;
11
- margin-top: 0;
12
- }
13
-
14
- .newspack-toggle-control {
15
- margin: 0;
16
- }
17
-
18
- &__description {
19
- flex: 1;
20
- }
21
-
22
- // Multiple Toogle Groups
23
-
24
- & + & {
25
- margin-bottom: 32px;
26
- margin-top: -16px;
27
- }
28
- }
@@ -1,148 +0,0 @@
1
- @import '~@wordpress/base-styles/colors';
2
- @import '../../../shared/scss/colors';
3
-
4
- .newspack-wizard {
5
- &__title {
6
- align-items: center;
7
- border-bottom: 1px solid $gray-300;
8
- display: flex;
9
-
10
- h1 {
11
- color: $gray-900;
12
- font-size: 21px;
13
- line-height: 30px;
14
- margin: 0;
15
- padding: 0 24px;
16
- }
17
-
18
- svg {
19
- fill: white;
20
- margin: 0 !important;
21
-
22
- &.newspack-icon {
23
- flex: 0 0 36px;
24
- margin-bottom: -1px !important;
25
- }
26
-
27
- &:not( .newspack-icon ) {
28
- background: $primary-500;
29
- left: 50%;
30
- margin: -18px 0 0 -18px !important;
31
- opacity: 0;
32
- position: absolute;
33
- top: 50%;
34
- transition: opacity 125ms ease-in-out;
35
- }
36
- }
37
-
38
- a {
39
- position: relative;
40
-
41
- &:hover {
42
- svg {
43
- opacity: 1;
44
- }
45
- }
46
- }
47
-
48
- a:focus-visible {
49
- outline: none !important;
50
-
51
- &::before {
52
- border: 2px solid white;
53
- border-radius: 3px;
54
- bottom: 5px;
55
- content: '';
56
- display: block;
57
- left: 6px;
58
- position: absolute;
59
- right: 6px;
60
- top: 6px;
61
- }
62
- }
63
- }
64
-
65
- &__content {
66
- color: $gray-700;
67
- font-size: 14px;
68
- line-height: 24px;
69
- margin: 0 auto;
70
- max-width: 1208px;
71
- padding: 0 16px;
72
-
73
- @media screen and ( min-width: 744px ) {
74
- padding: 32px 84px;
75
- }
76
-
77
- // Typography
78
-
79
- h1,
80
- h2,
81
- h3,
82
- p {
83
- line-height: 24px;
84
- margin: 32px 0;
85
- padding: 0;
86
- }
87
-
88
- h1 {
89
- color: $gray-900;
90
- font-size: 21px;
91
- font-weight: bold;
92
- line-height: 32px;
93
- }
94
-
95
- h2 {
96
- color: $gray-900;
97
- font-size: 17px;
98
- font-weight: bold;
99
- }
100
-
101
- h3 {
102
- color: $gray-900;
103
- font-size: 14px;
104
- font-weight: bold;
105
- }
106
-
107
- p {
108
- font-size: 14px;
109
-
110
- &.is-dark {
111
- color: $gray-900;
112
- }
113
- }
114
-
115
- strong {
116
- font-weight: bold;
117
- }
118
-
119
- small {
120
- font-size: 12px;
121
- line-height: 16px;
122
- }
123
-
124
- // Links
125
-
126
- a {
127
- color: $primary-500;
128
-
129
- &:active,
130
- &:focus,
131
- &:hover {
132
- color: $primary-600;
133
- text-decoration: none;
134
- }
135
-
136
- &:focus {
137
- box-shadow: none;
138
- outline: 2px solid $primary-500;
139
- outline-offset: 2px;
140
- }
141
- }
142
- }
143
-
144
- &__above-header {
145
- border-radius: 0;
146
- margin: 0;
147
- }
148
- }
@@ -1,32 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { useState } from '@wordpress/element';
5
- import { Icon, chevronRight } from '@wordpress/icons';
6
-
7
- /**
8
- * External dependencies
9
- */
10
- import classNames from 'classnames';
11
-
12
- /**
13
- * Internal dependencies
14
- */
15
- import './style.scss';
16
-
17
- const Accordion = ( { children, title } ) => {
18
- const [ isOpen, setIsOpen ] = useState( false );
19
- return (
20
- <details
21
- className={ classNames( 'newspack-accordion', { 'newspack-accordion--is-open': isOpen } ) }
22
- >
23
- <summary onClick={ () => setIsOpen( ! isOpen ) }>
24
- { title }
25
- <Icon className="newspack-accordion__icon" icon={ chevronRight } size={ 24 } />
26
- </summary>
27
- { children }
28
- </details>
29
- );
30
- };
31
-
32
- export default Accordion;
@@ -1,27 +0,0 @@
1
- @use '~@wordpress/base-styles/colors' as wp-colors;
2
-
3
- .newspack-accordion {
4
- border: 1px solid wp-colors.$gray-300;
5
-
6
- &__icon {
7
- transition: transform 200ms ease-out;
8
- transform: rotate( 90deg );
9
- }
10
-
11
- &--is-open {
12
- .newspack-accordion {
13
- &__icon {
14
- transform: rotate( -90deg );
15
- }
16
- }
17
- }
18
- summary {
19
- padding: 16px 32px;
20
- display: flex;
21
- align-items: center;
22
- justify-content: space-between;
23
- cursor: pointer;
24
- font-size: 14px;
25
- font-weight: bold;
26
- }
27
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * External dependencies.
3
- */
4
- import { default as ReactDateRangePicker } from 'react-daterange-picker';
5
- import origMoment from 'moment';
6
- import { extendMoment } from 'moment-range';
7
- import 'react-daterange-picker/dist/css/react-calendar.css';
8
-
9
- /**
10
- * Internal dependencies.
11
- */
12
- import './style.scss';
13
-
14
- const moment = extendMoment( origMoment );
15
-
16
- const DateRangePicker = ( { start, end, onChange } ) => {
17
- return (
18
- <ReactDateRangePicker
19
- value={ moment.range( moment( start ), moment( end ) ) }
20
- firstOfWeek={ 1 }
21
- onSelect={ range => {
22
- onChange( {
23
- start: range.start._d,
24
- end: range.end._d,
25
- } );
26
- } }
27
- />
28
- );
29
- };
30
-
31
- export default DateRangePicker;
@@ -1,148 +0,0 @@
1
- @use '../../../shared/scss/colors';
2
- @use '~@wordpress/base-styles/colors' as wp-colors;
3
-
4
- .DateRangePicker {
5
- margin: 32px 0;
6
- max-width: 296px;
7
- width: 100%;
8
-
9
- &__PaginationArrow {
10
- background: transparent 50% 50% no-repeat;
11
- background-size: 24px 24px;
12
- border-radius: 3px;
13
- height: 36px;
14
- transition: background-image 125ms ease-in-out;
15
- width: 36px;
16
-
17
- &--previous {
18
- background-image: url( 'data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"%3E%3Cpath d="M14.6 7l-1.2-1L8 12l5.4 6 1.2-1-4.6-5z" fill="%231e1e1e"/%3E%3C/svg%3E' );
19
- left: 0;
20
-
21
- &:hover {
22
- background-image: url( 'data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"%3E%3Cpath d="M14.6 7l-1.2-1L8 12l5.4 6 1.2-1-4.6-5z" fill="%2336f"/%3E%3C/svg%3E' );
23
- }
24
- }
25
-
26
- &--next {
27
- background-image: url( 'data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"%3E%3Cpath d="M10.6 6L9.4 7l4.6 5-4.6 5 1.2 1 5.4-6z" fill="%231e1e1e"/%3E%3C/svg%3E' );
28
- right: 0;
29
-
30
- &:hover {
31
- background-image: url( 'data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"%3E%3Cpath d="M10.6 6L9.4 7l4.6 5-4.6 5 1.2 1 5.4-6z" fill="%2336f"/%3E%3C/svg%3E' );
32
- }
33
- }
34
-
35
- &:hover {
36
- background-color: transparent;
37
- }
38
- }
39
-
40
- &__PaginationArrowIcon {
41
- display: none;
42
- }
43
-
44
- &__Month {
45
- margin: 0;
46
- width: inherit;
47
- }
48
-
49
- &__MonthHeader {
50
- color: wp-colors.$gray-900;
51
- font-size: 17px;
52
- height: auto;
53
- line-height: 24px;
54
- padding: 6px 44px;
55
- }
56
-
57
- &__WeekdayHeading,
58
- &__Date {
59
- font-size: 14px;
60
- line-height: 24px;
61
- padding: 6px 0;
62
- }
63
-
64
- &__WeekdayHeading {
65
- border-bottom-color: wp-colors.$gray-300;
66
- color: wp-colors.$gray-900;
67
-
68
- abbr[title] {
69
- color: inherit;
70
- }
71
- }
72
-
73
- &__MonthDates {
74
- border: 0;
75
- border-spacing: 0;
76
- }
77
-
78
- &__Date {
79
- border-color: wp-colors.$gray-300;
80
- border-bottom-width: 1px;
81
-
82
- &--weekend {
83
- background-color: wp-colors.$gray-100;
84
- }
85
-
86
- &--otherMonth {
87
- color: wp-colors.$gray-200;
88
- opacity: 1;
89
- }
90
-
91
- &--is-disabled {
92
- color: wp-colors.$gray-100;
93
- cursor: not-allowed;
94
- }
95
-
96
- &--is-highlighted {
97
- color: white;
98
- }
99
- }
100
-
101
- &__CalendarSelection,
102
- &__CalendarHighlight {
103
- border-color: colors.$primary-500;
104
- bottom: 4px;
105
- top: 4px;
106
-
107
- &--inOtherMonth {
108
- opacity: 1;
109
- }
110
-
111
- &--start {
112
- border-bottom-left-radius: 3px;
113
- border-top-left-radius: 3px;
114
- left: 4px;
115
- }
116
-
117
- &--end {
118
- border-bottom-right-radius: 3px;
119
- border-top-right-radius: 3px;
120
- right: 4px;
121
- }
122
-
123
- &--single {
124
- border: none;
125
- border-radius: 3px;
126
- left: 4px;
127
- right: 4px;
128
- }
129
- }
130
-
131
- &__CalendarSelection {
132
- background-color: colors.$primary-500;
133
- }
134
-
135
- &__CalendarHighlight {
136
- background: colors.$primary-500;
137
- border: none;
138
- bottom: 0;
139
- top: 0;
140
-
141
- &--single {
142
- border: none;
143
- border-radius: 0;
144
- left: 0;
145
- right: 0;
146
- }
147
- }
148
- }
package/src/grid/index.js DELETED
@@ -1,44 +0,0 @@
1
- /**
2
- * Grid
3
- */
4
-
5
- /**
6
- * WordPress dependencies
7
- */
8
- import { Component } from '@wordpress/element';
9
-
10
- /**
11
- * Internal dependencies
12
- */
13
- import './style.scss';
14
-
15
- /**
16
- * External dependencies
17
- */
18
- import classnames from 'classnames';
19
-
20
- class Grid extends Component {
21
- /**
22
- * Render
23
- */
24
- render() {
25
- const { className, columns, gutter, noMargin, rowGap, ...otherProps } = this.props;
26
- const classes = classnames(
27
- 'newspack-grid',
28
- noMargin && 'newspack-grid--no-margin',
29
- columns && 'newspack-grid__columns-' + columns,
30
- gutter && 'newspack-grid__gutter-' + gutter,
31
- rowGap && 'newspack-grid__row-gap-' + rowGap,
32
- className
33
- );
34
- return <div className={ classes } { ...otherProps } />;
35
- }
36
- }
37
-
38
- Grid.defaultProps = {
39
- columns: 2,
40
- gutter: 32,
41
- rowGap: null,
42
- };
43
-
44
- export default Grid;
@@ -1,56 +0,0 @@
1
- /**
2
- * Text Control
3
- */
4
-
5
- /**
6
- * WordPress dependencies
7
- */
8
- import { TextControl as BaseComponent } from '@wordpress/components';
9
- import { Component, createRef } from '@wordpress/element';
10
- import { __ } from '@wordpress/i18n';
11
-
12
- /**
13
- * Internal dependencies
14
- */
15
- import './style.scss';
16
-
17
- /**
18
- * External dependencies
19
- */
20
- import classNames from 'classnames';
21
-
22
- class TextControl extends Component {
23
- constructor( props ) {
24
- super( props );
25
- this.wrapperRef = createRef();
26
- }
27
- componentDidMount() {
28
- if ( this.wrapperRef.current ) {
29
- const labelEl = this.wrapperRef.current.querySelector( 'label' );
30
- if ( labelEl ) {
31
- labelEl.setAttribute( 'data-required-text', __( '(required)', 'newspack' ) );
32
- }
33
- }
34
- }
35
- /**
36
- * Render.
37
- */
38
- render() {
39
- const { className, required, isWide, withMargin = true, ...otherProps } = this.props;
40
- const classes = classNames(
41
- 'newspack-text-control',
42
- { 'newspack-text-control--wide': isWide },
43
- { 'newspack-text-control--with-margin': withMargin },
44
- className
45
- );
46
- return required ? (
47
- <div ref={ this.wrapperRef } className="newspack-text-control--required">
48
- <BaseComponent className={ classes } required={ required } { ...otherProps } />
49
- </div>
50
- ) : (
51
- <BaseComponent className={ classes } { ...otherProps } />
52
- );
53
- }
54
- }
55
-
56
- export default TextControl;