@secretstache/wordpress-gutenberg 0.3.1 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
package/build/styles.css CHANGED
@@ -128,6 +128,8 @@
128
128
  .block-editor__container .bc-spacing-range-control .components-range-control__root .components-range-control__wrapper .components-range-control__marks .components-range-control__mark-label {
129
129
  left: 8px !important;
130
130
  margin-top: 7px !important; }
131
+ .block-editor__container .bc-spacing-range-control .components-range-control__root .components-base-control__help {
132
+ margin-left: -11px; }
131
133
 
132
134
  .block-editor__container .bc-add-new-child-btn {
133
135
  display: flex;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@secretstache/wordpress-gutenberg",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "",
5
5
  "author": "Secret Stache",
6
6
  "license": "GPL-2.0-or-later",
@@ -4,12 +4,14 @@ import { page as pageIcon } from '@wordpress/icons';
4
4
 
5
5
  import { MEDIA_TYPES } from '../utils/index.js';
6
6
 
7
- export const BCImageRenderer = ({
7
+ export const ImageRenderer = ({
8
8
  imageId,
9
9
  imageUrl,
10
10
  onImageClick,
11
11
  onRemoveClick,
12
12
  onSelectClick,
13
+ selectButtonLabel = "Select Image",
14
+ removeButtonLabel = "Remove Image",
13
15
  }) => {
14
16
  return imageId && imageUrl ? (
15
17
  <>
@@ -28,7 +30,7 @@ export const BCImageRenderer = ({
28
30
  isSecondary
29
31
  isDestructive
30
32
  >
31
- Remove Image
33
+ {removeButtonLabel}
32
34
  </Button>
33
35
  </>
34
36
  ) : (
@@ -37,16 +39,18 @@ export const BCImageRenderer = ({
37
39
  onClick={onSelectClick}
38
40
  className="bc-select-btn"
39
41
  >
40
- Select Image
42
+ {selectButtonLabel}
41
43
  </Button>
42
44
  );
43
45
  };
44
46
 
45
- export const BCVideoRenderer = ({
47
+ export const VideoRenderer = ({
46
48
  videoId,
47
49
  videoUrl,
48
50
  onRemoveClick,
49
51
  onSelectClick,
52
+ selectButtonLabel = "Select Video",
53
+ removeButtonLabel = "Remove Video",
50
54
  }) => {
51
55
  return videoId && videoUrl ? (
52
56
  <>
@@ -60,7 +64,7 @@ export const BCVideoRenderer = ({
60
64
  isSecondary
61
65
  isDestructive
62
66
  >
63
- Remove Video
67
+ {removeButtonLabel}
64
68
  </Button>
65
69
  </>
66
70
  ) : (
@@ -69,22 +73,24 @@ export const BCVideoRenderer = ({
69
73
  onClick={onSelectClick}
70
74
  className="bc-select-btn"
71
75
  >
72
- Select Video
76
+ {selectButtonLabel}
73
77
  </Button>
74
78
  );
75
79
  };
76
80
 
77
- export const BCAnimationRenderer = ({
81
+ export const AnimationRenderer = ({
78
82
  animationFileId,
79
83
  animationFileUrl,
80
84
  animationFileName,
81
85
  onSelectClick,
82
86
  onRemoveClick,
87
+ selectButtonLabel = "Select File",
88
+ removeButtonLabel = "Remove File",
83
89
  }) => {
84
90
  return animationFileId && animationFileUrl ? (
85
91
  <>
86
92
  <div className="bc-animation-block-json-file" onClick={onSelectClick}>
87
- <WPIcon icon={pageIcon} size={36}/>
93
+ <WPIcon icon={pageIcon} size={36} />
88
94
  <span>{animationFileName}</span>
89
95
  </div>
90
96
  <Button
@@ -93,24 +99,25 @@ export const BCAnimationRenderer = ({
93
99
  className="bc-remove-btn"
94
100
  onClick={onRemoveClick}
95
101
  >
96
- Remove File
102
+ {removeButtonLabel}
97
103
  </Button>
98
104
  </>
99
105
  ) : (
100
106
  <Button variant="secondary" onClick={onSelectClick}>
101
- Select File
107
+ {selectButtonLabel}
102
108
  </Button>
103
109
  )
104
110
  };
105
111
 
106
- // TODO: find better name
107
- export const BCMediaPicker = ({
112
+ export const MediaControl = ({
108
113
  mediaId,
109
114
  mediaUrl,
110
115
  mediaFileName = '',
111
116
  onSelect,
112
117
  onRemove,
113
118
  type = MEDIA_TYPES.IMAGE,
119
+ selectButtonLabel,
120
+ removeButtonLabel,
114
121
  ...other
115
122
  }) => {
116
123
  if (type === MEDIA_TYPES.IMAGE) {
@@ -122,15 +129,17 @@ export const BCMediaPicker = ({
122
129
  accept="image/*"
123
130
  value={mediaId}
124
131
  render={({ open }) => (
125
- <BCImageRenderer
132
+ <ImageRenderer
126
133
  imageId={mediaId}
127
134
  imageUrl={mediaUrl}
128
135
  onImageClick={open}
129
136
  onSelectClick={open}
130
137
  onRemoveClick={onRemove}
138
+ selectButtonLabel={selectButtonLabel}
139
+ removeButtonLabel={removeButtonLabel}
131
140
  />
132
141
  )}
133
- { ...other }
142
+ {...other}
134
143
  />
135
144
  </MediaUploadCheck>
136
145
  );
@@ -142,14 +151,16 @@ export const BCMediaPicker = ({
142
151
  allowedTypes={['video']}
143
152
  value={mediaId}
144
153
  render={({ open }) => (
145
- <BCVideoRenderer
154
+ <VideoRenderer
146
155
  videoId={mediaId}
147
156
  videoUrl={mediaUrl}
148
157
  onSelectClick={open}
149
158
  onRemoveClick={onRemove}
159
+ selectButtonLabel={selectButtonLabel}
160
+ removeButtonLabel={removeButtonLabel}
150
161
  />
151
162
  )}
152
- { ...other }
163
+ {...other}
153
164
  />
154
165
  </MediaUploadCheck>
155
166
  );
@@ -161,12 +172,14 @@ export const BCMediaPicker = ({
161
172
  allowedTypes={['application/json', 'text/plain', 'application/lottie']}
162
173
  value={mediaId}
163
174
  render={({ open }) => (
164
- <BCAnimationRenderer
175
+ <AnimationRenderer
165
176
  animationFileId={mediaId}
166
177
  animationFileUrl={mediaUrl}
167
178
  animationFileName={mediaFileName}
168
179
  onSelectClick={open}
169
180
  onRemoveClick={onRemove}
181
+ selectButtonLabel={selectButtonLabel}
182
+ removeButtonLabel={removeButtonLabel}
170
183
  />
171
184
  )}
172
185
  {...other}
@@ -1,8 +1,8 @@
1
1
  import { useState } from '@wordpress/element';
2
2
  import { SelectControl } from '@wordpress/components';
3
3
 
4
- import { BCMediaPicker } from './MediaPicker.js';
5
- import { MEDIA_TYPE_LABELS} from '../utils/index.js';
4
+ import { MediaControl } from './MediaControl.js';
5
+ import { MEDIA_TYPE_LABELS } from '../utils/index.js';
6
6
 
7
7
  export const MediaTypeControl = (props) => {
8
8
  const {
@@ -12,9 +12,10 @@ export const MediaTypeControl = (props) => {
12
12
  mediaFileName = '',
13
13
  mediaOnSelect,
14
14
  mediaOnRemove,
15
+ label = 'Media Type',
15
16
  } = props;
16
17
 
17
- const [ selectedMediaType, setSelectedMediaType ] = useState(mediaTypes?.[0]);
18
+ const [selectedMediaType, setSelectedMediaType] = useState(mediaTypes?.[0]);
18
19
 
19
20
  const mediaTypesOptions = mediaTypes
20
21
  ?.filter((type) => MEDIA_TYPE_LABELS[type]) // Ensure it's an allowed type
@@ -26,10 +27,9 @@ export const MediaTypeControl = (props) => {
26
27
  return (
27
28
  <>
28
29
  {
29
- // TODO: add custom label
30
30
  mediaTypes && (
31
31
  <SelectControl
32
- label="Media Type"
32
+ label={label}
33
33
  value={selectedMediaType}
34
34
  onChange={(mediaType) => setSelectedMediaType(mediaType)}
35
35
  options={mediaTypesOptions}
@@ -39,7 +39,7 @@ export const MediaTypeControl = (props) => {
39
39
 
40
40
  {
41
41
  selectedMediaType && (
42
- <BCMediaPicker
42
+ <MediaControl
43
43
  mediaId={mediaId}
44
44
  mediaUrl={mediaUrl}
45
45
  mediaFileName={mediaFileName}
@@ -2,7 +2,7 @@ export { ColorPaletteControl } from './ColorPaletteControl';
2
2
  export { IconPicker } from './IconPicker';
3
3
  export { ImageActions } from './ImageActions';
4
4
  export { LinkControl } from './LinkControl';
5
- export { BCImageRenderer, BCVideoRenderer, BCAnimationRenderer, BCMediaPicker } from './MediaPicker';
5
+ export { ImageRenderer, VideoRenderer, AnimationRenderer, MediaControl } from './MediaControl.js';
6
6
  export { SortableSelect, SortableSelectAsync } from './SortableSelect';
7
7
  export { DataQueryControls } from './DataQueryControls.js';
8
8
  export { SpacingControl } from './SpacingControl.js';
@@ -26,5 +26,9 @@
26
26
  }
27
27
  }
28
28
  }
29
+
30
+ .components-base-control__help {
31
+ margin-left: -11px;
32
+ }
29
33
  }
30
34
  }