@payloadcms/live-preview 0.1.5 → 0.1.6

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,5 +1,6 @@
1
1
  export declare const handleMessage: <T>(args: {
2
- depth: number;
2
+ apiRoute?: string;
3
+ depth?: number;
3
4
  event: MessageEvent;
4
5
  initialData: T;
5
6
  serverURL: string;
@@ -1 +1 @@
1
- {"version":3,"file":"handleMessage.d.ts","sourceRoot":"","sources":["../src/handleMessage.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa;WACjB,MAAM;WACN,YAAY;;eAER,MAAM;gBAwBlB,CAAA"}
1
+ {"version":3,"file":"handleMessage.d.ts","sourceRoot":"","sources":["../src/handleMessage.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa;eACb,MAAM;YACT,MAAM;WACP,YAAY;;eAER,MAAM;gBAmClB,CAAA"}
@@ -16,14 +16,20 @@ const _ = require(".");
16
16
  let payloadLivePreviewFieldSchema = undefined // TODO: type this from `fieldSchemaToJSON` return type
17
17
  ;
18
18
  const handleMessage = async (args)=>{
19
- const { depth, event, initialData, serverURL } = args;
19
+ const { apiRoute, depth, event, initialData, serverURL } = args;
20
20
  if (event.origin === serverURL && event.data) {
21
21
  const eventData = JSON.parse(event?.data);
22
22
  if (eventData.type === 'payload-live-preview') {
23
23
  if (!payloadLivePreviewFieldSchema && eventData.fieldSchemaJSON) {
24
24
  payloadLivePreviewFieldSchema = eventData.fieldSchemaJSON;
25
25
  }
26
+ if (!payloadLivePreviewFieldSchema) {
27
+ // eslint-disable-next-line no-console
28
+ console.warn('Payload Live Preview: No `fieldSchemaJSON` was received from the parent window. Unable to merge data.');
29
+ return initialData;
30
+ }
26
31
  const mergedData = await (0, _.mergeData)({
32
+ apiRoute,
27
33
  depth,
28
34
  fieldSchema: payloadLivePreviewFieldSchema,
29
35
  incomingData: eventData.data,
@@ -36,4 +42,4 @@ const handleMessage = async (args)=>{
36
42
  return initialData;
37
43
  };
38
44
 
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9oYW5kbGVNZXNzYWdlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1lcmdlRGF0YSB9IGZyb20gJy4nXG5cbi8vIEZvciBwZXJmb3JtYW5jZSByZWFzb25zLCBgZmllbGRTY2hlbWFKU09OYCB3aWxsIG9ubHkgYmUgc2VudCBvbmNlIG9uIHRoZSBpbml0aWFsIG1lc3NhZ2Vcbi8vIFdlIG5lZWQgdG8gY2FjaGUgdGhpcyB2YWx1ZSBzbyB0aGF0IGl0IGNhbiBiZSB1c2VkIGFjcm9zcyBzdWJzZXF1ZW50IG1lc3NhZ2VzXG4vLyBUbyBkbyB0aGlzLCBzYXZlIGBmaWVsZFNjaGVtYUpTT05gIHdoZW4gaXQgYXJyaXZlcyBhcyBhIGdsb2JhbCB2YXJpYWJsZVxuLy8gU2VuZCB0aGlzIGNhY2hlZCB2YWx1ZSB0byBgbWVyZ2VEYXRhYCwgaW5zdGVhZCBvZiBgZXZlbnREYXRhLmZpZWxkU2NoZW1hSlNPTmAgZGlyZWN0bHlcbmxldCBwYXlsb2FkTGl2ZVByZXZpZXdGaWVsZFNjaGVtYSA9IHVuZGVmaW5lZCAvLyBUT0RPOiB0eXBlIHRoaXMgZnJvbSBgZmllbGRTY2hlbWFUb0pTT05gIHJldHVybiB0eXBlXG5cbmV4cG9ydCBjb25zdCBoYW5kbGVNZXNzYWdlID0gYXN5bmMgPFQ+KGFyZ3M6IHtcbiAgZGVwdGg6IG51bWJlclxuICBldmVudDogTWVzc2FnZUV2ZW50XG4gIGluaXRpYWxEYXRhOiBUXG4gIHNlcnZlclVSTDogc3RyaW5nXG59KTogUHJvbWlzZTxUPiA9PiB7XG4gIGNvbnN0IHsgZGVwdGgsIGV2ZW50LCBpbml0aWFsRGF0YSwgc2VydmVyVVJMIH0gPSBhcmdzXG4gIGlmIChldmVudC5vcmlnaW4gPT09IHNlcnZlclVSTCAmJiBldmVudC5kYXRhKSB7XG4gICAgY29uc3QgZXZlbnREYXRhID0gSlNPTi5wYXJzZShldmVudD8uZGF0YSlcblxuICAgIGlmIChldmVudERhdGEudHlwZSA9PT0gJ3BheWxvYWQtbGl2ZS1wcmV2aWV3Jykge1xuICAgICAgaWYgKCFwYXlsb2FkTGl2ZVByZXZpZXdGaWVsZFNjaGVtYSAmJiBldmVudERhdGEuZmllbGRTY2hlbWFKU09OKSB7XG4gICAgICAgIHBheWxvYWRMaXZlUHJldmlld0ZpZWxkU2NoZW1hID0gZXZlbnREYXRhLmZpZWxkU2NoZW1hSlNPTlxuICAgICAgfVxuXG4gICAgICBjb25zdCBtZXJnZWREYXRhID0gYXdhaXQgbWVyZ2VEYXRhPFQ+KHtcbiAgICAgICAgZGVwdGgsXG4gICAgICAgIGZpZWxkU2NoZW1hOiBwYXlsb2FkTGl2ZVByZXZpZXdGaWVsZFNjaGVtYSxcbiAgICAgICAgaW5jb21pbmdEYXRhOiBldmVudERhdGEuZGF0YSxcbiAgICAgICAgaW5pdGlhbERhdGEsXG4gICAgICAgIHNlcnZlclVSTCxcbiAgICAgIH0pXG5cbiAgICAgIHJldHVybiBtZXJnZWREYXRhXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGluaXRpYWxEYXRhXG59XG4iXSwibmFtZXMiOlsiaGFuZGxlTWVzc2FnZSIsInBheWxvYWRMaXZlUHJldmlld0ZpZWxkU2NoZW1hIiwidW5kZWZpbmVkIiwiYXJncyIsImRlcHRoIiwiZXZlbnQiLCJpbml0aWFsRGF0YSIsInNlcnZlclVSTCIsIm9yaWdpbiIsImRhdGEiLCJldmVudERhdGEiLCJKU09OIiwicGFyc2UiLCJ0eXBlIiwiZmllbGRTY2hlbWFKU09OIiwibWVyZ2VkRGF0YSIsIm1lcmdlRGF0YSIsImZpZWxkU2NoZW1hIiwiaW5jb21pbmdEYXRhIl0sIm1hcHBpbmdzIjoiOzs7OytCQVFhQTs7O2VBQUFBOzs7a0JBUmE7QUFFMUIsMkZBQTJGO0FBQzNGLGdGQUFnRjtBQUNoRiwwRUFBMEU7QUFDMUUseUZBQXlGO0FBQ3pGLElBQUlDLGdDQUFnQ0MsVUFBVSx1REFBdUQ7O0FBRTlGLE1BQU1GLGdCQUFnQixPQUFVRztJQU1yQyxNQUFNLEVBQUVDLEtBQUssRUFBRUMsS0FBSyxFQUFFQyxXQUFXLEVBQUVDLFNBQVMsRUFBRSxHQUFHSjtJQUNqRCxJQUFJRSxNQUFNRyxNQUFNLEtBQUtELGFBQWFGLE1BQU1JLElBQUksRUFBRTtRQUM1QyxNQUFNQyxZQUFZQyxLQUFLQyxLQUFLLENBQUNQLE9BQU9JO1FBRXBDLElBQUlDLFVBQVVHLElBQUksS0FBSyx3QkFBd0I7WUFDN0MsSUFBSSxDQUFDWixpQ0FBaUNTLFVBQVVJLGVBQWUsRUFBRTtnQkFDL0RiLGdDQUFnQ1MsVUFBVUksZUFBZTtZQUMzRDtZQUVBLE1BQU1DLGFBQWEsTUFBTUMsSUFBQUEsV0FBUyxFQUFJO2dCQUNwQ1o7Z0JBQ0FhLGFBQWFoQjtnQkFDYmlCLGNBQWNSLFVBQVVELElBQUk7Z0JBQzVCSDtnQkFDQUM7WUFDRjtZQUVBLE9BQU9RO1FBQ1Q7SUFDRjtJQUVBLE9BQU9UO0FBQ1QifQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9oYW5kbGVNZXNzYWdlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1lcmdlRGF0YSB9IGZyb20gJy4nXG5cbi8vIEZvciBwZXJmb3JtYW5jZSByZWFzb25zLCBgZmllbGRTY2hlbWFKU09OYCB3aWxsIG9ubHkgYmUgc2VudCBvbmNlIG9uIHRoZSBpbml0aWFsIG1lc3NhZ2Vcbi8vIFdlIG5lZWQgdG8gY2FjaGUgdGhpcyB2YWx1ZSBzbyB0aGF0IGl0IGNhbiBiZSB1c2VkIGFjcm9zcyBzdWJzZXF1ZW50IG1lc3NhZ2VzXG4vLyBUbyBkbyB0aGlzLCBzYXZlIGBmaWVsZFNjaGVtYUpTT05gIHdoZW4gaXQgYXJyaXZlcyBhcyBhIGdsb2JhbCB2YXJpYWJsZVxuLy8gU2VuZCB0aGlzIGNhY2hlZCB2YWx1ZSB0byBgbWVyZ2VEYXRhYCwgaW5zdGVhZCBvZiBgZXZlbnREYXRhLmZpZWxkU2NoZW1hSlNPTmAgZGlyZWN0bHlcbmxldCBwYXlsb2FkTGl2ZVByZXZpZXdGaWVsZFNjaGVtYSA9IHVuZGVmaW5lZCAvLyBUT0RPOiB0eXBlIHRoaXMgZnJvbSBgZmllbGRTY2hlbWFUb0pTT05gIHJldHVybiB0eXBlXG5cbmV4cG9ydCBjb25zdCBoYW5kbGVNZXNzYWdlID0gYXN5bmMgPFQ+KGFyZ3M6IHtcbiAgYXBpUm91dGU/OiBzdHJpbmdcbiAgZGVwdGg/OiBudW1iZXJcbiAgZXZlbnQ6IE1lc3NhZ2VFdmVudFxuICBpbml0aWFsRGF0YTogVFxuICBzZXJ2ZXJVUkw6IHN0cmluZ1xufSk6IFByb21pc2U8VD4gPT4ge1xuICBjb25zdCB7IGFwaVJvdXRlLCBkZXB0aCwgZXZlbnQsIGluaXRpYWxEYXRhLCBzZXJ2ZXJVUkwgfSA9IGFyZ3NcblxuICBpZiAoZXZlbnQub3JpZ2luID09PSBzZXJ2ZXJVUkwgJiYgZXZlbnQuZGF0YSkge1xuICAgIGNvbnN0IGV2ZW50RGF0YSA9IEpTT04ucGFyc2UoZXZlbnQ/LmRhdGEpXG5cbiAgICBpZiAoZXZlbnREYXRhLnR5cGUgPT09ICdwYXlsb2FkLWxpdmUtcHJldmlldycpIHtcbiAgICAgIGlmICghcGF5bG9hZExpdmVQcmV2aWV3RmllbGRTY2hlbWEgJiYgZXZlbnREYXRhLmZpZWxkU2NoZW1hSlNPTikge1xuICAgICAgICBwYXlsb2FkTGl2ZVByZXZpZXdGaWVsZFNjaGVtYSA9IGV2ZW50RGF0YS5maWVsZFNjaGVtYUpTT05cbiAgICAgIH1cblxuICAgICAgaWYgKCFwYXlsb2FkTGl2ZVByZXZpZXdGaWVsZFNjaGVtYSkge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgJ1BheWxvYWQgTGl2ZSBQcmV2aWV3OiBObyBgZmllbGRTY2hlbWFKU09OYCB3YXMgcmVjZWl2ZWQgZnJvbSB0aGUgcGFyZW50IHdpbmRvdy4gVW5hYmxlIHRvIG1lcmdlIGRhdGEuJyxcbiAgICAgICAgKVxuXG4gICAgICAgIHJldHVybiBpbml0aWFsRGF0YVxuICAgICAgfVxuXG4gICAgICBjb25zdCBtZXJnZWREYXRhID0gYXdhaXQgbWVyZ2VEYXRhPFQ+KHtcbiAgICAgICAgYXBpUm91dGUsXG4gICAgICAgIGRlcHRoLFxuICAgICAgICBmaWVsZFNjaGVtYTogcGF5bG9hZExpdmVQcmV2aWV3RmllbGRTY2hlbWEsXG4gICAgICAgIGluY29taW5nRGF0YTogZXZlbnREYXRhLmRhdGEsXG4gICAgICAgIGluaXRpYWxEYXRhLFxuICAgICAgICBzZXJ2ZXJVUkwsXG4gICAgICB9KVxuXG4gICAgICByZXR1cm4gbWVyZ2VkRGF0YVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBpbml0aWFsRGF0YVxufVxuIl0sIm5hbWVzIjpbImhhbmRsZU1lc3NhZ2UiLCJwYXlsb2FkTGl2ZVByZXZpZXdGaWVsZFNjaGVtYSIsInVuZGVmaW5lZCIsImFyZ3MiLCJhcGlSb3V0ZSIsImRlcHRoIiwiZXZlbnQiLCJpbml0aWFsRGF0YSIsInNlcnZlclVSTCIsIm9yaWdpbiIsImRhdGEiLCJldmVudERhdGEiLCJKU09OIiwicGFyc2UiLCJ0eXBlIiwiZmllbGRTY2hlbWFKU09OIiwiY29uc29sZSIsIndhcm4iLCJtZXJnZWREYXRhIiwibWVyZ2VEYXRhIiwiZmllbGRTY2hlbWEiLCJpbmNvbWluZ0RhdGEiXSwibWFwcGluZ3MiOiI7Ozs7K0JBUWFBOzs7ZUFBQUE7OztrQkFSYTtBQUUxQiwyRkFBMkY7QUFDM0YsZ0ZBQWdGO0FBQ2hGLDBFQUEwRTtBQUMxRSx5RkFBeUY7QUFDekYsSUFBSUMsZ0NBQWdDQyxVQUFVLHVEQUF1RDs7QUFFOUYsTUFBTUYsZ0JBQWdCLE9BQVVHO0lBT3JDLE1BQU0sRUFBRUMsUUFBUSxFQUFFQyxLQUFLLEVBQUVDLEtBQUssRUFBRUMsV0FBVyxFQUFFQyxTQUFTLEVBQUUsR0FBR0w7SUFFM0QsSUFBSUcsTUFBTUcsTUFBTSxLQUFLRCxhQUFhRixNQUFNSSxJQUFJLEVBQUU7UUFDNUMsTUFBTUMsWUFBWUMsS0FBS0MsS0FBSyxDQUFDUCxPQUFPSTtRQUVwQyxJQUFJQyxVQUFVRyxJQUFJLEtBQUssd0JBQXdCO1lBQzdDLElBQUksQ0FBQ2IsaUNBQWlDVSxVQUFVSSxlQUFlLEVBQUU7Z0JBQy9EZCxnQ0FBZ0NVLFVBQVVJLGVBQWU7WUFDM0Q7WUFFQSxJQUFJLENBQUNkLCtCQUErQjtnQkFDbEMsc0NBQXNDO2dCQUN0Q2UsUUFBUUMsSUFBSSxDQUNWO2dCQUdGLE9BQU9WO1lBQ1Q7WUFFQSxNQUFNVyxhQUFhLE1BQU1DLElBQUFBLFdBQVMsRUFBSTtnQkFDcENmO2dCQUNBQztnQkFDQWUsYUFBYW5CO2dCQUNib0IsY0FBY1YsVUFBVUQsSUFBSTtnQkFDNUJIO2dCQUNBQztZQUNGO1lBRUEsT0FBT1U7UUFDVDtJQUNGO0lBRUEsT0FBT1g7QUFDVCJ9
@@ -1,11 +1,13 @@
1
1
  import type { fieldSchemaToJSON } from 'payload/utilities';
2
- export type MergeLiveDataArgs<T> = {
2
+ export declare const mergeData: <T>(args: {
3
3
  apiRoute?: string;
4
- depth: number;
4
+ depth?: number;
5
5
  fieldSchema: ReturnType<typeof fieldSchemaToJSON>;
6
6
  incomingData: Partial<T>;
7
7
  initialData: T;
8
+ returnNumberOfRequests?: boolean;
8
9
  serverURL: string;
9
- };
10
- export declare const mergeData: <T>({ apiRoute, depth, fieldSchema, incomingData, initialData, serverURL, }: MergeLiveDataArgs<T>) => Promise<T>;
10
+ }) => Promise<T & {
11
+ _numberOfRequests?: number;
12
+ }>;
11
13
  //# sourceMappingURL=mergeData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeData.d.ts","sourceRoot":"","sources":["../src/mergeData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAI1D,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;IACjD,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IACxB,WAAW,EAAE,CAAC,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,SAAS,kHAyBrB,CAAA"}
1
+ {"version":3,"file":"mergeData.d.ts","sourceRoot":"","sources":["../src/mergeData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAI1D,eAAO,MAAM,SAAS;eACT,MAAM;YACT,MAAM;iBACD,WAAW,wBAAwB,CAAC;;;6BAGxB,OAAO;eACrB,MAAM;;wBAGK,MAAM;EAiC7B,CAAA"}
package/dist/mergeData.js CHANGED
@@ -9,7 +9,8 @@ Object.defineProperty(exports, "mergeData", {
9
9
  }
10
10
  });
11
11
  const _traverseFields = require("./traverseFields");
12
- const mergeData = async ({ apiRoute, depth, fieldSchema, incomingData, initialData, serverURL })=>{
12
+ const mergeData = async (args)=>{
13
+ const { apiRoute, depth, fieldSchema, incomingData, initialData, returnNumberOfRequests, serverURL } = args;
13
14
  const result = {
14
15
  ...initialData
15
16
  };
@@ -24,7 +25,12 @@ const mergeData = async ({ apiRoute, depth, fieldSchema, incomingData, initialDa
24
25
  serverURL
25
26
  });
26
27
  await Promise.all(populationPromises);
27
- return result;
28
+ return {
29
+ ...result,
30
+ ...returnNumberOfRequests ? {
31
+ _numberOfRequests: populationPromises.length
32
+ } : {}
33
+ };
28
34
  };
29
35
 
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXJnZURhdGEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBmaWVsZFNjaGVtYVRvSlNPTiB9IGZyb20gJ3BheWxvYWQvdXRpbGl0aWVzJ1xuXG5pbXBvcnQgeyB0cmF2ZXJzZUZpZWxkcyB9IGZyb20gJy4vdHJhdmVyc2VGaWVsZHMnXG5cbmV4cG9ydCB0eXBlIE1lcmdlTGl2ZURhdGFBcmdzPFQ+ID0ge1xuICBhcGlSb3V0ZT86IHN0cmluZ1xuICBkZXB0aDogbnVtYmVyXG4gIGZpZWxkU2NoZW1hOiBSZXR1cm5UeXBlPHR5cGVvZiBmaWVsZFNjaGVtYVRvSlNPTj5cbiAgaW5jb21pbmdEYXRhOiBQYXJ0aWFsPFQ+XG4gIGluaXRpYWxEYXRhOiBUXG4gIHNlcnZlclVSTDogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCBtZXJnZURhdGEgPSBhc3luYyA8VD4oe1xuICBhcGlSb3V0ZSxcbiAgZGVwdGgsXG4gIGZpZWxkU2NoZW1hLFxuICBpbmNvbWluZ0RhdGEsXG4gIGluaXRpYWxEYXRhLFxuICBzZXJ2ZXJVUkwsXG59OiBNZXJnZUxpdmVEYXRhQXJnczxUPik6IFByb21pc2U8VD4gPT4ge1xuICBjb25zdCByZXN1bHQgPSB7IC4uLmluaXRpYWxEYXRhIH1cblxuICBjb25zdCBwb3B1bGF0aW9uUHJvbWlzZXM6IFByb21pc2U8dm9pZD5bXSA9IFtdXG5cbiAgdHJhdmVyc2VGaWVsZHMoe1xuICAgIGFwaVJvdXRlLFxuICAgIGRlcHRoLFxuICAgIGZpZWxkU2NoZW1hLFxuICAgIGluY29taW5nRGF0YSxcbiAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgcmVzdWx0LFxuICAgIHNlcnZlclVSTCxcbiAgfSlcblxuICBhd2FpdCBQcm9taXNlLmFsbChwb3B1bGF0aW9uUHJvbWlzZXMpXG5cbiAgcmV0dXJuIHJlc3VsdFxufVxuIl0sIm5hbWVzIjpbIm1lcmdlRGF0YSIsImFwaVJvdXRlIiwiZGVwdGgiLCJmaWVsZFNjaGVtYSIsImluY29taW5nRGF0YSIsImluaXRpYWxEYXRhIiwic2VydmVyVVJMIiwicmVzdWx0IiwicG9wdWxhdGlvblByb21pc2VzIiwidHJhdmVyc2VGaWVsZHMiLCJQcm9taXNlIiwiYWxsIl0sIm1hcHBpbmdzIjoiOzs7OytCQWFhQTs7O2VBQUFBOzs7Z0NBWGtCO0FBV3hCLE1BQU1BLFlBQVksT0FBVSxFQUNqQ0MsUUFBUSxFQUNSQyxLQUFLLEVBQ0xDLFdBQVcsRUFDWEMsWUFBWSxFQUNaQyxXQUFXLEVBQ1hDLFNBQVMsRUFDWTtJQUNyQixNQUFNQyxTQUFTO1FBQUUsR0FBR0YsV0FBVztJQUFDO0lBRWhDLE1BQU1HLHFCQUFzQyxFQUFFO0lBRTlDQyxJQUFBQSw4QkFBYyxFQUFDO1FBQ2JSO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FJO1FBQ0FEO1FBQ0FEO0lBQ0Y7SUFFQSxNQUFNSSxRQUFRQyxHQUFHLENBQUNIO0lBRWxCLE9BQU9EO0FBQ1QifQ==
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXJnZURhdGEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBmaWVsZFNjaGVtYVRvSlNPTiB9IGZyb20gJ3BheWxvYWQvdXRpbGl0aWVzJ1xuXG5pbXBvcnQgeyB0cmF2ZXJzZUZpZWxkcyB9IGZyb20gJy4vdHJhdmVyc2VGaWVsZHMnXG5cbmV4cG9ydCBjb25zdCBtZXJnZURhdGEgPSBhc3luYyA8VD4oYXJnczoge1xuICBhcGlSb3V0ZT86IHN0cmluZ1xuICBkZXB0aD86IG51bWJlclxuICBmaWVsZFNjaGVtYTogUmV0dXJuVHlwZTx0eXBlb2YgZmllbGRTY2hlbWFUb0pTT04+XG4gIGluY29taW5nRGF0YTogUGFydGlhbDxUPlxuICBpbml0aWFsRGF0YTogVFxuICByZXR1cm5OdW1iZXJPZlJlcXVlc3RzPzogYm9vbGVhblxuICBzZXJ2ZXJVUkw6IHN0cmluZ1xufSk6IFByb21pc2U8XG4gIFQgJiB7XG4gICAgX251bWJlck9mUmVxdWVzdHM/OiBudW1iZXJcbiAgfVxuPiA9PiB7XG4gIGNvbnN0IHtcbiAgICBhcGlSb3V0ZSxcbiAgICBkZXB0aCxcbiAgICBmaWVsZFNjaGVtYSxcbiAgICBpbmNvbWluZ0RhdGEsXG4gICAgaW5pdGlhbERhdGEsXG4gICAgcmV0dXJuTnVtYmVyT2ZSZXF1ZXN0cyxcbiAgICBzZXJ2ZXJVUkwsXG4gIH0gPSBhcmdzXG5cbiAgY29uc3QgcmVzdWx0ID0geyAuLi5pbml0aWFsRGF0YSB9XG5cbiAgY29uc3QgcG9wdWxhdGlvblByb21pc2VzOiBQcm9taXNlPHZvaWQ+W10gPSBbXVxuXG4gIHRyYXZlcnNlRmllbGRzKHtcbiAgICBhcGlSb3V0ZSxcbiAgICBkZXB0aCxcbiAgICBmaWVsZFNjaGVtYSxcbiAgICBpbmNvbWluZ0RhdGEsXG4gICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgIHJlc3VsdCxcbiAgICBzZXJ2ZXJVUkwsXG4gIH0pXG5cbiAgYXdhaXQgUHJvbWlzZS5hbGwocG9wdWxhdGlvblByb21pc2VzKVxuXG4gIHJldHVybiB7XG4gICAgLi4ucmVzdWx0LFxuICAgIC4uLihyZXR1cm5OdW1iZXJPZlJlcXVlc3RzID8geyBfbnVtYmVyT2ZSZXF1ZXN0czogcG9wdWxhdGlvblByb21pc2VzLmxlbmd0aCB9IDoge30pLFxuICB9XG59XG4iXSwibmFtZXMiOlsibWVyZ2VEYXRhIiwiYXJncyIsImFwaVJvdXRlIiwiZGVwdGgiLCJmaWVsZFNjaGVtYSIsImluY29taW5nRGF0YSIsImluaXRpYWxEYXRhIiwicmV0dXJuTnVtYmVyT2ZSZXF1ZXN0cyIsInNlcnZlclVSTCIsInJlc3VsdCIsInBvcHVsYXRpb25Qcm9taXNlcyIsInRyYXZlcnNlRmllbGRzIiwiUHJvbWlzZSIsImFsbCIsIl9udW1iZXJPZlJlcXVlc3RzIiwibGVuZ3RoIl0sIm1hcHBpbmdzIjoiOzs7OytCQUlhQTs7O2VBQUFBOzs7Z0NBRmtCO0FBRXhCLE1BQU1BLFlBQVksT0FBVUM7SUFhakMsTUFBTSxFQUNKQyxRQUFRLEVBQ1JDLEtBQUssRUFDTEMsV0FBVyxFQUNYQyxZQUFZLEVBQ1pDLFdBQVcsRUFDWEMsc0JBQXNCLEVBQ3RCQyxTQUFTLEVBQ1YsR0FBR1A7SUFFSixNQUFNUSxTQUFTO1FBQUUsR0FBR0gsV0FBVztJQUFDO0lBRWhDLE1BQU1JLHFCQUFzQyxFQUFFO0lBRTlDQyxJQUFBQSw4QkFBYyxFQUFDO1FBQ2JUO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FLO1FBQ0FEO1FBQ0FEO0lBQ0Y7SUFFQSxNQUFNSSxRQUFRQyxHQUFHLENBQUNIO0lBRWxCLE9BQU87UUFDTCxHQUFHRCxNQUFNO1FBQ1QsR0FBSUYseUJBQXlCO1lBQUVPLG1CQUFtQkosbUJBQW1CSyxNQUFNO1FBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEY7QUFDRiJ9
package/dist/promise.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- type Args = {
1
+ export declare const promise: (args: {
2
2
  accessor: number | string;
3
3
  apiRoute?: string;
4
4
  collection: string;
@@ -6,7 +6,5 @@ type Args = {
6
6
  id: number | string;
7
7
  ref: Record<string, unknown>;
8
8
  serverURL: string;
9
- };
10
- export declare const promise: ({ id, accessor, apiRoute, collection, depth, ref, serverURL, }: Args) => Promise<void>;
11
- export {};
9
+ }) => Promise<void>;
12
10
  //# sourceMappingURL=promise.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../src/promise.ts"],"names":[],"mappings":"AAAA,KAAK,IAAI,GAAG;IACV,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,OAAO,mEAQjB,IAAI,KAAG,QAAQ,IAAI,CAMrB,CAAA"}
1
+ {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../src/promise.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,SAAgB;IAClC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,GAAG,EAAE,OAAO,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;CAClB,KAAG,QAAQ,IAAI,CAmBf,CAAA"}
package/dist/promise.js CHANGED
@@ -8,9 +8,22 @@ Object.defineProperty(exports, "promise", {
8
8
  return promise;
9
9
  }
10
10
  });
11
- const promise = async ({ id, accessor, apiRoute, collection, depth, ref, serverURL })=>{
12
- const res = await fetch(`${serverURL}${apiRoute || '/api'}/${collection}/${id}?depth=${depth}`).then((res)=>res.json());
11
+ const promise = async (args)=>{
12
+ const { id, accessor, apiRoute, collection, depth, ref, serverURL } = args;
13
+ const url = `${serverURL}${apiRoute || '/api'}/${collection}/${id}?depth=${depth}`;
14
+ let res = null;
15
+ try {
16
+ res = await fetch(url, {
17
+ credentials: 'include',
18
+ headers: {
19
+ 'Content-Type': 'application/json'
20
+ }
21
+ }).then((res)=>res.json());
22
+ } catch (err) {
23
+ console.error(err) // eslint-disable-line no-console
24
+ ;
25
+ }
13
26
  ref[accessor] = res;
14
27
  };
15
28
 
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wcm9taXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbInR5cGUgQXJncyA9IHtcbiAgYWNjZXNzb3I6IG51bWJlciB8IHN0cmluZ1xuICBhcGlSb3V0ZT86IHN0cmluZ1xuICBjb2xsZWN0aW9uOiBzdHJpbmdcbiAgZGVwdGg6IG51bWJlclxuICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gIHJlZjogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2VydmVyVVJMOiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHByb21pc2UgPSBhc3luYyAoe1xuICBpZCxcbiAgYWNjZXNzb3IsXG4gIGFwaVJvdXRlLFxuICBjb2xsZWN0aW9uLFxuICBkZXB0aCxcbiAgcmVmLFxuICBzZXJ2ZXJVUkwsXG59OiBBcmdzKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHJlczogYW55ID0gYXdhaXQgZmV0Y2goXG4gICAgYCR7c2VydmVyVVJMfSR7YXBpUm91dGUgfHwgJy9hcGknfS8ke2NvbGxlY3Rpb259LyR7aWR9P2RlcHRoPSR7ZGVwdGh9YCxcbiAgKS50aGVuKChyZXMpID0+IHJlcy5qc29uKCkpXG5cbiAgcmVmW2FjY2Vzc29yXSA9IHJlc1xufVxuIl0sIm5hbWVzIjpbInByb21pc2UiLCJpZCIsImFjY2Vzc29yIiwiYXBpUm91dGUiLCJjb2xsZWN0aW9uIiwiZGVwdGgiLCJyZWYiLCJzZXJ2ZXJVUkwiLCJyZXMiLCJmZXRjaCIsInRoZW4iLCJqc29uIl0sIm1hcHBpbmdzIjoiOzs7OytCQVVhQTs7O2VBQUFBOzs7QUFBTixNQUFNQSxVQUFVLE9BQU8sRUFDNUJDLEVBQUUsRUFDRkMsUUFBUSxFQUNSQyxRQUFRLEVBQ1JDLFVBQVUsRUFDVkMsS0FBSyxFQUNMQyxHQUFHLEVBQ0hDLFNBQVMsRUFDSjtJQUNMLE1BQU1DLE1BQVcsTUFBTUMsTUFDckIsQ0FBQyxFQUFFRixVQUFVLEVBQUVKLFlBQVksT0FBTyxDQUFDLEVBQUVDLFdBQVcsQ0FBQyxFQUFFSCxHQUFHLE9BQU8sRUFBRUksTUFBTSxDQUFDLEVBQ3RFSyxJQUFJLENBQUMsQ0FBQ0YsTUFBUUEsSUFBSUcsSUFBSTtJQUV4QkwsR0FBRyxDQUFDSixTQUFTLEdBQUdNO0FBQ2xCIn0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wcm9taXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBwcm9taXNlID0gYXN5bmMgKGFyZ3M6IHtcbiAgYWNjZXNzb3I6IG51bWJlciB8IHN0cmluZ1xuICBhcGlSb3V0ZT86IHN0cmluZ1xuICBjb2xsZWN0aW9uOiBzdHJpbmdcbiAgZGVwdGg6IG51bWJlclxuICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gIHJlZjogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2VydmVyVVJMOiBzdHJpbmdcbn0pOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgY29uc3QgeyBpZCwgYWNjZXNzb3IsIGFwaVJvdXRlLCBjb2xsZWN0aW9uLCBkZXB0aCwgcmVmLCBzZXJ2ZXJVUkwgfSA9IGFyZ3NcblxuICBjb25zdCB1cmwgPSBgJHtzZXJ2ZXJVUkx9JHthcGlSb3V0ZSB8fCAnL2FwaSd9LyR7Y29sbGVjdGlvbn0vJHtpZH0/ZGVwdGg9JHtkZXB0aH1gXG5cbiAgbGV0IHJlczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBudWxsIHwgdW5kZWZpbmVkID0gbnVsbFxuXG4gIHRyeSB7XG4gICAgcmVzID0gYXdhaXQgZmV0Y2godXJsLCB7XG4gICAgICBjcmVkZW50aWFsczogJ2luY2x1ZGUnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgfSxcbiAgICB9KS50aGVuKChyZXMpID0+IHJlcy5qc29uKCkpXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGNvbnNvbGUuZXJyb3IoZXJyKSAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLWNvbnNvbGVcbiAgfVxuXG4gIHJlZlthY2Nlc3Nvcl0gPSByZXNcbn1cbiJdLCJuYW1lcyI6WyJwcm9taXNlIiwiYXJncyIsImlkIiwiYWNjZXNzb3IiLCJhcGlSb3V0ZSIsImNvbGxlY3Rpb24iLCJkZXB0aCIsInJlZiIsInNlcnZlclVSTCIsInVybCIsInJlcyIsImZldGNoIiwiY3JlZGVudGlhbHMiLCJoZWFkZXJzIiwidGhlbiIsImpzb24iLCJlcnIiLCJjb25zb2xlIiwiZXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7K0JBQWFBOzs7ZUFBQUE7OztBQUFOLE1BQU1BLFVBQVUsT0FBT0M7SUFTNUIsTUFBTSxFQUFFQyxFQUFFLEVBQUVDLFFBQVEsRUFBRUMsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLEtBQUssRUFBRUMsR0FBRyxFQUFFQyxTQUFTLEVBQUUsR0FBR1A7SUFFdEUsTUFBTVEsTUFBTSxDQUFDLEVBQUVELFVBQVUsRUFBRUosWUFBWSxPQUFPLENBQUMsRUFBRUMsV0FBVyxDQUFDLEVBQUVILEdBQUcsT0FBTyxFQUFFSSxNQUFNLENBQUM7SUFFbEYsSUFBSUksTUFBa0Q7SUFFdEQsSUFBSTtRQUNGQSxNQUFNLE1BQU1DLE1BQU1GLEtBQUs7WUFDckJHLGFBQWE7WUFDYkMsU0FBUztnQkFDUCxnQkFBZ0I7WUFDbEI7UUFDRixHQUFHQyxJQUFJLENBQUMsQ0FBQ0osTUFBUUEsSUFBSUssSUFBSTtJQUMzQixFQUFFLE9BQU9DLEtBQUs7UUFDWkMsUUFBUUMsS0FBSyxDQUFDRixLQUFLLGlDQUFpQzs7SUFDdEQ7SUFFQVQsR0FBRyxDQUFDSixTQUFTLEdBQUdPO0FBQ2xCIn0=
@@ -1,6 +1,7 @@
1
1
  export declare const subscribe: <T>(args: {
2
+ apiRoute?: string;
2
3
  callback: (data: T) => void;
3
- depth: number;
4
+ depth?: number;
4
5
  initialData: T;
5
6
  serverURL: string;
6
7
  }) => (event: MessageEvent) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"subscribe.d.ts","sourceRoot":"","sources":["../src/subscribe.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS;2BACG,IAAI;WACpB,MAAM;;eAEF,MAAM;cACN,YAAY,KAAK,IAa7B,CAAA"}
1
+ {"version":3,"file":"subscribe.d.ts","sourceRoot":"","sources":["../src/subscribe.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS;eACT,MAAM;2BACM,IAAI;YACnB,MAAM;;eAEH,MAAM;cACN,YAAY,KAAK,IAa7B,CAAA"}
package/dist/subscribe.js CHANGED
@@ -10,9 +10,10 @@ Object.defineProperty(exports, "subscribe", {
10
10
  });
11
11
  const _ = require(".");
12
12
  const subscribe = (args)=>{
13
- const { callback, depth, initialData, serverURL } = args;
13
+ const { apiRoute, callback, depth, initialData, serverURL } = args;
14
14
  const onMessage = async (event)=>{
15
15
  const mergedData = await (0, _.handleMessage)({
16
+ apiRoute,
16
17
  depth,
17
18
  event,
18
19
  initialData,
@@ -26,4 +27,4 @@ const subscribe = (args)=>{
26
27
  return onMessage;
27
28
  };
28
29
 
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdWJzY3JpYmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFuZGxlTWVzc2FnZSB9IGZyb20gJy4nXG5cbmV4cG9ydCBjb25zdCBzdWJzY3JpYmUgPSA8VD4oYXJnczoge1xuICBjYWxsYmFjazogKGRhdGE6IFQpID0+IHZvaWRcbiAgZGVwdGg6IG51bWJlclxuICBpbml0aWFsRGF0YTogVFxuICBzZXJ2ZXJVUkw6IHN0cmluZ1xufSk6ICgoZXZlbnQ6IE1lc3NhZ2VFdmVudCkgPT4gdm9pZCkgPT4ge1xuICBjb25zdCB7IGNhbGxiYWNrLCBkZXB0aCwgaW5pdGlhbERhdGEsIHNlcnZlclVSTCB9ID0gYXJnc1xuXG4gIGNvbnN0IG9uTWVzc2FnZSA9IGFzeW5jIChldmVudDogTWVzc2FnZUV2ZW50KSA9PiB7XG4gICAgY29uc3QgbWVyZ2VkRGF0YSA9IGF3YWl0IGhhbmRsZU1lc3NhZ2U8VD4oeyBkZXB0aCwgZXZlbnQsIGluaXRpYWxEYXRhLCBzZXJ2ZXJVUkwgfSlcbiAgICBjYWxsYmFjayhtZXJnZWREYXRhKVxuICB9XG5cbiAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBvbk1lc3NhZ2UpXG4gIH1cblxuICByZXR1cm4gb25NZXNzYWdlXG59XG4iXSwibmFtZXMiOlsic3Vic2NyaWJlIiwiYXJncyIsImNhbGxiYWNrIiwiZGVwdGgiLCJpbml0aWFsRGF0YSIsInNlcnZlclVSTCIsIm9uTWVzc2FnZSIsImV2ZW50IiwibWVyZ2VkRGF0YSIsImhhbmRsZU1lc3NhZ2UiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIl0sIm1hcHBpbmdzIjoiOzs7OytCQUVhQTs7O2VBQUFBOzs7a0JBRmlCO0FBRXZCLE1BQU1BLFlBQVksQ0FBSUM7SUFNM0IsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLEtBQUssRUFBRUMsV0FBVyxFQUFFQyxTQUFTLEVBQUUsR0FBR0o7SUFFcEQsTUFBTUssWUFBWSxPQUFPQztRQUN2QixNQUFNQyxhQUFhLE1BQU1DLElBQUFBLGVBQWEsRUFBSTtZQUFFTjtZQUFPSTtZQUFPSDtZQUFhQztRQUFVO1FBQ2pGSCxTQUFTTTtJQUNYO0lBRUEsSUFBSSxPQUFPRSxXQUFXLGFBQWE7UUFDakNBLE9BQU9DLGdCQUFnQixDQUFDLFdBQVdMO0lBQ3JDO0lBRUEsT0FBT0E7QUFDVCJ9
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdWJzY3JpYmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFuZGxlTWVzc2FnZSB9IGZyb20gJy4nXG5cbmV4cG9ydCBjb25zdCBzdWJzY3JpYmUgPSA8VD4oYXJnczoge1xuICBhcGlSb3V0ZT86IHN0cmluZ1xuICBjYWxsYmFjazogKGRhdGE6IFQpID0+IHZvaWRcbiAgZGVwdGg/OiBudW1iZXJcbiAgaW5pdGlhbERhdGE6IFRcbiAgc2VydmVyVVJMOiBzdHJpbmdcbn0pOiAoKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHZvaWQpID0+IHtcbiAgY29uc3QgeyBhcGlSb3V0ZSwgY2FsbGJhY2ssIGRlcHRoLCBpbml0aWFsRGF0YSwgc2VydmVyVVJMIH0gPSBhcmdzXG5cbiAgY29uc3Qgb25NZXNzYWdlID0gYXN5bmMgKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHtcbiAgICBjb25zdCBtZXJnZWREYXRhID0gYXdhaXQgaGFuZGxlTWVzc2FnZTxUPih7IGFwaVJvdXRlLCBkZXB0aCwgZXZlbnQsIGluaXRpYWxEYXRhLCBzZXJ2ZXJVUkwgfSlcbiAgICBjYWxsYmFjayhtZXJnZWREYXRhKVxuICB9XG5cbiAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBvbk1lc3NhZ2UpXG4gIH1cblxuICByZXR1cm4gb25NZXNzYWdlXG59XG4iXSwibmFtZXMiOlsic3Vic2NyaWJlIiwiYXJncyIsImFwaVJvdXRlIiwiY2FsbGJhY2siLCJkZXB0aCIsImluaXRpYWxEYXRhIiwic2VydmVyVVJMIiwib25NZXNzYWdlIiwiZXZlbnQiLCJtZXJnZWREYXRhIiwiaGFuZGxlTWVzc2FnZSIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiXSwibWFwcGluZ3MiOiI7Ozs7K0JBRWFBOzs7ZUFBQUE7OztrQkFGaUI7QUFFdkIsTUFBTUEsWUFBWSxDQUFJQztJQU8zQixNQUFNLEVBQUVDLFFBQVEsRUFBRUMsUUFBUSxFQUFFQyxLQUFLLEVBQUVDLFdBQVcsRUFBRUMsU0FBUyxFQUFFLEdBQUdMO0lBRTlELE1BQU1NLFlBQVksT0FBT0M7UUFDdkIsTUFBTUMsYUFBYSxNQUFNQyxJQUFBQSxlQUFhLEVBQUk7WUFBRVI7WUFBVUU7WUFBT0k7WUFBT0g7WUFBYUM7UUFBVTtRQUMzRkgsU0FBU007SUFDWDtJQUVBLElBQUksT0FBT0UsV0FBVyxhQUFhO1FBQ2pDQSxPQUFPQyxnQkFBZ0IsQ0FBQyxXQUFXTDtJQUNyQztJQUVBLE9BQU9BO0FBQ1QifQ==
@@ -1,13 +1,11 @@
1
1
  import type { fieldSchemaToJSON } from 'payload/utilities';
2
- type Args<T> = {
2
+ export declare const traverseFields: <T>(args: {
3
3
  apiRoute?: string;
4
- depth: number;
4
+ depth?: number;
5
5
  fieldSchema: ReturnType<typeof fieldSchemaToJSON>;
6
6
  incomingData: T;
7
7
  populationPromises: Promise<void>[];
8
8
  result: T;
9
9
  serverURL: string;
10
- };
11
- export declare const traverseFields: <T>({ apiRoute, depth, fieldSchema, incomingData, populationPromises, result, serverURL, }: Args<T>) => void;
12
- export {};
10
+ }) => void;
13
11
  //# sourceMappingURL=traverseFields.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../src/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAI1D,KAAK,IAAI,CAAC,CAAC,IAAI;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;IACjD,YAAY,EAAE,CAAC,CAAA;IACf,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,MAAM,EAAE,CAAC,CAAA;IACT,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,cAAc,0GAQd,IAyNZ,CAAA"}
1
+ {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../src/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAI1D,eAAO,MAAM,cAAc;eACd,MAAM;YACT,MAAM;iBACD,WAAW,wBAAwB,CAAC;;wBAE7B,QAAQ,IAAI,CAAC,EAAE;;eAExB,MAAM;MACf,IA6PH,CAAA"}
@@ -9,50 +9,56 @@ Object.defineProperty(exports, "traverseFields", {
9
9
  }
10
10
  });
11
11
  const _promise = require("./promise");
12
- const traverseFields = ({ apiRoute, depth, fieldSchema, incomingData, populationPromises, result, serverURL })=>{
13
- fieldSchema.forEach((fieldJSON)=>{
14
- if ('name' in fieldJSON && typeof fieldJSON.name === 'string') {
15
- const fieldName = fieldJSON.name;
16
- switch(fieldJSON.type){
12
+ const traverseFields = (args)=>{
13
+ const { apiRoute, depth, fieldSchema: fieldSchemas, incomingData, populationPromises, result, serverURL } = args;
14
+ fieldSchemas.forEach((fieldSchema)=>{
15
+ if ('name' in fieldSchema && typeof fieldSchema.name === 'string') {
16
+ const fieldName = fieldSchema.name;
17
+ switch(fieldSchema.type){
17
18
  case 'array':
18
19
  if (Array.isArray(incomingData[fieldName])) {
19
- result[fieldName] = incomingData[fieldName].map((row, i)=>{
20
- const hasExistingRow = Array.isArray(result[fieldName]) && typeof result[fieldName][i] === 'object' && result[fieldName][i] !== null;
21
- const newRow = hasExistingRow ? {
22
- ...result[fieldName][i]
23
- } : {};
20
+ result[fieldName] = incomingData[fieldName].map((incomingRow, i)=>{
21
+ if (!result[fieldName]) {
22
+ result[fieldName] = [];
23
+ }
24
+ if (!result[fieldName][i]) {
25
+ result[fieldName][i] = {};
26
+ }
24
27
  traverseFields({
25
28
  apiRoute,
26
29
  depth,
27
- fieldSchema: fieldJSON.fields,
28
- incomingData: row,
30
+ fieldSchema: fieldSchema.fields,
31
+ incomingData: incomingRow,
29
32
  populationPromises,
30
- result: newRow,
33
+ result: result[fieldName][i],
31
34
  serverURL
32
35
  });
33
- return newRow;
36
+ return result[fieldName][i];
34
37
  });
35
38
  }
36
39
  break;
37
40
  case 'blocks':
38
41
  if (Array.isArray(incomingData[fieldName])) {
39
42
  result[fieldName] = incomingData[fieldName].map((incomingBlock, i)=>{
40
- const incomingBlockJSON = fieldJSON.blocks[incomingBlock.blockType];
41
- // Compare the index and id to determine if this block already exists in the result
42
- // If so, we want to use the existing block as the base, otherwise take the incoming block
43
- // Either way, we will traverse the fields of the block to populate relationships
44
- const isExistingBlock = Array.isArray(result[fieldName]) && typeof result[fieldName][i] === 'object' && result[fieldName][i] !== null && result[fieldName][i].id === incomingBlock.id;
45
- const block = isExistingBlock ? result[fieldName][i] : incomingBlock;
43
+ const incomingBlockJSON = fieldSchema.blocks[incomingBlock.blockType];
44
+ if (!result[fieldName]) {
45
+ result[fieldName] = [];
46
+ }
47
+ if (!result[fieldName][i] || result[fieldName][i].id !== incomingBlock.id || result[fieldName][i].blockType !== incomingBlock.blockType) {
48
+ result[fieldName][i] = {
49
+ blockType: incomingBlock.blockType
50
+ };
51
+ }
46
52
  traverseFields({
47
53
  apiRoute,
48
54
  depth,
49
55
  fieldSchema: incomingBlockJSON.fields,
50
56
  incomingData: incomingBlock,
51
57
  populationPromises,
52
- result: block,
58
+ result: result[fieldName][i],
53
59
  serverURL
54
60
  });
55
- return block;
61
+ return result[fieldName][i];
56
62
  });
57
63
  } else {
58
64
  result[fieldName] = [];
@@ -66,7 +72,7 @@ const traverseFields = ({ apiRoute, depth, fieldSchema, incomingData, population
66
72
  traverseFields({
67
73
  apiRoute,
68
74
  depth,
69
- fieldSchema: fieldJSON.fields,
75
+ fieldSchema: fieldSchema.fields,
70
76
  incomingData: incomingData[fieldName] || {},
71
77
  populationPromises,
72
78
  result: result[fieldName],
@@ -75,26 +81,31 @@ const traverseFields = ({ apiRoute, depth, fieldSchema, incomingData, population
75
81
  break;
76
82
  case 'upload':
77
83
  case 'relationship':
78
- if (fieldJSON.hasMany && Array.isArray(incomingData[fieldName])) {
79
- const existingValue = Array.isArray(result[fieldName]) ? [
80
- ...result[fieldName]
81
- ] : [];
82
- result[fieldName] = Array.isArray(result[fieldName]) ? [
83
- ...result[fieldName]
84
- ].slice(0, incomingData[fieldName].length) : [];
85
- incomingData[fieldName].forEach((relation, i)=>{
84
+ // Handle `hasMany` relationships
85
+ if (fieldSchema.hasMany && Array.isArray(incomingData[fieldName])) {
86
+ if (!result[fieldName]) {
87
+ result[fieldName] = [];
88
+ }
89
+ incomingData[fieldName].forEach((incomingRelation, i)=>{
86
90
  // Handle `hasMany` polymorphic
87
- if (Array.isArray(fieldJSON.relationTo)) {
88
- const existingID = existingValue[i]?.value?.id;
89
- if (existingID !== relation.value || existingValue[i]?.relationTo !== relation.relationTo) {
91
+ if (Array.isArray(fieldSchema.relationTo)) {
92
+ // if the field doesn't exist on the result, create it
93
+ // the value will be populated later
94
+ if (!result[fieldName][i]) {
90
95
  result[fieldName][i] = {
91
- relationTo: relation.relationTo
96
+ relationTo: incomingRelation.relationTo
92
97
  };
98
+ }
99
+ const oldID = result[fieldName][i]?.value?.id;
100
+ const oldRelation = result[fieldName][i]?.relationTo;
101
+ const newID = incomingRelation.value;
102
+ const newRelation = incomingRelation.relationTo;
103
+ if (oldID !== newID || oldRelation !== newRelation) {
93
104
  populationPromises.push((0, _promise.promise)({
94
- id: relation.value,
105
+ id: incomingRelation.value,
95
106
  accessor: 'value',
96
107
  apiRoute,
97
- collection: relation.relationTo,
108
+ collection: newRelation,
98
109
  depth,
99
110
  ref: result[fieldName][i],
100
111
  serverURL
@@ -102,13 +113,12 @@ const traverseFields = ({ apiRoute, depth, fieldSchema, incomingData, population
102
113
  }
103
114
  } else {
104
115
  // Handle `hasMany` monomorphic
105
- const existingID = existingValue[i]?.id;
106
- if (existingID !== relation) {
116
+ if (result[fieldName][i]?.id !== incomingRelation) {
107
117
  populationPromises.push((0, _promise.promise)({
108
- id: relation,
118
+ id: incomingRelation,
109
119
  accessor: i,
110
120
  apiRoute,
111
- collection: String(fieldJSON.relationTo),
121
+ collection: String(fieldSchema.relationTo),
112
122
  depth,
113
123
  ref: result[fieldName],
114
124
  serverURL
@@ -118,22 +128,28 @@ const traverseFields = ({ apiRoute, depth, fieldSchema, incomingData, population
118
128
  });
119
129
  } else {
120
130
  // Handle `hasOne` polymorphic
121
- if (Array.isArray(fieldJSON.relationTo)) {
122
- const hasNewValue = typeof incomingData[fieldName] === 'object' && incomingData[fieldName] !== null;
123
- const hasOldValue = typeof result[fieldName] === 'object' && result[fieldName] !== null;
124
- const newValue = hasNewValue ? incomingData[fieldName].value : '';
131
+ if (Array.isArray(fieldSchema.relationTo)) {
132
+ // if the field doesn't exist on the result, create it
133
+ // the value will be populated later
134
+ if (!result[fieldName]) {
135
+ result[fieldName] = {
136
+ relationTo: incomingData[fieldName]?.relationTo
137
+ };
138
+ }
139
+ const hasNewValue = incomingData[fieldName] && typeof incomingData[fieldName] === 'object' && incomingData[fieldName] !== null;
140
+ const hasOldValue = result[fieldName] && typeof result[fieldName] === 'object' && result[fieldName] !== null;
141
+ const newID = hasNewValue ? typeof incomingData[fieldName].value === 'object' ? incomingData[fieldName].value.id : incomingData[fieldName].value : '';
142
+ const oldID = hasOldValue ? typeof result[fieldName].value === 'object' ? result[fieldName].value.id : result[fieldName].value : '';
125
143
  const newRelation = hasNewValue ? incomingData[fieldName].relationTo : '';
126
- const oldValue = hasOldValue ? result[fieldName].value : '';
127
144
  const oldRelation = hasOldValue ? result[fieldName].relationTo : '';
128
- if (newValue !== oldValue || newRelation !== oldRelation) {
129
- if (newValue) {
130
- if (!result[fieldName]) {
131
- result[fieldName] = {
132
- relationTo: newRelation
133
- };
134
- }
145
+ // if the new value/relation is different from the old value/relation
146
+ // populate the new value, otherwise leave it alone
147
+ if (newID !== oldID || newRelation !== oldRelation) {
148
+ // if the new value is not empty, populate it
149
+ // otherwise set the value to null
150
+ if (newID) {
135
151
  populationPromises.push((0, _promise.promise)({
136
- id: newValue,
152
+ id: newID,
137
153
  accessor: 'value',
138
154
  apiRoute,
139
155
  collection: newRelation,
@@ -141,21 +157,25 @@ const traverseFields = ({ apiRoute, depth, fieldSchema, incomingData, population
141
157
  ref: result[fieldName],
142
158
  serverURL
143
159
  }));
160
+ } else {
161
+ result[fieldName] = null;
144
162
  }
145
- } else {
146
- result[fieldName] = null;
147
163
  }
148
164
  } else {
149
165
  // Handle `hasOne` monomorphic
150
- const newID = typeof incomingData[fieldName] === 'string' && incomingData[fieldName] || typeof incomingData[fieldName] === 'object' && incomingData[fieldName] !== null && incomingData[fieldName].id || '';
151
- const oldID = typeof result[fieldName] === 'string' && result[fieldName] || typeof result[fieldName] === 'object' && result[fieldName] !== null && result[fieldName].id || '';
166
+ const newID = incomingData[fieldName] && typeof incomingData[fieldName] === 'object' && incomingData[fieldName].id || incomingData[fieldName];
167
+ const oldID = result[fieldName] && typeof result[fieldName] === 'object' && result[fieldName].id || result[fieldName];
168
+ // if the new value is different from the old value
169
+ // populate the new value, otherwise leave it alone
152
170
  if (newID !== oldID) {
171
+ // if the new value is not empty, populate it
172
+ // otherwise set the value to null
153
173
  if (newID) {
154
174
  populationPromises.push((0, _promise.promise)({
155
175
  id: newID,
156
176
  accessor: fieldName,
157
177
  apiRoute,
158
- collection: String(fieldJSON.relationTo),
178
+ collection: String(fieldSchema.relationTo),
159
179
  depth,
160
180
  ref: result,
161
181
  serverURL
@@ -172,7 +192,6 @@ const traverseFields = ({ apiRoute, depth, fieldSchema, incomingData, population
172
192
  }
173
193
  }
174
194
  });
175
- return null;
176
195
  };
177
196
 
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90cmF2ZXJzZUZpZWxkcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IGZpZWxkU2NoZW1hVG9KU09OIH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5cbmltcG9ydCB7IHByb21pc2UgfSBmcm9tICcuL3Byb21pc2UnXG5cbnR5cGUgQXJnczxUPiA9IHtcbiAgYXBpUm91dGU/OiBzdHJpbmdcbiAgZGVwdGg6IG51bWJlclxuICBmaWVsZFNjaGVtYTogUmV0dXJuVHlwZTx0eXBlb2YgZmllbGRTY2hlbWFUb0pTT04+XG4gIGluY29taW5nRGF0YTogVFxuICBwb3B1bGF0aW9uUHJvbWlzZXM6IFByb21pc2U8dm9pZD5bXVxuICByZXN1bHQ6IFRcbiAgc2VydmVyVVJMOiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHRyYXZlcnNlRmllbGRzID0gPFQ+KHtcbiAgYXBpUm91dGUsXG4gIGRlcHRoLFxuICBmaWVsZFNjaGVtYSxcbiAgaW5jb21pbmdEYXRhLFxuICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gIHJlc3VsdCxcbiAgc2VydmVyVVJMLFxufTogQXJnczxUPik6IHZvaWQgPT4ge1xuICBmaWVsZFNjaGVtYS5mb3JFYWNoKChmaWVsZEpTT04pID0+IHtcbiAgICBpZiAoJ25hbWUnIGluIGZpZWxkSlNPTiAmJiB0eXBlb2YgZmllbGRKU09OLm5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBmaWVsZE5hbWUgPSBmaWVsZEpTT04ubmFtZVxuXG4gICAgICBzd2l0Y2ggKGZpZWxkSlNPTi50eXBlKSB7XG4gICAgICAgIGNhc2UgJ2FycmF5JzpcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpbmNvbWluZ0RhdGFbZmllbGROYW1lXSkpIHtcbiAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0ubWFwKChyb3csIGkpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgaGFzRXhpc3RpbmdSb3cgPVxuICAgICAgICAgICAgICAgIEFycmF5LmlzQXJyYXkocmVzdWx0W2ZpZWxkTmFtZV0pICYmXG4gICAgICAgICAgICAgICAgdHlwZW9mIHJlc3VsdFtmaWVsZE5hbWVdW2ldID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdW2ldICE9PSBudWxsXG5cbiAgICAgICAgICAgICAgY29uc3QgbmV3Um93ID0gaGFzRXhpc3RpbmdSb3cgPyB7IC4uLnJlc3VsdFtmaWVsZE5hbWVdW2ldIH0gOiB7fVxuXG4gICAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgICBhcGlSb3V0ZSxcbiAgICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgICBmaWVsZFNjaGVtYTogZmllbGRKU09OLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBpbmNvbWluZ0RhdGE6IHJvdyxcbiAgICAgICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgICAgICAgcmVzdWx0OiBuZXdSb3csXG4gICAgICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICAgIHJldHVybiBuZXdSb3dcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgY2FzZSAnYmxvY2tzJzpcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpbmNvbWluZ0RhdGFbZmllbGROYW1lXSkpIHtcbiAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0ubWFwKChpbmNvbWluZ0Jsb2NrLCBpKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGluY29taW5nQmxvY2tKU09OID0gZmllbGRKU09OLmJsb2Nrc1tpbmNvbWluZ0Jsb2NrLmJsb2NrVHlwZV1cblxuICAgICAgICAgICAgICAvLyBDb21wYXJlIHRoZSBpbmRleCBhbmQgaWQgdG8gZGV0ZXJtaW5lIGlmIHRoaXMgYmxvY2sgYWxyZWFkeSBleGlzdHMgaW4gdGhlIHJlc3VsdFxuICAgICAgICAgICAgICAvLyBJZiBzbywgd2Ugd2FudCB0byB1c2UgdGhlIGV4aXN0aW5nIGJsb2NrIGFzIHRoZSBiYXNlLCBvdGhlcndpc2UgdGFrZSB0aGUgaW5jb21pbmcgYmxvY2tcbiAgICAgICAgICAgICAgLy8gRWl0aGVyIHdheSwgd2Ugd2lsbCB0cmF2ZXJzZSB0aGUgZmllbGRzIG9mIHRoZSBibG9jayB0byBwb3B1bGF0ZSByZWxhdGlvbnNoaXBzXG4gICAgICAgICAgICAgIGNvbnN0IGlzRXhpc3RpbmdCbG9jayA9XG4gICAgICAgICAgICAgICAgQXJyYXkuaXNBcnJheShyZXN1bHRbZmllbGROYW1lXSkgJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgcmVzdWx0W2ZpZWxkTmFtZV1baV0gPT09ICdvYmplY3QnICYmXG4gICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV1baV0gIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXVtpXS5pZCA9PT0gaW5jb21pbmdCbG9jay5pZFxuXG4gICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gaXNFeGlzdGluZ0Jsb2NrID8gcmVzdWx0W2ZpZWxkTmFtZV1baV0gOiBpbmNvbWluZ0Jsb2NrXG5cbiAgICAgICAgICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgICAgICAgIGFwaVJvdXRlLFxuICAgICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICAgIGZpZWxkU2NoZW1hOiBpbmNvbWluZ0Jsb2NrSlNPTi5maWVsZHMsXG4gICAgICAgICAgICAgICAgaW5jb21pbmdEYXRhOiBpbmNvbWluZ0Jsb2NrLFxuICAgICAgICAgICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICAgICAgICAgICAgICByZXN1bHQ6IGJsb2NrLFxuICAgICAgICAgICAgICAgIHNlcnZlclVSTCxcbiAgICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgICByZXR1cm4gYmxvY2tcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gW11cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVha1xuXG4gICAgICAgIGNhc2UgJ3RhYnMnOlxuICAgICAgICBjYXNlICdncm91cCc6XG4gICAgICAgICAgaWYgKCFyZXN1bHRbZmllbGROYW1lXSkge1xuICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gPSB7fVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgIGFwaVJvdXRlLFxuICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICBmaWVsZFNjaGVtYTogZmllbGRKU09OLmZpZWxkcyxcbiAgICAgICAgICAgIGluY29taW5nRGF0YTogaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gfHwge30sXG4gICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgICByZXN1bHQ6IHJlc3VsdFtmaWVsZE5hbWVdLFxuICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICBicmVha1xuXG4gICAgICAgIGNhc2UgJ3VwbG9hZCc6XG4gICAgICAgIGNhc2UgJ3JlbGF0aW9uc2hpcCc6XG4gICAgICAgICAgaWYgKGZpZWxkSlNPTi5oYXNNYW55ICYmIEFycmF5LmlzQXJyYXkoaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0pKSB7XG4gICAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gQXJyYXkuaXNBcnJheShyZXN1bHRbZmllbGROYW1lXSkgPyBbLi4ucmVzdWx0W2ZpZWxkTmFtZV1dIDogW11cbiAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gQXJyYXkuaXNBcnJheShyZXN1bHRbZmllbGROYW1lXSlcbiAgICAgICAgICAgICAgPyBbLi4ucmVzdWx0W2ZpZWxkTmFtZV1dLnNsaWNlKDAsIGluY29taW5nRGF0YVtmaWVsZE5hbWVdLmxlbmd0aClcbiAgICAgICAgICAgICAgOiBbXVxuXG4gICAgICAgICAgICBpbmNvbWluZ0RhdGFbZmllbGROYW1lXS5mb3JFYWNoKChyZWxhdGlvbiwgaSkgPT4ge1xuICAgICAgICAgICAgICAvLyBIYW5kbGUgYGhhc01hbnlgIHBvbHltb3JwaGljXG4gICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkSlNPTi5yZWxhdGlvblRvKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nSUQgPSBleGlzdGluZ1ZhbHVlW2ldPy52YWx1ZT8uaWRcblxuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgIGV4aXN0aW5nSUQgIT09IHJlbGF0aW9uLnZhbHVlIHx8XG4gICAgICAgICAgICAgICAgICBleGlzdGluZ1ZhbHVlW2ldPy5yZWxhdGlvblRvICE9PSByZWxhdGlvbi5yZWxhdGlvblRvXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXVtpXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25UbzogcmVsYXRpb24ucmVsYXRpb25UbyxcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLnB1c2goXG4gICAgICAgICAgICAgICAgICAgIHByb21pc2Uoe1xuICAgICAgICAgICAgICAgICAgICAgIGlkOiByZWxhdGlvbi52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICBhY2Nlc3NvcjogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgICAgICAgICBhcGlSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uOiByZWxhdGlvbi5yZWxhdGlvblRvLFxuICAgICAgICAgICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICAgICAgICAgIHJlZjogcmVzdWx0W2ZpZWxkTmFtZV1baV0sXG4gICAgICAgICAgICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gSGFuZGxlIGBoYXNNYW55YCBtb25vbW9ycGhpY1xuICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nSUQgPSBleGlzdGluZ1ZhbHVlW2ldPy5pZFxuXG4gICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nSUQgIT09IHJlbGF0aW9uKSB7XG4gICAgICAgICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMucHVzaChcbiAgICAgICAgICAgICAgICAgICAgcHJvbWlzZSh7XG4gICAgICAgICAgICAgICAgICAgICAgaWQ6IHJlbGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgIGFjY2Vzc29yOiBpLFxuICAgICAgICAgICAgICAgICAgICAgIGFwaVJvdXRlLFxuICAgICAgICAgICAgICAgICAgICAgIGNvbGxlY3Rpb246IFN0cmluZyhmaWVsZEpTT04ucmVsYXRpb25UbyksXG4gICAgICAgICAgICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICAgICAgICAgICAgcmVmOiByZXN1bHRbZmllbGROYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJVUkwsXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gSGFuZGxlIGBoYXNPbmVgIHBvbHltb3JwaGljXG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZEpTT04ucmVsYXRpb25UbykpIHtcbiAgICAgICAgICAgICAgY29uc3QgaGFzTmV3VmFsdWUgPVxuICAgICAgICAgICAgICAgIHR5cGVvZiBpbmNvbWluZ0RhdGFbZmllbGROYW1lXSA9PT0gJ29iamVjdCcgJiYgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gIT09IG51bGxcbiAgICAgICAgICAgICAgY29uc3QgaGFzT2xkVmFsdWUgPVxuICAgICAgICAgICAgICAgIHR5cGVvZiByZXN1bHRbZmllbGROYW1lXSA9PT0gJ29iamVjdCcgJiYgcmVzdWx0W2ZpZWxkTmFtZV0gIT09IG51bGxcblxuICAgICAgICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IGhhc05ld1ZhbHVlID8gaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0udmFsdWUgOiAnJ1xuICAgICAgICAgICAgICBjb25zdCBuZXdSZWxhdGlvbiA9IGhhc05ld1ZhbHVlID8gaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0ucmVsYXRpb25UbyA6ICcnXG5cbiAgICAgICAgICAgICAgY29uc3Qgb2xkVmFsdWUgPSBoYXNPbGRWYWx1ZSA/IHJlc3VsdFtmaWVsZE5hbWVdLnZhbHVlIDogJydcbiAgICAgICAgICAgICAgY29uc3Qgb2xkUmVsYXRpb24gPSBoYXNPbGRWYWx1ZSA/IHJlc3VsdFtmaWVsZE5hbWVdLnJlbGF0aW9uVG8gOiAnJ1xuXG4gICAgICAgICAgICAgIGlmIChuZXdWYWx1ZSAhPT0gb2xkVmFsdWUgfHwgbmV3UmVsYXRpb24gIT09IG9sZFJlbGF0aW9uKSB7XG4gICAgICAgICAgICAgICAgaWYgKG5ld1ZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdFtmaWVsZE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0ge1xuICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uVG86IG5ld1JlbGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICAgICAgICBwcm9taXNlKHtcbiAgICAgICAgICAgICAgICAgICAgICBpZDogbmV3VmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgYWNjZXNzb3I6ICd2YWx1ZScsXG4gICAgICAgICAgICAgICAgICAgICAgYXBpUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgY29sbGVjdGlvbjogbmV3UmVsYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICAgICAgICAgICAgcmVmOiByZXN1bHRbZmllbGROYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJVUkwsXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXSA9IG51bGxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgLy8gSGFuZGxlIGBoYXNPbmVgIG1vbm9tb3JwaGljXG4gICAgICAgICAgICAgIGNvbnN0IG5ld0lEOiBzdHJpbmcgPVxuICAgICAgICAgICAgICAgICh0eXBlb2YgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gPT09ICdzdHJpbmcnICYmIGluY29taW5nRGF0YVtmaWVsZE5hbWVdKSB8fFxuICAgICAgICAgICAgICAgICh0eXBlb2YgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gPT09ICdvYmplY3QnICYmXG4gICAgICAgICAgICAgICAgICBpbmNvbWluZ0RhdGFbZmllbGROYW1lXSAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgICAgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0uaWQpIHx8XG4gICAgICAgICAgICAgICAgJydcblxuICAgICAgICAgICAgICBjb25zdCBvbGRJRDogc3RyaW5nID1cbiAgICAgICAgICAgICAgICAodHlwZW9mIHJlc3VsdFtmaWVsZE5hbWVdID09PSAnc3RyaW5nJyAmJiByZXN1bHRbZmllbGROYW1lXSkgfHxcbiAgICAgICAgICAgICAgICAodHlwZW9mIHJlc3VsdFtmaWVsZE5hbWVdID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdLmlkKSB8fFxuICAgICAgICAgICAgICAgICcnXG5cbiAgICAgICAgICAgICAgaWYgKG5ld0lEICE9PSBvbGRJRCkge1xuICAgICAgICAgICAgICAgIGlmIChuZXdJRCkge1xuICAgICAgICAgICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLnB1c2goXG4gICAgICAgICAgICAgICAgICAgIHByb21pc2Uoe1xuICAgICAgICAgICAgICAgICAgICAgIGlkOiBuZXdJRCxcbiAgICAgICAgICAgICAgICAgICAgICBhY2Nlc3NvcjogZmllbGROYW1lLFxuICAgICAgICAgICAgICAgICAgICAgIGFwaVJvdXRlLFxuICAgICAgICAgICAgICAgICAgICAgIGNvbGxlY3Rpb246IFN0cmluZyhmaWVsZEpTT04ucmVsYXRpb25UbyksXG4gICAgICAgICAgICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICAgICAgICAgICAgcmVmOiByZXN1bHQgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgICAgICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gPSBudWxsXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWtcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV1cbiAgICAgIH1cbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIG51bGxcbn1cbiJdLCJuYW1lcyI6WyJ0cmF2ZXJzZUZpZWxkcyIsImFwaVJvdXRlIiwiZGVwdGgiLCJmaWVsZFNjaGVtYSIsImluY29taW5nRGF0YSIsInBvcHVsYXRpb25Qcm9taXNlcyIsInJlc3VsdCIsInNlcnZlclVSTCIsImZvckVhY2giLCJmaWVsZEpTT04iLCJuYW1lIiwiZmllbGROYW1lIiwidHlwZSIsIkFycmF5IiwiaXNBcnJheSIsIm1hcCIsInJvdyIsImkiLCJoYXNFeGlzdGluZ1JvdyIsIm5ld1JvdyIsImZpZWxkcyIsImluY29taW5nQmxvY2siLCJpbmNvbWluZ0Jsb2NrSlNPTiIsImJsb2NrcyIsImJsb2NrVHlwZSIsImlzRXhpc3RpbmdCbG9jayIsImlkIiwiYmxvY2siLCJoYXNNYW55IiwiZXhpc3RpbmdWYWx1ZSIsInNsaWNlIiwibGVuZ3RoIiwicmVsYXRpb24iLCJyZWxhdGlvblRvIiwiZXhpc3RpbmdJRCIsInZhbHVlIiwicHVzaCIsInByb21pc2UiLCJhY2Nlc3NvciIsImNvbGxlY3Rpb24iLCJyZWYiLCJTdHJpbmciLCJoYXNOZXdWYWx1ZSIsImhhc09sZFZhbHVlIiwibmV3VmFsdWUiLCJuZXdSZWxhdGlvbiIsIm9sZFZhbHVlIiwib2xkUmVsYXRpb24iLCJuZXdJRCIsIm9sZElEIl0sIm1hcHBpbmdzIjoiOzs7OytCQWNhQTs7O2VBQUFBOzs7eUJBWlc7QUFZakIsTUFBTUEsaUJBQWlCLENBQUksRUFDaENDLFFBQVEsRUFDUkMsS0FBSyxFQUNMQyxXQUFXLEVBQ1hDLFlBQVksRUFDWkMsa0JBQWtCLEVBQ2xCQyxNQUFNLEVBQ05DLFNBQVMsRUFDRDtJQUNSSixZQUFZSyxPQUFPLENBQUMsQ0FBQ0M7UUFDbkIsSUFBSSxVQUFVQSxhQUFhLE9BQU9BLFVBQVVD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
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90cmF2ZXJzZUZpZWxkcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IGZpZWxkU2NoZW1hVG9KU09OIH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5cbmltcG9ydCB7IHByb21pc2UgfSBmcm9tICcuL3Byb21pc2UnXG5cbmV4cG9ydCBjb25zdCB0cmF2ZXJzZUZpZWxkcyA9IDxUPihhcmdzOiB7XG4gIGFwaVJvdXRlPzogc3RyaW5nXG4gIGRlcHRoPzogbnVtYmVyXG4gIGZpZWxkU2NoZW1hOiBSZXR1cm5UeXBlPHR5cGVvZiBmaWVsZFNjaGVtYVRvSlNPTj5cbiAgaW5jb21pbmdEYXRhOiBUXG4gIHBvcHVsYXRpb25Qcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIHJlc3VsdDogVFxuICBzZXJ2ZXJVUkw6IHN0cmluZ1xufSk6IHZvaWQgPT4ge1xuICBjb25zdCB7XG4gICAgYXBpUm91dGUsXG4gICAgZGVwdGgsXG4gICAgZmllbGRTY2hlbWE6IGZpZWxkU2NoZW1hcyxcbiAgICBpbmNvbWluZ0RhdGEsXG4gICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgIHJlc3VsdCxcbiAgICBzZXJ2ZXJVUkwsXG4gIH0gPSBhcmdzXG5cbiAgZmllbGRTY2hlbWFzLmZvckVhY2goKGZpZWxkU2NoZW1hKSA9PiB7XG4gICAgaWYgKCduYW1lJyBpbiBmaWVsZFNjaGVtYSAmJiB0eXBlb2YgZmllbGRTY2hlbWEubmFtZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnN0IGZpZWxkTmFtZSA9IGZpZWxkU2NoZW1hLm5hbWVcblxuICAgICAgc3dpdGNoIChmaWVsZFNjaGVtYS50eXBlKSB7XG4gICAgICAgIGNhc2UgJ2FycmF5JzpcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpbmNvbWluZ0RhdGFbZmllbGROYW1lXSkpIHtcbiAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0ubWFwKChpbmNvbWluZ1JvdywgaSkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXJlc3VsdFtmaWVsZE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gPSBbXVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaWYgKCFyZXN1bHRbZmllbGROYW1lXVtpXSkge1xuICAgICAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdW2ldID0ge31cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgICBhcGlSb3V0ZSxcbiAgICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgICBmaWVsZFNjaGVtYTogZmllbGRTY2hlbWEuZmllbGRzLFxuICAgICAgICAgICAgICAgIGluY29taW5nRGF0YTogaW5jb21pbmdSb3csXG4gICAgICAgICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICAgICAgICAgIHJlc3VsdDogcmVzdWx0W2ZpZWxkTmFtZV1baV0sXG4gICAgICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICAgIHJldHVybiByZXN1bHRbZmllbGROYW1lXVtpXVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWtcblxuICAgICAgICBjYXNlICdibG9ja3MnOlxuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGluY29taW5nRGF0YVtmaWVsZE5hbWVdKSkge1xuICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gPSBpbmNvbWluZ0RhdGFbZmllbGROYW1lXS5tYXAoKGluY29taW5nQmxvY2ssIGkpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgaW5jb21pbmdCbG9ja0pTT04gPSBmaWVsZFNjaGVtYS5ibG9ja3NbaW5jb21pbmdCbG9jay5ibG9ja1R5cGVdXG5cbiAgICAgICAgICAgICAgaWYgKCFyZXN1bHRbZmllbGROYW1lXSkge1xuICAgICAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gW11cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAhcmVzdWx0W2ZpZWxkTmFtZV1baV0gfHxcbiAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXVtpXS5pZCAhPT0gaW5jb21pbmdCbG9jay5pZCB8fFxuICAgICAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdW2ldLmJsb2NrVHlwZSAhPT0gaW5jb21pbmdCbG9jay5ibG9ja1R5cGVcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV1baV0gPSB7XG4gICAgICAgICAgICAgICAgICBibG9ja1R5cGU6IGluY29taW5nQmxvY2suYmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgICBhcGlSb3V0ZSxcbiAgICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgICBmaWVsZFNjaGVtYTogaW5jb21pbmdCbG9ja0pTT04uZmllbGRzLFxuICAgICAgICAgICAgICAgIGluY29taW5nRGF0YTogaW5jb21pbmdCbG9jayxcbiAgICAgICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgICAgICAgcmVzdWx0OiByZXN1bHRbZmllbGROYW1lXVtpXSxcbiAgICAgICAgICAgICAgICBzZXJ2ZXJVUkwsXG4gICAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFtmaWVsZE5hbWVdW2ldXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXSA9IFtdXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWtcblxuICAgICAgICBjYXNlICd0YWJzJzpcbiAgICAgICAgY2FzZSAnZ3JvdXAnOlxuICAgICAgICAgIGlmICghcmVzdWx0W2ZpZWxkTmFtZV0pIHtcbiAgICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0ge31cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICBhcGlSb3V0ZSxcbiAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgZmllbGRTY2hlbWE6IGZpZWxkU2NoZW1hLmZpZWxkcyxcbiAgICAgICAgICAgIGluY29taW5nRGF0YTogaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gfHwge30sXG4gICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgICByZXN1bHQ6IHJlc3VsdFtmaWVsZE5hbWVdLFxuICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICBicmVha1xuXG4gICAgICAgIGNhc2UgJ3VwbG9hZCc6XG4gICAgICAgIGNhc2UgJ3JlbGF0aW9uc2hpcCc6XG4gICAgICAgICAgLy8gSGFuZGxlIGBoYXNNYW55YCByZWxhdGlvbnNoaXBzXG4gICAgICAgICAgaWYgKGZpZWxkU2NoZW1hLmhhc01hbnkgJiYgQXJyYXkuaXNBcnJheShpbmNvbWluZ0RhdGFbZmllbGROYW1lXSkpIHtcbiAgICAgICAgICAgIGlmICghcmVzdWx0W2ZpZWxkTmFtZV0pIHtcbiAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gPSBbXVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbmNvbWluZ0RhdGFbZmllbGROYW1lXS5mb3JFYWNoKChpbmNvbWluZ1JlbGF0aW9uLCBpKSA9PiB7XG4gICAgICAgICAgICAgIC8vIEhhbmRsZSBgaGFzTWFueWAgcG9seW1vcnBoaWNcbiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGRTY2hlbWEucmVsYXRpb25UbykpIHtcbiAgICAgICAgICAgICAgICAvLyBpZiB0aGUgZmllbGQgZG9lc24ndCBleGlzdCBvbiB0aGUgcmVzdWx0LCBjcmVhdGUgaXRcbiAgICAgICAgICAgICAgICAvLyB0aGUgdmFsdWUgd2lsbCBiZSBwb3B1bGF0ZWQgbGF0ZXJcbiAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdFtmaWVsZE5hbWVdW2ldKSB7XG4gICAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXVtpXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25UbzogaW5jb21pbmdSZWxhdGlvbi5yZWxhdGlvblRvLFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IG9sZElEID0gcmVzdWx0W2ZpZWxkTmFtZV1baV0/LnZhbHVlPy5pZFxuICAgICAgICAgICAgICAgIGNvbnN0IG9sZFJlbGF0aW9uID0gcmVzdWx0W2ZpZWxkTmFtZV1baV0/LnJlbGF0aW9uVG9cbiAgICAgICAgICAgICAgICBjb25zdCBuZXdJRCA9IGluY29taW5nUmVsYXRpb24udmFsdWVcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdSZWxhdGlvbiA9IGluY29taW5nUmVsYXRpb24ucmVsYXRpb25Ub1xuXG4gICAgICAgICAgICAgICAgaWYgKG9sZElEICE9PSBuZXdJRCB8fCBvbGRSZWxhdGlvbiAhPT0gbmV3UmVsYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICAgICAgICBwcm9taXNlKHtcbiAgICAgICAgICAgICAgICAgICAgICBpZDogaW5jb21pbmdSZWxhdGlvbi52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICBhY2Nlc3NvcjogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgICAgICAgICBhcGlSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uOiBuZXdSZWxhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgICAgICAgICByZWY6IHJlc3VsdFtmaWVsZE5hbWVdW2ldLFxuICAgICAgICAgICAgICAgICAgICAgIHNlcnZlclVSTCxcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIEhhbmRsZSBgaGFzTWFueWAgbW9ub21vcnBoaWNcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0W2ZpZWxkTmFtZV1baV0/LmlkICE9PSBpbmNvbWluZ1JlbGF0aW9uKSB7XG4gICAgICAgICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMucHVzaChcbiAgICAgICAgICAgICAgICAgICAgcHJvbWlzZSh7XG4gICAgICAgICAgICAgICAgICAgICAgaWQ6IGluY29taW5nUmVsYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgYWNjZXNzb3I6IGksXG4gICAgICAgICAgICAgICAgICAgICAgYXBpUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgY29sbGVjdGlvbjogU3RyaW5nKGZpZWxkU2NoZW1hLnJlbGF0aW9uVG8pLFxuICAgICAgICAgICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICAgICAgICAgIHJlZjogcmVzdWx0W2ZpZWxkTmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEhhbmRsZSBgaGFzT25lYCBwb2x5bW9ycGhpY1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGRTY2hlbWEucmVsYXRpb25UbykpIHtcbiAgICAgICAgICAgICAgLy8gaWYgdGhlIGZpZWxkIGRvZXNuJ3QgZXhpc3Qgb24gdGhlIHJlc3VsdCwgY3JlYXRlIGl0XG4gICAgICAgICAgICAgIC8vIHRoZSB2YWx1ZSB3aWxsIGJlIHBvcHVsYXRlZCBsYXRlclxuICAgICAgICAgICAgICBpZiAoIXJlc3VsdFtmaWVsZE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gPSB7XG4gICAgICAgICAgICAgICAgICByZWxhdGlvblRvOiBpbmNvbWluZ0RhdGFbZmllbGROYW1lXT8ucmVsYXRpb25UbyxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBjb25zdCBoYXNOZXdWYWx1ZSA9XG4gICAgICAgICAgICAgICAgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gPT09ICdvYmplY3QnICYmXG4gICAgICAgICAgICAgICAgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gIT09IG51bGxcblxuICAgICAgICAgICAgICBjb25zdCBoYXNPbGRWYWx1ZSA9XG4gICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgcmVzdWx0W2ZpZWxkTmFtZV0gPT09ICdvYmplY3QnICYmXG4gICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gIT09IG51bGxcblxuICAgICAgICAgICAgICBjb25zdCBuZXdJRCA9IGhhc05ld1ZhbHVlXG4gICAgICAgICAgICAgICAgPyB0eXBlb2YgaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0udmFsdWUgPT09ICdvYmplY3QnXG4gICAgICAgICAgICAgICAgICA/IGluY29taW5nRGF0YVtmaWVsZE5hbWVdLnZhbHVlLmlkXG4gICAgICAgICAgICAgICAgICA6IGluY29taW5nRGF0YVtmaWVsZE5hbWVdLnZhbHVlXG4gICAgICAgICAgICAgICAgOiAnJ1xuXG4gICAgICAgICAgICAgIGNvbnN0IG9sZElEID0gaGFzT2xkVmFsdWVcbiAgICAgICAgICAgICAgICA/IHR5cGVvZiByZXN1bHRbZmllbGROYW1lXS52YWx1ZSA9PT0gJ29iamVjdCdcbiAgICAgICAgICAgICAgICAgID8gcmVzdWx0W2ZpZWxkTmFtZV0udmFsdWUuaWRcbiAgICAgICAgICAgICAgICAgIDogcmVzdWx0W2ZpZWxkTmFtZV0udmFsdWVcbiAgICAgICAgICAgICAgICA6ICcnXG5cbiAgICAgICAgICAgICAgY29uc3QgbmV3UmVsYXRpb24gPSBoYXNOZXdWYWx1ZSA/IGluY29taW5nRGF0YVtmaWVsZE5hbWVdLnJlbGF0aW9uVG8gOiAnJ1xuICAgICAgICAgICAgICBjb25zdCBvbGRSZWxhdGlvbiA9IGhhc09sZFZhbHVlID8gcmVzdWx0W2ZpZWxkTmFtZV0ucmVsYXRpb25UbyA6ICcnXG5cbiAgICAgICAgICAgICAgLy8gaWYgdGhlIG5ldyB2YWx1ZS9yZWxhdGlvbiBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgb2xkIHZhbHVlL3JlbGF0aW9uXG4gICAgICAgICAgICAgIC8vIHBvcHVsYXRlIHRoZSBuZXcgdmFsdWUsIG90aGVyd2lzZSBsZWF2ZSBpdCBhbG9uZVxuICAgICAgICAgICAgICBpZiAobmV3SUQgIT09IG9sZElEIHx8IG5ld1JlbGF0aW9uICE9PSBvbGRSZWxhdGlvbikge1xuICAgICAgICAgICAgICAgIC8vIGlmIHRoZSBuZXcgdmFsdWUgaXMgbm90IGVtcHR5LCBwb3B1bGF0ZSBpdFxuICAgICAgICAgICAgICAgIC8vIG90aGVyd2lzZSBzZXQgdGhlIHZhbHVlIHRvIG51bGxcbiAgICAgICAgICAgICAgICBpZiAobmV3SUQpIHtcbiAgICAgICAgICAgICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICAgICAgICBwcm9taXNlKHtcbiAgICAgICAgICAgICAgICAgICAgICBpZDogbmV3SUQsXG4gICAgICAgICAgICAgICAgICAgICAgYWNjZXNzb3I6ICd2YWx1ZScsXG4gICAgICAgICAgICAgICAgICAgICAgYXBpUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgY29sbGVjdGlvbjogbmV3UmVsYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICAgICAgICAgICAgcmVmOiByZXN1bHRbZmllbGROYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJVUkwsXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXSA9IG51bGxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIC8vIEhhbmRsZSBgaGFzT25lYCBtb25vbW9ycGhpY1xuICAgICAgICAgICAgICBjb25zdCBuZXdJRDogbnVtYmVyIHwgc3RyaW5nIHwgdW5kZWZpbmVkID1cbiAgICAgICAgICAgICAgICAoaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV0gJiZcbiAgICAgICAgICAgICAgICAgIHR5cGVvZiBpbmNvbWluZ0RhdGFbZmllbGROYW1lXSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgICAgICAgICAgIGluY29taW5nRGF0YVtmaWVsZE5hbWVdLmlkKSB8fFxuICAgICAgICAgICAgICAgIGluY29taW5nRGF0YVtmaWVsZE5hbWVdXG5cbiAgICAgICAgICAgICAgY29uc3Qgb2xkSUQ6IG51bWJlciB8IHN0cmluZyB8IHVuZGVmaW5lZCA9XG4gICAgICAgICAgICAgICAgKHJlc3VsdFtmaWVsZE5hbWVdICYmXG4gICAgICAgICAgICAgICAgICB0eXBlb2YgcmVzdWx0W2ZpZWxkTmFtZV0gPT09ICdvYmplY3QnICYmXG4gICAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXS5pZCkgfHxcbiAgICAgICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXVxuXG4gICAgICAgICAgICAgIC8vIGlmIHRoZSBuZXcgdmFsdWUgaXMgZGlmZmVyZW50IGZyb20gdGhlIG9sZCB2YWx1ZVxuICAgICAgICAgICAgICAvLyBwb3B1bGF0ZSB0aGUgbmV3IHZhbHVlLCBvdGhlcndpc2UgbGVhdmUgaXQgYWxvbmVcbiAgICAgICAgICAgICAgaWYgKG5ld0lEICE9PSBvbGRJRCkge1xuICAgICAgICAgICAgICAgIC8vIGlmIHRoZSBuZXcgdmFsdWUgaXMgbm90IGVtcHR5LCBwb3B1bGF0ZSBpdFxuICAgICAgICAgICAgICAgIC8vIG90aGVyd2lzZSBzZXQgdGhlIHZhbHVlIHRvIG51bGxcbiAgICAgICAgICAgICAgICBpZiAobmV3SUQpIHtcbiAgICAgICAgICAgICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICAgICAgICBwcm9taXNlKHtcbiAgICAgICAgICAgICAgICAgICAgICBpZDogbmV3SUQsXG4gICAgICAgICAgICAgICAgICAgICAgYWNjZXNzb3I6IGZpZWxkTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICBhcGlSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uOiBTdHJpbmcoZmllbGRTY2hlbWEucmVsYXRpb25UbyksXG4gICAgICAgICAgICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICAgICAgICAgICAgcmVmOiByZXN1bHQgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgICAgICAgICAgICAgICAgc2VydmVyVVJMLFxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgcmVzdWx0W2ZpZWxkTmFtZV0gPSBudWxsXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWtcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJlc3VsdFtmaWVsZE5hbWVdID0gaW5jb21pbmdEYXRhW2ZpZWxkTmFtZV1cbiAgICAgIH1cbiAgICB9XG4gIH0pXG59XG4iXSwibmFtZXMiOlsidHJhdmVyc2VGaWVsZHMiLCJhcmdzIiwiYXBpUm91dGUiLCJkZXB0aCIsImZpZWxkU2NoZW1hIiwiZmllbGRTY2hlbWFzIiwiaW5jb21pbmdEYXRhIiwicG9wdWxhdGlvblByb21pc2VzIiwicmVzdWx0Iiwic2VydmVyVVJMIiwiZm9yRWFjaCIsIm5hbWUiLCJmaWVsZE5hbWUiLCJ0eXBlIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwiaW5jb21pbmdSb3ciLCJpIiwiZmllbGRzIiwiaW5jb21pbmdCbG9jayIsImluY29taW5nQmxvY2tKU09OIiwiYmxvY2tzIiwiYmxvY2tUeXBlIiwiaWQiLCJoYXNNYW55IiwiaW5jb21pbmdSZWxhdGlvbiIsInJlbGF0aW9uVG8iLCJvbGRJRCIsInZhbHVlIiwib2xkUmVsYXRpb24iLCJuZXdJRCIsIm5ld1JlbGF0aW9uIiwicHVzaCIsInByb21pc2UiLCJhY2Nlc3NvciIsImNvbGxlY3Rpb24iLCJyZWYiLCJTdHJpbmciLCJoYXNOZXdWYWx1ZSIsImhhc09sZFZhbHVlIl0sIm1hcHBpbmdzIjoiOzs7OytCQUlhQTs7O2VBQUFBOzs7eUJBRlc7QUFFakIsTUFBTUEsaUJBQWlCLENBQUlDO0lBU2hDLE1BQU0sRUFDSkMsUUFBUSxFQUNSQyxLQUFLLEVBQ0xDLGFBQWFDLFlBQVksRUFDekJDLFlBQVksRUFDWkMsa0JBQWtCLEVBQ2xCQyxNQUFNLEVBQ05DLFNBQVMsRUFDVixHQUFHUjtJQUVKSSxhQUFhSyxPQUFPLENBQUMsQ0FBQ047UUFDcEIsSUFBSSxVQUFVQSxlQUFlLE9BQU9BLFlBQVlPLElBQUksS0FBSyxVQUFVO1lBQ2pFLE1BQU1DLFlBQVlSLFlBQVlPLElBQUk7WUFFbEMs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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/live-preview",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "The official live preview JavaScript SDK for Payload",
5
5
  "repository": "https://github.com/payloadcms/payload",
6
6
  "license": "MIT",
@@ -10,7 +10,7 @@
10
10
  "types": "./dist/index.d.ts",
11
11
  "devDependencies": {
12
12
  "@payloadcms/eslint-config": "1.0.0",
13
- "payload": "2.0.11"
13
+ "payload": "2.1.1"
14
14
  },
15
15
  "peerDependencies": {
16
16
  "payload": "^2.0.0"