@stackbit/cms-core 1.0.15 → 1.0.16-develop.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.
@@ -0,0 +1,12 @@
1
+ import * as ContentStoreTypes from '../types';
2
+ import { SearchFilterItem } from '../types';
3
+ import { ScheduledAction } from '@stackbit/types';
4
+ import { SchemaForSearch } from './search-utils';
5
+ declare type CustomFilterMethod = (filter: SearchFilterItem, document: ContentStoreTypes.Document, opts: {
6
+ locale?: string;
7
+ schema: SchemaForSearch;
8
+ activeScheduledActionsByDocumentId: Record<string, ScheduledAction[]>;
9
+ }) => boolean;
10
+ export declare const CUSTOM_FILTERS: Record<string, CustomFilterMethod>;
11
+ export {};
12
+ //# sourceMappingURL=custom-search-filters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-search-filters.d.ts","sourceRoot":"","sources":["../../src/utils/custom-search-filters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,iBAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAqB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAiE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEhH,aAAK,kBAAkB,GAAG,CACtB,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,EACpC,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAC;IAAC,kCAAkC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAA;CAAE,KACxH,OAAO,CAAC;AAEb,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAwC7D,CAAC"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CUSTOM_FILTERS = void 0;
4
+ const search_utils_1 = require("./search-utils");
5
+ exports.CUSTOM_FILTERS = {
6
+ hasSchedules: (filter, document, opts) => {
7
+ var _a;
8
+ const field = {
9
+ type: 'boolean',
10
+ value: !!((_a = opts.activeScheduledActionsByDocumentId[document.srcObjectId]) === null || _a === void 0 ? void 0 : _a.length)
11
+ };
12
+ return (0, search_utils_1.isBooleanFieldMatches)({ field, filter, locale: opts.locale });
13
+ },
14
+ scheduledActionId: (filter, document, opts) => {
15
+ var _a, _b;
16
+ const field = {
17
+ type: 'list',
18
+ items: (_b = (_a = opts.activeScheduledActionsByDocumentId[document.srcObjectId]) === null || _a === void 0 ? void 0 : _a.map((scheduledAction) => ({
19
+ type: 'string',
20
+ value: scheduledAction.id
21
+ }))) !== null && _b !== void 0 ? _b : []
22
+ };
23
+ const model = {
24
+ type: 'object',
25
+ name: '',
26
+ fields: [
27
+ {
28
+ name: '',
29
+ type: 'list',
30
+ items: {
31
+ type: 'string'
32
+ }
33
+ }
34
+ ]
35
+ };
36
+ return (0, search_utils_1.isListFieldMatches)({ field, filter, model, locale: opts.locale, document });
37
+ },
38
+ scheduledActionDate: (filter, document, opts) => {
39
+ var _a, _b;
40
+ return ((_b = (_a = opts.activeScheduledActionsByDocumentId[document.srcObjectId]) === null || _a === void 0 ? void 0 : _a.some((scheduledAction) => {
41
+ const field = { type: 'date', value: scheduledAction.executeAt };
42
+ return (0, search_utils_1.isDateFieldMatches)({ field, filter, locale: opts.locale });
43
+ })) !== null && _b !== void 0 ? _b : false);
44
+ }
45
+ };
46
+ //# sourceMappingURL=custom-search-filters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-search-filters.js","sourceRoot":"","sources":["../../src/utils/custom-search-filters.ts"],"names":[],"mappings":";;;AAIA,iDAAgH;AAQnG,QAAA,cAAc,GAAuC;IAC9D,YAAY,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;;QACrC,MAAM,KAAK,GAAG;YACV,IAAI,EAAE,SAAkB;YACxB,KAAK,EAAE,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,WAAW,CAAC,0CAAE,MAAM,CAAA;SACjF,CAAC;QACF,OAAO,IAAA,oCAAqB,EAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,iBAAiB,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;;QAC1C,MAAM,KAAK,GAAsB;YAC7B,IAAI,EAAE,MAAM;YACZ,KAAK,EACD,MAAA,MAAA,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,WAAW,CAAC,0CAAE,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;gBACrF,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,eAAe,CAAC,EAAE;aAC5B,CAAC,CAAC,mCAAI,EAAE;SAChB,CAAC;QACF,MAAM,KAAK,GAAU;YACjB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE;wBACH,IAAI,EAAE,QAAQ;qBACjB;iBACJ;aACJ;SACJ,CAAC;QACF,OAAO,IAAA,iCAAkB,EAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IACvF,CAAC;IACD,mBAAmB,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;;QAC5C,OAAO,CACH,MAAA,MAAA,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,WAAW,CAAC,0CAAE,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE;YACpF,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,MAAe,EAAE,KAAK,EAAE,eAAe,CAAC,SAAS,EAAE,CAAC;YAC1E,OAAO,IAAA,iCAAkB,EAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,CAAC,CAAC,mCAAI,KAAK,CACd,CAAC;IACN,CAAC;CACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stackbit/cms-core",
3
- "version": "1.0.15",
3
+ "version": "1.0.16-develop.1",
4
4
  "description": "stackbit-dev",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -26,9 +26,9 @@
26
26
  "@babel/traverse": "^7.11.5",
27
27
  "@iarna/toml": "^2.2.3",
28
28
  "@netlify/sdk": "^1.17.2",
29
- "@stackbit/sdk": "1.0.15",
30
- "@stackbit/types": "0.11.4",
31
- "@stackbit/utils": "0.4.4",
29
+ "@stackbit/sdk": "1.0.16-develop.1",
30
+ "@stackbit/types": "0.11.5-develop.1",
31
+ "@stackbit/utils": "0.4.5-develop.1",
32
32
  "chalk": "^4.0.1",
33
33
  "content-engine": "0.0.29",
34
34
  "esm": "^3.2.25",
@@ -44,5 +44,5 @@
44
44
  "slugify": "^1.6.5",
45
45
  "uuid": "^9.0.0"
46
46
  },
47
- "gitHead": "afeafedd0d7dc7355eb10eb278ed0c5aaa527867"
47
+ "gitHead": "244b75cd1cb481c897aa26147f65cbf61d0e59e8"
48
48
  }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=references-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"references-utils.d.ts","sourceRoot":"","sources":["../../src/utils/references-utils.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=references-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"references-utils.js","sourceRoot":"","sources":["../../src/utils/references-utils.ts"],"names":[],"mappings":""}
@@ -1,29 +0,0 @@
1
- import * as CSITypes from '@stackbit/types';
2
- import { ContentStoreTypes } from '../';
3
- declare type GetModelForUser = (opts: {
4
- name: string;
5
- srcType: string;
6
- srcProjectId: string;
7
- }) => CSITypes.ModelWithSource;
8
- export declare function removeHiddenFields(opts: {
9
- documents: ContentStoreTypes.Document[];
10
- getModelForUser: GetModelForUser;
11
- }): {
12
- documents: ContentStoreTypes.Document[];
13
- };
14
- export declare function removeHiddenFields(opts: {
15
- assets: ContentStoreTypes.Asset[];
16
- getModelForUser: GetModelForUser;
17
- }): {
18
- assets: ContentStoreTypes.Asset[];
19
- };
20
- export declare function removeHiddenFields(opts: {
21
- documents: ContentStoreTypes.Document[];
22
- assets: ContentStoreTypes.Asset[];
23
- getModelForUser: GetModelForUser;
24
- }): {
25
- documents: ContentStoreTypes.Document[];
26
- assets: ContentStoreTypes.Asset[];
27
- };
28
- export {};
29
- //# sourceMappingURL=remove-hidden.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remove-hidden.d.ts","sourceRoot":"","sources":["../../src/utils/remove-hidden.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,KAAK,CAAC;AAExC,aAAK,eAAe,GAAG,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,KAAK,QAAQ,CAAC,eAAe,CAAC;AA2LnH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC;IAAC,eAAe,EAAE,eAAe,CAAA;CAAE,GAAG;IACrH,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC;CAC3C,CAAC;AACF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IAAE,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAAC,eAAe,EAAE,eAAe,CAAA;CAAE,GAAG;IAC/G,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,CAAC;CACrC,CAAC;AACF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAAC,eAAe,EAAE,eAAe,CAAA;CAAE,GAAG;IACxJ,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC;IACxC,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,CAAC;CACrC,CAAC"}
@@ -1,199 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.removeHiddenFields = void 0;
7
- const lodash_1 = __importDefault(require("lodash"));
8
- const removeHiddenFieldsInField = ({ field, modelField, srcType, srcProjectId, getModelForUser }) => {
9
- var _a;
10
- if (modelField.hidden || field.hidden) {
11
- return undefined;
12
- }
13
- if (field.type === 'model') {
14
- if (modelField.type !== 'model') {
15
- throw new Error(`Model with type ${modelField.type} not matches the field type ${field.type}`);
16
- }
17
- if (field.localized) {
18
- return {
19
- ...field,
20
- locales: Object.entries(field.locales).reduce((localesRes, [locale, localeObj]) => {
21
- var _a;
22
- const model = getModelForUser({
23
- srcType,
24
- srcProjectId,
25
- name: localeObj.srcModelName
26
- });
27
- localesRes[locale] = {
28
- ...localeObj,
29
- fields: removeHiddenFieldsInObject({
30
- fields: localeObj.fields,
31
- modelFields: (_a = model.fields) !== null && _a !== void 0 ? _a : [],
32
- getModelForUser,
33
- srcType,
34
- srcProjectId
35
- })
36
- };
37
- return localesRes;
38
- }, {})
39
- };
40
- }
41
- else if (!field.isUnset) {
42
- const model = getModelForUser({
43
- srcType,
44
- srcProjectId,
45
- name: field.srcModelName
46
- });
47
- return {
48
- ...field,
49
- fields: removeHiddenFieldsInObject({
50
- fields: field.fields,
51
- modelFields: (_a = model.fields) !== null && _a !== void 0 ? _a : [],
52
- getModelForUser,
53
- srcType,
54
- srcProjectId
55
- })
56
- };
57
- }
58
- }
59
- if (field.type === 'object') {
60
- if (modelField.type !== 'object') {
61
- throw new Error(`Model with type ${modelField.type} not matches the field type ${field.type}`);
62
- }
63
- if (field.localized) {
64
- return {
65
- ...field,
66
- locales: Object.entries(field.locales).reduce((localesRes, [locale, localeObj]) => {
67
- localesRes[locale] = {
68
- ...localeObj,
69
- fields: removeHiddenFieldsInObject({
70
- fields: localeObj.fields,
71
- modelFields: modelField.fields,
72
- getModelForUser,
73
- srcType,
74
- srcProjectId
75
- })
76
- };
77
- return localesRes;
78
- }, {})
79
- };
80
- }
81
- else if (!field.isUnset) {
82
- return {
83
- ...field,
84
- fields: removeHiddenFieldsInObject({
85
- fields: field.fields,
86
- modelFields: modelField.fields,
87
- getModelForUser,
88
- srcType,
89
- srcProjectId
90
- })
91
- };
92
- }
93
- }
94
- if (field.type === 'list') {
95
- if (modelField.type !== 'list') {
96
- throw new Error(`Model with type ${modelField.type} not matches the field type ${field.type}`);
97
- }
98
- if (field.localized) {
99
- return {
100
- ...field,
101
- locales: Object.entries(field.locales).reduce((localesRes, [locale, localeObj]) => {
102
- localesRes[locale] = {
103
- ...localeObj,
104
- items: removeHiddenFieldsInList({
105
- items: localeObj.items,
106
- modelField: modelField.items,
107
- getModelForUser,
108
- srcType,
109
- srcProjectId
110
- })
111
- };
112
- return localesRes;
113
- }, {})
114
- };
115
- }
116
- else {
117
- return {
118
- ...field,
119
- items: removeHiddenFieldsInList({
120
- items: field.items,
121
- modelField: modelField.items,
122
- getModelForUser,
123
- srcType,
124
- srcProjectId
125
- })
126
- };
127
- }
128
- }
129
- return field;
130
- };
131
- const removeHiddenFieldsInList = ({ items, modelField, srcType, srcProjectId, getModelForUser }) => {
132
- return items.flatMap((item) => {
133
- const processedItem = removeHiddenFieldsInField({
134
- field: item,
135
- getModelForUser,
136
- modelField,
137
- srcType,
138
- srcProjectId
139
- });
140
- return processedItem ? [processedItem] : [];
141
- });
142
- };
143
- const removeHiddenFieldsInObject = ({ fields, modelFields, srcType, srcProjectId, getModelForUser }) => {
144
- return Object.entries(fields).reduce((res, [fieldName, field]) => {
145
- const modelField = modelFields.find((modelField) => modelField.name === fieldName);
146
- if (!modelField) {
147
- throw new Error(`Cant find modelField for field ${fieldName}`);
148
- }
149
- const processedField = removeHiddenFieldsInField({
150
- field,
151
- modelField,
152
- srcType,
153
- srcProjectId,
154
- getModelForUser
155
- });
156
- if (processedField) {
157
- res[fieldName] = field;
158
- }
159
- return res;
160
- }, {});
161
- };
162
- function removeHiddenFields({ documents, assets, getModelForUser }) {
163
- const processedAssets = assets === null || assets === void 0 ? void 0 : assets.map((asset) => {
164
- if (asset.hidden) {
165
- return lodash_1.default.omit(asset, ['fields']);
166
- }
167
- return asset;
168
- });
169
- const processedDocuments = documents === null || documents === void 0 ? void 0 : documents.flatMap((document) => {
170
- var _a;
171
- if (document.hidden) {
172
- return {
173
- ...document,
174
- fields: {}
175
- };
176
- }
177
- const model = getModelForUser({
178
- name: document.srcModelName,
179
- srcType: document.srcType,
180
- srcProjectId: document.srcProjectId
181
- });
182
- return {
183
- ...document,
184
- fields: removeHiddenFieldsInObject({
185
- fields: document.fields,
186
- modelFields: (_a = model.fields) !== null && _a !== void 0 ? _a : [],
187
- srcType: document.srcType,
188
- srcProjectId: document.srcProjectId,
189
- getModelForUser
190
- })
191
- };
192
- });
193
- return {
194
- assets: processedAssets,
195
- documents: processedDocuments
196
- };
197
- }
198
- exports.removeHiddenFields = removeHiddenFields;
199
- //# sourceMappingURL=remove-hidden.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remove-hidden.js","sourceRoot":"","sources":["../../src/utils/remove-hidden.ts"],"names":[],"mappings":";;;;;;AACA,oDAAuB;AAWvB,MAAM,yBAAyB,GAAG,CAAuF,EACrH,KAAK,EACL,UAAU,EACV,OAAO,EACP,YAAY,EACZ,eAAe,EAIlB,EAAiB,EAAE;;IAChB,IAAI,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE;QACnC,OAAO,SAAS,CAAC;KACpB;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;QACxB,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,CAAC,IAAI,+BAA+B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;SAClG;QACD,IAAI,KAAK,CAAC,SAAS,EAAE;YACjB,OAAO;gBACH,GAAG,KAAK;gBACR,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE;;oBAC9E,MAAM,KAAK,GAAG,eAAe,CAAC;wBAC1B,OAAO;wBACP,YAAY;wBACZ,IAAI,EAAE,SAAS,CAAC,YAAY;qBAC/B,CAAC,CAAC;oBACH,UAAU,CAAC,MAAM,CAAC,GAAG;wBACjB,GAAG,SAAS;wBACZ,MAAM,EAAE,0BAA0B,CAAC;4BAC/B,MAAM,EAAE,SAAS,CAAC,MAAM;4BACxB,WAAW,EAAE,MAAA,KAAK,CAAC,MAAM,mCAAI,EAAE;4BAC/B,eAAe;4BACf,OAAO;4BACP,YAAY;yBACf,CAAC;qBACL,CAAC;oBACF,OAAO,UAAU,CAAC;gBACtB,CAAC,EAAE,EAA8D,CAAC;aACrE,CAAC;SACL;aAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YACvB,MAAM,KAAK,GAAG,eAAe,CAAC;gBAC1B,OAAO;gBACP,YAAY;gBACZ,IAAI,EAAE,KAAK,CAAC,YAAY;aAC3B,CAAC,CAAC;YACH,OAAO;gBACH,GAAG,KAAK;gBACR,MAAM,EAAE,0BAA0B,CAAC;oBAC/B,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,WAAW,EAAE,MAAA,KAAK,CAAC,MAAM,mCAAI,EAAE;oBAC/B,eAAe;oBACf,OAAO;oBACP,YAAY;iBACf,CAAC;aACL,CAAC;SACL;KACJ;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;QACzB,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,CAAC,IAAI,+BAA+B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;SAClG;QACD,IAAI,KAAK,CAAC,SAAS,EAAE;YACjB,OAAO;gBACH,GAAG,KAAK;gBACR,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE;oBAC9E,UAAU,CAAC,MAAM,CAAC,GAAG;wBACjB,GAAG,SAAS;wBACZ,MAAM,EAAE,0BAA0B,CAAC;4BAC/B,MAAM,EAAE,SAAS,CAAC,MAAM;4BACxB,WAAW,EAAE,UAAU,CAAC,MAAM;4BAC9B,eAAe;4BACf,OAAO;4BACP,YAAY;yBACf,CAAC;qBACL,CAAC;oBACF,OAAO,UAAU,CAAC;gBACtB,CAAC,EAAE,EAA+D,CAAC;aACtE,CAAC;SACL;aAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YACvB,OAAO;gBACH,GAAG,KAAK;gBACR,MAAM,EAAE,0BAA0B,CAAC;oBAC/B,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,WAAW,EAAE,UAAU,CAAC,MAAM;oBAC9B,eAAe;oBACf,OAAO;oBACP,YAAY;iBACf,CAAC;aACL,CAAC;SACL;KACJ;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE;QACvB,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,CAAC,IAAI,+BAA+B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;SAClG;QACD,IAAI,KAAK,CAAC,SAAS,EAAE;YACjB,OAAO;gBACH,GAAG,KAAK;gBACR,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE;oBAC9E,UAAU,CAAC,MAAM,CAAC,GAAG;wBACjB,GAAG,SAAS;wBACZ,KAAK,EAAE,wBAAwB,CAAC;4BAC5B,KAAK,EAAE,SAAS,CAAC,KAAK;4BACtB,UAAU,EAAE,UAAU,CAAC,KAAK;4BAC5B,eAAe;4BACf,OAAO;4BACP,YAAY;yBACf,CAAC;qBACL,CAAC;oBACF,OAAO,UAAU,CAAC;gBACtB,CAAC,EAAE,EAA6D,CAAC;aACpE,CAAC;SACL;aAAM;YACH,OAAO;gBACH,GAAG,KAAK;gBACR,KAAK,EAAE,wBAAwB,CAAC;oBAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,UAAU,EAAE,UAAU,CAAC,KAAK;oBAC5B,eAAe;oBACf,OAAO;oBACP,YAAY;iBACf,CAAC;aACL,CAAC;SACL;KACJ;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,EAC9B,KAAK,EACL,UAAU,EACV,OAAO,EACP,YAAY,EACZ,eAAe,EAIlB,EAAE,EAAE;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1B,MAAM,aAAa,GAAG,yBAAyB,CAAC;YAC5C,KAAK,EAAE,IAAI;YACX,eAAe;YACf,UAAU;YACV,OAAO;YACP,YAAY;SACf,CAAC,CAAC;QACH,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAAC,EAChC,MAAM,EACN,WAAW,EACX,OAAO,EACP,YAAY,EACZ,eAAe,EAIlB,EAAE,EAAE;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,EAAE;QAC7D,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QACnF,IAAI,CAAC,UAAU,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,SAAS,EAAE,CAAC,CAAC;SAClE;QACD,MAAM,cAAc,GAAG,yBAAyB,CAAC;YAC7C,KAAK;YACL,UAAU;YACV,OAAO;YACP,YAAY;YACZ,eAAe;SAClB,CAAC,CAAC;QACH,IAAI,cAAc,EAAE;YAChB,GAAG,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;SAC1B;QACD,OAAO,GAAG,CAAC;IACf,CAAC,EAAE,EAAqD,CAAC,CAAC;AAC9D,CAAC,CAAC;AAYF,SAAgB,kBAAkB,CAAC,EAC/B,SAAS,EACT,MAAM,EACN,eAAe,EAKlB;IAIG,MAAM,eAAe,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1C,IAAI,KAAK,CAAC,MAAM,EAAE;YACd,OAAO,gBAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;SACpC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,MAAM,kBAAkB,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;;QACvD,IAAI,QAAQ,CAAC,MAAM,EAAE;YACjB,OAAO;gBACH,GAAG,QAAQ;gBACX,MAAM,EAAE,EAAE;aACb,CAAC;SACL;QACD,MAAM,KAAK,GAAG,eAAe,CAAC;YAC1B,IAAI,EAAE,QAAQ,CAAC,YAAY;YAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,YAAY,EAAE,QAAQ,CAAC,YAAY;SACtC,CAAC,CAAC;QACH,OAAO;YACH,GAAG,QAAQ;YACX,MAAM,EAAE,0BAA0B,CAAC;gBAC/B,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,WAAW,EAAE,MAAA,KAAK,CAAC,MAAM,mCAAI,EAAE;gBAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,YAAY,EAAE,QAAQ,CAAC,YAAY;gBACnC,eAAe;aAClB,CAAC;SACL,CAAC;IACN,CAAC,CAAC,CAAC;IACH,OAAO;QACH,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,kBAAkB;KAChC,CAAC;AACN,CAAC;AA7CD,gDA6CC"}