@contember/cli 1.1.0-alpha.8 → 1.1.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/dist/src/commands/migrations/MigrationAmendCommand.js +2 -2
  2. package/dist/src/commands/migrations/MigrationAmendCommand.js.map +1 -1
  3. package/dist/src/commands/migrations/MigrationDiffCommand.js +2 -2
  4. package/dist/src/commands/migrations/MigrationDiffCommand.js.map +1 -1
  5. package/dist/src/commands/project/ProjectGenerateDocumentation.d.ts +13 -0
  6. package/dist/src/commands/project/ProjectGenerateDocumentation.d.ts.map +1 -0
  7. package/dist/src/commands/project/ProjectGenerateDocumentation.js +39 -0
  8. package/dist/src/commands/project/ProjectGenerateDocumentation.js.map +1 -0
  9. package/dist/src/commands/project/ProjectPrintSchemaCommand.d.ts +1 -1
  10. package/dist/src/commands/project/ProjectPrintSchemaCommand.d.ts.map +1 -1
  11. package/dist/src/commands/project/ProjectPrintSchemaCommand.js +13 -6
  12. package/dist/src/commands/project/ProjectPrintSchemaCommand.js.map +1 -1
  13. package/dist/src/commands/project/ProjectValidateCommand.js +2 -2
  14. package/dist/src/commands/project/ProjectValidateCommand.js.map +1 -1
  15. package/dist/src/commands/project/index.d.ts +1 -0
  16. package/dist/src/commands/project/index.d.ts.map +1 -1
  17. package/dist/src/commands/project/index.js +1 -0
  18. package/dist/src/commands/project/index.js.map +1 -1
  19. package/dist/src/run.js +1 -0
  20. package/dist/src/run.js.map +1 -1
  21. package/dist/src/tsconfig.tsbuildinfo +1 -1
  22. package/dist/src/utils/project/components/EntityInfo.d.ts +11 -0
  23. package/dist/src/utils/project/components/EntityInfo.d.ts.map +1 -0
  24. package/dist/src/utils/project/components/EntityInfo.js +54 -0
  25. package/dist/src/utils/project/components/EntityInfo.js.map +1 -0
  26. package/dist/src/utils/project/components/EntityLink.d.ts +5 -0
  27. package/dist/src/utils/project/components/EntityLink.d.ts.map +1 -0
  28. package/dist/src/utils/project/components/EntityLink.js +8 -0
  29. package/dist/src/utils/project/components/EntityLink.js.map +1 -0
  30. package/dist/src/utils/project/components/FieldLink.d.ts +7 -0
  31. package/dist/src/utils/project/components/FieldLink.d.ts.map +1 -0
  32. package/dist/src/utils/project/components/FieldLink.js +13 -0
  33. package/dist/src/utils/project/components/FieldLink.js.map +1 -0
  34. package/dist/src/utils/project/components/FieldPermissions.d.ts +7 -0
  35. package/dist/src/utils/project/components/FieldPermissions.d.ts.map +1 -0
  36. package/dist/src/utils/project/components/FieldPermissions.js +17 -0
  37. package/dist/src/utils/project/components/FieldPermissions.js.map +1 -0
  38. package/dist/src/utils/project/components/FieldType.d.ts +6 -0
  39. package/dist/src/utils/project/components/FieldType.d.ts.map +1 -0
  40. package/dist/src/utils/project/components/FieldType.js +59 -0
  41. package/dist/src/utils/project/components/FieldType.js.map +1 -0
  42. package/dist/src/utils/project/components/OnDelete.d.ts +9 -0
  43. package/dist/src/utils/project/components/OnDelete.d.ts.map +1 -0
  44. package/dist/src/utils/project/components/OnDelete.js +70 -0
  45. package/dist/src/utils/project/components/OnDelete.js.map +1 -0
  46. package/dist/src/utils/project/components/ProjectInfo.d.ts +7 -0
  47. package/dist/src/utils/project/components/ProjectInfo.d.ts.map +1 -0
  48. package/dist/src/utils/project/components/ProjectInfo.js +28 -0
  49. package/dist/src/utils/project/components/ProjectInfo.js.map +1 -0
  50. package/dist/src/utils/project/components/SinglePermission.d.ts +7 -0
  51. package/dist/src/utils/project/components/SinglePermission.d.ts.map +1 -0
  52. package/dist/src/utils/project/components/SinglePermission.js +15 -0
  53. package/dist/src/utils/project/components/SinglePermission.js.map +1 -0
  54. package/dist/src/utils/project/components/utils.d.ts +3 -0
  55. package/dist/src/utils/project/components/utils.d.ts.map +1 -0
  56. package/dist/src/utils/project/components/utils.js +8 -0
  57. package/dist/src/utils/project/components/utils.js.map +1 -0
  58. package/dist/src/utils/{project.d.ts → project/loadSchema.d.ts} +1 -1
  59. package/dist/src/utils/project/loadSchema.d.ts.map +1 -0
  60. package/dist/src/utils/{project.js → project/loadSchema.js} +1 -1
  61. package/dist/src/utils/project/loadSchema.js.map +1 -0
  62. package/dist/src/utils/project/projectDescribe.d.ts +3 -0
  63. package/dist/src/utils/project/projectDescribe.d.ts.map +1 -0
  64. package/dist/src/utils/project/projectDescribe.js +29 -0
  65. package/dist/src/utils/project/projectDescribe.js.map +1 -0
  66. package/dist/src/utils/project/resources/out.css +759 -0
  67. package/dist/src/utils/schema/collectReferences.d.ts +10 -0
  68. package/dist/src/utils/schema/collectReferences.d.ts.map +1 -0
  69. package/dist/src/utils/schema/collectReferences.js +35 -0
  70. package/dist/src/utils/schema/collectReferences.js.map +1 -0
  71. package/package.json +17 -11
  72. package/postcss.config.js +6 -0
  73. package/src/commands/migrations/MigrationAmendCommand.ts +1 -1
  74. package/src/commands/migrations/MigrationDiffCommand.ts +1 -1
  75. package/src/commands/project/ProjectGenerateDocumentation.ts +44 -0
  76. package/src/commands/project/ProjectPrintSchemaCommand.ts +12 -6
  77. package/src/commands/project/ProjectValidateCommand.ts +1 -1
  78. package/src/commands/project/index.ts +1 -0
  79. package/src/run.ts +2 -0
  80. package/src/tsconfig.json +5 -1
  81. package/src/utils/project/components/EntityInfo.tsx +82 -0
  82. package/src/utils/project/components/EntityLink.tsx +6 -0
  83. package/src/utils/project/components/FieldLink.tsx +10 -0
  84. package/src/utils/project/components/FieldPermissions.tsx +14 -0
  85. package/src/utils/project/components/FieldType.tsx +54 -0
  86. package/src/utils/project/components/OnDelete.tsx +72 -0
  87. package/src/utils/project/components/ProjectInfo.tsx +48 -0
  88. package/src/utils/project/components/SinglePermission.tsx +13 -0
  89. package/src/utils/project/components/utils.ts +3 -0
  90. package/src/utils/{project.ts → project/loadSchema.ts} +0 -0
  91. package/src/utils/project/projectDescribe.tsx +26 -0
  92. package/src/utils/project/resources/style.css +3 -0
  93. package/src/utils/schema/collectReferences.ts +40 -0
  94. package/tailwind.config.js +7 -0
  95. package/dist/src/utils/project.d.ts.map +0 -1
  96. package/dist/src/utils/project.js.map +0 -1
@@ -0,0 +1,11 @@
1
+ import { Model, Schema } from '@contember/schema';
2
+ import { ReferencesMap } from '../../schema/collectReferences';
3
+ import { h } from 'preact';
4
+ interface EntityInfoProps {
5
+ entity: Model.Entity;
6
+ schema: Schema;
7
+ references: ReferencesMap;
8
+ }
9
+ export declare const EntityInfo: ({ entity, schema, references }: EntityInfoProps) => h.JSX.Element;
10
+ export {};
11
+ //# sourceMappingURL=EntityInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityInfo.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/EntityInfo.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAM9D,OAAO,EAAY,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEpC,UAAU,eAAe;IACxB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,aAAa,CAAA;CACzB;AAED,eAAO,MAAM,UAAU,mCAAoC,eAAe,kBAkEzE,CAAA"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntityInfo = void 0;
4
+ const utils_1 = require("./utils");
5
+ const SinglePermission_1 = require("./SinglePermission");
6
+ const FieldType_1 = require("./FieldType");
7
+ const FieldPermissions_1 = require("./FieldPermissions");
8
+ const OnDelete_1 = require("./OnDelete");
9
+ const preact_1 = require("preact");
10
+ const EntityInfo = ({ entity, schema, references }) => ((0, preact_1.h)("div", { class: 'm-4 border border-gray-400 rounded-lg group', id: (0, utils_1.formatEntityAnchor)(entity.name) },
11
+ (0, preact_1.h)("div", { class: 'font-bold text-gray-900 py-2 px-4 border-b border-gray-400 group-target:bg-yellow-100 rounded-t-lg' }, entity.name),
12
+ (0, preact_1.h)("div", { class: 'px-2 py-2 flex flex-wrap ' },
13
+ (0, preact_1.h)("div", null,
14
+ (0, preact_1.h)("table", null,
15
+ (0, preact_1.h)("thead", null,
16
+ (0, preact_1.h)("tr", null,
17
+ (0, preact_1.h)("th", { class: 'text-left px-2 text-gray-500 font-normal w-[180px] max-w-[180px]' }, "Name"),
18
+ (0, preact_1.h)("th", { class: 'text-left px-2 text-gray-500 font-normal w-[340px] max-w-[340px]' }, "Type"),
19
+ Object.keys(schema.acl.roles).map(role => (0, preact_1.h)("th", { class: 'text-left px-2 text-gray-500 font-normal w-[120px] max-w-[120px] text-xs truncate text-sm' }, role)))),
20
+ (0, preact_1.h)("tr", null,
21
+ (0, preact_1.h)("td", null),
22
+ (0, preact_1.h)("td", null),
23
+ Object.values(schema.acl.roles).map(role => {
24
+ var _a;
25
+ return (0, preact_1.h)("td", { class: 'px-2' },
26
+ (0, preact_1.h)(SinglePermission_1.SinglePermission, { value: 'D', predicate: (_a = role.entities[entity.name]) === null || _a === void 0 ? void 0 : _a.operations.delete }));
27
+ })),
28
+ Object.values(entity.fields).map(field => ((0, preact_1.h)("tr", { class: 'even:bg-gray-100 target:bg-yellow-100', id: (0, utils_1.formatFieldAnchor)(entity.name, field.name) },
29
+ (0, preact_1.h)("td", { class: 'px-2 font-mono truncate w-[180px] max-w-[180px]', title: field.name }, field.name),
30
+ (0, preact_1.h)("td", { class: 'text-gray-800 px-2 font-mono w-[420px] max-w-[420px]' },
31
+ (0, preact_1.h)(FieldType_1.FieldType, { field: field })),
32
+ Object.values(schema.acl.roles).map(role => (0, preact_1.h)("td", { class: 'px-2' },
33
+ (0, preact_1.h)(FieldPermissions_1.FieldPermissions, { field: field.name, entityPermissions: role.entities[entity.name] })))))))),
34
+ (0, preact_1.h)("div", { class: 'px-2 py-2 w-1/2' },
35
+ (0, preact_1.h)("h3", { class: 'text-lg text-gray-600' }, "On delete behaviour:"),
36
+ (0, preact_1.h)("p", { class: 'text-gray-500 text-sm' },
37
+ "(What happens when you attempt to delete entity ",
38
+ entity.name,
39
+ ")"),
40
+ (0, preact_1.h)("div", { class: 'mt-2 text-sm ' },
41
+ (0, preact_1.h)(OnDelete_1.OnDelete, { references: references, entity: entity }))),
42
+ false && (0, preact_1.h)("div", { class: 'px-2 py-2 w-1/2' },
43
+ (0, preact_1.h)("h3", { class: 'text-lg text-gray-600' }, "ACL predicates:"),
44
+ (0, preact_1.h)("div", { class: 'mt-2 text-sm ' }, Object.entries(schema.acl.roles).map(([roleName, role]) => {
45
+ var _a, _b;
46
+ return Object.entries((_b = (_a = role.entities[entity.name]) === null || _a === void 0 ? void 0 : _a.predicates) !== null && _b !== void 0 ? _b : {}).map(([predicateName, predicate]) => ((0, preact_1.h)(preact_1.Fragment, null,
47
+ (0, preact_1.h)("h4", null,
48
+ roleName,
49
+ ": ",
50
+ predicateName),
51
+ (0, preact_1.h)("code", null, JSON.stringify(predicate)))));
52
+ }))))));
53
+ exports.EntityInfo = EntityInfo;
54
+ //# sourceMappingURL=EntityInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityInfo.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/EntityInfo.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { h } from 'preact';
2
+ export declare const EntityLink: ({ entity }: {
3
+ entity: string;
4
+ }) => h.JSX.Element;
5
+ //# sourceMappingURL=EntityLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityLink.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/EntityLink.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAG1B,eAAO,MAAM,UAAU;YAA0B,MAAM;mBAEtD,CAAA"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntityLink = void 0;
4
+ const preact_1 = require("preact");
5
+ const utils_1 = require("./utils");
6
+ const EntityLink = ({ entity }) => ((0, preact_1.h)("a", { href: `#${(0, utils_1.formatEntityAnchor)(entity)}`, class: 'text-blue-500 hover:underline' }, entity));
7
+ exports.EntityLink = EntityLink;
8
+ //# sourceMappingURL=EntityLink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityLink.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/EntityLink.tsx"],"names":[],"mappings":";;;AAAA,mCAA0B;AAC1B,mCAA4C;AAErC,MAAM,UAAU,GAAG,CAAC,EAAE,MAAM,EAAsB,EAAE,EAAE,CAAC,CAC7D,uBAAG,IAAI,EAAE,IAAI,IAAA,0BAAkB,EAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,+BAA+B,IAAG,MAAM,CAAK,CAC/F,CAAA;AAFY,QAAA,UAAU,cAEtB"}
@@ -0,0 +1,7 @@
1
+ import { h } from 'preact';
2
+ export declare const FieldLink: ({ entity, field, noEntityLabel }: {
3
+ entity: string;
4
+ field: string;
5
+ noEntityLabel?: boolean | undefined;
6
+ }) => h.JSX.Element;
7
+ //# sourceMappingURL=FieldLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldLink.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/FieldLink.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,CAAC,EAAE,MAAM,QAAQ,CAAA;AAIpC,eAAO,MAAM,SAAS;YAAgD,MAAM;WAAS,MAAM;;mBAK1F,CAAA"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldLink = void 0;
4
+ const preact_1 = require("preact");
5
+ const EntityLink_1 = require("./EntityLink");
6
+ const utils_1 = require("./utils");
7
+ const FieldLink = ({ entity, field, noEntityLabel }) => ((0, preact_1.h)(preact_1.Fragment, null,
8
+ noEntityLabel ? '' : (0, preact_1.h)(preact_1.Fragment, null,
9
+ (0, preact_1.h)(EntityLink_1.EntityLink, { entity: entity }),
10
+ "."),
11
+ (0, preact_1.h)("a", { href: `#${(0, utils_1.formatFieldAnchor)(entity, field)}`, class: 'text-blue-500 hover:underline' }, field)));
12
+ exports.FieldLink = FieldLink;
13
+ //# sourceMappingURL=FieldLink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldLink.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/FieldLink.tsx"],"names":[],"mappings":";;;AAAA,mCAAoC;AACpC,6CAAyC;AACzC,mCAA2C;AAEpC,MAAM,SAAS,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAA8D,EAAE,EAAE,CAAC,CAC1H,gBAAC,iBAAQ;IACP,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAC,iBAAQ;QAAC,gBAAC,uBAAU,IAAC,MAAM,EAAE,MAAM,GAAI;YAAY;IAC1E,uBAAG,IAAI,EAAE,IAAI,IAAA,yBAAiB,EAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,+BAA+B,IAAG,KAAK,CAAK,CAC1F,CACX,CAAA;AALY,QAAA,SAAS,aAKrB"}
@@ -0,0 +1,7 @@
1
+ import { h } from 'preact';
2
+ import { Acl } from '@contember/schema';
3
+ export declare const FieldPermissions: ({ entityPermissions, field }: {
4
+ entityPermissions?: Acl.EntityPermissions | undefined;
5
+ field: string;
6
+ }) => h.JSX.Element;
7
+ //# sourceMappingURL=FieldPermissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldPermissions.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/FieldPermissions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,CAAC,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAGvC,eAAO,MAAM,gBAAgB;;WAAuF,MAAM;mBASzH,CAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldPermissions = void 0;
4
+ const preact_1 = require("preact");
5
+ const SinglePermission_1 = require("./SinglePermission");
6
+ const FieldPermissions = ({ entityPermissions, field }) => {
7
+ var _a, _b, _c;
8
+ const readPermissions = (_a = entityPermissions === null || entityPermissions === void 0 ? void 0 : entityPermissions.operations.read) === null || _a === void 0 ? void 0 : _a[field];
9
+ const updatePermissions = (_b = entityPermissions === null || entityPermissions === void 0 ? void 0 : entityPermissions.operations.update) === null || _b === void 0 ? void 0 : _b[field];
10
+ const createPermissions = (_c = entityPermissions === null || entityPermissions === void 0 ? void 0 : entityPermissions.operations.create) === null || _c === void 0 ? void 0 : _c[field];
11
+ return (0, preact_1.h)(preact_1.Fragment, null,
12
+ (0, preact_1.h)(SinglePermission_1.SinglePermission, { value: 'C', predicate: createPermissions }),
13
+ (0, preact_1.h)(SinglePermission_1.SinglePermission, { value: 'R', predicate: readPermissions }),
14
+ (0, preact_1.h)(SinglePermission_1.SinglePermission, { value: 'U', predicate: updatePermissions }));
15
+ };
16
+ exports.FieldPermissions = FieldPermissions;
17
+ //# sourceMappingURL=FieldPermissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldPermissions.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/FieldPermissions.tsx"],"names":[],"mappings":";;;AAAA,mCAAoC;AAEpC,yDAAqD;AAE9C,MAAM,gBAAgB,GAAI,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAgE,EAAE,EAAE;;IAC/H,MAAM,eAAe,GAAG,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,UAAU,CAAC,IAAI,0CAAG,KAAK,CAAC,CAAA;IACnE,MAAM,iBAAiB,GAAG,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,UAAU,CAAC,MAAM,0CAAG,KAAK,CAAC,CAAA;IACvE,MAAM,iBAAiB,GAAG,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,UAAU,CAAC,MAAM,0CAAG,KAAK,CAAC,CAAA;IACvE,OAAO,gBAAC,iBAAQ;QACf,gBAAC,mCAAgB,IAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,iBAAiB,GAAI;QAC9D,gBAAC,mCAAgB,IAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,GAAI;QAC5D,gBAAC,mCAAgB,IAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,iBAAiB,GAAI,CACpD,CAAA;AACZ,CAAC,CAAA;AATY,QAAA,gBAAgB,oBAS5B"}
@@ -0,0 +1,6 @@
1
+ import { Model } from '@contember/schema';
2
+ import { h } from 'preact';
3
+ export declare const FieldType: ({ field }: {
4
+ field: Model.AnyField;
5
+ }) => h.JSX.Element;
6
+ //# sourceMappingURL=FieldType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldType.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/FieldType.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,CAAC,EAAY,MAAM,QAAQ,CAAA;AAIpC,eAAO,MAAM,SAAS;WAAwB,MAAM,QAAQ;mBAkC3D,CAAA"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldType = void 0;
4
+ const preact_1 = require("preact");
5
+ const EntityLink_1 = require("./EntityLink");
6
+ const FieldLink_1 = require("./FieldLink");
7
+ const FieldType = ({ field }) => {
8
+ if (field.type === 'ManyHasMany') {
9
+ return (0, preact_1.h)(preact_1.Fragment, null,
10
+ (0, preact_1.h)(EntityLink_1.EntityLink, { entity: field.target }),
11
+ "[]",
12
+ ' ',
13
+ (0, preact_1.h)(TargetField, { field: field }),
14
+ " (m:n)");
15
+ }
16
+ else if (field.type === 'OneHasMany') {
17
+ return (0, preact_1.h)(preact_1.Fragment, null,
18
+ (0, preact_1.h)(EntityLink_1.EntityLink, { entity: field.target }),
19
+ "[]",
20
+ ' ',
21
+ (0, preact_1.h)(TargetField, { field: field }),
22
+ " (1:n)");
23
+ }
24
+ else if (field.type === 'OneHasOne') {
25
+ return (0, preact_1.h)(preact_1.Fragment, null,
26
+ (0, preact_1.h)(NullableMark, { field: field }),
27
+ (0, preact_1.h)(EntityLink_1.EntityLink, { entity: field.target }),
28
+ ' ',
29
+ (0, preact_1.h)(TargetField, { field: field }),
30
+ " (1:1)");
31
+ }
32
+ else if (field.type === 'ManyHasOne') {
33
+ return (0, preact_1.h)(preact_1.Fragment, null,
34
+ (0, preact_1.h)(NullableMark, { field: field }),
35
+ (0, preact_1.h)(EntityLink_1.EntityLink, { entity: field.target }),
36
+ ' ',
37
+ (0, preact_1.h)(TargetField, { field: field }),
38
+ " (m:1)");
39
+ }
40
+ else {
41
+ return (0, preact_1.h)(preact_1.Fragment, null,
42
+ (0, preact_1.h)(NullableMark, { field: field }),
43
+ field.type);
44
+ }
45
+ };
46
+ exports.FieldType = FieldType;
47
+ const TargetField = ({ field }) => {
48
+ if ('ownedBy' in field) {
49
+ return (0, preact_1.h)(FieldLink_1.FieldLink, { entity: field.target, field: field.ownedBy, noEntityLabel: true });
50
+ }
51
+ if (field.inversedBy) {
52
+ return (0, preact_1.h)(FieldLink_1.FieldLink, { entity: field.target, field: field.inversedBy, noEntityLabel: true });
53
+ }
54
+ return null;
55
+ };
56
+ const NullableMark = (props) => {
57
+ return props.field.nullable ? (0, preact_1.h)("span", { class: 'font-bold color-black' }, "? ") : null;
58
+ };
59
+ //# sourceMappingURL=FieldType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldType.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/FieldType.tsx"],"names":[],"mappings":";;;AACA,mCAAoC;AACpC,6CAAyC;AACzC,2CAAuC;AAEhC,MAAM,SAAS,GAAG,CAAC,EAAE,KAAK,EAA6B,EAAE,EAAE;IACjE,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE;QACjC,OAAO;YACN,gBAAC,uBAAU,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG;;YAAG,GAAG;YACzC,gBAAC,WAAW,IAAC,KAAK,EAAE,KAAK,GAAG;qBAC1B,CAAA;KAEH;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;QACvC,OAAO;YACN,gBAAC,uBAAU,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG;;YAAG,GAAG;YACzC,gBAAC,WAAW,IAAC,KAAK,EAAE,KAAK,GAAG;qBAC1B,CAAA;KAEH;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE;QACtC,OAAO;YACN,gBAAC,YAAY,IAAC,KAAK,EAAE,KAAK,GAAI;YAC9B,gBAAC,uBAAU,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG;YAAC,GAAG;YACvC,gBAAC,WAAW,IAAC,KAAK,EAAE,KAAK,GAAG;qBAC1B,CAAA;KAEH;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;QACvC,OAAO;YACN,gBAAC,YAAY,IAAC,KAAK,EAAE,KAAK,GAAI;YAC9B,gBAAC,uBAAU,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG;YAAC,GAAG;YACvC,gBAAC,WAAW,IAAC,KAAK,EAAE,KAAK,GAAG;qBAC1B,CAAA;KAEH;SAAM;QACN,OAAO;YACN,gBAAC,YAAY,IAAC,KAAK,EAAE,KAAK,GAAI;YAC7B,KAAK,CAAC,IAAI,CACT,CAAA;KAEH;AACF,CAAC,CAAA;AAlCY,QAAA,SAAS,aAkCrB;AAED,MAAM,WAAW,GAAG,CAAC,EAAE,KAAK,EAA8B,EAAE,EAAE;IAC7D,IAAI,SAAS,IAAI,KAAK,EAAE;QACvB,OAAO,gBAAC,qBAAS,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,aAAa,SAAG,CAAA;KAC9E;IACD,IAAI,KAAK,CAAC,UAAU,EAAE;QACrB,OAAO,gBAAC,qBAAS,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,SAAG,CAAA;KACjF;IACD,OAAO,IAAI,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,KAA0D,EAAE,EAAE;IACnF,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAAM,KAAK,EAAE,uBAAuB,SAAW,CAAC,CAAC,CAAC,IAAI,CAAA;AACrF,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { h } from 'preact';
2
+ import { Model } from '@contember/schema';
3
+ import { ReferencesMap } from '../../schema/collectReferences';
4
+ export declare const OnDelete: ({ references, entity, visited }: {
5
+ references: ReferencesMap;
6
+ entity: Model.Entity;
7
+ visited?: Model.Entity[] | undefined;
8
+ }) => h.JSX.Element | null;
9
+ //# sourceMappingURL=OnDelete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnDelete.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/OnDelete.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAY,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAqB,aAAa,EAAE,MAAM,gCAAgC,CAAA;AASjF,eAAO,MAAM,QAAQ;gBAAwD,aAAa;YAAU,MAAM,MAAM;;0BA4D/G,CAAA"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OnDelete = void 0;
4
+ const preact_1 = require("preact");
5
+ const FieldLink_1 = require("./FieldLink");
6
+ const EntityLink_1 = require("./EntityLink");
7
+ const sortReferences = (a, b) => a.owningRelation.joiningColumn.onDelete.localeCompare(b.owningRelation.joiningColumn.onDelete)
8
+ || a.owningEntity.name.localeCompare(b.owningEntity.name)
9
+ || a.owningRelation.name.localeCompare(b.owningRelation.name);
10
+ const OnDelete = ({ references, entity, visited = [] }) => {
11
+ const referencedFrom = references[entity.name];
12
+ if (referencedFrom.length === 0) {
13
+ if (visited.length !== 0) {
14
+ return null;
15
+ }
16
+ return ((0, preact_1.h)("span", { class: 'bg-green-200 text-gray-600 p-1 rounded' }, "This entity is not referenced from any other entity."));
17
+ }
18
+ if (visited.includes(entity)) {
19
+ return ((0, preact_1.h)("ul", { class: 'ml-4' },
20
+ (0, preact_1.h)("li", { class: 'italic' }, "(recursion)")));
21
+ }
22
+ return ((0, preact_1.h)("ul", { class: visited.length > 0 ? 'ml-4' : '' }, referencedFrom
23
+ .sort(sortReferences)
24
+ .map(it => {
25
+ const inverseDescr = it.targetRelation
26
+ ? (0, preact_1.h)(preact_1.Fragment, null,
27
+ "see ",
28
+ (0, preact_1.h)(FieldLink_1.FieldLink, { entity: entity.name, field: it.targetRelation.name }))
29
+ : 'no inverse side';
30
+ if (it.owningRelation.joiningColumn.onDelete === 'restrict') {
31
+ return ((0, preact_1.h)("li", null,
32
+ (0, preact_1.h)("span", { class: 'bg-black text-white px-1' }, "Fails"),
33
+ " when referenced from",
34
+ ' ',
35
+ (0, preact_1.h)(FieldLink_1.FieldLink, { entity: it.owningEntity.name, field: it.owningRelation.name }),
36
+ ' ',
37
+ "(",
38
+ inverseDescr,
39
+ ")"));
40
+ }
41
+ if (it.owningRelation.joiningColumn.onDelete === 'set null') {
42
+ return ((0, preact_1.h)("li", null,
43
+ (0, preact_1.h)("span", { class: 'bg-blue-400 text-white px-1' }, "Sets null"),
44
+ " at",
45
+ ' ',
46
+ (0, preact_1.h)(FieldLink_1.FieldLink, { entity: it.owningEntity.name, field: it.owningRelation.name }),
47
+ ' ',
48
+ "(",
49
+ inverseDescr,
50
+ ")"));
51
+ }
52
+ if (it.owningRelation.joiningColumn.onDelete === 'cascade') {
53
+ return ((0, preact_1.h)("li", null,
54
+ (0, preact_1.h)("span", { class: 'bg-red-400 text-white px-1' }, "Deletes"),
55
+ " ",
56
+ (0, preact_1.h)(EntityLink_1.EntityLink, { entity: it.owningEntity.name }),
57
+ ' ',
58
+ "connected using",
59
+ ' ',
60
+ (0, preact_1.h)(FieldLink_1.FieldLink, { entity: it.owningEntity.name, field: it.owningRelation.name, noEntityLabel: true }),
61
+ ' ',
62
+ "(",
63
+ inverseDescr,
64
+ ")",
65
+ (0, preact_1.h)(exports.OnDelete, { entity: it.owningEntity, visited: [...visited, entity], references: references })));
66
+ }
67
+ })));
68
+ };
69
+ exports.OnDelete = OnDelete;
70
+ //# sourceMappingURL=OnDelete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnDelete.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/OnDelete.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Schema } from '@contember/schema';
2
+ import { h } from 'preact';
3
+ export declare const ProjectInfo: (props: {
4
+ schema: Schema;
5
+ projectName: string;
6
+ }) => h.JSX.Element;
7
+ //# sourceMappingURL=ProjectInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectInfo.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/ProjectInfo.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAM1B,eAAO,MAAM,WAAW,UAAW;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,kBAwCzE,CAAA"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectInfo = void 0;
4
+ const preact_1 = require("preact");
5
+ const collectReferences_1 = require("../../schema/collectReferences");
6
+ const EntityLink_1 = require("./EntityLink");
7
+ const EntityInfo_1 = require("./EntityInfo");
8
+ const ProjectInfo = (props) => {
9
+ const references = (0, collectReferences_1.collectReferences)(props.schema.model);
10
+ return ((0, preact_1.h)("div", { class: 'w-full' },
11
+ (0, preact_1.h)("div", { class: 'bg-gray-100 p-6 border-b border-gray-400' },
12
+ (0, preact_1.h)("h1", { class: 'font-bold text-xl mb-1' }, props.projectName),
13
+ (0, preact_1.h)("div", { class: 'flex flex-column gap-4' },
14
+ (0, preact_1.h)("div", null,
15
+ (0, preact_1.h)("h2", { class: 'font-semibold text-gray-500 mb-1' }, "Entities"),
16
+ (0, preact_1.h)("ul", { class: 'text-sm' }, Object.values(props.schema.model.entities).map(entity => ((0, preact_1.h)("li", null,
17
+ (0, preact_1.h)(EntityLink_1.EntityLink, { entity: entity.name })))))),
18
+ (0, preact_1.h)("div", null,
19
+ (0, preact_1.h)("h2", { class: 'font-semibold text-gray-500 mb-1' }, "Enums"),
20
+ (0, preact_1.h)("ul", { class: 'text-sm' }, Object.entries(props.schema.model.enums).map(([name, values]) => ((0, preact_1.h)("li", { class: 'mb-2' },
21
+ name,
22
+ " ",
23
+ (0, preact_1.h)("br", null),
24
+ (0, preact_1.h)("span", { class: 'text-gray-700 ml-4' }, values.join(', '))))))))),
25
+ Object.values(props.schema.model.entities).map(entity => ((0, preact_1.h)(EntityInfo_1.EntityInfo, { entity: entity, schema: props.schema, references: references })))));
26
+ };
27
+ exports.ProjectInfo = ProjectInfo;
28
+ //# sourceMappingURL=ProjectInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectInfo.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/ProjectInfo.tsx"],"names":[],"mappings":";;;AACA,mCAA0B;AAC1B,sEAAkE;AAClE,6CAAyC;AACzC,6CAAyC;AAGlC,MAAM,WAAW,GAAG,CAAC,KAA8C,EAAE,EAAE;IAC7E,MAAM,UAAU,GAAG,IAAA,qCAAiB,EAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAExD,OAAO,CACN,yBAAK,KAAK,EAAE,QAAQ;QACnB,yBAAK,KAAK,EAAE,0CAA0C;YACrD,wBAAI,KAAK,EAAE,wBAAwB,IAAG,KAAK,CAAC,WAAW,CAAM;YAC7D,yBAAK,KAAK,EAAE,wBAAwB;gBACnC;oBACC,wBAAI,KAAK,EAAE,kCAAkC,eAAe;oBAC5D,wBAAI,KAAK,EAAE,SAAS,IAClB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CACzD;wBACC,gBAAC,uBAAU,IAAC,MAAM,EAAE,MAAM,CAAC,IAAI,GAAI,CAC/B,CACL,CAAC,CACE,CACA;gBACN;oBACC,wBAAI,KAAK,EAAE,kCAAkC,YAAY;oBACzD,wBAAI,KAAK,EAAE,SAAS,IAClB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CACjE,wBAAI,KAAK,EAAE,MAAM;wBACf,IAAI;;wBAAE,2BAAM;wBACb,0BAAM,KAAK,EAAE,oBAAoB,IAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CACZ,CACH,CACL,CAAC,CACE,CACA,CACD,CAGD;QACL,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CACzD,gBAAC,uBAAU,IAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,CAC3E,CAAC,CACG,CACN,CAAA;AACF,CAAC,CAAA;AAxCY,QAAA,WAAW,eAwCvB"}
@@ -0,0 +1,7 @@
1
+ import { h } from 'preact';
2
+ import { Acl } from '@contember/schema';
3
+ export declare const SinglePermission: ({ predicate, value }: {
4
+ predicate?: Acl.Predicate | undefined;
5
+ value: string;
6
+ }) => h.JSX.Element;
7
+ //# sourceMappingURL=SinglePermission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SinglePermission.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/SinglePermission.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAEvC,eAAO,MAAM,gBAAgB;;WAA8D,MAAM;mBAQhG,CAAA"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SinglePermission = void 0;
4
+ const preact_1 = require("preact");
5
+ const SinglePermission = ({ predicate, value }) => {
6
+ if (!predicate) {
7
+ return (0, preact_1.h)("span", { class: 'bg-red-500 text-white font-semibold px-0.5' }, value);
8
+ }
9
+ if (predicate === true) {
10
+ return (0, preact_1.h)("span", { class: 'bg-green-600 text-white font-semibold px-0.5' }, value);
11
+ }
12
+ return (0, preact_1.h)("span", { class: 'bg-yellow-400 text-black font-semibold px-0.5', title: predicate }, value);
13
+ };
14
+ exports.SinglePermission = SinglePermission;
15
+ //# sourceMappingURL=SinglePermission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SinglePermission.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/SinglePermission.tsx"],"names":[],"mappings":";;;AAAA,mCAA0B;AAGnB,MAAM,gBAAgB,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAgD,EAAE,EAAE;IACtG,IAAI,CAAC,SAAS,EAAE;QACf,OAAO,0BAAM,KAAK,EAAE,4CAA4C,IAAG,KAAK,CAAQ,CAAA;KAChF;IACD,IAAI,SAAS,KAAK,IAAI,EAAE;QACvB,OAAO,0BAAM,KAAK,EAAE,8CAA8C,IAAG,KAAK,CAAQ,CAAA;KAClF;IACD,OAAO,0BAAM,KAAK,EAAE,+CAA+C,EAAE,KAAK,EAAE,SAAS,IAAG,KAAK,CAAQ,CAAA;AACtG,CAAC,CAAA;AARY,QAAA,gBAAgB,oBAQ5B"}
@@ -0,0 +1,3 @@
1
+ export declare const formatEntityAnchor: (name: string) => string;
2
+ export declare const formatFieldAnchor: (entity: string, field: string) => string;
3
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/utils/project/components/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,SAAU,MAAM,WAAqB,CAAA;AACpE,eAAO,MAAM,iBAAiB,WAAY,MAAM,SAAS,MAAM,WAAgC,CAAA"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatFieldAnchor = exports.formatEntityAnchor = void 0;
4
+ const formatEntityAnchor = (name) => `entity-${name}`;
5
+ exports.formatEntityAnchor = formatEntityAnchor;
6
+ const formatFieldAnchor = (entity, field) => `field-${entity}--${field}`;
7
+ exports.formatFieldAnchor = formatFieldAnchor;
8
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/utils/project/components/utils.ts"],"names":[],"mappings":";;;AAAO,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,CAAA;AAAvD,QAAA,kBAAkB,sBAAqC;AAC7D,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAE,KAAa,EAAE,EAAE,CAAC,SAAS,MAAM,KAAK,KAAK,EAAE,CAAA;AAAlF,QAAA,iBAAiB,qBAAiE"}
@@ -1,4 +1,4 @@
1
1
  import { Project } from '@contember/cli-common';
2
2
  import { Schema } from '@contember/schema';
3
3
  export declare const loadSchema: (project: Project) => Promise<Schema>;
4
- //# sourceMappingURL=project.d.ts.map
4
+ //# sourceMappingURL=loadSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadSchema.d.ts","sourceRoot":"","sources":["../../../../src/utils/project/loadSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAM1C,eAAO,MAAM,UAAU,YAAmB,OAAO,KAAG,QAAQ,MAAM,CAmBjE,CAAA"}
@@ -49,4 +49,4 @@ const loadSchema = async (project) => {
49
49
  return (0, schema_utils_1.schemaType)(fixedSchema);
50
50
  };
51
51
  exports.loadSchema = loadSchema;
52
- //# sourceMappingURL=project.js.map
52
+ //# sourceMappingURL=loadSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadSchema.js","sourceRoot":"","sources":["../../../../src/utils/project/loadSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,iDAAkC;AAClC,+BAA2B;AAC3B,6BAA4B;AAC5B,0DAAoD;AAE7C,MAAM,UAAU,GAAG,KAAK,EAAE,OAAgB,EAAmB,EAAE;IACrE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC;QACpC,WAAW,EAAE,CAAC,IAAA,WAAI,EAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC/C,QAAQ,EAAE,MAAM;QAChB,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;QACjB,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,CAAC,kBAAkB,EAAE,OAAO,EAAE,mBAAmB,CAAC;KAC5D,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC9C,MAAM,EAAE,GAAG,IAAI,YAAM,CAAC;QACrB,OAAO,EAAE;YACR,OAAO,EAAE,CAAC,GAAG,CAAC;SACd;KACD,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,OAAO,CAAA;IAC9C,gDAAgD;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IACtD,OAAO,IAAA,yBAAU,EAAC,WAAW,CAAC,CAAA;AAC/B,CAAC,CAAA;AAnBY,QAAA,UAAU,cAmBtB"}
@@ -0,0 +1,3 @@
1
+ import { Schema } from '@contember/schema';
2
+ export declare const renderProjectInfoHtml: (schema: Schema, projectName: string) => Promise<string>;
3
+ //# sourceMappingURL=projectDescribe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectDescribe.d.ts","sourceRoot":"","sources":["../../../../src/utils/project/projectDescribe.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAM1C,eAAO,MAAM,qBAAqB,WAAkB,MAAM,eAAe,MAAM,oBAkB9E,CAAA"}
@@ -0,0 +1,29 @@
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.renderProjectInfoHtml = void 0;
7
+ const preact_1 = require("preact");
8
+ const preact_render_to_string_1 = __importDefault(require("preact-render-to-string"));
9
+ const ProjectInfo_1 = require("./components/ProjectInfo");
10
+ const promises_1 = require("fs/promises");
11
+ const renderProjectInfoHtml = async (schema, projectName) => {
12
+ const html = (0, preact_render_to_string_1.default)((0, preact_1.h)(ProjectInfo_1.ProjectInfo, { schema: schema, projectName: projectName }));
13
+ const css = await (0, promises_1.readFile)(__dirname + '/resources/out.css');
14
+ return `<!DOCTYPE html>
15
+ <html lang="en">
16
+ <head>
17
+ <meta charset="UTF-8">
18
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
19
+ <style>${css}</style>
20
+ <title>${projectName}</title>
21
+ </head>
22
+ <body>
23
+ ${html}
24
+ </body>
25
+ </html>
26
+ `;
27
+ };
28
+ exports.renderProjectInfoHtml = renderProjectInfoHtml;
29
+ //# sourceMappingURL=projectDescribe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectDescribe.js","sourceRoot":"","sources":["../../../../src/utils/project/projectDescribe.tsx"],"names":[],"mappings":";;;;;;AACA,mCAA0B;AAC1B,sFAA4C;AAC5C,0DAAsD;AACtD,0CAAsC;AAE/B,MAAM,qBAAqB,GAAG,KAAK,EAAE,MAAc,EAAE,WAAmB,EAAE,EAAE;IAClF,MAAM,IAAI,GAAG,IAAA,iCAAM,EAAC,gBAAC,yBAAW,IAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAI,CAAC,CAAA;IAE9E,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAQ,EAAC,SAAS,GAAG,oBAAoB,CAAC,CAAA;IAC5D,OAAO;;;;;UAKE,GAAG;UACH,WAAW;;;EAGnB,IAAI;;;CAGL,CAAA;AAED,CAAC,CAAA;AAlBY,QAAA,qBAAqB,yBAkBjC"}