@dxos/plugin-template 0.4.7-next.7a94090 → 0.4.8-main.ac78619

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 (38) hide show
  1. package/dist/package.json +5 -3
  2. package/dist/src/README.md.t.d.ts +18 -0
  3. package/dist/src/README.md.t.d.ts.map +1 -0
  4. package/dist/src/README.md.t.js +27 -0
  5. package/dist/src/README.md.t.js.map +1 -0
  6. package/dist/src/dev/config.ts.t.d.ts +49 -0
  7. package/dist/src/dev/config.ts.t.d.ts.map +1 -0
  8. package/dist/src/dev/config.ts.t.js +16 -0
  9. package/dist/src/dev/config.ts.t.js.map +1 -0
  10. package/dist/src/dev/main.tsx.t.d.ts.map +1 -1
  11. package/dist/src/dev/main.tsx.t.js +74 -48
  12. package/dist/src/dev/main.tsx.t.js.map +1 -1
  13. package/dist/src/dev/shell.html.t.d.ts +18 -0
  14. package/dist/src/dev/shell.html.t.d.ts.map +1 -0
  15. package/dist/src/dev/shell.html.t.js +49 -0
  16. package/dist/src/dev/shell.html.t.js.map +1 -0
  17. package/dist/src/dev/shell.ts.t.d.ts +49 -0
  18. package/dist/src/dev/shell.ts.t.d.ts.map +1 -0
  19. package/dist/src/dev/shell.ts.t.js +18 -0
  20. package/dist/src/dev/shell.ts.t.js.map +1 -0
  21. package/dist/src/package.json.t.d.ts +4 -3
  22. package/dist/src/package.json.t.d.ts.map +1 -1
  23. package/dist/src/package.json.t.js +24 -27
  24. package/dist/src/package.json.t.js.map +1 -1
  25. package/dist/src/src/index.ts.t.d.ts +18 -0
  26. package/dist/src/src/index.ts.t.d.ts.map +1 -0
  27. package/dist/src/src/index.ts.t.js +11 -0
  28. package/dist/src/src/index.ts.t.js.map +1 -0
  29. package/dist/src/template.t.d.ts.map +1 -1
  30. package/dist/src/template.t.js +20 -0
  31. package/dist/src/template.t.js.map +1 -1
  32. package/package.json +7 -5
  33. package/src/README.md.t.ts +22 -0
  34. package/src/package.json.t.ts +25 -25
  35. package/src/src/index.ts.t.ts +7 -0
  36. package/src/template.t.ts +21 -1
  37. package/src/tsconfig.json +17 -0
  38. package/tsconfig.json +6 -0
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/plugin-template",
3
- "version": "0.4.7-next.7a94090",
3
+ "version": "0.4.8-main.ac78619",
4
4
  "description": "An template project for prototyping plugins for the DXOS app framework.",
5
5
  "keywords": [
6
6
  "dxos",
@@ -18,16 +18,18 @@
18
18
  "main": "dist/src/template.t.js",
19
19
  "types": "dist/src/template.t.d.ts",
20
20
  "scripts": {
21
- "build": "tsc",
22
- "out": "plate ../bare-template/src --output=out --verbose"
21
+ "build": "tsc"
23
22
  },
24
23
  "dependencies": {
25
24
  "@dxos/plate": "workspace:*",
25
+ "chalk": "^4.1.0",
26
26
  "lodash.merge": "^4.6.2",
27
27
  "sanitize-filename": "1.6.3"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@dxos/app-framework": "workspace:*",
31
+ "@dxos/config": "workspace:*",
32
+ "@dxos/shell": "workspace:*",
31
33
  "@phosphor-icons/react": "^2.0.5",
32
34
  "@types/lodash.merge": "^4.6.6",
33
35
  "tmp-promise": "^3.0.3",
@@ -0,0 +1,18 @@
1
+ declare const _default: {
2
+ (options: import("@dxos/plate").Options<{
3
+ name: string;
4
+ createFolder: boolean;
5
+ defaultPlugins: boolean;
6
+ }, import("@dxos/plate").SlotsWithContext<{
7
+ name: string;
8
+ createFolder: boolean;
9
+ defaultPlugins: boolean;
10
+ }, {}, import("@dxos/plate").Context<{
11
+ name: string;
12
+ createFolder: boolean;
13
+ defaultPlugins: boolean;
14
+ }, {}>>>): Promise<import("@dxos/plate").FileResults<any, import("@dxos/plate").FileSlots<any>>>;
15
+ slots: {};
16
+ };
17
+ export default _default;
18
+ //# sourceMappingURL=README.md.t.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"README.md.t.d.ts","sourceRoot":"","sources":["../../src/README.md.t.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAGA,wBAkBG"}
@@ -0,0 +1,27 @@
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
+ const plate_1 = require("@dxos/plate");
7
+ const template_t_1 = __importDefault(require("./template.t"));
8
+ exports.default = template_t_1.default.define.text({
9
+ content: ({ input: { name } }) => (0, plate_1.plate) `
10
+ # ${name}
11
+
12
+ This app was created with a DXOS application template.
13
+
14
+ Run the app with \`npm\`:
15
+ \`\`\`bash
16
+ npm install
17
+ npm run dev
18
+ \`\`\`
19
+
20
+ > Warning: pnpm is not supported for now, please use npm. (issue locating css in node_modules).
21
+
22
+ - [📚 Composer Documentation](https://docs.dxos.org/composer/)
23
+ - [📚 Using ECHO with React](https://docs.dxos.org/guide/react)
24
+ - [📚 DXOS Documentation](https://docs.dxos.org)
25
+ `
26
+ });
27
+ //# sourceMappingURL=README.md.t.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"README.md.t.js","sourceRoot":"","sources":["../../src/README.md.t.ts"],"names":[],"mappings":";;;;;AAAA,uCAAoC;AACpC,8DAAoC;AAEpC,kBAAe,oBAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;IAClC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,IAAA,aAAK,EAAA;QACjC,IAAI;;;;;;;;;;;;;;;GAeT;CACF,CAAC,CAAC"}
@@ -0,0 +1,49 @@
1
+ declare const _default: {
2
+ (options: import("@dxos/plate").Options<{
3
+ name: string;
4
+ createFolder: boolean;
5
+ defaultPlugins: boolean;
6
+ }, import("@dxos/plate").SlotsWithContext<{
7
+ name: string;
8
+ createFolder: boolean;
9
+ defaultPlugins: boolean;
10
+ }, {}, Required<Omit<import("@dxos/plate").Options<{
11
+ name: string;
12
+ createFolder: boolean;
13
+ defaultPlugins: boolean;
14
+ }, {}>, "slots" | "input">> & {
15
+ input: {
16
+ name: string;
17
+ createFolder: boolean;
18
+ defaultPlugins: boolean;
19
+ };
20
+ outputFile: string;
21
+ slots: import("@dxos/plate").SlotProducers<{}>;
22
+ inherited: import("@dxos/plate").FileResults<{
23
+ name: string;
24
+ createFolder: boolean;
25
+ defaultPlugins: boolean;
26
+ }, import("@dxos/plate").FileSlots<{
27
+ name: string;
28
+ createFolder: boolean;
29
+ defaultPlugins: boolean;
30
+ }>> | undefined;
31
+ } & {
32
+ imports: {
33
+ (): (relativeTo?: (string | string[]) | undefined) => string;
34
+ use: {
35
+ (name: string, from: string | string[], o?: {
36
+ aliasOf?: string | undefined;
37
+ isDefault?: boolean | undefined;
38
+ } | undefined): () => string;
39
+ (names: string[], from: string | string[], o?: {
40
+ aliasOf?: string | undefined;
41
+ isDefault?: boolean | undefined;
42
+ } | undefined): Record<string, () => string>;
43
+ };
44
+ };
45
+ }>>): Promise<import("@dxos/plate").FileResults<any, import("@dxos/plate").FileSlots<any>>>;
46
+ slots: {};
47
+ };
48
+ export default _default;
49
+ //# sourceMappingURL=config.ts.t.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.ts.t.d.ts","sourceRoot":"","sources":["../../../src/dev/config.ts.t.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAOG"}
@@ -0,0 +1,16 @@
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
+ const plate_1 = require("@dxos/plate");
7
+ const template_t_1 = __importDefault(require("../template.t"));
8
+ exports.default = template_t_1.default.define.script({
9
+ content: ({ input: { defaultPlugins } }) => defaultPlugins && (0, plate_1.plate /* javascript */) `
10
+ import { Config, Defaults, Envs, Local, Storage } from '@dxos/config';
11
+ export const createConfig = async () => {
12
+ return new Config(await Storage(), Envs(), Local(), Defaults());
13
+ };
14
+ `,
15
+ });
16
+ //# sourceMappingURL=config.ts.t.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.ts.t.js","sourceRoot":"","sources":["../../../src/dev/config.ts.t.ts"],"names":[],"mappings":";;;;;AAAA,uCAAoC;AACpC,+DAAqC;AAErC,kBAAe,oBAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAC;;;;;GAKnF;CACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"main.tsx.t.d.ts","sourceRoot":"","sources":["../../../src/dev/main.tsx.t.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAyEG"}
1
+ {"version":3,"file":"main.tsx.t.d.ts","sourceRoot":"","sources":["../../../src/dev/main.tsx.t.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAqGG"}
@@ -24,59 +24,85 @@ exports.default = template_t_1.default.define.script({
24
24
  import NavTreeMeta from "@braneframe/plugin-navtree/meta";
25
25
  import SpaceMeta from "@braneframe/plugin-space/meta";
26
26
  import StackMeta from "@braneframe/plugin-stack/meta";
27
+ import SettingsMeta from "@braneframe/plugin-settings/meta";
28
+ import MetadataMeta from "@braneframe/plugin-metadata/meta";
29
+
30
+ import { createClientServices } from "@dxos/react-client";
31
+ import { createConfig } from "./config";
27
32
  `}
28
33
 
29
34
  import { meta } from "../src/plugin";
30
35
 
31
- const App = createApp({
32
- fallback: ({ error }) => (
33
- <ThemeProvider tx={defaultTx} resourceExtensions={translations}>
34
- <Tooltip.Provider>
35
- <div className="flex bs-[100dvh] justify-center items-center p-6 text-red-500">
36
- {error.message}
36
+ (async function () {
37
+ ${defaultPlugins && (0, plate_1.plate /* javascript */) `
38
+ const config = await createConfig();
39
+ const services = await createClientServices(
40
+ config,
41
+ // () =>
42
+ // new SharedWorker(new URL("@dxos/client/shared-worker", import.meta.url), {
43
+ // type: "module",
44
+ // name: "dxos-client-worker",
45
+ // })
46
+ );`}
47
+ const App = createApp({
48
+ fallback: ({ error }) => (
49
+ <ThemeProvider tx={defaultTx} resourceExtensions={translations}>
50
+ <Tooltip.Provider>
51
+ <div className="flex bs-[100dvh] justify-center items-center p-6 text-red-500">
52
+ {error.message}
53
+ </div>
54
+ </Tooltip.Provider>
55
+ </ThemeProvider>
56
+ ),
57
+ placeholder: (
58
+ <ThemeProvider tx={defaultTx}>
59
+ <div className="flex bs-[100dvh] justify-center items-center">
60
+ <Status indeterminate aria-label="Initializing" placeholder="" />
37
61
  </div>
38
- </Tooltip.Provider>
39
- </ThemeProvider>
40
- ),
41
- placeholder: (
42
- <ThemeProvider tx={defaultTx}>
43
- <div className="flex bs-[100dvh] justify-center items-center">
44
- <Status indeterminate aria-label="Initializing" placeholder="" />
45
- </div>
46
- </ThemeProvider>
47
- ),
48
- plugins: {
49
- [ThemeMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-theme"), {
50
- appName: "Composer",
51
- }),
52
- ${defaultPlugins && (0, plate_1.plate /* javascript */) `
53
- [GraphMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-graph")),
54
- [LayoutMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-layout")),
55
- [NavTreeMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-navTree")),
56
- [ClientMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-client"), {
57
- appKey: "composer.local",
58
- }),
59
- [SpaceMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-space")),
60
- [StackMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-stack")),
61
- `}
62
- [meta.id]: Plugin.lazy(() => import("../src/plugin")),
63
- },
64
- order: [
65
- // Outside of error boundary so error dialog is styled.
66
- ThemeMeta,
67
- ${defaultPlugins && (0, plate_1.plate /* javascript */) `
68
- LayoutMeta,
69
- NavTreeMeta,
70
- ClientMeta,
71
- SpaceMeta,
72
- GraphMeta,
73
- StackMeta,
74
- `}
75
- meta,
76
- ],
77
- });
78
-
79
- createRoot(document.getElementById("root")!).render(<App />);
62
+ </ThemeProvider>
63
+ ),
64
+ plugins: {
65
+ [ThemeMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-theme"), {
66
+ appName: "Composer",
67
+ }),
68
+ ${defaultPlugins && (0, plate_1.plate /* javascript */) `
69
+ [LayoutMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-layout")),
70
+ [NavTreeMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-navTree")),
71
+ [SettingsMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-settings")),
72
+ [ClientMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-client"), {
73
+ appKey: "composer.local",
74
+ config,
75
+ services,
76
+ shell: "./shell.html",
77
+ }),
78
+ [SpaceMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-space")),
79
+ [GraphMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-graph")),
80
+ [MetadataMeta.id]: Plugin.lazy(
81
+ () => import("@braneframe/plugin-metadata")
82
+ ),
83
+ [StackMeta.id]: Plugin.lazy(() => import("@braneframe/plugin-stack")),
84
+ `}
85
+ [meta.id]: Plugin.lazy(() => import("../src/plugin")),
86
+ },
87
+ order: [
88
+ // Outside of error boundary so error dialog is styled.
89
+ ThemeMeta,
90
+ ${defaultPlugins && (0, plate_1.plate /* javascript */) `
91
+ LayoutMeta,
92
+ NavTreeMeta,
93
+ SettingsMeta,
94
+ ClientMeta,
95
+ SpaceMeta,
96
+ GraphMeta,
97
+ MetadataMeta,
98
+ StackMeta,
99
+ `}
100
+ meta,
101
+ ],
102
+ });
103
+
104
+ createRoot(document.getElementById("root")!).render(<App />);
105
+ })();
80
106
  `
81
107
  });
82
108
  //# sourceMappingURL=main.tsx.t.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.tsx.t.js","sourceRoot":"","sources":["../../../src/dev/main.tsx.t.ts"],"names":[],"mappings":";;;;;AAAA,+DAAqC;AACrC,uCAAoC;AAEpC,kBAAe,oBAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;;;;;MAW7D,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;KAOxC;;;;;;;;;;;;;;;;;;;;;;;;;UAyBK,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;;;SASxC;;;;;;UAMC,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;SAOxC;;;;;;GAMN;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"main.tsx.t.js","sourceRoot":"","sources":["../../../src/dev/main.tsx.t.ts"],"names":[],"mappings":";;;;;AAAA,+DAAqC;AACrC,uCAAoC;AAEpC,kBAAe,oBAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;;;;;MAW7D,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;;;;;;KAYxC;;;;;QAMG,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;;;WAUzC;;;;;;;;;;;;;;;;;;;;;;YAsBM,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;;;;;;;;;;WAgBxC;;;;;;YAMC,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;;;WASxC;;;;;;;GAOR;CACF,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ declare const _default: {
2
+ (options: import("@dxos/plate").Options<{
3
+ name: string;
4
+ createFolder: boolean;
5
+ defaultPlugins: boolean;
6
+ }, import("@dxos/plate").SlotsWithContext<{
7
+ name: string;
8
+ createFolder: boolean;
9
+ defaultPlugins: boolean;
10
+ }, {}, import("@dxos/plate").Context<{
11
+ name: string;
12
+ createFolder: boolean;
13
+ defaultPlugins: boolean;
14
+ }, {}>>>): Promise<import("@dxos/plate").FileResults<any, import("@dxos/plate").FileSlots<any>>>;
15
+ slots: {};
16
+ };
17
+ export default _default;
18
+ //# sourceMappingURL=shell.html.t.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.html.t.d.ts","sourceRoot":"","sources":["../../../src/dev/shell.html.t.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAGA,wBAwCG"}
@@ -0,0 +1,49 @@
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
+ const plate_1 = require("@dxos/plate");
7
+ const template_t_1 = __importDefault(require("../template.t"));
8
+ exports.default = template_t_1.default.define.text({
9
+ content: ({ input: { defaultPlugins } }) => defaultPlugins && (0, plate_1.plate) `
10
+ <!DOCTYPE html>
11
+ <html lang="en">
12
+ <head>
13
+ <meta charset="UTF-8" />
14
+ <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" />
15
+ <meta
16
+ http-equiv="Content-Security-Policy"
17
+ content="
18
+ connect-src https: file: ipc: socket: ws://localhost:* http://localhost:*;
19
+ script-src https: socket: http://localhost:* 'unsafe-eval' 'unsafe-inline';
20
+ img-src https: data: file: http://localhost:*;
21
+ child-src 'none';
22
+ object-src 'none';
23
+ "
24
+ />
25
+ <style>
26
+ html,
27
+ body {
28
+ background: transparent !important;
29
+ }
30
+ </style>
31
+ <!-- TODO(wittjosiah): Add hash/nonce and remove unsafe-inline from content security policy. -->
32
+ <script>
33
+ function setTheme(darkMode) {
34
+ document.documentElement.classList[darkMode ? 'add' : 'remove']('dark');
35
+ }
36
+ setTheme(window.matchMedia('(prefers-color-scheme: dark)').matches);
37
+ window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', function (e) {
38
+ setTheme(e.matches);
39
+ });
40
+ </script>
41
+ </head>
42
+ <body>
43
+ <div id="root"></div>
44
+ <script type="module" src="shell.ts"></script>
45
+ </body>
46
+ </html>
47
+ `
48
+ });
49
+ //# sourceMappingURL=shell.html.t.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.html.t.js","sourceRoot":"","sources":["../../../src/dev/shell.html.t.ts"],"names":[],"mappings":";;;;;AAAA,uCAAoC;AACpC,+DAAqC;AAErC,kBAAe,oBAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;IAClC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,cAAc,IAAI,IAAA,aAAK,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsClE;CACF,CAAC,CAAC"}
@@ -0,0 +1,49 @@
1
+ declare const _default: {
2
+ (options: import("@dxos/plate").Options<{
3
+ name: string;
4
+ createFolder: boolean;
5
+ defaultPlugins: boolean;
6
+ }, import("@dxos/plate").SlotsWithContext<{
7
+ name: string;
8
+ createFolder: boolean;
9
+ defaultPlugins: boolean;
10
+ }, {}, Required<Omit<import("@dxos/plate").Options<{
11
+ name: string;
12
+ createFolder: boolean;
13
+ defaultPlugins: boolean;
14
+ }, {}>, "slots" | "input">> & {
15
+ input: {
16
+ name: string;
17
+ createFolder: boolean;
18
+ defaultPlugins: boolean;
19
+ };
20
+ outputFile: string;
21
+ slots: import("@dxos/plate").SlotProducers<{}>;
22
+ inherited: import("@dxos/plate").FileResults<{
23
+ name: string;
24
+ createFolder: boolean;
25
+ defaultPlugins: boolean;
26
+ }, import("@dxos/plate").FileSlots<{
27
+ name: string;
28
+ createFolder: boolean;
29
+ defaultPlugins: boolean;
30
+ }>> | undefined;
31
+ } & {
32
+ imports: {
33
+ (): (relativeTo?: (string | string[]) | undefined) => string;
34
+ use: {
35
+ (name: string, from: string | string[], o?: {
36
+ aliasOf?: string | undefined;
37
+ isDefault?: boolean | undefined;
38
+ } | undefined): () => string;
39
+ (names: string[], from: string | string[], o?: {
40
+ aliasOf?: string | undefined;
41
+ isDefault?: boolean | undefined;
42
+ } | undefined): Record<string, () => string>;
43
+ };
44
+ };
45
+ }>>): Promise<import("@dxos/plate").FileResults<any, import("@dxos/plate").FileSlots<any>>>;
46
+ slots: {};
47
+ };
48
+ export default _default;
49
+ //# sourceMappingURL=shell.ts.t.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.ts.t.d.ts","sourceRoot":"","sources":["../../../src/dev/shell.ts.t.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBASE"}
@@ -0,0 +1,18 @@
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
+ const plate_1 = require("@dxos/plate");
7
+ const template_t_1 = __importDefault(require("../template.t"));
8
+ exports.default = template_t_1.default.define.script({
9
+ content: ({ input: { defaultPlugins } }) => defaultPlugins && (0, plate_1.plate /* javascript */) `
10
+ import '@dxosTheme';
11
+ import { runShell } from '@dxos/shell/react';
12
+ import { createConfig } from './config';
13
+
14
+ // eslint-disable-next-line no-console
15
+ createConfig().then(runShell).catch(console.error);
16
+ `
17
+ });
18
+ //# sourceMappingURL=shell.ts.t.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.ts.t.js","sourceRoot":"","sources":["../../../src/dev/shell.ts.t.ts"],"names":[],"mappings":";;;;;AAAA,uCAAoC;AACpC,+DAAqC;AAErC,kBAAe,oBAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,cAAc,IAAI,IAAA,aAAK,CAAA,gBAAgB,EAAA;;;;;;;GAOlF;CACF,CAAC,CAAA"}
@@ -3,13 +3,14 @@ import { PackageJson } from './utils.t/packageJson';
3
3
  import template from './template.t';
4
4
  type Context = {
5
5
  version: string;
6
+ frameworkVersion: string;
6
7
  } & InputOf<typeof template>;
7
8
  export declare namespace Features {
8
9
  const react: () => Partial<PackageJson>;
9
- const dxosUi: () => Partial<PackageJson>;
10
- const defaultPlugins: () => Partial<PackageJson>;
10
+ const dxosUi: ({ frameworkVersion }: Context) => Partial<PackageJson>;
11
+ const defaultPlugins: ({ frameworkVersion }: Context) => Partial<PackageJson>;
11
12
  }
12
- export declare const base: ({ name, version }: Context) => Partial<PackageJson>;
13
+ export declare const base: ({ name, version, frameworkVersion }: Context) => Partial<PackageJson>;
13
14
  declare const _default: {
14
15
  (options: import("@dxos/plate").Options<{
15
16
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"package.json.t.d.ts","sourceRoot":"","sources":["../../src/package.json.t.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIpD,OAAO,QAAQ,MAAM,cAAc,CAAC;AAEpC,KAAK,OAAO,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE9D,yBAAiB,QAAQ,CAAC;IACjB,MAAM,KAAK,QAAO,QAAQ,WAAW,CAU1C,CAAC;IAEI,MAAM,MAAM,QAAO,QAAQ,WAAW,CAQ3C,CAAC;IAEI,MAAM,cAAc,QAAO,QAAQ,WAAW,CAYnD,CAAC;CACJ;AAED,eAAO,MAAM,IAAI,sBAAuB,OAAO,KAAG,QAAQ,WAAW,CAuBpE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOF,wBAwBK"}
1
+ {"version":3,"file":"package.json.t.d.ts","sourceRoot":"","sources":["../../src/package.json.t.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIpD,OAAO,QAAQ,MAAM,cAAc,CAAC;AAEpC,KAAK,OAAO,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,OAAO,QAAQ,CAAC,CAAC;AAExF,yBAAiB,QAAQ,CAAC;IACjB,MAAM,KAAK,QAAO,QAAQ,WAAW,CAU1C,CAAC;IAEI,MAAM,MAAM,yBAA0B,OAAO,KAAG,QAAQ,WAAW,CAQxE,CAAC;IAEI,MAAM,cAAc,yBAA0B,OAAO,KAAG,QAAQ,WAAW,CAgBhF,CAAC;CACJ;AAED,eAAO,MAAM,IAAI,wCAAyC,OAAO,KAAG,QAAQ,WAAW,CAuBtF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAyBK"}
@@ -4,11 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.base = exports.Features = void 0;
7
- //
8
- // Copyright 2022 DXOS.org
9
- //
10
- const path_1 = __importDefault(require("path"));
11
- const fs_1 = require("fs");
7
+ const package_json_1 = __importDefault(require("../package.json"));
12
8
  const lodash_merge_1 = __importDefault(require("lodash.merge"));
13
9
  const template_t_1 = __importDefault(require("./template.t"));
14
10
  var Features;
@@ -24,30 +20,34 @@ var Features;
24
20
  '@vitejs/plugin-react': '^4.2.1',
25
21
  },
26
22
  });
27
- Features.dxosUi = () => ({
23
+ Features.dxosUi = ({ frameworkVersion }) => ({
28
24
  dependencies: {
29
25
  '@phosphor-icons/react': '^2.0.5',
30
26
  },
31
27
  devDependencies: {
32
- '@dxos/react-ui': '^0.4.6',
33
- '@dxos/react-ui-theme': '^0.4.6',
28
+ '@dxos/react-ui': '^' + frameworkVersion,
29
+ '@dxos/react-ui-theme': '^' + frameworkVersion,
34
30
  },
35
31
  });
36
- Features.defaultPlugins = () => ({
32
+ Features.defaultPlugins = ({ frameworkVersion }) => ({
37
33
  devDependencies: {
38
- 'vite-plugin-top-level-await': '^1.3.1',
39
34
  'vite-plugin-wasm': '^3.3.0',
40
- '@dxos/config': '^0.4.6',
41
- '@braneframe/plugin-space': '^0.4.6',
42
- '@braneframe/plugin-navtree': '^0.4.6',
43
- '@braneframe/plugin-layout': '^0.4.6',
44
- '@braneframe/plugin-graph': '^0.4.6',
45
- '@braneframe/plugin-client': '^0.4.6',
46
- '@braneframe/plugin-stack': '^0.4.6',
35
+ 'vite-plugin-top-level-await': '^1.3.1',
36
+ '@dxos/react-client': '^' + frameworkVersion,
37
+ '@dxos/config': '^' + frameworkVersion,
38
+ '@dxos/shell': '^' + frameworkVersion,
39
+ '@braneframe/plugin-space': '^' + frameworkVersion,
40
+ '@braneframe/plugin-navtree': '^' + frameworkVersion,
41
+ '@braneframe/plugin-layout': '^' + frameworkVersion,
42
+ '@braneframe/plugin-graph': '^' + frameworkVersion,
43
+ '@braneframe/plugin-client': '^' + frameworkVersion,
44
+ '@braneframe/plugin-stack': '^' + frameworkVersion,
45
+ '@braneframe/plugin-metadata': '^' + frameworkVersion,
46
+ '@braneframe/plugin-settings': '^' + frameworkVersion,
47
47
  },
48
48
  });
49
49
  })(Features || (exports.Features = Features = {}));
50
- const base = ({ name, version }) => {
50
+ const base = ({ name, version, frameworkVersion }) => {
51
51
  return {
52
52
  name,
53
53
  version: version,
@@ -61,21 +61,17 @@ const base = ({ name, version }) => {
61
61
  },
62
62
  dependencies: {
63
63
  '@preact/signals-react': '^1.3.6',
64
- "@dxos/app-framework": "0.4.6",
64
+ '@dxos/app-framework': `^${frameworkVersion}`,
65
65
  },
66
66
  devDependencies: {
67
67
  '@types/node': '^18.11.9',
68
- typescript: '^5.0.4',
69
68
  vite: '^5.1.3',
70
- '@braneframe/plugin-theme': '^0.4.6',
69
+ typescript: '^5.0.4',
70
+ '@braneframe/plugin-theme': `^${frameworkVersion}`,
71
71
  },
72
72
  };
73
73
  };
74
74
  exports.base = base;
75
- const loadJson = async (moduleRelativePath) => {
76
- const content = await fs_1.promises.readFile(path_1.default.resolve(__dirname, moduleRelativePath));
77
- return JSON.parse(content.toString());
78
- };
79
75
  exports.default = template_t_1.default.define
80
76
  .slots({
81
77
  packageJson: {},
@@ -85,13 +81,14 @@ exports.default = template_t_1.default.define
85
81
  var _a;
86
82
  const context = {
87
83
  version: '0.0.1',
84
+ frameworkVersion: package_json_1.default.version,
88
85
  ...input,
89
86
  };
90
87
  const [first, ...rest] = [
91
88
  (0, exports.base)(context),
92
89
  Features.react(),
93
- Features.dxosUi(),
94
- input.defaultPlugins && Features.defaultPlugins(),
90
+ Features.dxosUi(context),
91
+ input.defaultPlugins && Features.defaultPlugins(context),
95
92
  (_a = slotPackageJson === null || slotPackageJson === void 0 ? void 0 : slotPackageJson()) !== null && _a !== void 0 ? _a : {},
96
93
  ].filter(Boolean);
97
94
  const packageJson = (0, lodash_merge_1.default)(first, ...rest);
@@ -1 +1 @@
1
- {"version":3,"file":"package.json.t.js","sourceRoot":"","sources":["../../src/package.json.t.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package.json.t.js","sourceRoot":"","sources":["../../src/package.json.t.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ declare const _default: {
2
+ (options: import("@dxos/plate").Options<{
3
+ name: string;
4
+ createFolder: boolean;
5
+ defaultPlugins: boolean;
6
+ }, import("@dxos/plate").SlotsWithContext<{
7
+ name: string;
8
+ createFolder: boolean;
9
+ defaultPlugins: boolean;
10
+ }, {}, import("@dxos/plate").Context<{
11
+ name: string;
12
+ createFolder: boolean;
13
+ defaultPlugins: boolean;
14
+ }, {}>>>): Promise<import("@dxos/plate").FileResults<any, import("@dxos/plate").FileSlots<any>>>;
15
+ slots: {};
16
+ };
17
+ export default _default;
18
+ //# sourceMappingURL=index.ts.t.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.ts.t.d.ts","sourceRoot":"","sources":["../../../src/src/index.ts.t.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAMA,wBAA8E"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ //
3
+ // Copyright 2024 DXOS.org
4
+ //
5
+ var __importDefault = (this && this.__importDefault) || function (mod) {
6
+ return (mod && mod.__esModule) ? mod : { "default": mod };
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ const template_t_1 = __importDefault(require("../template.t"));
10
+ exports.default = template_t_1.default.define.text({ content: "export * from './plugin';" });
11
+ //# sourceMappingURL=index.ts.t.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.ts.t.js","sourceRoot":"","sources":["../../../src/src/index.ts.t.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,+DAAqC;AAErC,kBAAe,oBAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"template.t.d.ts","sourceRoot":"","sources":["../../src/template.t.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAwB,MAAM,aAAa,CAAC;;;;;;;;;;;;;;AAItD,wBAeG"}
1
+ {"version":3,"file":"template.t.d.ts","sourceRoot":"","sources":["../../src/template.t.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAA+B,MAAM,aAAa,CAAC;;;;;;;;;;;;;;AAK7D,wBAkCG"}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const plate_1 = require("@dxos/plate");
7
7
  const sanitize_filename_1 = __importDefault(require("sanitize-filename"));
8
8
  const path_1 = __importDefault(require("path"));
9
+ const chalk_1 = __importDefault(require("chalk"));
9
10
  exports.default = (0, plate_1.interactiveDirectory)({
10
11
  src: __filename.endsWith('.ts') ? __dirname : path_1.default.resolve(__dirname, '../../src'),
11
12
  inputShape: plate_1.z.object({
@@ -21,5 +22,24 @@ exports.default = (0, plate_1.interactiveDirectory)({
21
22
  ...rest,
22
23
  };
23
24
  },
25
+ after({ outputDirectory, input: { name } }) {
26
+ const cwd = process.cwd();
27
+ const relative = path_1.default.relative(cwd, outputDirectory);
28
+ console.log((0, plate_1.plate) `
29
+
30
+ Plugin ${chalk_1.default.green(chalk_1.default.bold(name))} created.
31
+
32
+ Run the app:
33
+ ${!!relative && `$ cd ${relative}`}
34
+ $ npm install
35
+ $ npm run dev
36
+
37
+ See also:
38
+ - ${path_1.default.join(relative, 'README.md')}
39
+
40
+ Warning:
41
+ - pnpm is not supported for now, please use npm. (issue locating css in node_modules).
42
+ `);
43
+ },
24
44
  });
25
45
  //# sourceMappingURL=template.t.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template.t.js","sourceRoot":"","sources":["../../src/template.t.ts"],"names":[],"mappings":";;;;;AAAA,uCAAsD;AACtD,0EAAyC;AACzC,gDAAwB;AAExB,kBAAe,IAAA,4BAAoB,EAAC;IAClC,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC;IAClF,UAAU,EAAE,SAAC,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,SAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACvF,YAAY,EAAE,SAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACvF,cAAc,EAAE,SAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;KAC9E,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE;QACzC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAC,GAAG,KAAK,EAAC,CAAC;QAC1C,OAAO;YACL,KAAK;YACL,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,eAAe,EAAE,IAAA,2BAAQ,EAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe;YACrG,GAAG,IAAI;SACR,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"template.t.js","sourceRoot":"","sources":["../../src/template.t.ts"],"names":[],"mappings":";;;;;AAAA,uCAA6D;AAC7D,0EAAyC;AACzC,gDAAwB;AACxB,kDAA0B;AAE1B,kBAAe,IAAA,4BAAoB,EAAC;IAClC,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC;IAClF,UAAU,EAAE,SAAC,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,SAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACvF,YAAY,EAAE,SAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACvF,cAAc,EAAE,SAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;KAC9E,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE;QACzC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAC,GAAG,KAAK,EAAC,CAAC;QAC1C,OAAO;YACL,KAAK;YACL,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,eAAe,EAAE,IAAA,2BAAQ,EAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe;YACrG,GAAG,IAAI;SACR,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE;QACxC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,cAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,IAAA,aAAK,EAAA;;aAER,eAAK,CAAC,KAAK,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;;MAGpC,CAAC,CAAC,QAAQ,IAAI,QAAQ,QAAQ,EAAE;;;;;QAK9B,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC;;;;KAInC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/plugin-template",
3
- "version": "0.4.7-next.7a94090",
3
+ "version": "0.4.8-main.ac78619",
4
4
  "description": "An template project for prototyping plugins for the DXOS app framework.",
5
5
  "keywords": [
6
6
  "dxos",
@@ -18,9 +18,10 @@
18
18
  "main": "dist/src/template.t.js",
19
19
  "types": "dist/src/template.t.d.ts",
20
20
  "dependencies": {
21
+ "chalk": "^4.1.0",
21
22
  "lodash.merge": "^4.6.2",
22
23
  "sanitize-filename": "1.6.3",
23
- "@dxos/plate": "0.4.7-next.7a94090"
24
+ "@dxos/plate": "0.4.8-main.ac78619"
24
25
  },
25
26
  "devDependencies": {
26
27
  "@phosphor-icons/react": "^2.0.5",
@@ -29,13 +30,14 @@
29
30
  "ts-node": "10.9.1",
30
31
  "types-package-json": "^2.0.39",
31
32
  "typescript": "^5.2.2",
32
- "@dxos/app-framework": "0.4.7-next.7a94090"
33
+ "@dxos/app-framework": "0.4.8-main.ac78619",
34
+ "@dxos/config": "0.4.8-main.ac78619",
35
+ "@dxos/shell": "0.4.8-main.ac78619"
33
36
  },
34
37
  "publishConfig": {
35
38
  "access": "public"
36
39
  },
37
40
  "scripts": {
38
- "build": "tsc",
39
- "out": "plate ../bare-template/src --output=out --verbose"
41
+ "build": "tsc"
40
42
  }
41
43
  }
@@ -0,0 +1,22 @@
1
+ import { plate } from '@dxos/plate';
2
+ import template from './template.t';
3
+
4
+ export default template.define.text({
5
+ content: ({ input: { name } }) => plate`
6
+ # ${name}
7
+
8
+ This app was created with a DXOS application template.
9
+
10
+ Run the app with \`npm\`:
11
+ \`\`\`bash
12
+ npm install
13
+ npm run dev
14
+ \`\`\`
15
+
16
+ > Warning: pnpm is not supported for now, please use npm. (issue locating css in node_modules).
17
+
18
+ - [📚 Composer Documentation](https://docs.dxos.org/composer/)
19
+ - [📚 Using ECHO with React](https://docs.dxos.org/guide/react)
20
+ - [📚 DXOS Documentation](https://docs.dxos.org)
21
+ `
22
+ });
@@ -5,12 +5,12 @@ import path from 'path';
5
5
  import { promises as fs } from 'fs';
6
6
  import { InputOf, Slot } from '@dxos/plate';
7
7
  import { PackageJson } from './utils.t/packageJson';
8
-
8
+ import ownPackageJson from '../package.json';
9
9
  import merge from 'lodash.merge';
10
10
 
11
11
  import template from './template.t';
12
12
 
13
- type Context = { version: string } & InputOf<typeof template>;
13
+ type Context = { version: string; frameworkVersion: string } & InputOf<typeof template>;
14
14
 
15
15
  export namespace Features {
16
16
  export const react = (): Partial<PackageJson> => ({
@@ -25,32 +25,36 @@ export namespace Features {
25
25
  },
26
26
  });
27
27
 
28
- export const dxosUi = (): Partial<PackageJson> => ({
28
+ export const dxosUi = ({ frameworkVersion }: Context): Partial<PackageJson> => ({
29
29
  dependencies: {
30
30
  '@phosphor-icons/react': '^2.0.5',
31
31
  },
32
32
  devDependencies: {
33
- '@dxos/react-ui': '^0.4.6',
34
- '@dxos/react-ui-theme': '^0.4.6',
33
+ '@dxos/react-ui': '^' + frameworkVersion,
34
+ '@dxos/react-ui-theme': '^' + frameworkVersion,
35
35
  },
36
36
  });
37
37
 
38
- export const defaultPlugins = (): Partial<PackageJson> => ({
38
+ export const defaultPlugins = ({ frameworkVersion }: Context): Partial<PackageJson> => ({
39
39
  devDependencies: {
40
- 'vite-plugin-top-level-await': '^1.3.1',
41
40
  'vite-plugin-wasm': '^3.3.0',
42
- '@dxos/config': '^0.4.6',
43
- '@braneframe/plugin-space': '^0.4.6',
44
- '@braneframe/plugin-navtree': '^0.4.6',
45
- '@braneframe/plugin-layout': '^0.4.6',
46
- '@braneframe/plugin-graph': '^0.4.6',
47
- '@braneframe/plugin-client': '^0.4.6',
48
- '@braneframe/plugin-stack': '^0.4.6',
41
+ 'vite-plugin-top-level-await': '^1.3.1',
42
+ '@dxos/react-client': '^' + frameworkVersion,
43
+ '@dxos/config': '^' + frameworkVersion,
44
+ '@dxos/shell': '^' + frameworkVersion,
45
+ '@braneframe/plugin-space': '^' + frameworkVersion,
46
+ '@braneframe/plugin-navtree': '^' + frameworkVersion,
47
+ '@braneframe/plugin-layout': '^' + frameworkVersion,
48
+ '@braneframe/plugin-graph': '^' + frameworkVersion,
49
+ '@braneframe/plugin-client': '^' + frameworkVersion,
50
+ '@braneframe/plugin-stack': '^' + frameworkVersion,
51
+ '@braneframe/plugin-metadata': '^' + frameworkVersion,
52
+ '@braneframe/plugin-settings': '^' + frameworkVersion,
49
53
  },
50
54
  });
51
55
  }
52
56
 
53
- export const base = ({ name, version }: Context): Partial<PackageJson> => {
57
+ export const base = ({ name, version, frameworkVersion }: Context): Partial<PackageJson> => {
54
58
  return {
55
59
  name,
56
60
  version: version,
@@ -64,22 +68,17 @@ export const base = ({ name, version }: Context): Partial<PackageJson> => {
64
68
  },
65
69
  dependencies: {
66
70
  '@preact/signals-react': '^1.3.6',
67
- "@dxos/app-framework": "0.4.6",
71
+ '@dxos/app-framework': `^${frameworkVersion}`,
68
72
  },
69
73
  devDependencies: {
70
74
  '@types/node': '^18.11.9',
71
- typescript: '^5.0.4',
72
75
  vite: '^5.1.3',
73
- '@braneframe/plugin-theme': '^0.4.6',
76
+ typescript: '^5.0.4',
77
+ '@braneframe/plugin-theme': `^${frameworkVersion}`,
74
78
  },
75
79
  };
76
80
  };
77
81
 
78
- const loadJson = async (moduleRelativePath: string) => {
79
- const content = await fs.readFile(path.resolve(__dirname, moduleRelativePath));
80
- return JSON.parse(content.toString());
81
- };
82
-
83
82
  export default template.define
84
83
  .slots<{ packageJson?: Slot<Partial<PackageJson>, InputOf<typeof template>, { depVersion?: string }> }>({
85
84
  packageJson: {},
@@ -88,14 +87,15 @@ export default template.define
88
87
  content: async ({ input, slots: { packageJson: slotPackageJson } }) => {
89
88
  const context = {
90
89
  version: '0.0.1',
90
+ frameworkVersion: ownPackageJson.version,
91
91
  ...input,
92
92
  };
93
93
 
94
94
  const [first, ...rest] = [
95
95
  base(context),
96
96
  Features.react(),
97
- Features.dxosUi(),
98
- input.defaultPlugins && Features.defaultPlugins(),
97
+ Features.dxosUi(context),
98
+ input.defaultPlugins && Features.defaultPlugins(context),
99
99
  slotPackageJson?.() ?? {},
100
100
  ].filter(Boolean);
101
101
 
@@ -0,0 +1,7 @@
1
+ //
2
+ // Copyright 2024 DXOS.org
3
+ //
4
+
5
+ import template from '../template.t';
6
+
7
+ export default template.define.text({ content: "export * from './plugin';" });
package/src/template.t.ts CHANGED
@@ -1,6 +1,7 @@
1
- import { z, interactiveDirectory } from '@dxos/plate';
1
+ import { z, plate, interactiveDirectory } from '@dxos/plate';
2
2
  import sanitize from 'sanitize-filename';
3
3
  import path from 'path';
4
+ import chalk from 'chalk';
4
5
 
5
6
  export default interactiveDirectory({
6
7
  src: __filename.endsWith('.ts') ? __dirname : path.resolve(__dirname, '../../src'),
@@ -17,4 +18,23 @@ export default interactiveDirectory({
17
18
  ...rest,
18
19
  };
19
20
  },
21
+ after({ outputDirectory, input: { name } }) {
22
+ const cwd = process.cwd();
23
+ const relative = path.relative(cwd, outputDirectory);
24
+ console.log(plate`
25
+
26
+ Plugin ${chalk.green(chalk.bold(name))} created.
27
+
28
+ Run the app:
29
+ ${!!relative && `$ cd ${relative}`}
30
+ $ npm install
31
+ $ npm run dev
32
+
33
+ See also:
34
+ - ${path.join(relative, 'README.md')}
35
+
36
+ Warning:
37
+ - pnpm is not supported for now, please use npm. (issue locating css in node_modules).
38
+ `);
39
+ },
20
40
  });
@@ -0,0 +1,17 @@
1
+ {
2
+ "compilerOptions": {
3
+ "esModuleInterop": true,
4
+ "jsx": "react",
5
+ "emitDeclarationOnly": false,
6
+ "lib": ["DOM", "ESNext"],
7
+ "module": "ESNext",
8
+ "outDir": "dist",
9
+ "skipLibCheck": true,
10
+ "types": ["node"],
11
+ "moduleResolution": "node",
12
+ "isolatedModules": true,
13
+ "target": "ES2018"
14
+ },
15
+ "include": ["src"],
16
+ "exclude": ["node_modules", "dist", "vite.config.ts"]
17
+ }
package/tsconfig.json CHANGED
@@ -29,6 +29,12 @@
29
29
  },
30
30
  {
31
31
  "path": "../../../sdk/app-framework"
32
+ },
33
+ {
34
+ "path": "../../../sdk/config"
35
+ },
36
+ {
37
+ "path": "../../../sdk/shell"
32
38
  }
33
39
  ]
34
40
  }