@ankhorage/templates 1.2.19 → 1.2.21

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 (24) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/templates/starter/categories/games/chess.screens.d.ts.map +1 -1
  3. package/dist/templates/starter/categories/games/chess.screens.js +60 -7
  4. package/dist/templates/starter/categories/games/chess.screens.js.map +1 -1
  5. package/dist/templates/starter/categories/games/index.d.ts.map +1 -1
  6. package/dist/templates/starter/categories/games/index.js +7 -0
  7. package/dist/templates/starter/categories/games/index.js.map +1 -1
  8. package/dist/templates/starter/categories/games/poker.content.d.ts +13 -0
  9. package/dist/templates/starter/categories/games/poker.content.d.ts.map +1 -0
  10. package/dist/templates/starter/categories/games/poker.content.js +13 -0
  11. package/dist/templates/starter/categories/games/poker.content.js.map +1 -0
  12. package/dist/templates/starter/categories/games/poker.routes.d.ts +8 -0
  13. package/dist/templates/starter/categories/games/poker.routes.d.ts.map +1 -0
  14. package/dist/templates/starter/categories/games/poker.routes.js +28 -0
  15. package/dist/templates/starter/categories/games/poker.routes.js.map +1 -0
  16. package/dist/templates/starter/categories/games/poker.screens.d.ts +5 -0
  17. package/dist/templates/starter/categories/games/poker.screens.d.ts.map +1 -0
  18. package/dist/templates/starter/categories/games/poker.screens.js +144 -0
  19. package/dist/templates/starter/categories/games/poker.screens.js.map +1 -0
  20. package/dist/templates/starter/categories/games/poker.template.d.ts +4 -0
  21. package/dist/templates/starter/categories/games/poker.template.d.ts.map +1 -0
  22. package/dist/templates/starter/categories/games/poker.template.js +17 -0
  23. package/dist/templates/starter/categories/games/poker.template.js.map +1 -0
  24. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @ankhorage/templates
2
2
 
3
+ ## 1.2.21
4
+
5
+ ### Patch Changes
6
+
7
+ - 77595d3: Add an opening-book panel below the chess starter board.
8
+
9
+ ## 1.2.20
10
+
11
+ ### Patch Changes
12
+
13
+ - 47c0492: Add a games card-trainer starter template using tabletop presentation components.
14
+
3
15
  ## 1.2.19
4
16
 
5
17
  ### Patch Changes
@@ -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;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
+ {"version":3,"file":"chess.screens.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/chess.screens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAU,MAAM,sBAAsB,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAkBrD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,cAAc,GACxB,WAAW,CAAC,SAAS,CAAC,CA0HxB"}
@@ -1,6 +1,14 @@
1
- import { createScreen, createScreenRoot, createSection, createSettingsSection, createZoraNode, } from '../../../shared';
1
+ import { createScreen, createSettingsSection, createZoraNode } from '../../../shared';
2
2
  import { chessContent } from './chess.content';
3
3
  const INITIAL_CHESS_FEN = 'rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1';
4
+ function createNode(id, type, props, children) {
5
+ return {
6
+ id,
7
+ type,
8
+ ...(props ? { props } : {}),
9
+ ...(children && children.length > 0 ? { children: [...children] } : {}),
10
+ };
11
+ }
4
12
  export function createChessScreens(seed, idPrefix, screenIds) {
5
13
  return {
6
14
  [screenIds.home]: createScreen({
@@ -8,22 +16,61 @@ export function createChessScreens(seed, idPrefix, screenIds) {
8
16
  name: 'Home',
9
17
  title: chessContent.home.title,
10
18
  description: chessContent.home.description,
11
- root: createScreenRoot(`${idPrefix}-home-screen`, { width: 'default' }, [
12
- createZoraNode(`${idPrefix}-home-header`, 'SectionHeader', {
19
+ root: createNode(`${idPrefix}-home-screen`, 'Screen', { width: 'default' }, [
20
+ createNode(`${idPrefix}-home-header`, 'SectionHeader', {
13
21
  eyebrow: chessContent.home.eyebrow,
14
22
  title: chessContent.home.title,
15
23
  description: 'Study and play from the board.',
16
24
  }),
17
- createSection(`${idPrefix}-home-board-section`, {
25
+ createNode(`${idPrefix}-home-board-section`, 'ScreenSection', {
18
26
  title: 'Board',
27
+ description: 'Play through the position, then review candidate book moves below.',
19
28
  }, [
20
- createZoraNode(`${idPrefix}-home-chessboard`, 'ChessBoard', {
29
+ createNode(`${idPrefix}-home-chessboard`, 'ChessBoard', {
21
30
  fen: INITIAL_CHESS_FEN,
22
31
  orientation: 'white',
23
32
  showCoordinates: true,
24
33
  validateMoves: true,
25
34
  testID: `${idPrefix}-home-chessboard`,
26
35
  }),
36
+ createNode(`${idPrefix}-home-opening-book`, 'OpeningBook', {
37
+ title: 'Opening book',
38
+ emptyText: 'Make a legal move to load matching opening-book candidates.',
39
+ selectedMove: null,
40
+ moves: [
41
+ {
42
+ san: 'e4',
43
+ uci: 'e2e4',
44
+ eco: 'B00',
45
+ name: 'King Pawn Game',
46
+ games: 42000,
47
+ whiteWinRate: 0.39,
48
+ drawRate: 0.31,
49
+ blackWinRate: 0.3,
50
+ },
51
+ {
52
+ san: 'd4',
53
+ uci: 'd2d4',
54
+ eco: 'D00',
55
+ name: 'Queen Pawn Game',
56
+ games: 38000,
57
+ whiteWinRate: 0.38,
58
+ drawRate: 0.33,
59
+ blackWinRate: 0.29,
60
+ },
61
+ {
62
+ san: 'Nf3',
63
+ uci: 'g1f3',
64
+ eco: 'A04',
65
+ name: 'Reti Opening',
66
+ games: 19000,
67
+ whiteWinRate: 0.36,
68
+ drawRate: 0.35,
69
+ blackWinRate: 0.29,
70
+ },
71
+ ],
72
+ testID: `${idPrefix}-home-opening-book`,
73
+ }),
27
74
  ]),
28
75
  ]),
29
76
  }),
@@ -32,7 +79,7 @@ export function createChessScreens(seed, idPrefix, screenIds) {
32
79
  name: 'Settings',
33
80
  title: chessContent.settings.title,
34
81
  description: chessContent.settings.description,
35
- root: createScreenRoot(`${idPrefix}-settings-screen`, { width: 'default' }, [
82
+ root: createNode(`${idPrefix}-settings-screen`, 'Screen', { width: 'default' }, [
36
83
  createZoraNode(`${idPrefix}-settings-header`, 'SectionHeader', {
37
84
  eyebrow: chessContent.settings.eyebrow,
38
85
  title: chessContent.settings.title,
@@ -57,10 +104,16 @@ export function createChessScreens(seed, idPrefix, screenIds) {
57
104
  description: 'Use chess.js-backed validation from the chess extension component.',
58
105
  meta: 'enabled',
59
106
  },
107
+ {
108
+ id: 'opening-book-row',
109
+ title: 'Opening book',
110
+ description: 'Display a presentational opening-book panel below the board; dynamic data binding is wired by the generated app runtime.',
111
+ meta: 'below board',
112
+ },
60
113
  {
61
114
  id: 'scope-row',
62
115
  title: 'Category',
63
- description: `${seed.categoryLabel} uses an external ZORA extension component.`,
116
+ description: `${seed.categoryLabel} uses external ZORA extension components.`,
64
117
  meta: 'extension',
65
118
  },
66
119
  ]),
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"chess.screens.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/chess.screens.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAEhE,eAAO,MAAM,qBAAqB;;;;;GAasB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAGhE,eAAO,MAAM,qBAAqB;;;;;GAmBsB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { createChessStarterTemplate } from './chess.template';
2
2
  import { createGamesStarterTemplate } from './default.template';
3
+ import { createPokerStarterTemplate } from './poker.template';
3
4
  export const gamesStarterTemplates = [
4
5
  {
5
6
  id: 'default',
@@ -13,5 +14,11 @@ export const gamesStarterTemplates = [
13
14
  description: 'A two-tab chess starter with Home and Settings screens.',
14
15
  create: createChessStarterTemplate,
15
16
  },
17
+ {
18
+ id: 'poker',
19
+ label: 'Card trainer',
20
+ description: 'A two-tab card-game trainer starter with a tabletop scenario view.',
21
+ create: createPokerStarterTemplate,
22
+ },
16
23
  ];
17
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAEhE,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,+EAA+E;QAC5F,MAAM,EAAE,0BAA0B;KACnC;IACD;QACE,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,yDAAyD;QACtE,MAAM,EAAE,0BAA0B;KACnC;CACqD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAE9D,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,+EAA+E;QAC5F,MAAM,EAAE,0BAA0B;KACnC;IACD;QACE,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,yDAAyD;QACtE,MAAM,EAAE,0BAA0B;KACnC;IACD;QACE,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,oEAAoE;QACjF,MAAM,EAAE,0BAA0B;KACnC;CACqD,CAAC"}
@@ -0,0 +1,13 @@
1
+ export declare const pokerContent: {
2
+ readonly home: {
3
+ readonly eyebrow: "Card trainer";
4
+ readonly title: "Find the best action";
5
+ readonly description: "A compact card-game trainer starter with a table view, decision buttons, and an explanation panel.";
6
+ };
7
+ readonly settings: {
8
+ readonly eyebrow: "Settings";
9
+ readonly title: "Trainer settings";
10
+ readonly description: "Prepare table display, decision mode, and study preferences for a card-game trainer app.";
11
+ };
12
+ };
13
+ //# sourceMappingURL=poker.content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.content.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.content.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;;;;;;;;;;CAaf,CAAC"}
@@ -0,0 +1,13 @@
1
+ export const pokerContent = {
2
+ home: {
3
+ eyebrow: 'Card trainer',
4
+ title: 'Find the best action',
5
+ description: 'A compact card-game trainer starter with a table view, decision buttons, and an explanation panel.',
6
+ },
7
+ settings: {
8
+ eyebrow: 'Settings',
9
+ title: 'Trainer settings',
10
+ description: 'Prepare table display, decision mode, and study preferences for a card-game trainer app.',
11
+ },
12
+ };
13
+ //# sourceMappingURL=poker.content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.content.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.content.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE;QACJ,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,oGAAoG;KACvG;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,UAAU;QACnB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,0FAA0F;KAC7F;CACO,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { AppManifest } from '@ankhorage/contracts';
2
+ export interface PokerScreenIds {
3
+ home: string;
4
+ settings: string;
5
+ }
6
+ export declare function createPokerScreenIds(idPrefix: string): PokerScreenIds;
7
+ export declare function createPokerNavigator(screenIds: PokerScreenIds): AppManifest['navigator'];
8
+ //# sourceMappingURL=poker.routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.routes.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAIxD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAKrE;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,cAAc,GAAG,WAAW,CAAC,WAAW,CAAC,CAmBxF"}
@@ -0,0 +1,28 @@
1
+ import { createRoute } from '../../../shared';
2
+ export function createPokerScreenIds(idPrefix) {
3
+ return {
4
+ home: `${idPrefix}-home`,
5
+ settings: `${idPrefix}-settings`,
6
+ };
7
+ }
8
+ export function createPokerNavigator(screenIds) {
9
+ return {
10
+ type: 'tabs',
11
+ initialRouteName: 'index',
12
+ routes: [
13
+ createRoute({
14
+ name: 'index',
15
+ screenId: screenIds.home,
16
+ label: 'Trainer',
17
+ icon: { provider: 'material-community', name: 'gamepad-variant-outline' },
18
+ }),
19
+ createRoute({
20
+ name: 'settings',
21
+ screenId: screenIds.settings,
22
+ label: 'Settings',
23
+ icon: { provider: 'material-community', name: 'cog-outline' },
24
+ }),
25
+ ],
26
+ };
27
+ }
28
+ //# sourceMappingURL=poker.routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.routes.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.routes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAO9C,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,OAAO;QACL,IAAI,EAAE,GAAG,QAAQ,OAAO;QACxB,QAAQ,EAAE,GAAG,QAAQ,WAAW;KACjC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,SAAyB;IAC5D,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,gBAAgB,EAAE,OAAO;QACzB,MAAM,EAAE;YACN,WAAW,CAAC;gBACV,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,SAAS,CAAC,IAAI;gBACxB,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,yBAAyB,EAAE;aAC1E,CAAC;YACF,WAAW,CAAC;gBACV,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,KAAK,EAAE,UAAU;gBACjB,IAAI,EAAE,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,aAAa,EAAE;aAC9D,CAAC;SACH;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { AppManifest } from '@ankhorage/contracts';
2
+ import type { TemplateSeed } from '../../starter.types';
3
+ import type { PokerScreenIds } from './poker.routes';
4
+ export declare function createPokerScreens(seed: TemplateSeed, idPrefix: string, screenIds: PokerScreenIds): AppManifest['screens'];
5
+ //# sourceMappingURL=poker.screens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.screens.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.screens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAU,MAAM,sBAAsB,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAgBrD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,cAAc,GACxB,WAAW,CAAC,SAAS,CAAC,CAqJxB"}
@@ -0,0 +1,144 @@
1
+ import { createScreen, createSettingsSection } from '../../../shared';
2
+ import { pokerContent } from './poker.content';
3
+ function createNode(id, type, props, children) {
4
+ return {
5
+ id,
6
+ type,
7
+ ...(props ? { props } : {}),
8
+ ...(children && children.length > 0 ? { children } : {}),
9
+ };
10
+ }
11
+ export function createPokerScreens(seed, idPrefix, screenIds) {
12
+ return {
13
+ [screenIds.home]: createScreen({
14
+ id: screenIds.home,
15
+ name: 'Trainer',
16
+ title: pokerContent.home.title,
17
+ description: pokerContent.home.description,
18
+ root: createNode(`${idPrefix}-home-screen`, 'Screen', { width: 'default' }, [
19
+ createNode(`${idPrefix}-home-header`, 'SectionHeader', {
20
+ eyebrow: pokerContent.home.eyebrow,
21
+ title: pokerContent.home.title,
22
+ description: pokerContent.home.description,
23
+ }),
24
+ createNode(`${idPrefix}-home-table-section`, 'ScreenSection', {
25
+ title: 'Scenario table',
26
+ description: 'Visualize seats, stacks, center labels, and current table state.',
27
+ }, [
28
+ createNode(`${idPrefix}-home-table`, 'TabletopTable', {
29
+ centerLabel: 'Pot: 1.2K',
30
+ centerSublabel: 'Level: 200 / 400',
31
+ seatCount: 6,
32
+ shape: 'oval',
33
+ cardSize: 'small',
34
+ seats: [
35
+ {
36
+ id: 'seat-button',
37
+ label: 'BTN',
38
+ sublabel: '98K',
39
+ selected: true,
40
+ tokenLabel: '800',
41
+ faceDownCards: 2,
42
+ },
43
+ {
44
+ id: 'seat-small',
45
+ label: 'SB',
46
+ sublabel: '100K',
47
+ tokenLabel: '200',
48
+ faceDownCards: 2,
49
+ },
50
+ {
51
+ id: 'seat-big',
52
+ label: 'BB',
53
+ sublabel: '99K',
54
+ tokenLabel: '400',
55
+ faceDownCards: 2,
56
+ },
57
+ {
58
+ id: 'seat-early',
59
+ label: 'EP',
60
+ sublabel: '104K',
61
+ muted: true,
62
+ faceDownCards: 2,
63
+ },
64
+ {
65
+ id: 'seat-middle',
66
+ label: 'MP',
67
+ sublabel: '96K',
68
+ faceDownCards: 2,
69
+ },
70
+ {
71
+ id: 'seat-cutoff',
72
+ label: 'CO',
73
+ sublabel: '101K',
74
+ faceDownCards: 2,
75
+ },
76
+ ],
77
+ testID: `${idPrefix}-home-table`,
78
+ }),
79
+ ]),
80
+ createNode(`${idPrefix}-home-decision-section`, 'ScreenSection', {
81
+ title: 'Decision',
82
+ description: 'Replace the sample actions with generated or app-specific trainer state.',
83
+ }, [
84
+ createNode(`${idPrefix}-home-situation`, 'Card', {
85
+ eyebrow: 'Situation',
86
+ title: 'Button faces a raise',
87
+ description: 'Use this card for stack depth, previous action, position, and trainer prompt copy.',
88
+ }),
89
+ createNode(`${idPrefix}-home-fold`, 'Button', {
90
+ children: 'Fold',
91
+ variant: 'secondary',
92
+ }),
93
+ createNode(`${idPrefix}-home-call`, 'Button', {
94
+ children: 'Call',
95
+ variant: 'secondary',
96
+ }),
97
+ createNode(`${idPrefix}-home-raise`, 'Button', {
98
+ children: 'Raise',
99
+ variant: 'primary',
100
+ }),
101
+ createNode(`${idPrefix}-home-result`, 'Notice', {
102
+ title: 'Explanation placeholder',
103
+ description: 'Show feedback after an answer is selected. The starter keeps state and scoring out of the template package.',
104
+ tone: 'info',
105
+ }),
106
+ ]),
107
+ ]),
108
+ }),
109
+ [screenIds.settings]: createScreen({
110
+ id: screenIds.settings,
111
+ name: 'Settings',
112
+ title: pokerContent.settings.title,
113
+ description: pokerContent.settings.description,
114
+ root: createNode(`${idPrefix}-settings-screen`, 'Screen', { width: 'default' }, [
115
+ createNode(`${idPrefix}-settings-header`, 'SectionHeader', {
116
+ eyebrow: pokerContent.settings.eyebrow,
117
+ title: pokerContent.settings.title,
118
+ description: pokerContent.settings.description,
119
+ }),
120
+ createSettingsSection(`${idPrefix}-settings`, 'Trainer defaults', 'Prepare display and study preferences before app-specific state is wired.', [
121
+ {
122
+ id: 'table-row',
123
+ title: 'Table layout',
124
+ description: 'Start with six seats and a centered decision table.',
125
+ meta: '6 seats',
126
+ },
127
+ {
128
+ id: 'feedback-row',
129
+ title: 'Feedback mode',
130
+ description: 'Show explanations after each decision by default.',
131
+ meta: 'after answer',
132
+ },
133
+ {
134
+ id: 'category-row',
135
+ title: 'Category',
136
+ description: `${seed.categoryLabel} uses tabletop extension components.`,
137
+ meta: 'extension',
138
+ },
139
+ ]),
140
+ ]),
141
+ }),
142
+ };
143
+ }
144
+ //# sourceMappingURL=poker.screens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.screens.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.screens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { AppManifest } from '@ankhorage/contracts';
2
+ import type { TemplateSeed } from '../../starter.types';
3
+ export declare function createPokerStarterTemplate(seed: TemplateSeed): AppManifest;
4
+ //# sourceMappingURL=poker.template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.template.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAIxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,YAAY,GAAG,WAAW,CAY1E"}
@@ -0,0 +1,17 @@
1
+ import { DEFAULT_TEMPLATE_VERSION } from '../../../../internal/defaults';
2
+ import { createManifestShell, createTheme } from '../../../shared';
3
+ import { createPokerNavigator, createPokerScreenIds } from './poker.routes';
4
+ import { createPokerScreens } from './poker.screens';
5
+ export function createPokerStarterTemplate(seed) {
6
+ const idPrefix = `${seed.category}-poker`;
7
+ const theme = createTheme(seed);
8
+ const screenIds = createPokerScreenIds(idPrefix);
9
+ return createManifestShell({
10
+ seed,
11
+ theme,
12
+ version: seed.version ?? DEFAULT_TEMPLATE_VERSION,
13
+ navigator: createPokerNavigator(screenIds),
14
+ screens: createPokerScreens(seed, idPrefix, screenIds),
15
+ });
16
+ }
17
+ //# sourceMappingURL=poker.template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.template.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.template.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,UAAU,0BAA0B,CAAC,IAAkB;IAC3D,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,QAAQ,QAAQ,CAAC;IAC1C,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAEjD,OAAO,mBAAmB,CAAC;QACzB,IAAI;QACJ,KAAK;QACL,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,wBAAwB;QACjD,SAAS,EAAE,oBAAoB,CAAC,SAAS,CAAC;QAC1C,OAAO,EAAE,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC;KACvD,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ankhorage/templates",
3
- "version": "1.2.19",
3
+ "version": "1.2.21",
4
4
  "description": "Reusable Ankhorage app templates, presets, and manifest generators.",
5
5
  "homepage": "https://github.com/ankhorage/templates#readme",
6
6
  "bugs": {