@stackbit/cms-core 0.1.11 → 0.1.12-locale.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.
- package/dist/content-store-types.d.ts +8 -2
- package/dist/content-store-types.d.ts.map +1 -1
- package/dist/content-store-utils.js +1 -1
- package/dist/content-store-utils.js.map +1 -1
- package/dist/content-store.d.ts +11 -4
- package/dist/content-store.d.ts.map +1 -1
- package/dist/content-store.js +141 -39
- package/dist/content-store.js.map +1 -1
- package/dist/utils/csi-to-store-docs-converter.d.ts.map +1 -1
- package/dist/utils/csi-to-store-docs-converter.js +11 -0
- package/dist/utils/csi-to-store-docs-converter.js.map +1 -1
- package/dist/utils/duplicate-document.d.ts +2 -2
- package/dist/utils/duplicate-document.d.ts.map +1 -1
- package/dist/utils/duplicate-document.js +7 -4
- package/dist/utils/duplicate-document.js.map +1 -1
- package/dist/utils/search-utils.d.ts +1 -0
- package/dist/utils/search-utils.d.ts.map +1 -1
- package/dist/utils/search-utils.js +7 -4
- package/dist/utils/search-utils.js.map +1 -1
- package/dist/utils/store-to-api-docs-converter.d.ts.map +1 -1
- package/dist/utils/store-to-api-docs-converter.js +48 -36
- package/dist/utils/store-to-api-docs-converter.js.map +1 -1
- package/package.json +4 -4
- package/src/content-store-types.ts +3 -2
- package/src/content-store-utils.ts +1 -1
- package/src/content-store.ts +150 -38
- package/src/utils/csi-to-store-docs-converter.ts +11 -0
- package/src/utils/duplicate-document.ts +14 -10
- package/src/utils/search-utils.ts +5 -2
- package/src/utils/store-to-api-docs-converter.ts +46 -37
|
@@ -24,13 +24,23 @@ function toLocalizedAPIFields(docFields, locale) {
|
|
|
24
24
|
}
|
|
25
25
|
function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
26
26
|
var _a;
|
|
27
|
-
function localeFields(localized
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
function localeFields(localized) {
|
|
28
|
+
const isLocalized = !!localized;
|
|
29
|
+
if (isListItem) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
if (!isLocalized) {
|
|
33
|
+
return {
|
|
34
|
+
localized: false
|
|
33
35
|
};
|
|
36
|
+
}
|
|
37
|
+
if (!locale) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
localized: isLocalized,
|
|
42
|
+
locale: locale
|
|
43
|
+
};
|
|
34
44
|
}
|
|
35
45
|
switch (docField.type) {
|
|
36
46
|
case 'string':
|
|
@@ -51,22 +61,22 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
51
61
|
case 'richText':
|
|
52
62
|
if (docField.localized) {
|
|
53
63
|
const { localized, locales, ...base } = docField;
|
|
54
|
-
const localeProps = locale ? locales[locale] : undefined;
|
|
64
|
+
const localeProps = locales && locale ? locales[locale] : undefined;
|
|
55
65
|
return {
|
|
56
66
|
...base,
|
|
57
67
|
...(localeProps !== null && localeProps !== void 0 ? localeProps : { value: null }),
|
|
58
|
-
...localeFields(localized
|
|
68
|
+
...localeFields(localized),
|
|
59
69
|
...(['file', 'json', 'markdown', 'richText'].includes(docField.type) && !localeProps ? { isUnset: true } : null)
|
|
60
70
|
};
|
|
61
71
|
}
|
|
62
72
|
return {
|
|
63
73
|
...docField,
|
|
64
|
-
...localeFields(docField.localized
|
|
74
|
+
...localeFields(docField.localized)
|
|
65
75
|
};
|
|
66
76
|
case 'image':
|
|
67
77
|
if (docField.localized) {
|
|
68
78
|
const { localized, locales, ...base } = docField;
|
|
69
|
-
const localeProps = locale ? locales[locale] : undefined;
|
|
79
|
+
const localeProps = locales && locale ? locales[locale] : undefined;
|
|
70
80
|
return {
|
|
71
81
|
...base,
|
|
72
82
|
...(localeProps
|
|
@@ -75,7 +85,7 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
75
85
|
fields: toLocalizedAPIFields(localeProps.fields, locale)
|
|
76
86
|
}
|
|
77
87
|
: { isUnset: true }),
|
|
78
|
-
...localeFields(localized
|
|
88
|
+
...localeFields(localized)
|
|
79
89
|
};
|
|
80
90
|
}
|
|
81
91
|
return {
|
|
@@ -89,14 +99,14 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
89
99
|
...docField,
|
|
90
100
|
type: 'image'
|
|
91
101
|
}),
|
|
92
|
-
...localeFields(docField.localized
|
|
102
|
+
...localeFields(docField.localized)
|
|
93
103
|
};
|
|
94
104
|
case 'object':
|
|
95
105
|
case 'model':
|
|
96
106
|
if (docField.localized) {
|
|
97
107
|
if (docField.type === 'object') {
|
|
98
108
|
const { localized, locales, ...base } = docField;
|
|
99
|
-
const localeProps = locale ? locales[locale] : undefined;
|
|
109
|
+
const localeProps = locales && locale ? locales[locale] : undefined;
|
|
100
110
|
return {
|
|
101
111
|
...base,
|
|
102
112
|
...(localeProps
|
|
@@ -105,12 +115,12 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
105
115
|
fields: toLocalizedAPIFields(localeProps.fields, locale)
|
|
106
116
|
}
|
|
107
117
|
: { isUnset: true }),
|
|
108
|
-
...localeFields(localized
|
|
118
|
+
...localeFields(localized)
|
|
109
119
|
};
|
|
110
120
|
}
|
|
111
121
|
else {
|
|
112
122
|
const { localized, locales, ...base } = docField;
|
|
113
|
-
const localeProps = locale ? locales[locale] : undefined;
|
|
123
|
+
const localeProps = locales && locale ? locales[locale] : undefined;
|
|
114
124
|
return {
|
|
115
125
|
...base,
|
|
116
126
|
type: 'object',
|
|
@@ -120,7 +130,7 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
120
130
|
fields: toLocalizedAPIFields(localeProps.fields, locale)
|
|
121
131
|
}
|
|
122
132
|
: { isUnset: true }),
|
|
123
|
-
...localeFields(localized
|
|
133
|
+
...localeFields(localized)
|
|
124
134
|
};
|
|
125
135
|
}
|
|
126
136
|
}
|
|
@@ -135,19 +145,19 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
135
145
|
...docField,
|
|
136
146
|
type: 'object'
|
|
137
147
|
}),
|
|
138
|
-
...localeFields(docField.localized
|
|
148
|
+
...localeFields(docField.localized)
|
|
139
149
|
};
|
|
140
150
|
case 'reference':
|
|
141
151
|
if (docField.localized) {
|
|
142
152
|
const { type, refType, localized, locales, ...base } = docField;
|
|
143
|
-
const localeProps = locale ? locales[locale] : undefined;
|
|
153
|
+
const localeProps = locales && locale ? locales[locale] : undefined;
|
|
144
154
|
// if reference field isUnset === true, it behaves like a regular object
|
|
145
155
|
if (!localeProps || localeProps.isUnset) {
|
|
146
156
|
return {
|
|
147
157
|
type: 'object',
|
|
148
158
|
isUnset: true,
|
|
149
159
|
...base,
|
|
150
|
-
...localeFields(localized
|
|
160
|
+
...localeFields(localized)
|
|
151
161
|
};
|
|
152
162
|
}
|
|
153
163
|
return {
|
|
@@ -155,7 +165,7 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
155
165
|
refType: refType === 'asset' ? 'image' : 'object',
|
|
156
166
|
...base,
|
|
157
167
|
...localeProps,
|
|
158
|
-
...localeFields(localized
|
|
168
|
+
...localeFields(localized)
|
|
159
169
|
};
|
|
160
170
|
}
|
|
161
171
|
const { type, refType, ...base } = docField;
|
|
@@ -163,29 +173,29 @@ function toLocalizedAPIField(docField, locale, isListItem = false) {
|
|
|
163
173
|
return {
|
|
164
174
|
type: 'object',
|
|
165
175
|
...base,
|
|
166
|
-
...localeFields(docField.localized
|
|
176
|
+
...localeFields(docField.localized)
|
|
167
177
|
};
|
|
168
178
|
}
|
|
169
179
|
return {
|
|
170
180
|
type: 'unresolved_reference',
|
|
171
181
|
refType: refType === 'asset' ? 'image' : 'object',
|
|
172
182
|
...base,
|
|
173
|
-
...localeFields(docField.localized
|
|
183
|
+
...localeFields(docField.localized)
|
|
174
184
|
};
|
|
175
185
|
case 'list':
|
|
176
186
|
if (docField.localized) {
|
|
177
187
|
const { localized, locales, ...base } = docField;
|
|
178
|
-
const localeProps = locale ? locales[locale] : undefined;
|
|
188
|
+
const localeProps = locales && locale ? locales[locale] : undefined;
|
|
179
189
|
return {
|
|
180
190
|
...base,
|
|
181
191
|
...localeProps,
|
|
182
192
|
items: ((_a = localeProps === null || localeProps === void 0 ? void 0 : localeProps.items) !== null && _a !== void 0 ? _a : []).map((field) => toLocalizedAPIField(field, locale, true)),
|
|
183
|
-
...localeFields(localized
|
|
193
|
+
...localeFields(localized)
|
|
184
194
|
};
|
|
185
195
|
}
|
|
186
196
|
return {
|
|
187
197
|
...docField,
|
|
188
|
-
...localeFields(docField.localized
|
|
198
|
+
...localeFields(docField.localized),
|
|
189
199
|
items: docField.items.map((field) => toLocalizedAPIField(field, locale, true))
|
|
190
200
|
};
|
|
191
201
|
default:
|
|
@@ -207,7 +217,7 @@ function assetToLocalizedApiImage(asset, locale) {
|
|
|
207
217
|
};
|
|
208
218
|
}
|
|
209
219
|
function localizeAssetFields(assetFields, locale) {
|
|
210
|
-
var _a, _b;
|
|
220
|
+
var _a, _b, _c;
|
|
211
221
|
const fields = {
|
|
212
222
|
title: {
|
|
213
223
|
type: 'string',
|
|
@@ -220,41 +230,43 @@ function localizeAssetFields(assetFields, locale) {
|
|
|
220
230
|
};
|
|
221
231
|
const titleFieldNonLocalized = (0, content_store_utils_1.getDocumentFieldForLocale)(assetFields.title, locale);
|
|
222
232
|
fields.title.value = titleFieldNonLocalized === null || titleFieldNonLocalized === void 0 ? void 0 : titleFieldNonLocalized.value;
|
|
223
|
-
fields.title.locale = locale
|
|
233
|
+
fields.title.locale = locale;
|
|
224
234
|
const assetFileField = assetFields.file;
|
|
225
235
|
if (assetFileField.localized) {
|
|
226
236
|
if (locale) {
|
|
227
|
-
fields.url.value = (_b = (_a = assetFileField.locales[locale]) === null ||
|
|
237
|
+
fields.url.value = (_c = (_b = (_a = assetFileField.locales) === null || _a === void 0 ? void 0 : _a[locale]) === null || _b === void 0 ? void 0 : _b.url) !== null && _c !== void 0 ? _c : null;
|
|
228
238
|
fields.url.locale = locale;
|
|
229
239
|
}
|
|
230
240
|
}
|
|
231
241
|
else {
|
|
232
242
|
fields.url.value = assetFileField.url;
|
|
233
|
-
fields.url.locale = assetFileField.locale;
|
|
234
243
|
}
|
|
235
244
|
return fields;
|
|
236
245
|
}
|
|
237
246
|
function mapStoreAssetsToAPIAssets(assets, locale) {
|
|
238
|
-
return assets.map((asset) => storeAssetToAPIAsset(asset, locale));
|
|
247
|
+
return assets.map((asset) => storeAssetToAPIAsset(asset, locale)).filter((asset) => !!asset);
|
|
239
248
|
}
|
|
240
249
|
exports.mapStoreAssetsToAPIAssets = mapStoreAssetsToAPIAssets;
|
|
241
250
|
function storeAssetToAPIAsset(asset, locale) {
|
|
242
|
-
var _a, _b;
|
|
251
|
+
var _a, _b, _c, _d, _e;
|
|
243
252
|
const assetTitleField = asset.fields.title;
|
|
244
|
-
const localizedTitleField = assetTitleField.localized ? assetTitleField.locales[locale] : assetTitleField;
|
|
253
|
+
const localizedTitleField = assetTitleField.localized ? (_a = assetTitleField.locales) === null || _a === void 0 ? void 0 : _a[locale] : assetTitleField;
|
|
245
254
|
const assetFileField = asset.fields.file;
|
|
246
|
-
const localizedFileField = assetFileField.localized ? assetFileField.locales[locale] : assetFileField;
|
|
255
|
+
const localizedFileField = assetFileField.localized ? (_b = assetFileField.locales) === null || _b === void 0 ? void 0 : _b[locale] : assetFileField;
|
|
256
|
+
if (!localizedFileField) {
|
|
257
|
+
return null;
|
|
258
|
+
}
|
|
247
259
|
return {
|
|
248
260
|
objectId: asset.srcObjectId,
|
|
249
261
|
createdAt: asset.createdAt,
|
|
250
262
|
url: localizedFileField.url,
|
|
251
263
|
...(0, utils_1.omitByNil)({
|
|
252
|
-
title: localizedTitleField.value,
|
|
264
|
+
title: (_c = localizedTitleField === null || localizedTitleField === void 0 ? void 0 : localizedTitleField.value) !== null && _c !== void 0 ? _c : null,
|
|
253
265
|
fileName: localizedFileField.fileName,
|
|
254
266
|
contentType: localizedFileField.contentType,
|
|
255
267
|
size: localizedFileField.size,
|
|
256
|
-
width: (
|
|
257
|
-
height: (
|
|
268
|
+
width: (_d = localizedFileField.dimensions) === null || _d === void 0 ? void 0 : _d.width,
|
|
269
|
+
height: (_e = localizedFileField.dimensions) === null || _e === void 0 ? void 0 : _e.height
|
|
258
270
|
})
|
|
259
271
|
};
|
|
260
272
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store-to-api-docs-converter.js","sourceRoot":"","sources":["../../src/utils/store-to-api-docs-converter.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,2CAA4C;AAE5C,gEAAmE;AAEnE,SAAgB,iCAAiC,CAAC,SAAuC,EAAE,MAAe;IACtG,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,4BAA4B,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AACvF,CAAC;AAFD,8EAEC;AAED,SAAS,4BAA4B,CAAC,QAAoC,EAAE,MAAe;IACvF,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC;IAC3C,OAAO;QACH,IAAI,EAAE,QAAQ;QACd,GAAG,IAAI;QACP,MAAM,EAAE,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC;KAC/C,CAAC;AACN,CAAC;AAED,SAAS,oBAAoB,CAAC,SAA0D,EAAE,MAAe;IACrG,OAAO,gBAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAyC,EAAE,MAAe,EAAE,UAAU,GAAG,KAAK;;IAEvG,SAAS,YAAY,
|
|
1
|
+
{"version":3,"file":"store-to-api-docs-converter.js","sourceRoot":"","sources":["../../src/utils/store-to-api-docs-converter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stackbit/cms-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.12-locale.1",
|
|
4
4
|
"description": "stackbit-dev",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"@babel/parser": "^7.11.5",
|
|
30
30
|
"@babel/traverse": "^7.11.5",
|
|
31
31
|
"@iarna/toml": "^2.2.3",
|
|
32
|
-
"@stackbit/sdk": "^0.3.
|
|
33
|
-
"@stackbit/types": "^0.1.
|
|
32
|
+
"@stackbit/sdk": "^0.3.8-locale.1",
|
|
33
|
+
"@stackbit/types": "^0.1.6-locale.1",
|
|
34
34
|
"@stackbit/utils": "^0.2.11",
|
|
35
35
|
"chalk": "^4.0.1",
|
|
36
36
|
"esm": "^3.2.25",
|
|
@@ -45,5 +45,5 @@
|
|
|
45
45
|
"sanitize-filename": "^1.6.3",
|
|
46
46
|
"slugify": "^1.6.5"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "32c6266048418ba8b337b33f01a07d5673160249"
|
|
49
49
|
}
|
|
@@ -19,6 +19,7 @@ export interface Document {
|
|
|
19
19
|
createdBy?: string;
|
|
20
20
|
updatedAt: string;
|
|
21
21
|
updatedBy?: string[];
|
|
22
|
+
locale?: string;
|
|
22
23
|
fields: Record<string, DocumentField>;
|
|
23
24
|
}
|
|
24
25
|
|
|
@@ -39,6 +40,7 @@ export interface Asset {
|
|
|
39
40
|
createdBy?: string;
|
|
40
41
|
updatedAt: string;
|
|
41
42
|
updatedBy?: string[];
|
|
43
|
+
locale?: string;
|
|
42
44
|
fields: AssetFields;
|
|
43
45
|
}
|
|
44
46
|
|
|
@@ -177,7 +179,6 @@ export type DocumentFieldTypeNonLocalized<BaseFieldProps, LocalizedFieldProps> =
|
|
|
177
179
|
LocalizedFieldProps & {
|
|
178
180
|
label?: string;
|
|
179
181
|
localized?: false;
|
|
180
|
-
locale?: string;
|
|
181
182
|
}
|
|
182
183
|
>;
|
|
183
184
|
|
|
@@ -187,7 +188,7 @@ export type DocumentFieldTypeAPI<BaseFieldProps, LocalizedFieldProps> = BaseFiel
|
|
|
187
188
|
description?: string;
|
|
188
189
|
locale?: string;
|
|
189
190
|
localized?: boolean;
|
|
190
|
-
};
|
|
191
|
+
} & ({ localized?: false; } | { localized: true; locale: string; });
|
|
191
192
|
|
|
192
193
|
// any field that is not 'object' | 'model' | 'reference' | 'richText' | 'markdown' | 'list'
|
|
193
194
|
export type DocumentValueFieldType = Exclude<FieldType, 'object' | 'model' | 'reference' | 'markdown' | 'richText' | 'list' | 'image'>;
|
|
@@ -27,7 +27,7 @@ export function getDocumentFieldForLocale<Type extends ContentStoreTypes.FieldTy
|
|
|
27
27
|
return null;
|
|
28
28
|
}
|
|
29
29
|
const { localized, locales, ...base } = docField;
|
|
30
|
-
const localizedField = locales[locale];
|
|
30
|
+
const localizedField = locales?.[locale];
|
|
31
31
|
if (!localizedField) {
|
|
32
32
|
return null;
|
|
33
33
|
}
|