@esri/hub-common 9.1.3 → 9.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/es2017/content.js +127 -19
  2. package/dist/es2017/content.js.map +1 -1
  3. package/dist/es2017/search/_searchContent.js +62 -0
  4. package/dist/es2017/search/_searchContent.js.map +1 -0
  5. package/dist/es2017/search/content-utils.js +422 -0
  6. package/dist/es2017/search/content-utils.js.map +1 -0
  7. package/dist/es2017/search/index.js +4 -0
  8. package/dist/es2017/search/index.js.map +1 -1
  9. package/dist/es2017/search/types.js +1 -0
  10. package/dist/es2017/search/types.js.map +1 -0
  11. package/dist/es2017/search/utils.js +344 -0
  12. package/dist/es2017/search/utils.js.map +1 -0
  13. package/dist/esm/content.js +129 -19
  14. package/dist/esm/content.js.map +1 -1
  15. package/dist/esm/search/_searchContent.js +70 -0
  16. package/dist/esm/search/_searchContent.js.map +1 -0
  17. package/dist/esm/search/content-utils.js +426 -0
  18. package/dist/esm/search/content-utils.js.map +1 -0
  19. package/dist/esm/search/index.js +4 -0
  20. package/dist/esm/search/index.js.map +1 -1
  21. package/dist/esm/search/types.js +1 -0
  22. package/dist/esm/search/types.js.map +1 -0
  23. package/dist/esm/search/utils.js +341 -0
  24. package/dist/esm/search/utils.js.map +1 -0
  25. package/dist/node/content.js +128 -20
  26. package/dist/node/content.js.map +1 -1
  27. package/dist/node/search/_searchContent.js +66 -0
  28. package/dist/node/search/_searchContent.js.map +1 -0
  29. package/dist/node/search/content-utils.js +432 -0
  30. package/dist/node/search/content-utils.js.map +1 -0
  31. package/dist/node/search/index.js +4 -0
  32. package/dist/node/search/index.js.map +1 -1
  33. package/dist/node/search/types.js +3 -0
  34. package/dist/node/search/types.js.map +1 -0
  35. package/dist/node/search/utils.js +357 -0
  36. package/dist/node/search/utils.js.map +1 -0
  37. package/dist/types/content.d.ts +23 -0
  38. package/dist/types/search/_searchContent.d.ts +7 -0
  39. package/dist/types/search/content-utils.d.ts +70 -0
  40. package/dist/types/search/index.d.ts +4 -0
  41. package/dist/types/search/types.d.ts +294 -0
  42. package/dist/types/search/utils.d.ts +92 -0
  43. package/dist/umd/common.umd.js +992 -25
  44. package/dist/umd/common.umd.js.map +1 -1
  45. package/dist/umd/common.umd.min.js +1 -1
  46. package/dist/umd/common.umd.min.js.map +1 -1
  47. package/package.json +3 -3
@@ -0,0 +1,341 @@
1
+ /* Copyright (c) 2018-2021 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+ import { __spreadArrays } from "tslib";
4
+ import { cloneObject, unique } from "../util";
5
+ /**
6
+ * Well known APIs
7
+ * Short-forms for specifying common APIs
8
+ */
9
+ export var SEARCH_APIS = {
10
+ arcgis: {
11
+ label: "ArcGIS Online",
12
+ url: "https://www.arcgis.com",
13
+ type: "arcgis",
14
+ },
15
+ arcgisQA: {
16
+ label: "ArcGIS Online QAEXT",
17
+ url: "https://qaext.arcgis.com",
18
+ type: "arcgis",
19
+ },
20
+ arcgisDEV: {
21
+ label: "ArcGIS Online DEVEXT",
22
+ url: "https://devext.arcgis.com",
23
+ type: "arcgis",
24
+ },
25
+ hub: {
26
+ label: "ArcGIS Hub",
27
+ url: "https://hub.arcgis.com/api",
28
+ type: "arcgis-hub",
29
+ },
30
+ hubDEV: {
31
+ label: "ArcGIS Hub DEV",
32
+ url: "https://hubdev.arcgis.com/api",
33
+ type: "arcgis-hub",
34
+ },
35
+ hubQA: {
36
+ label: "ArcGIS Hub QA",
37
+ url: "https://hubqa.arcgis.com/api",
38
+ type: "arcgis-hub",
39
+ },
40
+ };
41
+ /**
42
+ * @private
43
+ * Convert api "names" into full ApiDefinitions
44
+ * @param apis
45
+ * @returns
46
+ */
47
+ export function expandApis(apis) {
48
+ return apis.map(function (api) {
49
+ if (typeof api === "string" && api in SEARCH_APIS) {
50
+ return SEARCH_APIS[api];
51
+ }
52
+ else {
53
+ // it's an object, so we trust that it's well formed
54
+ return api;
55
+ }
56
+ });
57
+ }
58
+ /**
59
+ * @private
60
+ * Merge multiple search responses
61
+ *
62
+ * Naieve implementation that just merges arrays
63
+ * @param responses
64
+ * @returns
65
+ */
66
+ export function mergeSearchResults(responses) {
67
+ // Merge content
68
+ var content = responses.reduce(function (acc, response) {
69
+ if (response.content) {
70
+ acc = acc.concat(response.content);
71
+ }
72
+ return acc;
73
+ }, []);
74
+ // Merge Facets
75
+ var facets = responses.reduce(function (acc, response) {
76
+ if (response.facets) {
77
+ acc = acc.concat(response.facets);
78
+ }
79
+ return acc;
80
+ }, []);
81
+ return { content: content, facets: facets };
82
+ }
83
+ /**
84
+ * @private
85
+ * Merge two date ranges by taking the longest span
86
+ * @param dr1
87
+ * @param dr2
88
+ * @returns
89
+ */
90
+ export function mergeDateRange(dr1, dr2) {
91
+ var result = cloneObject(dr1);
92
+ // feels like there is a more concise way to do this...
93
+ if (dr2.from < dr1.from) {
94
+ result.from = dr2.from;
95
+ }
96
+ if (dr2.to > dr1.to) {
97
+ result.to = dr2.to;
98
+ }
99
+ return result;
100
+ }
101
+ /**
102
+ * @private
103
+ * Merge two [`MatchOptions`](../MatchOptions)
104
+ *
105
+ * Currently a naieve implementation where the arrays are simply merged
106
+ *
107
+ * @param mo1
108
+ * @param mo2
109
+ * @returns
110
+ */
111
+ export function mergeMatchOptions(mo1, mo2) {
112
+ var result = {};
113
+ // None of these props are required, so we can't just
114
+ // use Object.keys/.entries
115
+ var props = ["any", "all", "not", "exact"];
116
+ props.forEach(function (prop) {
117
+ var key = prop;
118
+ var merged = __spreadArrays(getMatchValue(mo1, key), getMatchValue(mo2, key));
119
+ if (merged.length) {
120
+ // remove any dupes and set on the return
121
+ result[key] = merged.filter(unique);
122
+ }
123
+ });
124
+ return result;
125
+ }
126
+ /**
127
+ * Get the value of a property on an IMatchOptions
128
+ *
129
+ * This is complex b/c all the props are optional, and
130
+ * they could be a simple string, or an array of strings.
131
+ *
132
+ * This function normalizes all that and returns an array,
133
+ * which may or may not be empty
134
+ * @param option
135
+ * @param key
136
+ * @returns
137
+ */
138
+ function getMatchValue(option, key) {
139
+ var matchValue = [];
140
+ if (option[key]) {
141
+ var val = option[key];
142
+ if (Array.isArray(val)) {
143
+ matchValue = val;
144
+ }
145
+ else {
146
+ matchValue = [val];
147
+ }
148
+ }
149
+ return matchValue;
150
+ }
151
+ /**
152
+ * @private
153
+ * Convert a field value into a MatchOptions if it's not already one
154
+ * @param value
155
+ * @returns
156
+ */
157
+ export function valueToMatchOptions(value) {
158
+ var result = {};
159
+ if (Array.isArray(value)) {
160
+ result = {
161
+ any: value,
162
+ };
163
+ }
164
+ else {
165
+ if (typeof value === "string") {
166
+ result = {
167
+ any: [value],
168
+ };
169
+ }
170
+ if (typeof value === "object") {
171
+ result = value;
172
+ }
173
+ }
174
+ return result;
175
+ }
176
+ /**
177
+ * @private
178
+ * Convert a RelativeDate to a DateRange<number>
179
+ * @param relative
180
+ * @returns
181
+ */
182
+ export function relativeDateToDateRange(relative) {
183
+ // hash of offsets
184
+ var offsetMs = {
185
+ min: 1000 * 60,
186
+ hours: 1000 * 60 * 60,
187
+ days: 1000 * 60 * 60 * 24,
188
+ weeks: 1000 * 60 * 60 * 24 * 7,
189
+ };
190
+ var now = new Date();
191
+ // default
192
+ var result = {
193
+ type: "date-range",
194
+ from: now.getTime(),
195
+ to: now.getTime(),
196
+ };
197
+ //
198
+ switch (relative.unit) {
199
+ case "hours":
200
+ case "days":
201
+ case "weeks":
202
+ result.from = result.to - offsetMs[relative.unit] * relative.num;
203
+ break;
204
+ case "months":
205
+ // get the current month and subtract num
206
+ now.setMonth(now.getMonth() - relative.num);
207
+ result.from = now.getTime();
208
+ break;
209
+ case "years":
210
+ now.setFullYear(now.getFullYear() - relative.num);
211
+ result.from = now.getTime();
212
+ break;
213
+ }
214
+ return result;
215
+ }
216
+ /**
217
+ * @private
218
+ * As a final `ISearchOptions` object gets created, many such objects are created, and
219
+ * need to be systematically "merged" so as to return consistently structured `q` and `filter`
220
+ * values.
221
+ * @param so1
222
+ * @param so2
223
+ * @param join
224
+ * @returns
225
+ */
226
+ export function mergeSearchOptions(so1, so2, join) {
227
+ var result = cloneObject(so1);
228
+ var q = so2.q, filter = so2.filter;
229
+ if (q) {
230
+ result.q = (result.q ? " (" + result.q + " " + join + " " + q + ")" : q).trim();
231
+ }
232
+ if (filter) {
233
+ result.filter = (result.filter ? "(" + result.filter + " " + join + " " + filter + ")" : filter).trim();
234
+ }
235
+ return result;
236
+ }
237
+ /**
238
+ * @private
239
+ * Serialize a `MatchOptions` into `q` or `filter` on an `ISearchOptions`
240
+ * @param key
241
+ * @param opts
242
+ * @returns
243
+ */
244
+ export function serializeMatchOptions(key, opts) {
245
+ var result = {
246
+ q: "",
247
+ filter: "",
248
+ };
249
+ if (opts.exact) {
250
+ // defined separately for refactoring later
251
+ var userFilterableFields = [
252
+ "username",
253
+ "firstname",
254
+ "lastname",
255
+ "fullname",
256
+ "email",
257
+ ];
258
+ var itemFilterableFields = [
259
+ "title",
260
+ "tags",
261
+ "typekeywords",
262
+ "type",
263
+ "name",
264
+ "owner",
265
+ ];
266
+ var groupFilterableFields = ["title", "typekeywords", "owner"];
267
+ var filterableFields = __spreadArrays(userFilterableFields, itemFilterableFields, groupFilterableFields);
268
+ if (filterableFields.includes(key)) {
269
+ result.filter = serializeStringOrArray("AND", key, opts.exact);
270
+ }
271
+ else {
272
+ // Treat it the same as .all
273
+ if (typeof opts.exact === "string") {
274
+ if (!opts.all) {
275
+ opts.all = [];
276
+ }
277
+ if (typeof opts.all === "string") {
278
+ opts.all = [opts.all];
279
+ }
280
+ opts.all.push(opts.exact);
281
+ }
282
+ if (Array.isArray(opts.exact)) {
283
+ if (!opts.all) {
284
+ opts.all = [];
285
+ }
286
+ if (typeof opts.all === "string") {
287
+ opts.all = [opts.all];
288
+ }
289
+ opts.all = opts.all.concat(opts.exact);
290
+ }
291
+ }
292
+ }
293
+ // Handle the other props
294
+ if (opts.any) {
295
+ result.q = serializeStringOrArray("OR", key, opts.any);
296
+ }
297
+ if (opts.all) {
298
+ result.q =
299
+ (result.q ? result.q + " AND " : "") +
300
+ serializeStringOrArray("AND", key, opts.all);
301
+ }
302
+ if (opts.not) {
303
+ // negate the entries if they are not
304
+ result.q =
305
+ (result.q ? result.q + " AND " : "") +
306
+ serializeStringOrArray("OR", "-" + key, opts.not);
307
+ }
308
+ return result;
309
+ }
310
+ /**
311
+ * @private
312
+ * Serialize a DateRange<number> into a Portal Query string
313
+ * @param key
314
+ * @param range
315
+ * @returns
316
+ */
317
+ export function serializeDateRange(key, range) {
318
+ return {
319
+ q: key + ":[" + range.from + " TO " + range.to + "]",
320
+ filter: "",
321
+ };
322
+ }
323
+ /**
324
+ * @private
325
+ * Serialize a `string` or `string[]` into a string
326
+ * @param join
327
+ * @param key
328
+ * @param value
329
+ * @returns
330
+ */
331
+ export function serializeStringOrArray(join, key, value) {
332
+ var q = "";
333
+ if (Array.isArray(value)) {
334
+ q = "(" + key + ":\"" + value.join("\" " + join + " " + key + ":\"") + "\")";
335
+ }
336
+ else {
337
+ q = key + ":\"" + value + "\"";
338
+ }
339
+ return q;
340
+ }
341
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/search/utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.datasetToItem = exports.datasetToContent = exports.itemToContent = exports.getItemHubType = exports.getFamily = exports.parseItemCategories = exports.removeContextFromSlug = exports.addContextToSlug = exports.isSlug = exports.parseDatasetId = exports.getContentIdentifier = exports.getItemHubId = exports.getItemLayerId = exports.getLayerIdFromUrl = exports.isFeatureService = exports.getCollection = exports.getTypeCategories = exports.normalizeItemType = exports.getTypes = exports.getCategory = void 0;
3
+ exports.setContentSiteUrls = exports.setContentHubId = exports.setContentType = exports.datasetToItem = exports.datasetToContent = exports.itemToContent = exports.getItemHubType = exports.getFamily = exports.parseItemCategories = exports.removeContextFromSlug = exports.addContextToSlug = exports.isSlug = exports.parseDatasetId = exports.getContentIdentifier = exports.getItemHubId = exports.getItemLayerId = exports.getLayerIdFromUrl = exports.isFeatureService = exports.getCollection = exports.getTypeCategories = exports.normalizeItemType = exports.getTypes = exports.getCategory = void 0;
4
4
  const collections_1 = require("./collections");
5
5
  const categories_1 = require("./categories");
6
6
  const extent_1 = require("./extent");
@@ -221,14 +221,11 @@ function getContentIdentifier(content, site) {
221
221
  // site data instead. Because this one is the original one that was used
222
222
  // to create the page url (not mutable once created) and the slug (below)
223
223
  // generated by the hub-indexer could simply change with page name.
224
- // TODO: we check both "Hub Page" and "Site Page" because we don't know whether the site is a portal or not
225
- // In the future, the site object will have a site.isPortal() function that we can leverage
226
- // instead of hardcoding the types here.
227
- if (utils_1.includes(["Hub Page", "Site Page"], content.type)) {
224
+ if (isPageContent(content)) {
228
225
  // check if the page is linked to the current site
229
226
  const pages = objects_1.getProp(site, "data.values.pages") || [];
230
- const page = pages.find((p) => p.id === content.id);
231
227
  // if so, return the page slug otherwise the page id
228
+ const page = pages.find((p) => p.id === content.id);
232
229
  return page ? page.slug : content.id;
233
230
  }
234
231
  // If a slug is present, always return it
@@ -399,8 +396,8 @@ function itemToContent(item) {
399
396
  const createdDate = new Date(item.created);
400
397
  const createdDateSource = "item.created";
401
398
  const properties = item.properties;
402
- const normalizedType = normalizeItemType(item);
403
399
  const content = Object.assign({}, item, {
400
+ identifier: item.id,
404
401
  // no server errors when fetching the item directly
405
402
  errors: [],
406
403
  // store a reference to the item
@@ -410,10 +407,8 @@ function itemToContent(item) {
410
407
  // presumably there to use as the default file name when downloading
411
408
  // we don't store item.name in the Hub API and we use name for title
412
409
  name: item.title,
413
- family: getFamily(normalizedType),
414
410
  // TODO: hubType is no longer used, remove it at next breaking change
415
411
  hubType: getItemHubType(item),
416
- normalizedType,
417
412
  categories: parseItemCategories(item.categories),
418
413
  itemCategories: item.categories,
419
414
  // can we strip HTML from description, and do we need to trim it to a X chars?
@@ -443,7 +438,7 @@ function itemToContent(item) {
443
438
  updatedDateSource: "item.modified",
444
439
  structuredLicense: get_structured_license_1.getStructuredLicense(item.licenseInfo),
445
440
  });
446
- return content;
441
+ return exports.setContentType(content, item.type);
447
442
  }
448
443
  exports.itemToContent = itemToContent;
449
444
  /**
@@ -454,17 +449,14 @@ exports.itemToContent = itemToContent;
454
449
  * @export
455
450
  */
456
451
  function datasetToContent(dataset) {
457
- // extract item from dataset, create content, & store a reference to the item
452
+ // extract item from dataset, create content from the item
458
453
  const item = datasetToItem(dataset);
459
454
  const content = itemToContent(item);
460
- content.item = item;
461
455
  // We remove these because the indexer doesn't actually
462
456
  // preserve the original item categories so this attribute is invalid
463
457
  delete content.itemCategories;
464
- // overwrite hubId
465
- content.hubId = dataset.id;
466
458
  // overwrite or add enrichments from Hub API
467
- const attributes = dataset.attributes;
459
+ const { id: hubId, attributes } = dataset;
468
460
  const {
469
461
  // common enrichments
470
462
  errors, boundary, extent, metadata, modified, modifiedProvenance, slug, searchDescription, groupIds,
@@ -485,10 +477,6 @@ function datasetToContent(dataset) {
485
477
  // NOTE: for layers and tables the Hub API returns the layer type
486
478
  // ("Feature Layer", "Table", "Raster Layer") instead of the item type
487
479
  type, } = attributes;
488
- // use the type returned by the API (i.e. possibly layer.type)
489
- content.type = type;
490
- content.normalizedType = normalizeItemType(Object.assign(Object.assign({}, content.item), { type }));
491
- content.family = getFamily(type);
492
480
  // NOTE: we could throw or return if there are errors
493
481
  // to prevent type errors trying to read properties below
494
482
  content.errors = errors;
@@ -532,7 +520,9 @@ function datasetToContent(dataset) {
532
520
  extent: orgExtent,
533
521
  };
534
522
  }
535
- return content;
523
+ // return a content with updated hubId and type
524
+ // along w/ related properties like identifier, family, etc
525
+ return exports.setContentType(exports.setContentHubId(content, hubId), type);
536
526
  }
537
527
  exports.datasetToContent = datasetToContent;
538
528
  /**
@@ -641,4 +631,122 @@ function datasetToItem(dataset) {
641
631
  };
642
632
  }
643
633
  exports.datasetToItem = datasetToItem;
634
+ /**
635
+ * retunrs a new content that has the specified type and
636
+ * and updated related properties like normalizedType, family, etc
637
+ * @param content orignal content
638
+ * @param type new type
639
+ * @returns new content
640
+ */
641
+ exports.setContentType = (content, type) => {
642
+ // get family and normalized type based on new type
643
+ const family = getFamily(type);
644
+ const normalizedType = normalizeItemType(Object.assign(Object.assign({}, content.item), { type }));
645
+ const updated = Object.assign(Object.assign({}, content), { type, family, normalizedType });
646
+ // update the relative URL to the content
647
+ // which is based on type and family
648
+ return appendContentUrls(updated, {
649
+ relative: getContentRelativeUrl(updated),
650
+ });
651
+ };
652
+ /**
653
+ * retunrs a new content that has the specified hubId and updated identifier
654
+ * @param content orignal content
655
+ * @param hubId new hubId
656
+ * @returns new content
657
+ */
658
+ exports.setContentHubId = (content, hubId) => {
659
+ const { id, slug } = content;
660
+ // get the identifier which is based on hubId
661
+ const identifier = slug || hubId || id;
662
+ const updated = Object.assign(Object.assign({}, content), { hubId, identifier });
663
+ // update the relative URL to the content
664
+ // which is based on identifier
665
+ return appendContentUrls(updated, {
666
+ relative: getContentRelativeUrl(updated),
667
+ });
668
+ };
669
+ /**
670
+ * append the absolute URL to the content on the site
671
+ * also updates the relative URL in case the
672
+ * @param content
673
+ * @param siteModel
674
+ * @returns
675
+ */
676
+ exports.setContentSiteUrls = (content, siteModel) => {
677
+ // recompute relative URL using a site specific identifier
678
+ const siteIdentifier = getContentIdentifier(content, siteModel);
679
+ const relative = getContentRelativeUrl(content, siteIdentifier);
680
+ // get the absolute URL to this content on the site
681
+ const siteUrl = objects_1.getProp(siteModel, "item.url").replace(/\/$/, "");
682
+ const site = `${siteUrl}${relative}`;
683
+ // append the updated URLs to a new content
684
+ return appendContentUrls(content, {
685
+ relative,
686
+ site,
687
+ });
688
+ };
689
+ // URL helpers
690
+ const appendContentUrls = (content, newUrls) => {
691
+ // merge new urls into existing ones and return a new content
692
+ const urls = Object.assign(Object.assign({}, content.urls), newUrls);
693
+ return Object.assign(Object.assign({}, content), { urls });
694
+ };
695
+ const getContentRelativeUrl = (content, siteIdentifier) => {
696
+ const { family } = content;
697
+ // prefer site specific identifier if passed in
698
+ const identifier = siteIdentifier || content.identifier;
699
+ // solution types have their own logic
700
+ let contentUrl = getSolutionUrl(content);
701
+ if (!contentUrl) {
702
+ const pluralizedFamilies = [
703
+ "app",
704
+ "dataset",
705
+ "document",
706
+ "map",
707
+ "template",
708
+ ];
709
+ // default to the catchall content route
710
+ let path = "/content";
711
+ if (content.family === "feedback") {
712
+ // exception
713
+ path = "/feedback/surveys";
714
+ }
715
+ else if (isPageContent(content)) {
716
+ // pages are in the document family,
717
+ // but instead of showing the page's metadata on /documents/about
718
+ // but we render the page on the pages route
719
+ path = "/pages";
720
+ }
721
+ else if (pluralizedFamilies.indexOf(family) > -1) {
722
+ // the rule
723
+ path = `/${family}s`;
724
+ }
725
+ contentUrl = `${path}/${identifier}`;
726
+ }
727
+ return contentUrl;
728
+ };
729
+ const getSolutionUrl = (content) => {
730
+ var _a;
731
+ let hubUrl;
732
+ const { normalizedType, identifier } = content;
733
+ if (normalizedType === "Solution") {
734
+ // NOTE: as per the above spreadsheet,
735
+ // solution types are now in the Template family
736
+ // but we don't send them to the route for initiative templates
737
+ if (((_a = content.typeKeywords) === null || _a === void 0 ? void 0 : _a.indexOf("Deployed")) > 0) {
738
+ // deployed solutions go to the generic content route
739
+ hubUrl = `/content/${identifier}`;
740
+ }
741
+ // others go to the solution about route
742
+ hubUrl = `/templates/${identifier}/about`;
743
+ }
744
+ return hubUrl;
745
+ };
746
+ // page helpers
747
+ // TODO: we check both "Hub Page" and "Site Page" because we don't know whether the site is a portal or not
748
+ // In the future, the site object will have a site.isPortal() function that we can leverage
749
+ // instead of hardcoding the types here.
750
+ // TODO: should this be based on normalizedType instead?
751
+ const isPageContent = (content) => utils_1.includes(["Hub Page", "Site Page"], content.type);
644
752
  //# sourceMappingURL=content.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/content.ts"],"names":[],"mappings":";;;AAKA,+CAA4C;AAC5C,6CAA2E;AAC3E,qCAAiE;AACjE,mCAA2C;AAE3C,uCAAoC;AACpC,2EAAsE;AACtE,iCAA+C;AAe/C,SAAS,kBAAkB,CAAC,UAAkB;IAC5C,MAAM,SAAS,GAAQ;QACrB,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,UAAU;KACrB,CAAC;IACF,OAAO,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC;AAC7C,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAa;IACzC,OAAO,CACL,MAAM;QACN,MAAM,CAAC,MAAM,IAAI;QACf,gBAAgB;QAChB,QAAQ,EAAE,qBAAY,CACpB,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACZ,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACZ,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACZ,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACb;KACF,CACF,CAAC;AACJ,CAAC;AAED,MAAM,KAAK,GAA8B,EAAE,CAAC;AAE5C,6CAA6C;AAC7C;;;;;;;;;;;GAWG;AACH,SAAgB,WAAW,CAAC,WAAmB,EAAE;IAC/C,+BAA+B;IAC/B,OAAO,CAAC,IAAI,CACV,gFAAgF,CACjF,CAAC;IACF,8BAA8B;IAC9B,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC3C,8BAA8B;IAC9B,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;AACxD,CAAC;AATD,kCASC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,QAAQ,CAAC,WAAmB,EAAE;IAC5C,OAAO,uBAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AAC/C,CAAC;AAFD,4BAEC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,iBAAiB,CAAC,OAAY,EAAE;IAC9C,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;IACpB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;IAC7C,IACE,IAAI,CAAC,IAAI,KAAK,kBAAkB;QAChC,CAAC,IAAI,CAAC,IAAI,KAAK,yBAAyB;YACtC,gBAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,EACpC;QACA,GAAG,GAAG,sBAAsB,CAAC;KAC9B;IACD,IACE,IAAI,CAAC,IAAI,KAAK,WAAW;QACzB,CAAC,IAAI,CAAC,IAAI,KAAK,yBAAyB;YACtC,gBAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,EACpC;QACA,GAAG,GAAG,UAAU,CAAC;KAClB;IACD,IACE,IAAI,CAAC,IAAI,KAAK,gBAAgB;QAC9B,gBAAQ,CAAC,YAAY,EAAE,uBAAuB,CAAC,EAC/C;QACA,GAAG,GAAG,yBAAyB,CAAC;KACjC;IACD,IACE,IAAI,CAAC,IAAI,KAAK,yBAAyB;QACvC,gBAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC,EAC7C;QACA,GAAG,GAAG,UAAU,CAAC;KAClB;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AA9BD,8CA8BC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,iBAAiB,CAAC,OAAY,EAAE;IAC9C,MAAM,IAAI,GAAW,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAW,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,QAAQ,EAAE;QACZ,qFAAqF;QACrF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;KACzB;SAAM;QACL,OAAO,CAAC,OAAO,CAAC,CAAC;KAClB;AACH,CAAC;AAXD,8CAWC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,aAAa,CAAC,WAAmB,EAAE;IACjD,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC;KACxB;IACD,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,yBAAW,CAAC,EAAE;QACjD,KAAK,MAAM,IAAI,IAAI,yBAAW,CAAC,UAAU,CAAC,EAAE;YAC1C,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE;gBACjD,KAAK,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;gBAC7B,OAAO,UAAU,CAAC;aACnB;SACF;KACF;AACH,CAAC;AAZD,sCAYC;AAED;;;;GAIG;AACU,QAAA,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC/C,OAAO,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,iBAAiB,CAAC;AAC1D,CAAC,CAAC;AAEF;;;;GAIG;AACU,QAAA,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE;IAC/C,MAAM,0BAA0B,GAAG,QAAQ,CAAC;IAC5C,MAAM,OAAO,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC7D,OAAO,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF;;;;GAIG;AACU,QAAA,cAAc,GAAG,CAAC,IAAW,EAAE,EAAE;IAC5C,8DAA8D;IAC9D,oFAAoF;IACpF,+EAA+E;IAC/E,OAAO,CACL,yBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;QAC3B,CAAC,wBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1B,gBAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC;YAC1C,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACU,QAAA,YAAY,GAAG,CAAC,IAAW,EAAE,EAAE;IAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;QAC5B,oCAAoC;QACpC,OAAO;KACR;IACD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IACnB,MAAM,OAAO,GAAG,sBAAc,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3C,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,oBAAoB,CAClC,OAAoB,EACpB,IAAa;IAEb,sFAAsF;IACtF,IAAI,gBAAQ,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;QACtD,OAAO,OAAO,CAAC,EAAE,CAAC;KACnB;IAED,oEAAoE;IACpE,wEAAwE;IACxE,yEAAyE;IACzE,mEAAmE;IAEnE,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE;QAC1B,kDAAkD;QAClD,MAAM,KAAK,GAAkB,iBAAO,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC;QACtE,oDAAoD;QACpD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;KACtC;IAED,yCAAyC;IACzC,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,IAAI,IAAY,CAAC;QACjB,MAAM,MAAM,GAAW,iBAAO,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAC1D,gDAAgD;QAChD,IAAI,iBAAO,CAAC,IAAI,EAAE,wBAAwB,CAAC,EAAE;YAC3C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;SACrB;aAAM;YACL,uEAAuE;YACvE,IAAI,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC;KACb;IAED,OAAO,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,EAAE,CAAC;AACrC,CAAC;AArCD,oDAqCC;AAED,sBAAsB;AACtB,eAAe;AACf,sBAAsB;AAEtB;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,SAAiB;IAI9C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC;AAND,wCAMC;AAED;;;;;;GAMG;AACH,SAAgB,MAAM,CAAC,UAAkB;IACvC,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,IAAI,cAAM,CAAC,MAAM,CAAC,EAAE;QAC7B,sDAAsD;QACtD,OAAO,KAAK,CAAC;KACd;IACD,+BAA+B;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AARD,wBAQC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAC,IAAY,EAAE,OAAe;IAC5D,2DAA2D;IAC3D,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC;QACZ,sEAAsE;KACvE;SAAM;QACL,OAAO,GAAG,OAAO,KAAK,IAAI,EAAE,CAAC;KAC9B;AACH,CAAC;AARD,4CAQC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,IAAY,EAAE,OAAe;IACjE,IAAI,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE;QACzC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KACtC;SAAM;QACL,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAND,sDAMC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAgB,mBAAmB,CAAC,UAAoB;IACtD,IAAI,CAAC,UAAU;QAAE,OAAO,UAAU,CAAC;IAEnC,MAAM,OAAO,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACvE,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,gBAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AAPD,kDAOC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,IAAY;IACpC,IAAI,MAAM,CAAC;IACX,8EAA8E;IAC9E,mVAAmV;IACnV,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE;QAClC,KAAK,eAAe;YAClB,MAAM,GAAG,SAAS,CAAC;YACnB,MAAM;QACR,KAAK,iBAAiB,CAAC;QACvB,KAAK,cAAc;YACjB,sDAAsD;YACtD,MAAM,GAAG,KAAK,CAAC;YACf,MAAM;QACR,KAAK,iBAAiB;YACpB,MAAM,GAAG,UAAU,CAAC;YACpB,MAAM;QACR,KAAK,aAAa,CAAC;QACnB,KAAK,6BAA6B,CAAC;QACnC,KAAK,iBAAiB;YACpB,MAAM,GAAG,SAAS,CAAC;YACnB,MAAM;QACR;YACE,oCAAoC;YACpC,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;KACpD;IACD,OAAO,MAAmB,CAAC;AAC7B,CAAC;AA1BD,8BA0BC;AAED;;;;;;GAMG;AACH,SAAgB,cAAc,CAAC,UAA0B;IACvD,+BAA+B;IAC/B,OAAO,CAAC,IAAI,CACV,iFAAiF,CAClF,CAAC;IACF,8BAA8B;IAC9B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,UAAU,GAAG,EAAE,IAAI,EAAE,UAAU,EAAW,CAAC;KAC5C;IACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC/C,+DAA+D;IAC/D,OAAO,aAAa,CAAC,QAAQ,CAAY,CAAC;AAC5C,CAAC;AAZD,wCAYC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,IAAW;IACvC,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,iBAAiB,GAAG,cAAc,CAAC;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE;QACtC,UAAU,EAAE,IAAI,CAAC,EAAE;QACnB,mDAAmD;QACnD,MAAM,EAAE,EAAE;QACV,gCAAgC;QAChC,IAAI;QACJ,6DAA6D;QAC7D,uDAAuD;QACvD,oEAAoE;QACpE,oEAAoE;QACpE,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,qEAAqE;QACrE,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;QAC7B,UAAU,EAAE,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC;QAChD,cAAc,EAAE,IAAI,CAAC,UAAU;QAC/B,8EAA8E;QAC9E,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW;QACzC,SAAS,EAAE;YACT,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,QAAQ,EAAE,IAAI,CAAC,KAAK;SACrB;QACD,WAAW,EAAE;YACX,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,OAAO,EAAE,IAAI,CAAC,WAAW,IAAI,MAAM;SACpC;QACD,sDAAsD;QACtD,WAAW,EAAE,UAAU,IAAI,UAAU,CAAC,KAAK;QAC3C,UAAU,EAAE,UAAU,IAAI,UAAU,CAAC,OAAO;QAC5C,OAAO,EAAE,UAAU,IAAI,UAAU,CAAC,OAAO;QACzC,cAAc,EAAE,2BAAc,CAAC,IAAI,CAAC;QACpC,oCAAoC;QACpC,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC;QAC3C,OAAO,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,IAAI,CAAC,iBAAiB,EAAE;QACxE,kDAAkD;QAClD,WAAW;QACX,iBAAiB;QACjB,aAAa,EAAE,WAAW;QAC1B,mBAAmB,EAAE,iBAAiB;QACtC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpC,iBAAiB,EAAE,eAAe;QAClC,iBAAiB,EAAE,6CAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;KAC1D,CAAC,CAAC;IACH,OAAO,sBAAc,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AA/CD,sCA+CC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAC,OAAwB;IACvD,0DAA0D;IAC1D,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAEpC,uDAAuD;IACvD,qEAAqE;IACrE,OAAO,OAAO,CAAC,cAAc,CAAC;IAE9B,4CAA4C;IAC5C,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAC1C,MAAM;IACJ,qBAAqB;IACrB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,IAAI,EACJ,iBAAiB,EACjB,QAAQ;IACR,qCAAqC;IACrC,MAAM,EACN,MAAM;IACN,iEAAiE;IACjE,iEAAiE;IACjE,kEAAkE;IAClE,6CAA6C;IAC7C,uCAAuC;IACvC,KAAK,EACL,WAAW,EACX,UAAU;IACV,gEAAgE;IAChE,gEAAgE;IAChE,oGAAoG;IACpG,qDAAqD;IACrD,kBAAkB;IAClB,KAAK,EACL,OAAO,EACP,YAAY,EACZ,SAAS;IACT,iEAAiE;IACjE,sEAAsE;IACtE,IAAI,GACL,GAAG,UAAU,CAAC;IAEf,qDAAqD;IACrD,yDAAyD;IACzD,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAExB,qBAAqB;IACrB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC5B,IACE,CAAC,gCAAuB,CAAC,IAAI,CAAC,MAAM,CAAC;QACrC,MAAM;QACN,gCAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,EAC3C;QACA,gDAAgD;QAChD,wDAAwD;QACxD,iCAAiC;QACjC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;KACrC;IACD,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC;IACpC,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACjC,qCAAqC;QACrC,2EAA2E;QAC3E,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC5B,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,OAAO,CAAC,iBAAiB,GAAG,kBAAkB,CAAC;KAChD;IACD,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACpB,IAAI,iBAAiB,EAAE;QACrB,iEAAiE;QACjE,OAAO,CAAC,OAAO,GAAG,iBAAiB,CAAC;KACrC;IACD,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC5B,qBAAqB;IACrB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IACxB,oBAAoB;IACpB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;IACtB,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;IAClC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAChC,kBAAkB;IAClB,IAAI,KAAK,EAAE;QACT,OAAO,CAAC,GAAG,GAAG;YACZ,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,OAAO,IAAI,YAAY;YAC7B,MAAM,EAAE,SAAS;SAClB,CAAC;KACH;IACD,+CAA+C;IAC/C,2DAA2D;IAC3D,OAAO,sBAAc,CAAC,uBAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AAC/D,CAAC;AAhGD,4CAgGC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,OAAwB;IACpD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO;KACR;IACD,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACnC,IAAI,CAAC,UAAU,EAAE;QACf,OAAO;KACR;IAED,gBAAgB;IAChB,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IAEtC,uCAAuC;IACvC,+CAA+C;IAC/C,iDAAiD;IACjD,MAAM;IACJ,gCAAgC;IAChC,qEAAqE;IACrE,KAAK,EACL,KAAK,EACL,OAAO;IACP,uEAAuE;IACvE,QAAQ;IACR,4EAA4E;IAC5E,oFAAoF;IACpF,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,OAAO,EACP,IAAI,EACJ,SAAS;IACT,mEAAmE;IACnE,UAAU;IACV,UAAU,EACV,aAAa;IACb,wDAAwD;IACxD,gBAAgB;IAChB,yDAAyD;IACzD,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,GAAG,EACH,MAAM;IACN,mDAAmD;IACnD,WAAW,EACX,UAAU;IACV,kEAAkE;IAClE,sEAAsE;IACtE,aAAa,EACb,UAAU,EACV,SAAS,EACT,cAAc,EACd,MAAM,EACN,WAAW,EACX,MAAM,EACN,WAAW,EACX,IAAI;IACJ,iDAAiD;IACjD,SAAS,EAAE,WAAW,EACtB,eAAe;IACf,gEAAgE;IAChE,sDAAsD;IACtD,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACR,WAAW,EACX,iBAAiB;IACjB,mCAAmC;IACnC,0CAA0C;IAC1C,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,GACxB,GAAG,UAAU,CAAC;IAEf,oDAAoD;IACpD,uDAAuD;IACvD,MAAM,WAAW,GAAG,GAAG,IAAI,4BAAqB,CAAC,GAAG,CAAC,CAAC;IAEtD,2CAA2C;IAC3C,mDAAmD;IACnD,wDAAwD;IACxD,sDAAsD;IACtD,yDAAyD;IACzD,2DAA2D;IAC3D,OAAO;QACL,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,KAAe;QACtB,KAAK;QACL,OAAO,EAAE,OAAiB;QAC1B,mEAAmE;QACnE,6EAA6E;QAC7E,QAAQ,EAAE,CAAC,YAAY;YACrB,CAAC,kBAAkB,KAAK,eAAe,IAAI,QAAQ,CAAC,CAAW;QACjE,KAAK,EAAE,CAAC,KAAK,IAAI,IAAI,CAAW;QAChC,IAAI,EAAE,WAAW,IAAI,IAAI;QACzB,YAAY;QACZ,WAAW;QACX,IAAI;QACJ,OAAO;QACP,SAAS;QACT,MAAM,EACJ,UAAU;YACV,kGAAkG,CAAC,EAAE;QACvG,UAAU;QACV,aAAa;QACb,gBAAgB,EAAE,gBAAgB,IAAI,uBAAuB;QAC7D,iBAAiB;QACjB,WAAW;QACX,OAAO;QACP,GAAG;QACH,MAAM;QACN,IAAI;QACJ,SAAS,EAAE,WAAW;QACtB,WAAW;QACX,UAAU;QACV,aAAa;QACb,UAAU;QACV,SAAS;QACT,cAAc;QACd,MAAM;QACN,WAAW;QACX,MAAM;QACN,WAAW;QACX,eAAe;QACf,WAAW;QACX,UAAU;QACV,SAAS;QACT,QAAQ;QACR,WAAW;QACX,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAvID,sCAuIC;AAED;;;;;;GAMG;AACU,QAAA,cAAc,GAAG,CAC5B,OAAoB,EACpB,IAAY,EACC,EAAE;IACf,mDAAmD;IACnD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,cAAc,GAAG,iBAAiB,iCAAM,OAAO,CAAC,IAAI,KAAE,IAAI,IAAG,CAAC;IACpE,MAAM,OAAO,mCAAQ,OAAO,KAAE,IAAI,EAAE,MAAM,EAAE,cAAc,GAAE,CAAC;IAC7D,yCAAyC;IACzC,oCAAoC;IACpC,OAAO,iBAAiB,CAAC,OAAO,EAAE;QAChC,QAAQ,EAAE,qBAAqB,CAAC,OAAO,CAAC;KACzC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;GAKG;AACU,QAAA,eAAe,GAAG,CAC7B,OAAoB,EACpB,KAAa,EACA,EAAE;IACf,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAC7B,6CAA6C;IAC7C,MAAM,UAAU,GAAG,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;IACvC,MAAM,OAAO,mCAAQ,OAAO,KAAE,KAAK,EAAE,UAAU,GAAE,CAAC;IAClD,yCAAyC;IACzC,+BAA+B;IAC/B,OAAO,iBAAiB,CAAC,OAAO,EAAE;QAChC,QAAQ,EAAE,qBAAqB,CAAC,OAAO,CAAC;KACzC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,kBAAkB,GAAG,CAChC,OAAoB,EACpB,SAAiB,EACJ,EAAE;IACf,0DAA0D;IAC1D,MAAM,cAAc,GAAG,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAChE,mDAAmD;IACnD,MAAM,OAAO,GAAG,iBAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,GAAG,OAAO,GAAG,QAAQ,EAAE,CAAC;IACrC,2CAA2C;IAC3C,OAAO,iBAAiB,CAAC,OAAO,EAAE;QAChC,QAAQ;QACR,IAAI;KACL,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,cAAc;AACd,MAAM,iBAAiB,GAAG,CACxB,OAAoB,EACpB,OAA+B,EAClB,EAAE;IACf,6DAA6D;IAC7D,MAAM,IAAI,mCAAQ,OAAO,CAAC,IAAI,GAAK,OAAO,CAAE,CAAC;IAC7C,uCAAY,OAAO,KAAE,IAAI,IAAG;AAC9B,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAC5B,OAAoB,EACpB,cAAuB,EACf,EAAE;IACV,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3B,+CAA+C;IAC/C,MAAM,UAAU,GAAG,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC;IACxD,sCAAsC;IACtC,IAAI,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,kBAAkB,GAAG;YACzB,KAAK;YACL,SAAS;YACT,UAAU;YACV,KAAK;YACL,UAAU;SACX,CAAC;QACF,wCAAwC;QACxC,IAAI,IAAI,GAAG,UAAU,CAAC;QACtB,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE;YACjC,YAAY;YACZ,IAAI,GAAG,mBAAmB,CAAC;SAC5B;aAAM,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE;YACjC,oCAAoC;YACpC,iEAAiE;YACjE,4CAA4C;YAC5C,IAAI,GAAG,QAAQ,CAAC;SACjB;aAAM,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;YAClD,WAAW;YACX,IAAI,GAAG,IAAI,MAAM,GAAG,CAAC;SACtB;QACD,UAAU,GAAG,GAAG,IAAI,IAAI,UAAU,EAAE,CAAC;KACtC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,OAAoB,EAAU,EAAE;;IACtD,IAAI,MAAM,CAAC;IACX,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAC/C,IAAI,cAAc,KAAK,UAAU,EAAE;QACjC,sCAAsC;QACtC,gDAAgD;QAChD,+DAA+D;QAC/D,IAAI,OAAA,OAAO,CAAC,YAAY,0CAAE,OAAO,CAAC,UAAU,KAAI,CAAC,EAAE;YACjD,qDAAqD;YACrD,MAAM,GAAG,YAAY,UAAU,EAAE,CAAC;SACnC;QACD,wCAAwC;QACxC,MAAM,GAAG,cAAc,UAAU,QAAQ,CAAC;KAC3C;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,eAAe;AACf,2GAA2G;AAC3G,2FAA2F;AAC3F,wCAAwC;AACxC,wDAAwD;AACxD,MAAM,aAAa,GAAG,CAAC,OAAoB,EAAE,EAAE,CAC7C,gBAAQ,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC"}