@ankhorage/templates 1.2.16 → 1.2.18

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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # @ankhorage/templates
2
2
 
3
+ ## 1.2.18
4
+
5
+ ### Patch Changes
6
+
7
+ - 6495bfe: Keep the games chess starter home screen focused on the ChessBoard.
8
+
9
+ ## 1.2.17
10
+
11
+ ### Patch Changes
12
+
13
+ - 1db98fd: Render a real ChessBoard node in the games chess starter home screen.
14
+
3
15
  ## 1.2.16
4
16
 
5
17
  ### Patch Changes
package/README.md CHANGED
@@ -98,7 +98,9 @@ The fallback template remains available and is used only for unknown runtime cat
98
98
 
99
99
  Additional variants:
100
100
 
101
- - `games/chess`: Home · Settings
101
+ - `games/chess`: Home · Settings. The Home screen renders a `ChessBoard` node with a static
102
+ initial FEN and requires generated apps to provide `@ankhorage/zora-chess` through their
103
+ extension registry.
102
104
  - `social_community/creator`: Studio · Posts · Audience · Insights · Settings
103
105
 
104
106
  Only categories that exist in `AppCategory` are registered. New category literals should be added
@@ -13,21 +13,12 @@ type SerializablePanelProps = Omit<PanelProps, 'actions' | 'children' | 'descrip
13
13
  title?: string;
14
14
  description?: string;
15
15
  eyebrow?: string;
16
- footer?: string;
17
16
  };
18
17
  type SerializableCardProps = Omit<CardProps, 'actions' | 'children' | 'description' | 'eyebrow' | 'footer' | 'title'> & {
19
18
  title?: string;
20
19
  description?: string;
21
20
  eyebrow?: string;
22
- footer?: string;
23
21
  };
24
- type SerializableAuthLayoutProps = SerializableProps<{
25
- title?: string;
26
- description?: string;
27
- eyebrow?: string;
28
- footer?: string;
29
- testID?: string;
30
- }>;
31
22
  type SerializableSectionHeaderProps = Omit<SectionHeaderProps, 'actions' | 'description' | 'eyebrow' | 'title'> & {
32
23
  title: string;
33
24
  description?: string;
@@ -63,10 +54,25 @@ type SerializableEmptyStateProps = Omit<EmptyStateProps, 'description' | 'eyebro
63
54
  eyebrow?: string;
64
55
  footer?: string;
65
56
  };
57
+ type SerializableChessBoardProps = SerializableProps<{
58
+ fen: string;
59
+ orientation?: 'white' | 'black';
60
+ selectedSquare?: string | null;
61
+ legalTargets?: readonly string[];
62
+ lastMove?: {
63
+ from: string;
64
+ to: string;
65
+ promotion?: 'q' | 'r' | 'b' | 'n';
66
+ } | null;
67
+ disabled?: boolean;
68
+ showCoordinates?: boolean;
69
+ validateMoves?: boolean;
70
+ testID?: string;
71
+ }>;
66
72
  export interface ZoraNodePropsByType {
67
- AuthLayout: SerializableAuthLayoutProps;
68
73
  Button: SerializableButtonProps;
69
74
  Card: SerializableCardProps;
75
+ ChessBoard: SerializableChessBoardProps;
70
76
  EmptyState: SerializableEmptyStateProps;
71
77
  FormField: SerializableFormFieldProps;
72
78
  Input: SerializableInputProps;
@@ -1 +1 @@
1
- {"version":3,"file":"zora-nodes.d.ts","sourceRoot":"","sources":["../../src/internal/zora-nodes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zora-nodes.d.ts","sourceRoot":"","sources":["../../src/internal/zora-nodes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"zora-nodes.js","sourceRoot":"","sources":["../../src/internal/zora-nodes.ts"],"names":[],"mappings":"AAkIA,MAAM,UAAU,cAAc,CAC5B,EAAU,EACV,IAAW,EACX,KAAkC,EAClC,QAAqB;IAErB,OAAO;QACL,EAAE;QACF,IAAI;QACJ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"zora-nodes.js","sourceRoot":"","sources":["../../src/internal/zora-nodes.ts"],"names":[],"mappings":"AAwIA,MAAM,UAAU,cAAc,CAC5B,EAAU,EACV,IAAW,EACX,KAAkC,EAClC,QAAqB;IAErB,OAAO;QACL,EAAE;QACF,IAAI;QACJ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzD,CAAC;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { AppManifest } from '@ankhorage/contracts';
2
2
  import type { TemplateSeed } from '../../starter.types';
3
3
  import type { ChessScreenIds } from './chess.routes';
4
- export declare function createChessScreens(_seed: TemplateSeed, idPrefix: string, screenIds: ChessScreenIds): AppManifest['screens'];
4
+ export declare function createChessScreens(seed: TemplateSeed, idPrefix: string, screenIds: ChessScreenIds): AppManifest['screens'];
5
5
  //# sourceMappingURL=chess.screens.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chess.screens.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/chess.screens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,cAAc,GACxB,WAAW,CAAC,SAAS,CAAC,CAexB"}
1
+ {"version":3,"file":"chess.screens.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/chess.screens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AASxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAIrD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,cAAc,GACxB,WAAW,CAAC,SAAS,CAAC,CA2ExB"}
@@ -1,18 +1,70 @@
1
- import { createStarterContentScreen } from '../../../shared';
1
+ import { createScreen, createScreenRoot, createSection, createSettingsSection, createZoraNode, } from '../../../shared';
2
2
  import { chessContent } from './chess.content';
3
- export function createChessScreens(_seed, idPrefix, screenIds) {
3
+ const INITIAL_CHESS_FEN = 'rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1';
4
+ export function createChessScreens(seed, idPrefix, screenIds) {
4
5
  return {
5
- [screenIds.home]: createStarterContentScreen({
6
- idPrefix,
7
- screenId: screenIds.home,
6
+ [screenIds.home]: createScreen({
7
+ id: screenIds.home,
8
8
  name: 'Home',
9
- content: chessContent.home,
9
+ title: chessContent.home.title,
10
+ description: chessContent.home.description,
11
+ root: createScreenRoot(`${idPrefix}-home-screen`, { width: 'default' }, [
12
+ createZoraNode(`${idPrefix}-home-header`, 'SectionHeader', {
13
+ eyebrow: chessContent.home.eyebrow,
14
+ title: chessContent.home.title,
15
+ description: 'Study and play from the board.',
16
+ }),
17
+ createSection(`${idPrefix}-home-board-section`, {
18
+ title: 'Board',
19
+ }, [
20
+ createZoraNode(`${idPrefix}-home-chessboard`, 'ChessBoard', {
21
+ fen: INITIAL_CHESS_FEN,
22
+ orientation: 'white',
23
+ showCoordinates: true,
24
+ validateMoves: true,
25
+ testID: `${idPrefix}-home-chessboard`,
26
+ }),
27
+ ]),
28
+ ]),
10
29
  }),
11
- [screenIds.settings]: createStarterContentScreen({
12
- idPrefix,
13
- screenId: screenIds.settings,
30
+ [screenIds.settings]: createScreen({
31
+ id: screenIds.settings,
14
32
  name: 'Settings',
15
- content: chessContent.settings,
33
+ title: chessContent.settings.title,
34
+ description: chessContent.settings.description,
35
+ root: createScreenRoot(`${idPrefix}-settings-screen`, { width: 'default' }, [
36
+ createZoraNode(`${idPrefix}-settings-header`, 'SectionHeader', {
37
+ eyebrow: chessContent.settings.eyebrow,
38
+ title: chessContent.settings.title,
39
+ description: chessContent.settings.description,
40
+ }),
41
+ createSettingsSection(`${idPrefix}-settings`, 'Board preferences', 'Prepare board display controls and study preferences before app-specific state is wired.', [
42
+ {
43
+ id: 'orientation-row',
44
+ title: 'Board orientation',
45
+ description: 'Default to White at the bottom; expose Black orientation later.',
46
+ meta: 'white',
47
+ },
48
+ {
49
+ id: 'coordinates-row',
50
+ title: 'Coordinates',
51
+ description: 'Show board coordinates by default for study and notation workflows.',
52
+ meta: 'enabled',
53
+ },
54
+ {
55
+ id: 'validation-row',
56
+ title: 'Move validation',
57
+ description: 'Use chess.js-backed validation from the chess extension component.',
58
+ meta: 'enabled',
59
+ },
60
+ {
61
+ id: 'scope-row',
62
+ title: 'Category',
63
+ description: `${seed.categoryLabel} uses an external ZORA extension component.`,
64
+ meta: 'extension',
65
+ },
66
+ ]),
67
+ ]),
16
68
  }),
17
69
  };
18
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chess.screens.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/chess.screens.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,UAAU,kBAAkB,CAChC,KAAmB,EACnB,QAAgB,EAChB,SAAyB;IAEzB,OAAO;QACL,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,0BAA0B,CAAC;YAC3C,QAAQ;YACR,QAAQ,EAAE,SAAS,CAAC,IAAI;YACxB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,YAAY,CAAC,IAAI;SAC3B,CAAC;QACF,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,0BAA0B,CAAC;YAC/C,QAAQ;YACR,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,YAAY,CAAC,QAAQ;SAC/B,CAAC;KACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"chess.screens.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/chess.screens.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,cAAc,GACf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,iBAAiB,GAAG,0DAA0D,CAAC;AAErF,MAAM,UAAU,kBAAkB,CAChC,IAAkB,EAClB,QAAgB,EAChB,SAAyB;IAEzB,OAAO;QACL,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;YAC7B,EAAE,EAAE,SAAS,CAAC,IAAI;YAClB,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;YAC9B,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,WAAW;YAC1C,IAAI,EAAE,gBAAgB,CAAC,GAAG,QAAQ,cAAc,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;gBACtE,cAAc,CAAC,GAAG,QAAQ,cAAc,EAAE,eAAe,EAAE;oBACzD,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO;oBAClC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK;oBAC9B,WAAW,EAAE,gCAAgC;iBAC9C,CAAC;gBACF,aAAa,CACX,GAAG,QAAQ,qBAAqB,EAChC;oBACE,KAAK,EAAE,OAAO;iBACf,EACD;oBACE,cAAc,CAAC,GAAG,QAAQ,kBAAkB,EAAE,YAAY,EAAE;wBAC1D,GAAG,EAAE,iBAAiB;wBACtB,WAAW,EAAE,OAAO;wBACpB,eAAe,EAAE,IAAI;wBACrB,aAAa,EAAE,IAAI;wBACnB,MAAM,EAAE,GAAG,QAAQ,kBAAkB;qBACtC,CAAC;iBACH,CACF;aACF,CAAC;SACH,CAAC;QACF,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;YACjC,EAAE,EAAE,SAAS,CAAC,QAAQ;YACtB,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK;YAClC,WAAW,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW;YAC9C,IAAI,EAAE,gBAAgB,CAAC,GAAG,QAAQ,kBAAkB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;gBAC1E,cAAc,CAAC,GAAG,QAAQ,kBAAkB,EAAE,eAAe,EAAE;oBAC7D,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,OAAO;oBACtC,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK;oBAClC,WAAW,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW;iBAC/C,CAAC;gBACF,qBAAqB,CACnB,GAAG,QAAQ,WAAW,EACtB,mBAAmB,EACnB,0FAA0F,EAC1F;oBACE;wBACE,EAAE,EAAE,iBAAiB;wBACrB,KAAK,EAAE,mBAAmB;wBAC1B,WAAW,EAAE,iEAAiE;wBAC9E,IAAI,EAAE,OAAO;qBACd;oBACD;wBACE,EAAE,EAAE,iBAAiB;wBACrB,KAAK,EAAE,aAAa;wBACpB,WAAW,EAAE,qEAAqE;wBAClF,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,EAAE,EAAE,gBAAgB;wBACpB,KAAK,EAAE,iBAAiB;wBACxB,WAAW,EAAE,oEAAoE;wBACjF,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,EAAE,EAAE,WAAW;wBACf,KAAK,EAAE,UAAU;wBACjB,WAAW,EAAE,GAAG,IAAI,CAAC,aAAa,6CAA6C;wBAC/E,IAAI,EAAE,WAAW;qBAClB;iBACF,CACF;aACF,CAAC;SACH,CAAC;KACH,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ankhorage/templates",
3
- "version": "1.2.16",
3
+ "version": "1.2.18",
4
4
  "description": "Reusable Ankhorage app templates, presets, and manifest generators.",
5
5
  "homepage": "https://github.com/ankhorage/templates#readme",
6
6
  "bugs": {