@ankhorage/studio 2.0.21 → 2.0.23
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.
- package/dist/app/CreateCategoriesScreen.js +1 -1
- package/dist/app/CreateCategoriesScreen.js.map +1 -1
- package/dist/app/CreateCategoryTemplatesScreen.js +1 -1
- package/dist/app/CreateCategoryTemplatesScreen.js.map +1 -1
- package/dist/app/CreateProjectFromTemplateScreen.js +7 -5
- package/dist/app/CreateProjectFromTemplateScreen.js.map +1 -1
- package/dist/app/ProjectDetailScreen.d.ts.map +1 -1
- package/dist/app/ProjectDetailScreen.js +10 -9
- package/dist/app/ProjectDetailScreen.js.map +1 -1
- package/dist/app/StudioApp.d.ts.map +1 -1
- package/dist/app/StudioApp.js +2 -48
- package/dist/app/StudioApp.js.map +1 -1
- package/dist/app/workspace/WorkspacePrimitives.d.ts +7 -1
- package/dist/app/workspace/WorkspacePrimitives.d.ts.map +1 -1
- package/dist/app/workspace/WorkspacePrimitives.js +11 -5
- package/dist/app/workspace/WorkspacePrimitives.js.map +1 -1
- package/dist/cli/index.d.ts +7 -15
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +23 -37
- package/dist/cli/index.js.map +1 -1
- package/dist/hooks/useProjects.d.ts +7 -2
- package/dist/hooks/useProjects.d.ts.map +1 -1
- package/dist/hooks/useProjects.js +56 -57
- package/dist/hooks/useProjects.js.map +1 -1
- package/dist/hooks/useTemplateCatalog.d.ts.map +1 -1
- package/dist/hooks/useTemplateCatalog.js +2 -3
- package/dist/hooks/useTemplateCatalog.js.map +1 -1
- package/dist/host/http/server.d.ts.map +1 -1
- package/dist/host/http/server.js +11 -8
- package/dist/host/http/server.js.map +1 -1
- package/dist/host/index.d.ts +1 -1
- package/dist/host/index.d.ts.map +1 -1
- package/dist/host/index.js +1 -1
- package/dist/host/index.js.map +1 -1
- package/dist/host/layout/templates/screen.d.ts.map +1 -1
- package/dist/host/layout/templates/screen.js +3 -4
- package/dist/host/layout/templates/screen.js.map +1 -1
- package/dist/host/orchestrator/projectCreationSource.d.ts +17 -0
- package/dist/host/orchestrator/projectCreationSource.d.ts.map +1 -0
- package/dist/host/orchestrator/projectCreationSource.js +2 -0
- package/dist/host/orchestrator/projectCreationSource.js.map +1 -0
- package/dist/host/orchestrator/projectManager.d.ts +7 -3
- package/dist/host/orchestrator/projectManager.d.ts.map +1 -1
- package/dist/host/orchestrator/projectManager.js +29 -8
- package/dist/host/orchestrator/projectManager.js.map +1 -1
- package/dist/host/orchestrator/projectStore.js +6 -0
- package/dist/host/orchestrator/projectStore.js.map +1 -1
- package/dist/host/orchestrator/scaffolder.d.ts +0 -2
- package/dist/host/orchestrator/scaffolder.d.ts.map +1 -1
- package/dist/host/orchestrator/scaffolder.js +0 -4
- package/dist/host/orchestrator/scaffolder.js.map +1 -1
- package/dist/host/templates/index.d.ts +12 -0
- package/dist/host/templates/index.d.ts.map +1 -0
- package/dist/host/templates/index.js +64 -0
- package/dist/host/templates/index.js.map +1 -0
- package/dist/host/zoraExtensions/index.d.ts +3 -2
- package/dist/host/zoraExtensions/index.d.ts.map +1 -1
- package/dist/host/zoraExtensions/index.js +12 -8
- package/dist/host/zoraExtensions/index.js.map +1 -1
- package/dist/templateCatalogContracts.d.ts +1 -2
- package/dist/templateCatalogContracts.d.ts.map +1 -1
- package/dist/workspaceSearch.d.ts.map +1 -1
- package/dist/workspaceSearch.js +1 -1
- package/dist/workspaceSearch.js.map +1 -1
- package/package.json +3 -4
- package/dist/hooks/useWorkspaceActions.d.ts +0 -8
- package/dist/hooks/useWorkspaceActions.d.ts.map +0 -1
- package/dist/hooks/useWorkspaceActions.js +0 -28
- package/dist/hooks/useWorkspaceActions.js.map +0 -1
- package/dist/host/templateRegistry/index.d.ts +0 -9
- package/dist/host/templateRegistry/index.d.ts.map +0 -1
- package/dist/host/templateRegistry/index.js +0 -75
- package/dist/host/templateRegistry/index.js.map +0 -1
|
@@ -21,15 +21,13 @@ const ZORA_TABLETOP_EXTENSION = {
|
|
|
21
21
|
},
|
|
22
22
|
};
|
|
23
23
|
const KNOWN_ZORA_EXTENSIONS = [ZORA_CHESS_EXTENSION, ZORA_TABLETOP_EXTENSION];
|
|
24
|
-
|
|
25
|
-
export function
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
/*** Resolve extension packages from the component types actually used by one manifest. */
|
|
25
|
+
export function resolveZoraExtensionsForManifest(manifest) {
|
|
26
|
+
const componentTypes = new Set();
|
|
27
|
+
for (const screen of Object.values(manifest.screens)) {
|
|
28
|
+
collectNodeTypes(screen.root, componentTypes);
|
|
28
29
|
}
|
|
29
|
-
|
|
30
|
-
return [ZORA_TABLETOP_EXTENSION];
|
|
31
|
-
}
|
|
32
|
-
return [];
|
|
30
|
+
return KNOWN_ZORA_EXTENSIONS.filter((extension) => Object.keys(extension.components).some((componentType) => componentTypes.has(componentType)));
|
|
33
31
|
}
|
|
34
32
|
export function resolveZoraExtensionsFromDependencies(dependencies) {
|
|
35
33
|
return KNOWN_ZORA_EXTENSIONS.filter((extension) => extension.packageName in dependencies);
|
|
@@ -51,4 +49,10 @@ export function collectZoraExtensionDependencies(extensions) {
|
|
|
51
49
|
};
|
|
52
50
|
}, {});
|
|
53
51
|
}
|
|
52
|
+
/*** Collect component types recursively from one manifest UI node. */
|
|
53
|
+
function collectNodeTypes(node, componentTypes) {
|
|
54
|
+
componentTypes.add(node.type);
|
|
55
|
+
node.children?.forEach((child) => collectNodeTypes(child, componentTypes));
|
|
56
|
+
node.repeat?.empty?.forEach((child) => collectNodeTypes(child, componentTypes));
|
|
57
|
+
}
|
|
54
58
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/host/zoraExtensions/index.ts"],"names":[],"mappings":"AASA,MAAM,oBAAoB,GAAG;IAC3B,WAAW,EAAE,uBAAuB;IACpC,UAAU,EAAE;QACV,UAAU,EAAE,YAAY;QACxB,WAAW,EAAE,aAAa;KAC3B;IACD,YAAY,EAAE;QACZ,uBAAuB,EAAE,QAAQ;KAClC;CACgC,CAAC;AAEpC,MAAM,uBAAuB,GAAG;IAC9B,WAAW,EAAE,0BAA0B;IACvC,UAAU,EAAE;QACV,aAAa,EAAE,eAAe;QAC9B,KAAK,EAAE,eAAe;QACtB,qBAAqB,EAAE,eAAe;QACtC,gCAAgC,EAAE,eAAe;KAClD;IACD,YAAY,EAAE;QACZ,0BAA0B,EAAE,QAAQ;KACrC;CACgC,CAAC;AAEpC,MAAM,qBAAqB,GAAG,CAAC,oBAAoB,EAAE,uBAAuB,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/host/zoraExtensions/index.ts"],"names":[],"mappings":"AASA,MAAM,oBAAoB,GAAG;IAC3B,WAAW,EAAE,uBAAuB;IACpC,UAAU,EAAE;QACV,UAAU,EAAE,YAAY;QACxB,WAAW,EAAE,aAAa;KAC3B;IACD,YAAY,EAAE;QACZ,uBAAuB,EAAE,QAAQ;KAClC;CACgC,CAAC;AAEpC,MAAM,uBAAuB,GAAG;IAC9B,WAAW,EAAE,0BAA0B;IACvC,UAAU,EAAE;QACV,aAAa,EAAE,eAAe;QAC9B,KAAK,EAAE,eAAe;QACtB,qBAAqB,EAAE,eAAe;QACtC,gCAAgC,EAAE,eAAe;KAClD;IACD,YAAY,EAAE;QACZ,0BAA0B,EAAE,QAAQ;KACrC;CACgC,CAAC;AAEpC,MAAM,qBAAqB,GAAG,CAAC,oBAAoB,EAAE,uBAAuB,CAAU,CAAC;AAEvF,0FAA0F;AAC1F,MAAM,UAAU,gCAAgC,CAC9C,QAAqB;IAErB,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAChD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAC7F,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,YAA8C;IAE9C,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,IAAI,YAAY,CAAC,CAAC;AAC5F,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,GAAG,cAA+D;IAElE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAmC,CAAC;IAE9D,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;QAC3C,KAAK,MAAM,SAAS,IAAI,aAAa,EAAE,CAAC;YACtC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,UAA8C;IAE9C,OAAO,UAAU,CAAC,MAAM,CAAyB,CAAC,YAAY,EAAE,SAAS,EAAE,EAAE;QAC3E,OAAO;YACL,GAAG,YAAY;YACf,GAAG,CAAC,SAAS,CAAC,YAAY,IAAI,EAAE,CAAC;SAClC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,sEAAsE;AACtE,SAAS,gBAAgB,CAAC,IAAY,EAAE,cAA2B;IACjE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC;AAClF,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { AppCategory, ThemeConfig } from '@ankhorage/contracts';
|
|
2
2
|
export interface TemplateCatalogTemplate {
|
|
3
3
|
id: string;
|
|
4
|
-
|
|
4
|
+
slug: string;
|
|
5
5
|
name: string;
|
|
6
|
-
description: string;
|
|
7
6
|
}
|
|
8
7
|
export interface TemplateCatalogCategory {
|
|
9
8
|
id: AppCategory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateCatalogContracts.d.ts","sourceRoot":"","sources":["../src/templateCatalogContracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAErE,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,
|
|
1
|
+
{"version":3,"file":"templateCatalogContracts.d.ts","sourceRoot":"","sources":["../src/templateCatalogContracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAErE,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,WAAW,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,uBAAuB,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,uBAAuB,EAAE,CAAC;CACvC;AAED,MAAM,MAAM,aAAa,GAAG,uBAAuB,GAAG;IACpD,QAAQ,EAAE,WAAW,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceSearch.d.ts","sourceRoot":"","sources":["../src/workspaceSearch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AA0BjF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,oBAAoB,EAAE,EACzC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,cAAc,GACnB,oBAAoB,EAAE,CAmBxB;AAYD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,GACf,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"workspaceSearch.d.ts","sourceRoot":"","sources":["../src/workspaceSearch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AA0BjF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,oBAAoB,EAAE,EACzC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,cAAc,GACnB,oBAAoB,EAAE,CAmBxB;AAYD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,MAAM,GACf,aAAa,EAAE,CAoBjB"}
|
package/dist/workspaceSearch.js
CHANGED
|
@@ -50,7 +50,7 @@ export function filterAndSortTemplates(catalog, queryRaw) {
|
|
|
50
50
|
return entries;
|
|
51
51
|
return entries
|
|
52
52
|
.map((template) => {
|
|
53
|
-
const score = Math.max(scoreText(normalize(template.name), query), scoreText(normalize(template.id), query), scoreText(normalize(template.
|
|
53
|
+
const score = Math.max(scoreText(normalize(template.name), query), scoreText(normalize(template.id), query), scoreText(normalize(template.slug), query), scoreText(normalize(template.category), query), scoreText(normalize(template.categoryLabel), query));
|
|
54
54
|
return { template, score };
|
|
55
55
|
})
|
|
56
56
|
.filter((entry) => entry.score > 0)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceSearch.js","sourceRoot":"","sources":["../src/workspaceSearch.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"workspaceSearch.js","sourceRoot":"","sources":["../src/workspaceSearch.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ankhorage/studio",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.23",
|
|
4
4
|
"description": "Studio authoring package for Ankhorage apps",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/ankhorage/studio#readme",
|
|
@@ -158,7 +158,6 @@
|
|
|
158
158
|
"studio.projects.create",
|
|
159
159
|
"studio.projects.delete",
|
|
160
160
|
"studio.projects.sync",
|
|
161
|
-
"studio.workspace.install",
|
|
162
161
|
"studio.secrets.list",
|
|
163
162
|
"studio.secrets.create",
|
|
164
163
|
"studio.secrets.replace",
|
|
@@ -213,7 +212,7 @@
|
|
|
213
212
|
],
|
|
214
213
|
"dependencies": {
|
|
215
214
|
"@ankhorage/color-theory": "^0.3.0",
|
|
216
|
-
"@ankhorage/contracts": "^8.0
|
|
215
|
+
"@ankhorage/contracts": "^8.2.0",
|
|
217
216
|
"@ankhorage/data-sources": "^2.0.0",
|
|
218
217
|
"@ankhorage/deploy": "^0.12.0",
|
|
219
218
|
"@ankhorage/expo-runtime": "^3.2.7",
|
|
@@ -227,7 +226,7 @@
|
|
|
227
226
|
"@ankhorage/supabase-auth": "^1.2.7",
|
|
228
227
|
"@ankhorage/supabase-storage": "^0.2.0",
|
|
229
228
|
"@ankhorage/supabase-vault": "^0.2.5",
|
|
230
|
-
"@ankhorage/templates": "^9.
|
|
229
|
+
"@ankhorage/templates": "^9.1.3",
|
|
231
230
|
"@ankhorage/zora": "^4.0.0",
|
|
232
231
|
"@ankhorage/zora-chess": "^0.1.2",
|
|
233
232
|
"@ankhorage/zora-tabletop": "^0.0.5",
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export interface InstallWorkspacePackagesResponse {
|
|
2
|
-
success: boolean;
|
|
3
|
-
scope: 'workspace';
|
|
4
|
-
}
|
|
5
|
-
export declare function useWorkspaceActions(): {
|
|
6
|
-
installWorkspacePackages: () => Promise<InstallWorkspacePackagesResponse>;
|
|
7
|
-
};
|
|
8
|
-
//# sourceMappingURL=useWorkspaceActions.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useWorkspaceActions.d.ts","sourceRoot":"","sources":["../../src/hooks/useWorkspaceActions.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,WAAW,CAAC;CACpB;AAqBD,wBAAgB,mBAAmB;oCAET,OAAO,CAAC,gCAAgC,CAAC;EAUlE"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { useCallback } from 'react';
|
|
2
|
-
import { API_BASE } from '../core/constants';
|
|
3
|
-
function isRecord(value) {
|
|
4
|
-
return typeof value === 'object' && value !== null;
|
|
5
|
-
}
|
|
6
|
-
async function readJson(response) {
|
|
7
|
-
return await response.json();
|
|
8
|
-
}
|
|
9
|
-
function parseInstallWorkspacePackagesResponse(value) {
|
|
10
|
-
if (!isRecord(value) || value.success !== true || value.scope !== 'workspace') {
|
|
11
|
-
throw new Error('Install packages response was invalid');
|
|
12
|
-
}
|
|
13
|
-
return {
|
|
14
|
-
success: true,
|
|
15
|
-
scope: 'workspace',
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
export function useWorkspaceActions() {
|
|
19
|
-
const installWorkspacePackages = useCallback(async () => {
|
|
20
|
-
const response = await fetch(`${API_BASE}/workspace/packages/install`, { method: 'POST' });
|
|
21
|
-
if (!response.ok) {
|
|
22
|
-
throw new Error('Failed to install workspace packages');
|
|
23
|
-
}
|
|
24
|
-
return parseInstallWorkspacePackagesResponse(await readJson(response));
|
|
25
|
-
}, []);
|
|
26
|
-
return { installWorkspacePackages };
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=useWorkspaceActions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useWorkspaceActions.js","sourceRoot":"","sources":["../../src/hooks/useWorkspaceActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAkB;IACxC,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,qCAAqC,CAAC,KAAc;IAC3D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QAC9E,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,WAAW;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,MAAM,wBAAwB,GAC5B,WAAW,CAAC,KAAK,IAA+C,EAAE;QAChE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,6BAA6B,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO,qCAAqC,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzE,CAAC,EAAE,EAAE,CAAC,CAAC;IAET,OAAO,EAAE,wBAAwB,EAAE,CAAC;AACtC,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { AppCategory, AppManifest } from '@ankhorage/contracts';
|
|
2
|
-
import type { TemplateCatalog } from '../../templateCatalogContracts';
|
|
3
|
-
export interface ProjectTemplateSelection {
|
|
4
|
-
category: AppCategory;
|
|
5
|
-
templateId: string;
|
|
6
|
-
}
|
|
7
|
-
export declare function getProjectTemplate(selection: ProjectTemplateSelection): AppManifest;
|
|
8
|
-
export declare function getTemplateCatalog(): TemplateCatalog;
|
|
9
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/host/templateRegistry/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAQrE,OAAO,KAAK,EACV,eAAe,EAGhB,MAAM,gCAAgC,CAAC;AAExC,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAmCD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,wBAAwB,GAAG,WAAW,CAanF;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAQpD"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { CATEGORY_PRESETS, createStarterTemplate, listStarterTemplateSummaries, } from '@ankhorage/templates';
|
|
2
|
-
function createProjectTemplateId(selection) {
|
|
3
|
-
return `${selection.category}/${selection.templateId}`;
|
|
4
|
-
}
|
|
5
|
-
function createSeed(category) {
|
|
6
|
-
const preset = Object.entries(CATEGORY_PRESETS).find(([id]) => id === category)?.[1];
|
|
7
|
-
if (!preset)
|
|
8
|
-
throw new Error(`Unknown app category '${category}'.`);
|
|
9
|
-
return {
|
|
10
|
-
category,
|
|
11
|
-
categoryLabel: preset.label,
|
|
12
|
-
appName: preset.defaultName,
|
|
13
|
-
slug: preset.defaultSlug,
|
|
14
|
-
summary: preset.summary,
|
|
15
|
-
focusAreas: preset.focusAreas,
|
|
16
|
-
primaryColor: preset.recommendedPrimaryColors[0],
|
|
17
|
-
harmony: preset.recommendedHarmonies[0],
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
function buildProjectTemplate(selection) {
|
|
21
|
-
return createStarterTemplate(createSeed(selection.category), {
|
|
22
|
-
templateId: selection.templateId,
|
|
23
|
-
}).manifest;
|
|
24
|
-
}
|
|
25
|
-
const PROJECT_TEMPLATE_INDEX = createTemplateIndex();
|
|
26
|
-
const PROJECT_TEMPLATE_CATALOG = createTemplateCatalog();
|
|
27
|
-
export function getProjectTemplate(selection) {
|
|
28
|
-
const summary = PROJECT_TEMPLATE_INDEX.find((template) => template.category === selection.category && template.templateId === selection.templateId);
|
|
29
|
-
if (!summary) {
|
|
30
|
-
throw new Error(`Template '${selection.category}/${selection.templateId}' not found in published templates package.`);
|
|
31
|
-
}
|
|
32
|
-
return buildProjectTemplate(selection);
|
|
33
|
-
}
|
|
34
|
-
export function getTemplateCatalog() {
|
|
35
|
-
return {
|
|
36
|
-
categories: PROJECT_TEMPLATE_CATALOG.categories.map((category) => ({
|
|
37
|
-
...category,
|
|
38
|
-
focusAreas: [...category.focusAreas],
|
|
39
|
-
templates: category.templates.map((template) => ({ ...template })),
|
|
40
|
-
})),
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
function createTemplateIndex() {
|
|
44
|
-
return listStarterTemplateSummaries().map((summary) => {
|
|
45
|
-
const selection = {
|
|
46
|
-
category: summary.category,
|
|
47
|
-
templateId: summary.id,
|
|
48
|
-
};
|
|
49
|
-
return {
|
|
50
|
-
id: createProjectTemplateId(selection),
|
|
51
|
-
category: summary.category,
|
|
52
|
-
templateId: summary.id,
|
|
53
|
-
name: summary.label,
|
|
54
|
-
description: summary.description,
|
|
55
|
-
};
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
function createTemplateCatalog() {
|
|
59
|
-
const categories = Object.entries(CATEGORY_PRESETS).map(([categoryId, preset]) => {
|
|
60
|
-
const category = categoryId;
|
|
61
|
-
const templates = PROJECT_TEMPLATE_INDEX.filter((summary) => summary.category === category).map(({ category: _category, ...template }) => template);
|
|
62
|
-
return {
|
|
63
|
-
id: category,
|
|
64
|
-
label: preset.label,
|
|
65
|
-
summary: preset.summary,
|
|
66
|
-
focusAreas: [...preset.focusAreas],
|
|
67
|
-
primaryColor: preset.recommendedPrimaryColors[0],
|
|
68
|
-
harmony: preset.recommendedHarmonies[0],
|
|
69
|
-
templateCount: templates.length,
|
|
70
|
-
templates,
|
|
71
|
-
};
|
|
72
|
-
});
|
|
73
|
-
return { categories };
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/host/templateRegistry/index.ts"],"names":[],"mappings":"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"}
|