@stackbit/cms-sanity 0.2.44-staging.2 → 0.2.45-develop.2

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.
@@ -1,7 +1,7 @@
1
1
  import { SanityDocument } from '@sanity/client';
2
- import * as ContentSourceTypes from '@stackbit/types';
2
+ import * as StackbitTypes from '@stackbit/types';
3
3
  import { DocumentHistory, DocumentHistoryMap } from './sanity-api-client';
4
- import { ScheduledAction } from '@stackbit/types';
4
+ import { SchemaContext, ModelWithContext, ModelContext } from './sanity-schema-converter';
5
5
  export interface SanitySchedule {
6
6
  author: string;
7
7
  action: ScheduleAction;
@@ -27,10 +27,10 @@ export type DocumentContext = {
27
27
  draftDocument?: SanityDocument;
28
28
  };
29
29
  export type AssetContext = DocumentContext;
30
- export type ContextualDocument = ContentSourceTypes.Document<DocumentContext>;
31
- export type ContextualAsset = ContentSourceTypes.Asset<AssetContext>;
30
+ export type ContextualDocument = StackbitTypes.Document<DocumentContext>;
31
+ export type ContextualAsset = StackbitTypes.Asset<AssetContext>;
32
32
  export declare const DRAFT_ID_PREFIX = "drafts.";
33
- export type GetModelByName = ContentSourceTypes.Cache['getModelByName'];
33
+ export type GetModelByName = StackbitTypes.Cache<SchemaContext, DocumentContext, AssetContext, ModelContext>['getModelByName'];
34
34
  export type ConvertDocumentsOptions = {
35
35
  documents: SanityDocument[];
36
36
  getModelByName: GetModelByName;
@@ -40,9 +40,9 @@ export type ConvertDocumentsOptions = {
40
40
  export declare function getPureObjectId(objectId: string): string;
41
41
  export declare function getDraftObjectId(objectId: string): string;
42
42
  export declare function isDraftId(objectId: string): boolean | "";
43
- export declare function convertAndFilterScheduledActions(sanitySchedules: SanitySchedule[]): ContentSourceTypes.ScheduledAction[];
44
- export declare function convertScheduledAction(sanitySchedule: SanitySchedule): ContentSourceTypes.ScheduledAction;
45
- export declare function filterScheduledActions(scheduledActions: ScheduledAction[]): ContentSourceTypes.ScheduledAction[];
43
+ export declare function convertAndFilterScheduledActions(sanitySchedules: SanitySchedule[]): StackbitTypes.ScheduledAction[];
44
+ export declare function convertScheduledAction(sanitySchedule: SanitySchedule): StackbitTypes.ScheduledAction;
45
+ export declare function filterScheduledActions(scheduledActions: StackbitTypes.ScheduledAction[]): StackbitTypes.ScheduledAction[];
46
46
  export declare function convertDocuments({ documents, getModelByName, documentsHistory, studioUrl }: ConvertDocumentsOptions): ContextualDocument[];
47
47
  export type ConvertDocumentOptions = {
48
48
  publishedDocument?: SanityDocument;
@@ -58,7 +58,9 @@ export type ConvertAssetsOptions = {
58
58
  export declare function convertAssets({ assets, documentsHistory }: ConvertAssetsOptions): ContextualAsset[];
59
59
  export type ConvertFieldsOptions = {
60
60
  object: Record<string, any>;
61
- modelFields?: ContentSourceTypes.Field[];
61
+ modelFields?: StackbitTypes.Field[];
62
+ rootModel: ModelWithContext;
63
+ modelFieldPath: string[];
62
64
  getModelByName: GetModelByName;
63
65
  };
64
66
  //# sourceMappingURL=sanity-document-converter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sanity-document-converter.d.ts","sourceRoot":"","sources":["../src/sanity-document-converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sanity-document-converter.d.ts","sourceRoot":"","sources":["../src/sanity-document-converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG1F,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE;QACP,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;IACJ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,aAAa,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,WAAW,CAAC;AAErD,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG;IAC1B,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC,aAAa,CAAC,EAAE,cAAc,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC;AAE3C,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACzE,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe,YAAY,CAAC;AAEzC,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,gBAAgB,CAAC,CAAC;AAE/H,MAAM,MAAM,uBAAuB,GAAG;IAClC,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,UAE/C;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,UAEhD;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,gBAEzC;AAED,wBAAgB,gCAAgC,CAAC,eAAe,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC,eAAe,EAAE,CAGnH;AACD,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,cAAc,GAAG,aAAa,CAAC,eAAe,CAWpG;AAED,wBAAgB,sBAAsB,CAAC,gBAAgB,EAAE,aAAa,CAAC,eAAe,EAAE,mCAOvF;AAED,wBAAgB,gBAAgB,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,EAAE,uBAAuB,GAAG,kBAAkB,EAAE,CAsB1I;AAED,MAAM,MAAM,sBAAsB,GAAG;IACjC,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAuCF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,gBAAgB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,oBAAoB,GAAG,eAAe,EAAE,CAwCnG;AAED,MAAM,MAAM,oBAAoB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,WAAW,CAAC,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC;IACpC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;CAClC,CAAC"}
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.convertAssets = exports.convertDocuments = exports.filterScheduledActions = exports.convertScheduledAction = exports.convertAndFilterScheduledActions = exports.isDraftId = exports.getDraftObjectId = exports.getPureObjectId = exports.DRAFT_ID_PREFIX = void 0;
7
7
  const lodash_1 = __importDefault(require("lodash"));
8
+ const utils_1 = require("./utils");
8
9
  exports.DRAFT_ID_PREFIX = 'drafts.';
9
10
  function getPureObjectId(objectId) {
10
11
  return objectId.replace(/^drafts\./, '');
@@ -81,6 +82,8 @@ function convertDocument({ publishedDocument, draftDocument, getModelByName, doc
81
82
  fields: convertFields({
82
83
  object: document,
83
84
  modelFields: model.fields,
85
+ rootModel: model,
86
+ modelFieldPath: [],
84
87
  getModelByName
85
88
  }),
86
89
  context: {
@@ -125,7 +128,7 @@ function convertAssets({ assets, documentsHistory }) {
125
128
  });
126
129
  }
127
130
  exports.convertAssets = convertAssets;
128
- function convertFields({ object, modelFields, getModelByName }) {
131
+ function convertFields({ object, modelFields, rootModel, modelFieldPath, getModelByName }) {
129
132
  const fieldsByName = lodash_1.default.keyBy(modelFields, 'name');
130
133
  const result = {};
131
134
  for (const fieldName in fieldsByName) {
@@ -137,6 +140,8 @@ function convertFields({ object, modelFields, getModelByName }) {
137
140
  const field = convertFieldType({
138
141
  value,
139
142
  modelField,
143
+ rootModel,
144
+ modelFieldPath: modelFieldPath.concat(fieldName),
140
145
  getModelByName
141
146
  });
142
147
  if (field) {
@@ -145,7 +150,7 @@ function convertFields({ object, modelFields, getModelByName }) {
145
150
  }
146
151
  return result;
147
152
  }
148
- function convertFieldType({ value, modelField, getModelByName }) {
153
+ function convertFieldType({ value, modelField, rootModel, modelFieldPath, getModelByName }) {
149
154
  switch (modelField.type) {
150
155
  case 'string':
151
156
  case 'text':
@@ -158,151 +163,242 @@ function convertFieldType({ value, modelField, getModelByName }) {
158
163
  case 'enum':
159
164
  case 'json':
160
165
  case 'style':
161
- case 'cross-reference':
162
- case 'markdown':
163
- if (lodash_1.default.isUndefined(value)) {
164
- return null;
165
- }
166
- return {
167
- value,
168
- type: modelField.type
169
- };
170
- case 'list': {
171
- const itemsModel = modelField.items ?? { type: 'string' };
172
- let getListItemModel;
173
- if (lodash_1.default.isArray(itemsModel)) {
174
- // in Sanity, list items may have multiple types, in this case, 'items' will be an array
175
- getListItemModel = (listItem, fieldModel) => getItemTypeForListItem(listItem, fieldModel);
176
- }
177
- else {
178
- getListItemModel = () => itemsModel;
179
- }
180
- return {
181
- type: 'list',
182
- items: lodash_1.default.reduce(value, (accum, item) => {
183
- const itemModel = getListItemModel(item, modelField);
184
- if (!itemModel) {
185
- return accum;
166
+ case 'markdown': {
167
+ return createDocumentField({
168
+ fieldValue: value,
169
+ modelField: modelField,
170
+ documentFieldBaseProps: { type: modelField.type },
171
+ documentFieldSpecificProps: (value) => {
172
+ if (lodash_1.default.isUndefined(value)) {
173
+ return undefined;
186
174
  }
187
- const documentField = convertFieldType({
188
- value: item,
189
- modelField: itemModel,
190
- getModelByName
191
- });
192
- if (!documentField) {
193
- return accum;
175
+ return { value };
176
+ }
177
+ });
178
+ }
179
+ case 'cross-reference': {
180
+ return undefined;
181
+ }
182
+ case 'list': {
183
+ return createDocumentField({
184
+ fieldValue: value,
185
+ modelField: modelField,
186
+ documentFieldBaseProps: { type: 'list' },
187
+ documentFieldSpecificProps: (value) => {
188
+ return {
189
+ items: lodash_1.default.reduce(value, (accum, item) => {
190
+ const itemModel = (0, utils_1.getItemTypeForListItem)(item, modelField);
191
+ if (!itemModel) {
192
+ return accum;
193
+ }
194
+ const documentField = convertFieldType({
195
+ value: item,
196
+ modelField: itemModel,
197
+ rootModel,
198
+ modelFieldPath: modelFieldPath.concat('items'),
199
+ getModelByName
200
+ });
201
+ if (!documentField) {
202
+ return accum;
203
+ }
204
+ return accum.concat(documentField);
205
+ }, [])
206
+ };
207
+ }
208
+ });
209
+ }
210
+ case 'object': {
211
+ return createDocumentField({
212
+ fieldValue: value,
213
+ modelField: modelField,
214
+ documentFieldBaseProps: { type: 'object' },
215
+ documentFieldSpecificProps: (value) => {
216
+ if (!value) {
217
+ return undefined;
194
218
  }
195
- return accum.concat(documentField);
196
- }, [])
197
- };
219
+ return {
220
+ fields: convertFields({
221
+ object: value,
222
+ modelFields: modelField.fields,
223
+ rootModel,
224
+ modelFieldPath,
225
+ getModelByName
226
+ })
227
+ };
228
+ }
229
+ });
198
230
  }
199
- case 'object':
200
- if (!value) {
201
- return null;
202
- }
203
- return {
204
- type: 'object',
205
- fields: convertFields({ object: value, modelFields: modelField.fields, getModelByName })
206
- };
207
231
  case 'model': {
208
- if (!value) {
209
- return null;
210
- }
211
- const model = getModelByName(value._type);
212
- if (!model) {
213
- return null;
214
- }
215
- return {
216
- type: 'model',
217
- modelName: model.name,
218
- fields: convertFields({
219
- object: value,
220
- modelFields: model.fields,
221
- getModelByName
222
- })
223
- };
232
+ return createDocumentField({
233
+ fieldValue: value,
234
+ modelField: modelField,
235
+ documentFieldBaseProps: { type: 'model' },
236
+ documentFieldSpecificProps: (value) => {
237
+ if (!value) {
238
+ return undefined;
239
+ }
240
+ const modelName = (0, utils_1.resolvedFieldType)({ sanityFieldType: value._type, model: rootModel, modelFieldPath });
241
+ const model = getModelByName(modelName);
242
+ if (!model) {
243
+ return undefined;
244
+ }
245
+ return {
246
+ modelName: model.name,
247
+ fields: convertFields({
248
+ object: value,
249
+ modelFields: model.fields,
250
+ rootModel: model,
251
+ modelFieldPath: [],
252
+ getModelByName
253
+ })
254
+ };
255
+ }
256
+ });
224
257
  }
225
258
  case 'reference': {
226
- if (!value) {
227
- return null;
228
- }
229
- let refId = lodash_1.default.get(value, '_ref', null);
230
- if (refId) {
231
- refId = refId.replace(/^drafts\./, '');
232
- }
233
- return {
234
- type: 'reference',
235
- refType: 'document',
236
- refId
237
- };
259
+ return createDocumentField({
260
+ fieldValue: value,
261
+ modelField: modelField,
262
+ documentFieldBaseProps: {
263
+ type: 'reference',
264
+ refType: 'document'
265
+ },
266
+ documentFieldSpecificProps: (value) => {
267
+ if (!value) {
268
+ return undefined;
269
+ }
270
+ let refId = lodash_1.default.get(value, '_ref', null);
271
+ if (refId) {
272
+ refId = refId.replace(/^drafts\./, '');
273
+ }
274
+ return {
275
+ refId
276
+ };
277
+ }
278
+ });
238
279
  }
239
- case 'color':
240
- if (!value) {
241
- return null;
242
- }
243
- return {
244
- type: 'color',
245
- value: lodash_1.default.get(value, 'hex')
246
- };
247
- case 'richText':
248
- if (!value) {
249
- return null;
250
- }
251
- return {
252
- value: null,
253
- type: 'richText',
254
- hint: flattenRichText(value).substring(0, 200)
255
- };
256
- case 'image':
257
- if (!value) {
258
- return null;
259
- }
260
- if (modelField.source === 'cloudinary' || modelField.source === 'aprimo') {
261
- return {
262
- type: 'image',
263
- source: modelField.source,
264
- sourceData: value
265
- };
266
- }
267
- if (modelField.source === 'bynder') {
268
- return {
269
- type: 'image',
270
- source: modelField.source,
271
- sourceData: value,
272
- fields: {
273
- title: {
274
- type: 'string',
275
- value: value?.name
276
- },
277
- url: {
278
- type: 'string',
279
- value: value?.previewImg
280
+ case 'color': {
281
+ return createDocumentField({
282
+ fieldValue: value,
283
+ modelField: modelField,
284
+ documentFieldBaseProps: { type: 'color' },
285
+ documentFieldSpecificProps: (value) => {
286
+ if (!value) {
287
+ return undefined;
288
+ }
289
+ return {
290
+ value: lodash_1.default.get(value, 'hex')
291
+ };
292
+ }
293
+ });
294
+ }
295
+ case 'richText': {
296
+ return createDocumentField({
297
+ fieldValue: value,
298
+ modelField: modelField,
299
+ documentFieldBaseProps: { type: 'richText' },
300
+ documentFieldSpecificProps: (value) => {
301
+ if (!value) {
302
+ return undefined;
303
+ }
304
+ return {
305
+ value: value,
306
+ hint: flattenRichText(value).substring(0, 200)
307
+ };
308
+ }
309
+ });
310
+ }
311
+ case 'image': {
312
+ if (modelField.source && ['cloudinary', 'aprimo', 'bynder'].includes(modelField.source)) {
313
+ return createDocumentField({
314
+ fieldValue: value,
315
+ modelField: modelField,
316
+ documentFieldBaseProps: {
317
+ type: 'image',
318
+ source: modelField.source
319
+ },
320
+ documentFieldSpecificProps: (value) => {
321
+ if (!value) {
322
+ return undefined;
280
323
  }
324
+ return {
325
+ sourceData: value,
326
+ ...(modelField.source === 'bynder'
327
+ ? {
328
+ fields: {
329
+ title: {
330
+ type: 'string',
331
+ value: value?.name
332
+ },
333
+ url: {
334
+ type: 'string',
335
+ value: value?.previewImg
336
+ }
337
+ }
338
+ }
339
+ : null)
340
+ };
281
341
  }
282
- };
283
- }
284
- return {
285
- type: 'reference',
286
- refId: lodash_1.default.get(value, 'asset._ref'),
287
- refType: 'asset'
288
- };
289
- case 'file':
290
- if (!value) {
291
- return null;
342
+ });
292
343
  }
293
- return {
294
- type: 'reference',
295
- refId: lodash_1.default.get(value, 'asset._ref'),
296
- refType: 'asset'
297
- };
298
- case 'slug':
299
- if (!value) {
300
- return null;
301
- }
302
- return {
303
- type: 'slug',
304
- value: lodash_1.default.get(value, 'current')
305
- };
344
+ return createDocumentField({
345
+ fieldValue: value,
346
+ // The modelField.type and documentField.type should match.
347
+ // However, in the case of the modelField.type === 'image',
348
+ // it is OK to have the documentField.type === 'reference'
349
+ // and documentField.type === 'asset.
350
+ modelField: modelField,
351
+ documentFieldBaseProps: {
352
+ type: 'reference',
353
+ refType: 'asset'
354
+ },
355
+ documentFieldSpecificProps: (value) => {
356
+ if (!value) {
357
+ return undefined;
358
+ }
359
+ return {
360
+ refId: lodash_1.default.get(value, 'asset._ref')
361
+ };
362
+ }
363
+ });
364
+ }
365
+ case 'file': {
366
+ return createDocumentField({
367
+ fieldValue: value,
368
+ // The modelField.type and documentField.type should match.
369
+ // However, in the case of the modelField.type === 'file',
370
+ // it is OK to have the documentField.type === 'reference'
371
+ // and documentField.type === 'asset.
372
+ modelField: modelField,
373
+ documentFieldBaseProps: {
374
+ type: 'reference',
375
+ refType: 'asset'
376
+ },
377
+ documentFieldSpecificProps: (value) => {
378
+ if (!value) {
379
+ return undefined;
380
+ }
381
+ return {
382
+ refId: lodash_1.default.get(value, 'asset._ref')
383
+ };
384
+ }
385
+ });
386
+ }
387
+ case 'slug': {
388
+ return createDocumentField({
389
+ fieldValue: value,
390
+ modelField: modelField,
391
+ documentFieldBaseProps: { type: 'slug' },
392
+ documentFieldSpecificProps: (value) => {
393
+ if (!value) {
394
+ return undefined;
395
+ }
396
+ return {
397
+ value: lodash_1.default.get(value, 'current')
398
+ };
399
+ }
400
+ });
401
+ }
306
402
  default: {
307
403
  const _exhaustiveCheck = modelField;
308
404
  return _exhaustiveCheck;
@@ -331,77 +427,38 @@ function commonFields({ draftDocument, publishedDocument, documentHistory }) {
331
427
  updatedBy: lodash_1.default.uniq(updatedByList)
332
428
  };
333
429
  }
334
- /**
335
- * Sanity 'Array' field type can hold multiple field types.
336
- *
337
- * For example, Sanity Arrays can simultaneously include items of `model`
338
- * and `reference` types. https://www.sanity.io/docs/array-type#wT47gyCx
339
- *
340
- * With that, Sanity Arrays cannot include both primitive and complex types:
341
- * https://www.sanity.io/docs/array-type#fNBIr84P
342
- *
343
- * TODO:
344
- * This is not yet supported by Stackbit's TypeScript types, so the `any`
345
- * must be used. Additionally, if a Sanity array has multiple types of items one
346
- * of which is the 'object' type, then it will also have the 'name' property to
347
- * allow matching 'object' items to their types. The 'name' property is not
348
- * supported in Stackbit list items, so '@ts-ignore' is used.
349
- *
350
- * However, Stackbit client app should be able to render this types of lists correctly.
351
- *
352
- * @example A list that can include items of type 'model', 'reference' and 'object'.
353
- * {
354
- * type: 'list',
355
- * items: [{
356
- * type: 'model',
357
- * models: [...]
358
- * }, {
359
- * type: 'reference',
360
- * models: [...]
361
- * }, {
362
- * type: 'object',
363
- * name: 'nested_object_name',
364
- * fields: {...}
365
- * }]
366
- * }
367
- */
368
- function getItemTypeForListItem(listItem, fieldModel) {
369
- // Handle primitive list item types
370
- // For primitive list items, the list will hold the primitive values as is,
371
- // therefore, use JavaScript's `typeof` to infer the type of the values
372
- const type = lodash_1.default.get(listItem, '_type');
373
- if (!type) {
374
- const type = typeof listItem;
375
- if (typeIsPrimitive(type)) {
376
- return { type: type };
430
+ function createDocumentField({ fieldValue, modelField, documentFieldBaseProps, documentFieldSpecificProps }) {
431
+ if ((0, utils_1.isLocalizedModelField)(modelField)) {
432
+ if (!Array.isArray(fieldValue)) {
433
+ return undefined;
377
434
  }
378
- return null;
379
- }
380
- const itemModels = fieldModel.items;
381
- if (type === 'reference') {
382
- return lodash_1.default.find(itemModels, { type: 'reference' }) ?? null;
383
- }
384
- else if (type === 'block') {
385
- return lodash_1.default.find(itemModels, { type: 'richText' }) ?? null;
435
+ return {
436
+ ...documentFieldBaseProps,
437
+ localized: true,
438
+ locales: lodash_1.default.reduce(fieldValue, (accum, localizedItem) => {
439
+ if (localizedItem === null || typeof localizedItem === 'undefined') {
440
+ return accum;
441
+ }
442
+ const fieldSpecificProps = documentFieldSpecificProps(localizedItem.value);
443
+ if (!fieldSpecificProps) {
444
+ return accum;
445
+ }
446
+ accum[localizedItem._key] = {
447
+ locale: localizedItem._key,
448
+ ...fieldSpecificProps
449
+ };
450
+ return accum;
451
+ }, {})
452
+ };
386
453
  }
387
- else {
388
- return (lodash_1.default.find(itemModels, (itemModel) => {
389
- if (itemModel.type === 'model') {
390
- return lodash_1.default.includes(itemModel.models, type);
391
- }
392
- else {
393
- // if field was one of base types (object, image, slug, etc.)
394
- // and it had a "name" property, then the "_type" will be equal to that name,
395
- // otherwise the "_type" will be equal to the base type
396
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
397
- // @ts-ignore
398
- return itemModel.name === type || itemModel.type === type;
399
- }
400
- }) ?? null);
454
+ const fieldSpecificProps = documentFieldSpecificProps(fieldValue);
455
+ if (!fieldSpecificProps) {
456
+ return undefined;
401
457
  }
402
- }
403
- function typeIsPrimitive(type) {
404
- return ['string', 'number', 'boolean'].includes(type);
458
+ return {
459
+ ...documentFieldBaseProps,
460
+ ...fieldSpecificProps
461
+ };
405
462
  }
406
463
  function flattenRichText(richTextArray) {
407
464
  return lodash_1.default.reduce(richTextArray, (accum, node) => {
@@ -1 +1 @@
1
- {"version":3,"file":"sanity-document-converter.js","sourceRoot":"","sources":["../src/sanity-document-converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sanity-document-converter.js","sourceRoot":"","sources":["../src/sanity-document-converter.ts"],"names":[],"mappings":"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"}