@cedarjs/structure 9.0.0-canary.1784 → 9.0.0-canary.3124

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 (118) hide show
  1. package/README.md +1 -1
  2. package/dist/errors.d.ts +2 -1
  3. package/dist/errors.d.ts.map +1 -1
  4. package/dist/errors.js +10 -15
  5. package/dist/errors.js.map +1 -0
  6. package/dist/index.d.ts +7 -7
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +40 -67
  9. package/dist/index.js.map +1 -0
  10. package/dist/model/RWCell.d.ts +4 -4
  11. package/dist/model/RWCell.d.ts.map +1 -1
  12. package/dist/model/RWCell.js +111 -103
  13. package/dist/model/RWCell.js.map +1 -0
  14. package/dist/model/RWComponent.d.ts +2 -2
  15. package/dist/model/RWComponent.d.ts.map +1 -1
  16. package/dist/model/RWComponent.js +46 -41
  17. package/dist/model/RWComponent.js.map +1 -0
  18. package/dist/model/RWEnvHelper.d.ts +4 -4
  19. package/dist/model/RWEnvHelper.d.ts.map +1 -1
  20. package/dist/model/RWEnvHelper.js +233 -205
  21. package/dist/model/RWEnvHelper.js.map +1 -0
  22. package/dist/model/RWFunction.d.ts +2 -2
  23. package/dist/model/RWFunction.d.ts.map +1 -1
  24. package/dist/model/RWFunction.js +10 -15
  25. package/dist/model/RWFunction.js.map +1 -0
  26. package/dist/model/RWLayout.d.ts +2 -2
  27. package/dist/model/RWLayout.d.ts.map +1 -1
  28. package/dist/model/RWLayout.js +10 -15
  29. package/dist/model/RWLayout.js.map +1 -0
  30. package/dist/model/RWPage.d.ts +3 -3
  31. package/dist/model/RWPage.d.ts.map +1 -1
  32. package/dist/model/RWPage.js +61 -57
  33. package/dist/model/RWPage.js.map +1 -0
  34. package/dist/model/RWProject.d.ts +22 -18
  35. package/dist/model/RWProject.d.ts.map +1 -1
  36. package/dist/model/RWProject.js +257 -164
  37. package/dist/model/RWProject.js.map +1 -0
  38. package/dist/model/RWRoute.d.ts +32 -6
  39. package/dist/model/RWRoute.d.ts.map +1 -1
  40. package/dist/model/RWRoute.js +424 -260
  41. package/dist/model/RWRoute.js.map +1 -0
  42. package/dist/model/RWRouter.d.ts +4 -4
  43. package/dist/model/RWRouter.d.ts.map +1 -1
  44. package/dist/model/RWRouter.js +130 -126
  45. package/dist/model/RWRouter.js.map +1 -0
  46. package/dist/model/RWSDL.d.ts +5 -5
  47. package/dist/model/RWSDL.d.ts.map +1 -1
  48. package/dist/model/RWSDL.js +96 -84
  49. package/dist/model/RWSDL.js.map +1 -0
  50. package/dist/model/RWSDLField.d.ts +6 -6
  51. package/dist/model/RWSDLField.d.ts.map +1 -1
  52. package/dist/model/RWSDLField.js +79 -81
  53. package/dist/model/RWSDLField.js.map +1 -0
  54. package/dist/model/RWService.d.ts +4 -4
  55. package/dist/model/RWService.d.ts.map +1 -1
  56. package/dist/model/RWService.js +76 -76
  57. package/dist/model/RWService.js.map +1 -0
  58. package/dist/model/RWServiceFunction.d.ts +4 -4
  59. package/dist/model/RWServiceFunction.d.ts.map +1 -1
  60. package/dist/model/RWServiceFunction.js +95 -97
  61. package/dist/model/RWServiceFunction.js.map +1 -0
  62. package/dist/model/RWTOML.d.ts +3 -3
  63. package/dist/model/RWTOML.d.ts.map +1 -1
  64. package/dist/model/RWTOML.js +53 -55
  65. package/dist/model/RWTOML.js.map +1 -0
  66. package/dist/model/index.d.ts +2 -2
  67. package/dist/model/index.d.ts.map +1 -1
  68. package/dist/model/index.js +3 -20
  69. package/dist/model/index.js.map +1 -0
  70. package/dist/model/util/pageMutationUsage.d.ts +18 -0
  71. package/dist/model/util/pageMutationUsage.d.ts.map +1 -0
  72. package/dist/model/util/pageMutationUsage.js +256 -0
  73. package/dist/model/util/pageMutationUsage.js.map +1 -0
  74. package/dist/model/util/process_env.js +44 -62
  75. package/dist/model/util/process_env.js.map +1 -0
  76. package/dist/nodes.d.ts +2 -2
  77. package/dist/nodes.d.ts.map +1 -1
  78. package/dist/nodes.js +171 -164
  79. package/dist/nodes.js.map +1 -0
  80. package/dist/util.js +23 -33
  81. package/dist/util.js.map +1 -0
  82. package/dist/x/Array.d.ts.map +1 -1
  83. package/dist/x/Array.js +15 -25
  84. package/dist/x/Array.js.map +1 -0
  85. package/dist/x/Location.d.ts +1 -1
  86. package/dist/x/Location.d.ts.map +1 -1
  87. package/dist/x/Location.js +11 -17
  88. package/dist/x/Location.js.map +1 -0
  89. package/dist/x/Position.js +18 -29
  90. package/dist/x/Position.js.map +1 -0
  91. package/dist/x/Range.d.ts +1 -1
  92. package/dist/x/Range.d.ts.map +1 -1
  93. package/dist/x/Range.js +17 -22
  94. package/dist/x/Range.js.map +1 -0
  95. package/dist/x/URL.js +59 -75
  96. package/dist/x/URL.js.map +1 -0
  97. package/dist/x/child_process.d.ts +1 -1
  98. package/dist/x/child_process.d.ts.map +1 -1
  99. package/dist/x/child_process.js +35 -49
  100. package/dist/x/child_process.js.map +1 -0
  101. package/dist/x/decorators.d.ts +2 -2
  102. package/dist/x/decorators.d.ts.map +1 -1
  103. package/dist/x/decorators.js +46 -26
  104. package/dist/x/decorators.js.map +1 -0
  105. package/dist/x/diagnostics.d.ts +3 -3
  106. package/dist/x/diagnostics.d.ts.map +1 -1
  107. package/dist/x/diagnostics.js +163 -259
  108. package/dist/x/diagnostics.js.map +1 -0
  109. package/dist/x/path.js +36 -55
  110. package/dist/x/path.js.map +1 -0
  111. package/dist/x/prisma.d.ts +2 -2
  112. package/dist/x/prisma.d.ts.map +1 -1
  113. package/dist/x/prisma.js +32 -55
  114. package/dist/x/prisma.js.map +1 -0
  115. package/dist/x/ts-morph.js +34 -45
  116. package/dist/x/ts-morph.js.map +1 -0
  117. package/package.json +46 -22
  118. package/LICENSE +0 -21
@@ -1,60 +1,64 @@
1
- "use strict";
2
-
3
- var _Object$defineProperty = require("@babel/runtime-corejs3/core-js/object/define-property");
4
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
5
- var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard").default;
6
- _Object$defineProperty(exports, "__esModule", {
7
- value: true
8
- });
9
- exports.RWPage = void 0;
10
- var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js/instance/find"));
11
- var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js/instance/map"));
12
- var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js/instance/includes"));
13
- var _map2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js/map"));
14
- var _getOwnPropertyDescriptor = _interopRequireDefault(require("@babel/runtime-corejs3/core-js/object/get-own-property-descriptor"));
15
- var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/applyDecoratedDescriptor"));
16
- var _path = require("path");
17
- var tsm = _interopRequireWildcard(require("ts-morph"));
18
- var _nodes = require("../nodes");
19
- var _decorators = require("../x/decorators");
20
- var _dec, _dec2, _dec3, _dec4, _class;
21
- let RWPage = exports.RWPage = (_dec = (0, _decorators.lazy)(), _dec2 = (0, _decorators.lazy)(), _dec3 = (0, _decorators.lazy)(), _dec4 = (0, _decorators.lazy)(), _class = class RWPage extends _nodes.FileNode {
22
- constructor(constName, path, parent) {
23
- super();
24
- this.constName = constName;
25
- this.path = path;
26
- this.parent = parent;
27
- }
28
- get filePath() {
29
- return this.path;
30
- }
31
- get route() {
32
- var _context;
33
- return (0, _find.default)(_context = this.parent.router.routes).call(_context, r => r.page_identifier_str === this.constName);
34
- }
35
- get layoutName() {
36
- var _context2;
37
- const candidates = (0, _map.default)(_context2 = this.parent.layouts).call(_context2, l => l.basenameNoExt);
38
- if (candidates.length === 0) {
39
- return undefined;
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { dirname } from 'node:path';
8
+ import * as tsm from 'ts-morph';
9
+ import { FileNode } from '../nodes.js';
10
+ import { lazy } from '../x/decorators.js';
11
+ export class RWPage extends FileNode {
12
+ constName;
13
+ path;
14
+ parent;
15
+ constructor(constName, path, parent) {
16
+ super();
17
+ this.constName = constName;
18
+ this.path = path;
19
+ this.parent = parent;
40
20
  }
41
- for (const tag of this.sf.getDescendantsOfKind(tsm.SyntaxKind.JsxOpeningElement)) {
42
- const t = tag.getTagNameNode().getText(); //?
43
- if ((0, _includes.default)(candidates).call(candidates, t)) {
44
- return t;
45
- }
21
+ get filePath() {
22
+ return this.path;
46
23
  }
47
- return undefined;
48
- }
49
- get actionRemove() {
50
- const edits = new _map2.default();
51
- // delete directory (MyPage/...)
52
- edits.set((0, _path.dirname)(this.filePath), undefined);
53
- // removing a page also removes its route
54
- if (this.route) {
55
- edits.set(this.route.jsxNode, undefined);
24
+ get route() {
25
+ return this.parent.router.routes.find((r) => r.page_identifier_str === this.constName);
56
26
  }
57
- // TODO: we need to transform this edits map to a standard edits map (with locations)
58
- return edits;
59
- }
60
- }, (0, _applyDecoratedDescriptor2.default)(_class.prototype, "filePath", [_dec], (0, _getOwnPropertyDescriptor.default)(_class.prototype, "filePath"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "route", [_dec2], (0, _getOwnPropertyDescriptor.default)(_class.prototype, "route"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "layoutName", [_dec3], (0, _getOwnPropertyDescriptor.default)(_class.prototype, "layoutName"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "actionRemove", [_dec4], (0, _getOwnPropertyDescriptor.default)(_class.prototype, "actionRemove"), _class.prototype), _class);
27
+ get layoutName() {
28
+ const candidates = this.parent.layouts.map((l) => l.basenameNoExt);
29
+ if (candidates.length === 0) {
30
+ return undefined;
31
+ }
32
+ for (const tag of this.sf.getDescendantsOfKind(tsm.SyntaxKind.JsxOpeningElement)) {
33
+ const t = tag.getTagNameNode().getText(); //?
34
+ if (candidates.includes(t)) {
35
+ return t;
36
+ }
37
+ }
38
+ return undefined;
39
+ }
40
+ get actionRemove() {
41
+ const edits = new Map();
42
+ // delete directory (MyPage/...)
43
+ edits.set(dirname(this.filePath), undefined);
44
+ // removing a page also removes its route
45
+ if (this.route) {
46
+ edits.set(this.route.jsxNode, undefined);
47
+ }
48
+ // TODO: we need to transform this edits map to a standard edits map (with locations)
49
+ return edits;
50
+ }
51
+ }
52
+ __decorate([
53
+ lazy()
54
+ ], RWPage.prototype, "filePath", null);
55
+ __decorate([
56
+ lazy()
57
+ ], RWPage.prototype, "route", null);
58
+ __decorate([
59
+ lazy()
60
+ ], RWPage.prototype, "layoutName", null);
61
+ __decorate([
62
+ lazy()
63
+ ], RWPage.prototype, "actionRemove", null);
64
+ //# sourceMappingURL=RWPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RWPage.js","sourceRoot":"","sources":["../../src/model/RWPage.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAIzC,MAAM,OAAO,MAAO,SAAQ,QAAQ;IAEzB;IACA;IACA;IAHT,YACS,SAAiB,EACjB,IAAY,EACZ,MAAiB;QAExB,KAAK,EAAE,CAAA;QAJA,cAAS,GAAT,SAAS,CAAQ;QACjB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAW;IAG1B,CAAC;IACO,IAAI,QAAQ;QAClB,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IACO,IAAI,KAAK;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACnC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,KAAK,IAAI,CAAC,SAAS,CAChD,CAAA;IACH,CAAC;IACO,IAAI,UAAU;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;QAClE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAC5C,GAAG,CAAC,UAAU,CAAC,iBAAiB,CACjC,EAAE,CAAC;YACF,MAAM,CAAC,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC,OAAO,EAAE,CAAA,CAAC,GAAG;YAC5C,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,CAAA;YACV,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IACO,IAAI,YAAY;QACtB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAY,CAAA;QACjC,gCAAgC;QAChC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAA;QAC5C,yCAAyC;QACzC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC1C,CAAC;QACD,qFAAqF;QACrF,OAAO,KAAK,CAAA;IACd,CAAC;CACF;AAlCS;IAAP,IAAI,EAAE;sCAEN;AACO;IAAP,IAAI,EAAE;mCAIN;AACO;IAAP,IAAI,EAAE;wCAcN;AACO;IAAP,IAAI,EAAE;0CAUN"}
@@ -1,27 +1,21 @@
1
1
  import type { DMMF } from '@prisma/generator-helper';
2
- import { BaseNode } from '../nodes';
3
- import { RWCell } from './RWCell';
4
- import { RWComponent } from './RWComponent';
5
- import { RWEnvHelper } from './RWEnvHelper';
6
- import { RWFunction } from './RWFunction';
7
- import { RWLayout } from './RWLayout';
8
- import { RWPage } from './RWPage';
9
- import { RWRouter } from './RWRouter';
10
- import { RWSDL } from './RWSDL';
11
- import { RWService } from './RWService';
12
- import { RWTOML } from './RWTOML';
13
- export interface RWProjectOptions {
14
- projectRoot: string;
15
- }
2
+ import { BaseNode } from '../nodes.js';
3
+ import { RWCell } from './RWCell.js';
4
+ import { RWComponent } from './RWComponent.js';
5
+ import { RWEnvHelper } from './RWEnvHelper.js';
6
+ import { RWFunction } from './RWFunction.js';
7
+ import { RWLayout } from './RWLayout.js';
8
+ import { RWPage } from './RWPage.js';
9
+ import { RWRouter } from './RWRouter.js';
10
+ import { RWSDL } from './RWSDL.js';
11
+ import { RWService } from './RWService.js';
12
+ import { RWTOML } from './RWTOML.js';
16
13
  /**
17
14
  * Represents a Redwood project.
18
15
  * This is the root node.
19
16
  */
20
17
  export declare class RWProject extends BaseNode {
21
- opts: RWProjectOptions;
22
- constructor(opts: RWProjectOptions);
23
18
  parent: undefined;
24
- get projectRoot(): string;
25
19
  get id(): string;
26
20
  children(): (RWComponent | RWTOML | RWPage | RWRouter | RWService | RWSDL | RWLayout | RWEnvHelper)[];
27
21
  /**
@@ -34,7 +28,7 @@ export declare class RWProject extends BaseNode {
34
28
  get isTypeScriptProject(): boolean;
35
29
  prismaDMMF(): Promise<DMMF.Document | undefined>;
36
30
  prismaDMMFModelNames(): Promise<string[]>;
37
- get redwoodTOML(): RWTOML;
31
+ get cedarTOML(): RWTOML;
38
32
  private get processPagesDir();
39
33
  get pages(): RWPage[];
40
34
  get router(): RWRouter;
@@ -54,5 +48,15 @@ export declare class RWProject extends BaseNode {
54
48
  **/
55
49
  get cells(): RWCell[];
56
50
  get envHelper(): RWEnvHelper;
51
+ /**
52
+ * Maps GraphQL `Mutation` root field name -> the (project-root-relative)
53
+ * path of the SDL file that declares it with a literal `@requireAuth`
54
+ * directive.
55
+ *
56
+ * Used by `RWRoute` to warn when an unprotected route's page uses one of
57
+ * these mutations. Only literal `@requireAuth` is considered - custom
58
+ * directives (and `@skipAuth`) are intentionally ignored.
59
+ */
60
+ get requireAuthMutationFields(): Map<string, string>;
57
61
  }
58
62
  //# sourceMappingURL=RWProject.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RWProject.d.ts","sourceRoot":"","sources":["../../src/model/RWProject.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAUpD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAUnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAA;CACpB;AAID;;;GAGG;AACH,qBAAa,SAAU,SAAQ,QAAQ;IAClB,IAAI,EAAE,gBAAgB;gBAAtB,IAAI,EAAE,gBAAgB;IAGzC,MAAM,YAAY;IAElB,IAAI,WAAW,WAEd;IAED,IAAY,EAAE,WAEb;IAED,QAAQ;IAaR;;OAEG;IACH,IAAY,UAAU,4CAErB;IACD;;OAEG;IACH,IAAY,mBAAmB,IAAI,OAAO,CAKzC;IAEa,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAWhD,oBAAoB;IAOlC,IAAY,WAAW,IAAI,MAAM,CAEhC;IACO,OAAO,KAAK,eAAe,GAMlC;IACD,IAAY,KAAK,IAAI,MAAM,EAAE,CAI5B;IACD,IAAY,MAAM,aAEjB;IACD,SAAS,iBAER;IAGD,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAO7B,IAAY,2BAA2B,WAGtC;IAED,IAAY,QAAQ,gBAMnB;IAED,IAAY,IAAI,YAIf;IAED,IAAY,OAAO,IAAI,QAAQ,EAAE,CAMhC;IAED,IAAY,SAAS,IAAI,UAAU,EAAE,CAKpC;IAED,IAAY,UAAU,IAAI,WAAW,EAAE,CAYtC;IAED,IAAY,KAAK,aAEhB;IAGD,IAAY,KAAK,aAEhB;IAED;;;QAGI;IACJ,IAAY,KAAK,IAAI,MAAM,EAAE,CAI5B;IAED,IAAY,SAAS,IAAI,WAAW,CAEnC;CACF"}
1
+ {"version":3,"file":"RWProject.d.ts","sourceRoot":"","sources":["../../src/model/RWProject.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAUpD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAUtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAUpC;;;GAGG;AACH,qBAAa,SAAU,SAAQ,QAAQ;IACrC,MAAM,YAAY;IAElB,IAAY,EAAE,WAEb;IAED,QAAQ;IAaR;;OAEG;IACH,IAAY,UAAU,4CAErB;IAED;;OAEG;IACH,IAAY,mBAAmB,IAAI,OAAO,CAKzC;IAGa,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAWhD,oBAAoB;IAQlC,IAAY,SAAS,IAAI,MAAM,CAE9B;IAEO,OAAO,KAAK,eAAe,GAMlC;IAED,IAAY,KAAK,IAAI,MAAM,EAAE,CAI5B;IAED,IAAY,MAAM,aAEjB;IACD,SAAS,iBAER;IAGD,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAO7B,IAAY,2BAA2B,WAOtC;IAED,IAAY,QAAQ,gBAMnB;IAED,IAAY,IAAI,YAIf;IAED,IAAY,OAAO,IAAI,QAAQ,EAAE,CAMhC;IAED,IAAY,SAAS,IAAI,UAAU,EAAE,CAKpC;IAED,IAAY,UAAU,IAAI,WAAW,EAAE,CAYtC;IAED,IAAY,KAAK,aAEhB;IAGD,IAAY,KAAK,aAEhB;IAED;;;QAGI;IACJ,IAAY,KAAK,IAAI,MAAM,EAAE,CAI5B;IAED,IAAY,SAAS,IAAI,WAAW,CAEnC;IAED;;;;;;;;OAQG;IACH,IAAY,yBAAyB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAmC3D;CACF"}