@ankhorage/templates 7.0.2 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/authoring/compose-category-manifest.d.ts +40 -0
- package/dist/authoring/compose-category-manifest.d.ts.map +1 -0
- package/dist/authoring/compose-category-manifest.js +150 -0
- package/dist/authoring/compose-category-manifest.js.map +1 -0
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +5 -2
- package/dist/catalog.js.map +1 -1
- package/dist/design/category-source.d.ts +557 -0
- package/dist/design/category-source.d.ts.map +1 -0
- package/dist/design/category-source.js +578 -0
- package/dist/design/category-source.js.map +1 -0
- package/dist/design/category-theme.d.ts +44 -0
- package/dist/design/category-theme.d.ts.map +1 -0
- package/dist/design/category-theme.js +146 -0
- package/dist/design/category-theme.js.map +1 -0
- package/dist/design/category-types.d.ts +73 -0
- package/dist/design/category-types.d.ts.map +1 -0
- package/dist/design/category-types.js +3 -0
- package/dist/design/category-types.js.map +1 -0
- package/dist/design/tone-catalog.d.ts +29 -0
- package/dist/design/tone-catalog.d.ts.map +1 -0
- package/dist/design/tone-catalog.js +254 -0
- package/dist/design/tone-catalog.js.map +1 -0
- package/dist/generators/create-category-app.d.ts.map +1 -1
- package/dist/generators/create-category-app.js +8 -2
- package/dist/generators/create-category-app.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/presets/category-presets.d.ts +4 -10
- package/dist/presets/category-presets.d.ts.map +1 -1
- package/dist/presets/category-presets.js +101 -209
- package/dist/presets/category-presets.js.map +1 -1
- package/dist/templates/shared/create-theme.d.ts +1 -0
- package/dist/templates/shared/create-theme.d.ts.map +1 -1
- package/dist/templates/shared/create-theme.js +2 -0
- package/dist/templates/shared/create-theme.js.map +1 -1
- package/dist/templates/starter/starter.registry.d.ts.map +1 -1
- package/dist/templates/starter/starter.registry.js +6 -11
- package/dist/templates/starter/starter.registry.js.map +1 -1
- package/dist/templates/starter/starter.template.d.ts.map +1 -1
- package/dist/templates/starter/starter.template.js +2 -1
- package/dist/templates/starter/starter.template.js.map +1 -1
- package/dist/templates/starter/starter.types.d.ts +1 -0
- package/dist/templates/starter/starter.types.d.ts.map +1 -1
- package/package.json +3 -2
- package/dist/templates/starter/categories/fallback/default.template.d.ts +0 -4
- package/dist/templates/starter/categories/fallback/default.template.d.ts.map +0 -1
- package/dist/templates/starter/categories/fallback/default.template.js +0 -17
- package/dist/templates/starter/categories/fallback/default.template.js.map +0 -1
- package/dist/templates/starter/categories/fallback/index.d.ts +0 -8
- package/dist/templates/starter/categories/fallback/index.d.ts.map +0 -1
- package/dist/templates/starter/categories/fallback/index.js +0 -10
- package/dist/templates/starter/categories/fallback/index.js.map +0 -1
- package/dist/templates/starter/categories/fallback/routes.d.ts +0 -9
- package/dist/templates/starter/categories/fallback/routes.d.ts.map +0 -1
- package/dist/templates/starter/categories/fallback/routes.js +0 -20
- package/dist/templates/starter/categories/fallback/routes.js.map +0 -1
- package/dist/templates/starter/categories/fallback/screens.d.ts +0 -5
- package/dist/templates/starter/categories/fallback/screens.d.ts.map +0 -1
- package/dist/templates/starter/categories/fallback/screens.js +0 -133
- package/dist/templates/starter/categories/fallback/screens.js.map +0 -1
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { AppManifest } from '@ankhorage/contracts';
|
|
2
|
-
export interface FallbackScreenIds {
|
|
3
|
-
home: string;
|
|
4
|
-
details: string;
|
|
5
|
-
settings: string;
|
|
6
|
-
}
|
|
7
|
-
export declare function createFallbackScreenIds(idPrefix: string): FallbackScreenIds;
|
|
8
|
-
export declare function createFallbackNavigator(screenIds: FallbackScreenIds): AppManifest['navigator'];
|
|
9
|
-
//# sourceMappingURL=routes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/fallback/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAIxD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAM3E;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,iBAAiB,GAAG,WAAW,CAAC,WAAW,CAAC,CAU9F"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { createRoute } from '../../../shared';
|
|
2
|
-
export function createFallbackScreenIds(idPrefix) {
|
|
3
|
-
return {
|
|
4
|
-
home: `${idPrefix}-home`,
|
|
5
|
-
details: `${idPrefix}-details`,
|
|
6
|
-
settings: `${idPrefix}-settings`,
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
export function createFallbackNavigator(screenIds) {
|
|
10
|
-
return {
|
|
11
|
-
type: 'stack',
|
|
12
|
-
initialRouteName: 'index',
|
|
13
|
-
routes: [
|
|
14
|
-
createRoute({ name: 'index', screenId: screenIds.home, label: 'Home' }),
|
|
15
|
-
createRoute({ name: 'details', screenId: screenIds.details, label: 'Details' }),
|
|
16
|
-
createRoute({ name: 'settings', screenId: screenIds.settings, label: 'Settings' }),
|
|
17
|
-
],
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=routes.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/fallback/routes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAQ9C,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,OAAO;QACL,IAAI,EAAE,GAAG,QAAQ,OAAO;QACxB,OAAO,EAAE,GAAG,QAAQ,UAAU;QAC9B,QAAQ,EAAE,GAAG,QAAQ,WAAW;KACjC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,SAA4B;IAClE,OAAO;QACL,IAAI,EAAE,OAAO;QACb,gBAAgB,EAAE,OAAO;QACzB,MAAM,EAAE;YACN,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YACvE,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC/E,WAAW,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;SACnF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { AppManifest } from '@ankhorage/contracts';
|
|
2
|
-
import type { TemplateSeed } from '../../starter.types';
|
|
3
|
-
import type { FallbackScreenIds } from './routes';
|
|
4
|
-
export declare function createFallbackScreens(seed: TemplateSeed, idPrefix: string, screenIds: FallbackScreenIds): AppManifest['screens'];
|
|
5
|
-
//# sourceMappingURL=screens.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"screens.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/fallback/screens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAQlD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,iBAAiB,GAC3B,WAAW,CAAC,SAAS,CAAC,CA8JxB"}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { createScreen, createZoraNode } from '../../../shared';
|
|
2
|
-
const DEFAULT_FOCUS_AREAS = [
|
|
3
|
-
'Primary experience',
|
|
4
|
-
'Supporting content',
|
|
5
|
-
'Operational settings',
|
|
6
|
-
];
|
|
7
|
-
export function createFallbackScreens(seed, idPrefix, screenIds) {
|
|
8
|
-
const focusAreas = seed.focusAreas ?? DEFAULT_FOCUS_AREAS;
|
|
9
|
-
return {
|
|
10
|
-
[screenIds.home]: createScreen({
|
|
11
|
-
id: screenIds.home,
|
|
12
|
-
name: 'Home',
|
|
13
|
-
title: seed.appName,
|
|
14
|
-
description: `Starter experience for ${seed.categoryLabel}.`,
|
|
15
|
-
root: createZoraNode(`${idPrefix}-home-screen`, 'Screen', { width: 'wide', testID: `${idPrefix}-home-screen` }, [
|
|
16
|
-
createZoraNode(`${idPrefix}-home-header`, 'SectionHeader', {
|
|
17
|
-
eyebrow: seed.categoryLabel,
|
|
18
|
-
title: seed.appName,
|
|
19
|
-
description: `Starter experience for ${seed.summary}.`,
|
|
20
|
-
}),
|
|
21
|
-
createZoraNode(`${idPrefix}-home-section`, 'ScreenSection', {
|
|
22
|
-
title: 'Launch surface',
|
|
23
|
-
description: 'Use this starter as the base for navigation, content modules, and onboarding.',
|
|
24
|
-
}, [
|
|
25
|
-
createZoraNode(`${idPrefix}-overview-panel`, 'Panel', {
|
|
26
|
-
title: 'Preset-driven structure',
|
|
27
|
-
description: 'Templates define layout and flows. Presets inject category branding and defaults.',
|
|
28
|
-
tone: 'subtle',
|
|
29
|
-
}, [
|
|
30
|
-
createZoraNode(`${idPrefix}-overview-notice`, 'Notice', {
|
|
31
|
-
title: 'ZORA-first authoring',
|
|
32
|
-
description: 'This screen uses ZORA layout and pattern nodes instead of legacy Surface-only trees.',
|
|
33
|
-
color: 'primary',
|
|
34
|
-
}),
|
|
35
|
-
createZoraNode(`${idPrefix}-focus-card-1`, 'Card', {
|
|
36
|
-
eyebrow: 'Focus area',
|
|
37
|
-
title: focusAreas[0],
|
|
38
|
-
description: `Use this panel to shape the primary ${seed.categoryLabel.toLowerCase()} flow.`,
|
|
39
|
-
tone: 'outline',
|
|
40
|
-
}),
|
|
41
|
-
createZoraNode(`${idPrefix}-focus-card-2`, 'Card', {
|
|
42
|
-
eyebrow: 'Focus area',
|
|
43
|
-
title: focusAreas[1],
|
|
44
|
-
description: 'Add the supporting content, filters, and state to match your product.',
|
|
45
|
-
tone: 'outline',
|
|
46
|
-
}),
|
|
47
|
-
createZoraNode(`${idPrefix}-focus-card-3`, 'Card', {
|
|
48
|
-
eyebrow: 'Focus area',
|
|
49
|
-
title: focusAreas[2],
|
|
50
|
-
description: 'Keep the third block flexible for analytics, recommendations, or community features.',
|
|
51
|
-
tone: 'outline',
|
|
52
|
-
}),
|
|
53
|
-
createZoraNode(`${idPrefix}-overview-button`, 'Button', {
|
|
54
|
-
children: 'Customize this starter',
|
|
55
|
-
color: 'primary',
|
|
56
|
-
size: 'm',
|
|
57
|
-
fullWidth: true,
|
|
58
|
-
}),
|
|
59
|
-
]),
|
|
60
|
-
]),
|
|
61
|
-
]),
|
|
62
|
-
}),
|
|
63
|
-
[screenIds.details]: createScreen({
|
|
64
|
-
id: screenIds.details,
|
|
65
|
-
name: 'Details',
|
|
66
|
-
title: 'Details',
|
|
67
|
-
description: 'Secondary informational screen for the starter template.',
|
|
68
|
-
root: createZoraNode(`${idPrefix}-details-screen`, 'Screen', { width: 'default' }, [
|
|
69
|
-
createZoraNode(`${idPrefix}-details-header`, 'SectionHeader', {
|
|
70
|
-
eyebrow: 'Starter module',
|
|
71
|
-
title: 'Detail screen',
|
|
72
|
-
description: 'Use this route for previews, drill-downs, or richer storytelling.',
|
|
73
|
-
}),
|
|
74
|
-
createZoraNode(`${idPrefix}-details-section`, 'ScreenSection', {
|
|
75
|
-
title: 'Placeholder state',
|
|
76
|
-
description: 'Replace the placeholder with ZORA cards, panels, or task-specific layouts.',
|
|
77
|
-
}, [
|
|
78
|
-
createZoraNode(`${idPrefix}-details-empty`, 'EmptyState', {
|
|
79
|
-
eyebrow: seed.categoryLabel,
|
|
80
|
-
title: 'Ready for detail content',
|
|
81
|
-
description: 'The starter keeps a secondary route available so navigation can evolve without structural rewrites.',
|
|
82
|
-
}),
|
|
83
|
-
]),
|
|
84
|
-
]),
|
|
85
|
-
}),
|
|
86
|
-
[screenIds.settings]: createScreen({
|
|
87
|
-
id: screenIds.settings,
|
|
88
|
-
name: 'Settings',
|
|
89
|
-
title: 'Settings',
|
|
90
|
-
description: 'Configuration screen for starter defaults.',
|
|
91
|
-
root: createZoraNode(`${idPrefix}-settings-screen`, 'Screen', { width: 'default' }, [
|
|
92
|
-
createZoraNode(`${idPrefix}-settings-header`, 'SectionHeader', {
|
|
93
|
-
eyebrow: 'Operations',
|
|
94
|
-
title: 'Settings',
|
|
95
|
-
description: 'Starter defaults for localization, auth flow, and deployment assumptions.',
|
|
96
|
-
}),
|
|
97
|
-
createZoraNode(`${idPrefix}-settings-section`, 'ScreenSection', {
|
|
98
|
-
title: 'Manifest defaults',
|
|
99
|
-
description: 'These rows mirror the baseline config shipped with the template package.',
|
|
100
|
-
}, [
|
|
101
|
-
createZoraNode(`${idPrefix}-settings-header-row`, 'SectionHeader', {
|
|
102
|
-
title: 'Initial configuration',
|
|
103
|
-
description: 'Tune these values or override them at generation time.',
|
|
104
|
-
}),
|
|
105
|
-
createZoraNode(`${idPrefix}-settings-row-locale`, 'SettingsRow', {
|
|
106
|
-
title: 'Default locale',
|
|
107
|
-
description: 'Localization starts with a single default locale.',
|
|
108
|
-
meta: 'en',
|
|
109
|
-
}),
|
|
110
|
-
createZoraNode(`${idPrefix}-settings-row-auth`, 'SettingsRow', {
|
|
111
|
-
title: 'Auth scope',
|
|
112
|
-
description: 'Global auth is enabled in the base infra profile.',
|
|
113
|
-
meta: 'global',
|
|
114
|
-
}),
|
|
115
|
-
createZoraNode(`${idPrefix}-settings-row-deploy`, 'SettingsRow', {
|
|
116
|
-
title: 'Deployment target',
|
|
117
|
-
description: 'The starter ships with a local minikube deployment target.',
|
|
118
|
-
meta: 'minikube',
|
|
119
|
-
}),
|
|
120
|
-
createZoraNode(`${idPrefix}-settings-appearance-header`, 'SectionHeader', {
|
|
121
|
-
title: 'Appearance',
|
|
122
|
-
description: 'Switch between light and dark appearance.',
|
|
123
|
-
}),
|
|
124
|
-
createZoraNode(`${idPrefix}-settings-theme-mode-toggle`, 'ThemeModeToggle', {
|
|
125
|
-
size: 'm',
|
|
126
|
-
testID: `${idPrefix}-settings-theme-mode-toggle`,
|
|
127
|
-
}),
|
|
128
|
-
]),
|
|
129
|
-
]),
|
|
130
|
-
}),
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
//# sourceMappingURL=screens.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"screens.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/fallback/screens.ts"],"names":[],"mappings":"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"}
|