@squiz/dx-json-schema-lib 1.82.6 → 1.84.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Change Log
2
2
 
3
+ ## 1.84.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 07202d4: Add the previewPlaceholder property to the schema.
8
+
9
+ ## 1.83.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 1e5f754: Export Matrix asset to primitive types resolver fns
14
+
3
15
  ## 1.82.6
4
16
 
5
17
  ### Patch Changes
@@ -64,6 +64,18 @@ describe('DxComponentInputSchema', () => {
64
64
  foo: 'bar',
65
65
  }), SchemaValidationError_1.SchemaValidationError, 'failed validation: Additional property `foo` in `#` is not allowed');
66
66
  });
67
+ it('should allow previewPlaceholder to be a string', () => {
68
+ expect(() => jsonValidationService.validateContentSchema({
69
+ type: 'object',
70
+ previewPlaceholder: 'foo',
71
+ })).not.toThrowError();
72
+ });
73
+ it('should allow previewPlaceholder to be a boolean', () => {
74
+ expect(() => jsonValidationService.validateContentSchema({
75
+ type: 'object',
76
+ previewPlaceholder: true,
77
+ })).not.toThrowError();
78
+ });
67
79
  it('should allow a nested property to be an array of of objects which have a property of type to be "FormattedText" that is required', () => {
68
80
  expect(() => jsonValidationService.validateContentSchema({
69
81
  type: 'object',
@@ -1 +1 @@
1
- {"version":3,"file":"DxComponentInputSchema.spec.js","sourceRoot":"","sources":["../../../src/manifest/v1/DxComponentInputSchema.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DxComponentInputSchema.spec.js","sourceRoot":"","sources":["../../../src/manifest/v1/DxComponentInputSchema.spec.ts"],"names":[],"mappings":"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"}
@@ -304,6 +304,10 @@
304
304
  },
305
305
  "not": {
306
306
  "$ref": "#"
307
+ },
308
+ "previewPlaceholder": {
309
+ "type": ["string", "boolean"],
310
+ "description": "Placeholder text to display in the preview"
307
311
  }
308
312
  },
309
313
  "ui:metadata": {
@@ -76,6 +76,10 @@ export type CoreSchemaMetaSchema2 = {
76
76
  anyOf?: SchemaArray;
77
77
  oneOf?: SchemaArray;
78
78
  not?: CoreSchemaMetaSchema2;
79
+ /**
80
+ * Placeholder text to display in the preview
81
+ */
82
+ previewPlaceholder?: string | boolean;
79
83
  } | boolean;
80
84
  /**
81
85
  * @minItems 1
@@ -199,6 +203,10 @@ export interface CoreSchemaMetaSchema1 {
199
203
  anyOf?: SchemaArray;
200
204
  oneOf?: SchemaArray;
201
205
  not?: CoreSchemaMetaSchema2;
206
+ /**
207
+ * Placeholder text to display in the preview
208
+ */
209
+ previewPlaceholder?: string | boolean;
202
210
  }
203
211
  export interface UiMetadata {
204
212
  /**
@@ -76,6 +76,10 @@ export type CoreSchemaMetaSchema2 = {
76
76
  anyOf?: SchemaArray;
77
77
  oneOf?: SchemaArray;
78
78
  not?: CoreSchemaMetaSchema2;
79
+ /**
80
+ * Placeholder text to display in the preview
81
+ */
82
+ previewPlaceholder?: string | boolean;
79
83
  } | boolean;
80
84
  /**
81
85
  * @minItems 1
@@ -334,6 +338,10 @@ export interface CoreSchemaMetaSchema1 {
334
338
  anyOf?: SchemaArray;
335
339
  oneOf?: SchemaArray;
336
340
  not?: CoreSchemaMetaSchema2;
341
+ /**
342
+ * Placeholder text to display in the preview
343
+ */
344
+ previewPlaceholder?: string | boolean;
337
345
  }
338
346
  export interface UiMetadata {
339
347
  /**
@@ -1,3 +1,4 @@
1
1
  export * from './SquizImage';
2
2
  export * from './FormattedText';
3
3
  export * from './SquizLink';
4
+ export * from './mapMatrixAssetToSquizPrimitive';
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./SquizImage"), exports);
18
18
  __exportStar(require("./FormattedText"), exports);
19
19
  __exportStar(require("./SquizLink"), exports);
20
+ __exportStar(require("./mapMatrixAssetToSquizPrimitive"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/primitiveTypes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,kDAAgC;AAChC,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/primitiveTypes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,kDAAgC;AAChC,8CAA4B;AAC5B,mEAAiD"}
@@ -0,0 +1,28 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+ import type { SquizImageType } from './SquizImage';
6
+ import type { SquizLinkType } from './SquizLink';
7
+ import type { MatrixAssetLinkType } from '../resolvableTypes/MatrixAsset';
8
+ /**
9
+ * Minimal Matrix asset shape used for mapping to Squiz primitives.
10
+ * Compatible with MANIFEST_MODELS.v1.MatrixAssetSchema and API response shapes.
11
+ */
12
+ export interface MatrixAssetLike {
13
+ url: string;
14
+ type: string;
15
+ attributes: Record<string, unknown>;
16
+ /** Optional; when present, varieties (for image types) may be read from it */
17
+ additional?: unknown;
18
+ }
19
+ /**
20
+ * Maps a Matrix asset and link reference to a SquizLink shape.
21
+ * Mirrors the logic in content-api MatrixResolutionService.mapMatrixAssetToSquizLink.
22
+ */
23
+ export declare function mapMatrixAssetToSquizLink(asset: MatrixAssetLike, matrixLinkAsset: MatrixAssetLinkType['__shape__']): SquizLinkType['__shape__'];
24
+ /**
25
+ * Maps a Matrix image asset to a SquizImage shape.
26
+ * Mirrors the logic in content-api MatrixResolutionService.mapMatrixAssetToSquizImage.
27
+ */
28
+ export declare function mapMatrixAssetToSquizImage(asset: MatrixAssetLike): SquizImageType['__shape__'];
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ /*!
3
+ * @license
4
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.mapMatrixAssetToSquizLink = mapMatrixAssetToSquizLink;
8
+ exports.mapMatrixAssetToSquizImage = mapMatrixAssetToSquizImage;
9
+ const MATRIX_IMAGE_TYPES = /^image$|^image_variety$/;
10
+ /**
11
+ * Maps a Matrix asset and link reference to a SquizLink shape.
12
+ * Mirrors the logic in content-api MatrixResolutionService.mapMatrixAssetToSquizLink.
13
+ */
14
+ function mapMatrixAssetToSquizLink(asset, matrixLinkAsset) {
15
+ var _a, _b;
16
+ const text = (typeof matrixLinkAsset.text === 'string' && matrixLinkAsset.text) || ((_a = asset.attributes) === null || _a === void 0 ? void 0 : _a.name) || '';
17
+ return {
18
+ text,
19
+ url: (_b = asset.url) !== null && _b !== void 0 ? _b : '',
20
+ target: matrixLinkAsset.target,
21
+ };
22
+ }
23
+ /**
24
+ * Maps a Matrix image asset to a SquizImage shape.
25
+ * Mirrors the logic in content-api MatrixResolutionService.mapMatrixAssetToSquizImage.
26
+ */
27
+ function mapMatrixAssetToSquizImage(asset) {
28
+ var _a, _b, _c, _d, _e;
29
+ if (!MATRIX_IMAGE_TYPES.test(asset.type)) {
30
+ throw new Error(`Matrix asset is not an image: ${asset.type}`);
31
+ }
32
+ const variations = (_b = (_a = asset.additional) === null || _a === void 0 ? void 0 : _a.varieties) !== null && _b !== void 0 ? _b : [];
33
+ const isVariety = asset.type === 'image_variety';
34
+ return {
35
+ name: (_c = asset.attributes) === null || _c === void 0 ? void 0 : _c.title,
36
+ alt: (_d = asset.attributes) === null || _d === void 0 ? void 0 : _d.alt,
37
+ caption: (_e = asset.attributes) === null || _e === void 0 ? void 0 : _e.caption,
38
+ imageVariations: {
39
+ original: mapMatrixAssetToSquizImageVariation(asset, isVariety),
40
+ aspectRatios: variations.map((v) => mapMatrixAssetToSquizImageVariation(v, true)),
41
+ },
42
+ };
43
+ }
44
+ function mapMatrixAssetToSquizImageVariation(matrixAsset, isVariety) {
45
+ var _a;
46
+ const prefix = isVariety ? 'variety_' : '';
47
+ const attrs = (_a = matrixAsset.attributes) !== null && _a !== void 0 ? _a : {};
48
+ const width = attrs[`${prefix}width`];
49
+ const height = attrs[`${prefix}height`];
50
+ const mimeType = getMimeTypeFromUrl(matrixAsset.url);
51
+ return {
52
+ url: matrixAsset.url,
53
+ width,
54
+ height,
55
+ byteSize: attrs[`${prefix}size`],
56
+ mimeType,
57
+ aspectRatio: isVariety ? calculateAspectRatio(width, height) : '4:3',
58
+ sha1Hash: '',
59
+ };
60
+ }
61
+ function getMimeTypeFromUrl(url) {
62
+ var _a, _b;
63
+ const ext = url.includes('.') ? (_b = (_a = url.split('.').pop()) === null || _a === void 0 ? void 0 : _a.replace(/\?.*/, '')) === null || _b === void 0 ? void 0 : _b.toLowerCase() : '';
64
+ const mimeMap = {
65
+ jpg: 'image/jpeg',
66
+ jpeg: 'image/jpeg',
67
+ png: 'image/png',
68
+ gif: 'image/gif',
69
+ webp: 'image/webp',
70
+ svg: 'image/svg+xml',
71
+ };
72
+ return (ext && mimeMap[ext]) || 'image/jpeg';
73
+ }
74
+ function calculateAspectRatio(width, height) {
75
+ if (!width || !height)
76
+ return '4:3';
77
+ const gcd = (a, b) => (b === 0 ? a : gcd(b, a % b));
78
+ const d = gcd(width, height);
79
+ const sx = width / d;
80
+ const sy = height / d;
81
+ const ratio = width / height;
82
+ const standardRatios = [
83
+ { label: '16:9', value: 16 / 9 },
84
+ { label: '3:2', value: 3 / 2 },
85
+ { label: '4:3', value: 4 / 3 },
86
+ { label: '1:1', value: 1 },
87
+ ];
88
+ const cmp = width >= height ? ratio : 1 / ratio;
89
+ let bestLabel = '';
90
+ let bestDiff = Infinity;
91
+ for (const { label, value } of standardRatios) {
92
+ const diff = Math.abs(cmp - value);
93
+ if (diff < bestDiff) {
94
+ bestDiff = diff;
95
+ bestLabel = label;
96
+ }
97
+ }
98
+ return bestDiff <= 0.2 ? bestLabel : `${sx}:${sy}`;
99
+ }
100
+ //# sourceMappingURL=mapMatrixAssetToSquizPrimitive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapMatrixAssetToSquizPrimitive.js","sourceRoot":"","sources":["../../src/primitiveTypes/mapMatrixAssetToSquizPrimitive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,225 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mapMatrixAssetToSquizPrimitive_1 = require("./mapMatrixAssetToSquizPrimitive");
4
+ describe('mapMatrixAssetToSquizPrimitive', () => {
5
+ describe('mapMatrixAssetToSquizLink', () => {
6
+ it('should map asset and link to SquizLink with text from matrixLinkAsset', () => {
7
+ const asset = {
8
+ url: 'https://example.com/page',
9
+ type: 'link',
10
+ attributes: { name: 'Fallback Name' },
11
+ };
12
+ const matrixLinkAsset = {
13
+ matrixAssetId: '123',
14
+ matrixIdentifier: 'prod',
15
+ text: 'Click here',
16
+ target: '_blank',
17
+ };
18
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizLink)(asset, matrixLinkAsset);
19
+ expect(result).toEqual({
20
+ text: 'Click here',
21
+ url: 'https://example.com/page',
22
+ target: '_blank',
23
+ });
24
+ });
25
+ it('should fall back to asset.attributes.name when matrixLinkAsset.text is empty', () => {
26
+ const asset = {
27
+ url: 'https://example.com/page',
28
+ type: 'link',
29
+ attributes: { name: 'Link Name' },
30
+ };
31
+ const matrixLinkAsset = {
32
+ matrixAssetId: '123',
33
+ matrixIdentifier: 'prod',
34
+ text: '',
35
+ target: '_self',
36
+ };
37
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizLink)(asset, matrixLinkAsset);
38
+ expect(result.text).toBe('Link Name');
39
+ expect(result.url).toBe('https://example.com/page');
40
+ expect(result.target).toBe('_self');
41
+ });
42
+ it('should fall back to empty string when neither text nor attributes.name present', () => {
43
+ const asset = {
44
+ url: 'https://example.com/page',
45
+ type: 'link',
46
+ attributes: {},
47
+ };
48
+ const matrixLinkAsset = {
49
+ matrixAssetId: '123',
50
+ matrixIdentifier: 'prod',
51
+ target: '_parent',
52
+ };
53
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizLink)(asset, matrixLinkAsset);
54
+ expect(result).toEqual({
55
+ text: '',
56
+ url: 'https://example.com/page',
57
+ target: '_parent',
58
+ });
59
+ });
60
+ it('should use empty url when asset.url is missing', () => {
61
+ const asset = {
62
+ url: undefined,
63
+ type: 'link',
64
+ attributes: {},
65
+ };
66
+ const matrixLinkAsset = {
67
+ matrixAssetId: '123',
68
+ matrixIdentifier: 'prod',
69
+ text: 'Link',
70
+ target: '_top',
71
+ };
72
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizLink)(asset, matrixLinkAsset);
73
+ expect(result.url).toBe('');
74
+ });
75
+ });
76
+ describe('mapMatrixAssetToSquizImage', () => {
77
+ it('should throw when asset type is not image or image_variety', () => {
78
+ const asset = {
79
+ url: 'https://example.com/file.pdf',
80
+ type: 'document',
81
+ attributes: {},
82
+ };
83
+ expect(() => (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)(asset)).toThrow('Matrix asset is not an image: document');
84
+ });
85
+ it('should map image asset to SquizImage shape', () => {
86
+ const asset = {
87
+ url: 'https://example.com/photo.jpg',
88
+ type: 'image',
89
+ attributes: {
90
+ title: 'Photo Title',
91
+ alt: 'Alt text',
92
+ caption: 'Caption text',
93
+ width: 800,
94
+ height: 600,
95
+ size: 102400,
96
+ },
97
+ };
98
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)(asset);
99
+ expect(result.name).toBe('Photo Title');
100
+ expect(result.alt).toBe('Alt text');
101
+ expect(result.caption).toBe('Caption text');
102
+ expect(result.imageVariations.original).toMatchObject({
103
+ url: 'https://example.com/photo.jpg',
104
+ width: 800,
105
+ height: 600,
106
+ byteSize: 102400,
107
+ mimeType: 'image/jpeg',
108
+ aspectRatio: '4:3',
109
+ sha1Hash: '',
110
+ });
111
+ expect(result.imageVariations.aspectRatios).toEqual([]);
112
+ });
113
+ it('should use variety_ prefix for image_variety type', () => {
114
+ const asset = {
115
+ url: 'https://example.com/variety.webp',
116
+ type: 'image_variety',
117
+ attributes: {
118
+ title: 'Variety',
119
+ variety_width: 400,
120
+ variety_height: 300,
121
+ variety_size: 5000,
122
+ },
123
+ };
124
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)(asset);
125
+ expect(result.imageVariations.original).toMatchObject({
126
+ url: 'https://example.com/variety.webp',
127
+ width: 400,
128
+ height: 300,
129
+ byteSize: 5000,
130
+ mimeType: 'image/webp',
131
+ });
132
+ });
133
+ it('should map mime type from url extension', () => {
134
+ const cases = [
135
+ { url: 'https://example.com/a.jpg', mime: 'image/jpeg' },
136
+ { url: 'https://example.com/b.jpeg', mime: 'image/jpeg' },
137
+ { url: 'https://example.com/c.png', mime: 'image/png' },
138
+ { url: 'https://example.com/d.gif', mime: 'image/gif' },
139
+ { url: 'https://example.com/e.webp', mime: 'image/webp' },
140
+ { url: 'https://example.com/f.svg', mime: 'image/svg+xml' },
141
+ { url: 'https://example.com/g.jpg?query=1', mime: 'image/jpeg' },
142
+ ];
143
+ cases.forEach(({ url, mime }) => {
144
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)({
145
+ url,
146
+ type: 'image',
147
+ attributes: { width: 1, height: 1, size: 1 },
148
+ });
149
+ expect(result.imageVariations.original.mimeType).toBe(mime);
150
+ });
151
+ });
152
+ it('should default to image/jpeg when extension is unknown', () => {
153
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)({
154
+ url: 'https://example.com/file.xyz',
155
+ type: 'image',
156
+ attributes: { width: 1, height: 1, size: 1 },
157
+ });
158
+ expect(result.imageVariations.original.mimeType).toBe('image/jpeg');
159
+ });
160
+ it('should include aspect ratios from additional.varieties', () => {
161
+ const asset = {
162
+ url: 'https://example.com/main.jpg',
163
+ type: 'image',
164
+ attributes: {
165
+ title: 'Main',
166
+ width: 1600,
167
+ height: 900,
168
+ size: 200000,
169
+ },
170
+ additional: {
171
+ varieties: [
172
+ {
173
+ url: 'https://example.com/16x9.jpg',
174
+ type: 'image_variety',
175
+ attributes: {
176
+ variety_width: 1600,
177
+ variety_height: 900,
178
+ variety_size: 100000,
179
+ },
180
+ },
181
+ ],
182
+ },
183
+ };
184
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)(asset);
185
+ expect(result.imageVariations.aspectRatios).toHaveLength(1);
186
+ expect(result.imageVariations.aspectRatios[0]).toMatchObject({
187
+ url: 'https://example.com/16x9.jpg',
188
+ width: 1600,
189
+ height: 900,
190
+ });
191
+ });
192
+ it('should handle missing additional or varieties', () => {
193
+ const asset = {
194
+ url: 'https://example.com/photo.jpg',
195
+ type: 'image',
196
+ attributes: { width: 100, height: 100, size: 0 },
197
+ };
198
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)(asset);
199
+ expect(result.imageVariations.aspectRatios).toEqual([]);
200
+ });
201
+ it('should calculate aspect ratio for variety (e.g. 16:9)', () => {
202
+ const asset = {
203
+ url: 'https://example.com/v.jpg',
204
+ type: 'image_variety',
205
+ attributes: {
206
+ variety_width: 1920,
207
+ variety_height: 1080,
208
+ variety_size: 0,
209
+ },
210
+ };
211
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)(asset);
212
+ expect(result.imageVariations.original.aspectRatio).toBe('16:9');
213
+ });
214
+ it('should default aspect ratio to 4:3 when dimensions missing for variety', () => {
215
+ const asset = {
216
+ url: 'https://example.com/v.jpg',
217
+ type: 'image_variety',
218
+ attributes: {},
219
+ };
220
+ const result = (0, mapMatrixAssetToSquizPrimitive_1.mapMatrixAssetToSquizImage)(asset);
221
+ expect(result.imageVariations.original.aspectRatio).toBe('4:3');
222
+ });
223
+ });
224
+ });
225
+ //# sourceMappingURL=mapMatrixAssetToSquizPrimitive.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapMatrixAssetToSquizPrimitive.spec.js","sourceRoot":"","sources":["../../src/primitiveTypes/mapMatrixAssetToSquizPrimitive.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@squiz/dx-json-schema-lib",
3
- "version": "1.82.6",
3
+ "version": "1.84.0",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "private": false,
@@ -91,6 +91,24 @@ describe('DxComponentInputSchema', () => {
91
91
  );
92
92
  });
93
93
 
94
+ it('should allow previewPlaceholder to be a string', () => {
95
+ expect(() =>
96
+ jsonValidationService.validateContentSchema({
97
+ type: 'object',
98
+ previewPlaceholder: 'foo',
99
+ }),
100
+ ).not.toThrowError();
101
+ });
102
+
103
+ it('should allow previewPlaceholder to be a boolean', () => {
104
+ expect(() =>
105
+ jsonValidationService.validateContentSchema({
106
+ type: 'object',
107
+ previewPlaceholder: true,
108
+ }),
109
+ ).not.toThrowError();
110
+ });
111
+
94
112
  it('should allow a nested property to be an array of of objects which have a property of type to be "FormattedText" that is required', () => {
95
113
  expect(() =>
96
114
  jsonValidationService.validateContentSchema({
@@ -304,6 +304,10 @@
304
304
  },
305
305
  "not": {
306
306
  "$ref": "#"
307
+ },
308
+ "previewPlaceholder": {
309
+ "type": ["string", "boolean"],
310
+ "description": "Placeholder text to display in the preview"
307
311
  }
308
312
  },
309
313
  "ui:metadata": {
@@ -205,6 +205,10 @@ export type CoreSchemaMetaSchema2 =
205
205
  anyOf?: SchemaArray;
206
206
  oneOf?: SchemaArray;
207
207
  not?: CoreSchemaMetaSchema2;
208
+ /**
209
+ * Placeholder text to display in the preview
210
+ */
211
+ previewPlaceholder?: string | boolean;
208
212
  }
209
213
  | boolean;
210
214
  /**
@@ -456,6 +460,10 @@ export interface CoreSchemaMetaSchema1 {
456
460
  anyOf?: SchemaArray;
457
461
  oneOf?: SchemaArray;
458
462
  not?: CoreSchemaMetaSchema2;
463
+ /**
464
+ * Placeholder text to display in the preview
465
+ */
466
+ previewPlaceholder?: string | boolean;
459
467
  }
460
468
  export interface UiMetadata {
461
469
  /**
@@ -205,6 +205,10 @@ export type CoreSchemaMetaSchema2 =
205
205
  anyOf?: SchemaArray;
206
206
  oneOf?: SchemaArray;
207
207
  not?: CoreSchemaMetaSchema2;
208
+ /**
209
+ * Placeholder text to display in the preview
210
+ */
211
+ previewPlaceholder?: string | boolean;
208
212
  }
209
213
  | boolean;
210
214
  /**
@@ -2835,6 +2839,10 @@ export interface CoreSchemaMetaSchema1 {
2835
2839
  anyOf?: SchemaArray;
2836
2840
  oneOf?: SchemaArray;
2837
2841
  not?: CoreSchemaMetaSchema2;
2842
+ /**
2843
+ * Placeholder text to display in the preview
2844
+ */
2845
+ previewPlaceholder?: string | boolean;
2838
2846
  }
2839
2847
  export interface UiMetadata {
2840
2848
  /**
@@ -1,3 +1,4 @@
1
1
  export * from './SquizImage';
2
2
  export * from './FormattedText';
3
3
  export * from './SquizLink';
4
+ export * from './mapMatrixAssetToSquizPrimitive';