@ankhorage/templates 1.3.2 → 1.3.3

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 (23) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/templates/shared/create-manifest-shell.d.ts +1 -0
  3. package/dist/templates/shared/create-manifest-shell.d.ts.map +1 -1
  4. package/dist/templates/shared/create-manifest-shell.js +8 -1
  5. package/dist/templates/shared/create-manifest-shell.js.map +1 -1
  6. package/dist/templates/starter/categories/games/poker.content.d.ts +2 -4
  7. package/dist/templates/starter/categories/games/poker.content.d.ts.map +1 -1
  8. package/dist/templates/starter/categories/games/poker.content.js +2 -4
  9. package/dist/templates/starter/categories/games/poker.content.js.map +1 -1
  10. package/dist/templates/starter/categories/games/poker.data.d.ts +37 -0
  11. package/dist/templates/starter/categories/games/poker.data.d.ts.map +1 -0
  12. package/dist/templates/starter/categories/games/poker.data.js +156 -0
  13. package/dist/templates/starter/categories/games/poker.data.js.map +1 -0
  14. package/dist/templates/starter/categories/games/poker.screens.d.ts.map +1 -1
  15. package/dist/templates/starter/categories/games/poker.screens.js +75 -103
  16. package/dist/templates/starter/categories/games/poker.screens.js.map +1 -1
  17. package/dist/templates/starter/categories/games/poker.template.d.ts.map +1 -1
  18. package/dist/templates/starter/categories/games/poker.template.js +2 -0
  19. package/dist/templates/starter/categories/games/poker.template.js.map +1 -1
  20. package/dist/templates/starter/categories/social-community/index.d.ts.map +1 -1
  21. package/dist/templates/starter/categories/social-community/index.js +0 -6
  22. package/dist/templates/starter/categories/social-community/index.js.map +1 -1
  23. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @ankhorage/templates
2
2
 
3
+ ## 1.3.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 58b67ed: Improve the generated poker/card trainer starter with a compact trainer layout, visible hero cards, horizontal decisions, hidden initial feedback, and API-first `poker_situations` seed data.
8
+
3
9
  ## 1.3.2
4
10
 
5
11
  ### Patch Changes
@@ -10,6 +10,7 @@ export declare function createManifestShell(args: {
10
10
  version: string;
11
11
  navigator: AppManifest['navigator'];
12
12
  screens: AppManifest['screens'];
13
+ data?: AppManifest['data'];
13
14
  }): AppManifestWithSplashScreen;
14
15
  export {};
15
16
  //# sourceMappingURL=create-manifest-shell.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-manifest-shell.d.ts","sourceRoot":"","sources":["../../../src/templates/shared/create-manifest-shell.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAAsB,KAAK,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAEvF,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;CACjC,GAAG,2BAA2B,CAgB9B"}
1
+ {"version":3,"file":"create-manifest-shell.d.ts","sourceRoot":"","sources":["../../../src/templates/shared/create-manifest-shell.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAAsB,KAAK,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAEvF,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC5B,GAAG,2BAA2B,CAyB9B"}
@@ -1,7 +1,7 @@
1
1
  import { BASE_INFRA, BASE_SETTINGS } from '../../internal/defaults';
2
2
  import { createSplashScreen } from './splash-screen';
3
3
  export function createManifestShell(args) {
4
- return {
4
+ const manifest = {
5
5
  metadata: {
6
6
  name: args.seed.appName,
7
7
  slug: args.seed.slug,
@@ -16,5 +16,12 @@ export function createManifestShell(args) {
16
16
  navigator: args.navigator,
17
17
  screens: args.screens,
18
18
  };
19
+ if (!args.data) {
20
+ return manifest;
21
+ }
22
+ return {
23
+ ...manifest,
24
+ data: args.data,
25
+ };
19
26
  }
20
27
  //# sourceMappingURL=create-manifest-shell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-manifest-shell.js","sourceRoot":"","sources":["../../../src/templates/shared/create-manifest-shell.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAoC,MAAM,iBAAiB,CAAC;AAOvF,MAAM,UAAU,mBAAmB,CAAC,IAMnC;IACC,OAAO;QACL,QAAQ,EAAE;YACR,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;SACvB;QACD,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;QACpB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;QAC5B,YAAY,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5C,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC;QAClC,QAAQ,EAAE,eAAe,CAAC,aAAa,CAAC;QACxC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"create-manifest-shell.js","sourceRoot":"","sources":["../../../src/templates/shared/create-manifest-shell.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAoC,MAAM,iBAAiB,CAAC;AAOvF,MAAM,UAAU,mBAAmB,CAAC,IAOnC;IACC,MAAM,QAAQ,GAAgC;QAC5C,QAAQ,EAAE;YACR,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;SACvB;QACD,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;QACpB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;QAC5B,YAAY,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5C,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC;QAClC,QAAQ,EAAE,eAAe,CAAC,aAAa,CAAC;QACxC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO;QACL,GAAG,QAAQ;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC;AACJ,CAAC"}
@@ -1,11 +1,9 @@
1
1
  export declare const pokerContent: {
2
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.";
3
+ readonly title: "Trainer";
4
+ readonly description: "Compact poker decision trainer with a tabletop scenario and horizontal actions.";
6
5
  };
7
6
  readonly settings: {
8
- readonly eyebrow: "Settings";
9
7
  readonly title: "Trainer settings";
10
8
  readonly description: "Prepare table display, decision mode, and study preferences for a card-game trainer app.";
11
9
  };
@@ -1 +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"}
1
+ {"version":3,"file":"poker.content.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.content.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;;;;;;;;CAUf,CAAC"}
@@ -1,11 +1,9 @@
1
1
  export const pokerContent = {
2
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.',
3
+ title: 'Trainer',
4
+ description: 'Compact poker decision trainer with a tabletop scenario and horizontal actions.',
6
5
  },
7
6
  settings: {
8
- eyebrow: 'Settings',
9
7
  title: 'Trainer settings',
10
8
  description: 'Prepare table display, decision mode, and study preferences for a card-game trainer app.',
11
9
  },
@@ -1 +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"}
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,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,iFAAiF;KAC/F;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,0FAA0F;KAC7F;CACO,CAAC"}
@@ -0,0 +1,37 @@
1
+ import type { AppManifest } from '@ankhorage/contracts';
2
+ interface PokerPlayingCard {
3
+ readonly rank: string;
4
+ readonly suit: 'clubs' | 'diamonds' | 'hearts' | 'spades';
5
+ }
6
+ interface PokerSeatState {
7
+ readonly id: string;
8
+ readonly label: string;
9
+ readonly sublabel?: string;
10
+ readonly cards?: readonly PokerPlayingCard[];
11
+ readonly faceDownCards?: number;
12
+ readonly selected?: boolean;
13
+ readonly muted?: boolean;
14
+ readonly tokenLabel?: string;
15
+ readonly accessibilityLabel?: string;
16
+ }
17
+ export interface PokerSituation {
18
+ readonly id: string;
19
+ readonly street: string;
20
+ readonly blinds: string;
21
+ readonly heroPosition: string;
22
+ readonly heroCards: readonly PokerPlayingCard[];
23
+ readonly pot: string;
24
+ readonly level: string;
25
+ readonly progress: number;
26
+ readonly progressTotal: number;
27
+ readonly score: string;
28
+ readonly prompt: string;
29
+ readonly availableActions: readonly string[];
30
+ readonly correctAction: string;
31
+ readonly explanation: string;
32
+ readonly seats: readonly PokerSeatState[];
33
+ }
34
+ export declare const pokerSituation: PokerSituation;
35
+ export declare const pokerTrainerData: AppManifest['data'];
36
+ export {};
37
+ //# sourceMappingURL=poker.data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.data.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,sBAAsB,CAAC;AAE3E,UAAU,gBAAgB;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;CAC3D;AAED,UAAU,cAAc;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC7C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAChD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;CAC3C;AAED,eAAO,MAAM,cAAc,EAAE,cAoE5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAgDhD,CAAC"}
@@ -0,0 +1,156 @@
1
+ export const pokerSituation = {
2
+ id: 'preflop-btn-aa',
3
+ street: 'Preflop',
4
+ blinds: '400 / 800',
5
+ heroPosition: 'BTN',
6
+ heroCards: [
7
+ { rank: 'A', suit: 'hearts' },
8
+ { rank: 'A', suit: 'clubs' },
9
+ ],
10
+ pot: '3.6K',
11
+ level: '400 / 800',
12
+ progress: 7,
13
+ progressTotal: 20,
14
+ score: '84%',
15
+ prompt: 'Hero is on the button with A♥ A♣. HJ opened to 2.4K, CO folded, and action is on you.',
16
+ availableActions: ['Fold', 'Call', 'All-In'],
17
+ correctAction: 'All-In',
18
+ explanation: 'Aces crush the button shoving range at this stack depth. Apply maximum pressure instead of flat-calling.',
19
+ seats: [
20
+ {
21
+ id: 'seat-button',
22
+ label: 'BTN',
23
+ sublabel: '98K',
24
+ cards: [
25
+ { rank: 'A', suit: 'hearts' },
26
+ { rank: 'A', suit: 'clubs' },
27
+ ],
28
+ selected: true,
29
+ tokenLabel: 'Hero',
30
+ accessibilityLabel: 'Hero on button with ace of hearts and ace of clubs',
31
+ },
32
+ {
33
+ id: 'seat-small-blind',
34
+ label: 'SB',
35
+ sublabel: '100K',
36
+ tokenLabel: '400',
37
+ faceDownCards: 2,
38
+ },
39
+ {
40
+ id: 'seat-big-blind',
41
+ label: 'BB',
42
+ sublabel: '99K',
43
+ tokenLabel: '800',
44
+ faceDownCards: 2,
45
+ },
46
+ {
47
+ id: 'seat-hijack',
48
+ label: 'HJ',
49
+ sublabel: '96K',
50
+ tokenLabel: '2.4K',
51
+ faceDownCards: 2,
52
+ },
53
+ {
54
+ id: 'seat-cutoff',
55
+ label: 'CO',
56
+ sublabel: '101K',
57
+ muted: true,
58
+ faceDownCards: 2,
59
+ },
60
+ {
61
+ id: 'seat-middle',
62
+ label: 'MP',
63
+ sublabel: '104K',
64
+ muted: true,
65
+ faceDownCards: 2,
66
+ },
67
+ ],
68
+ };
69
+ export const pokerTrainerData = {
70
+ apis: {
71
+ poker_situations: {
72
+ id: 'poker_situations',
73
+ kind: 'generated',
74
+ preset: 'crud',
75
+ label: 'Poker situations',
76
+ description: 'Generated card-trainer scenario records for the poker starter.',
77
+ basePath: '/poker-situations',
78
+ endpoints: [
79
+ {
80
+ id: 'list-poker-situations',
81
+ label: 'List poker situations',
82
+ method: 'GET',
83
+ path: '/',
84
+ intent: 'list',
85
+ },
86
+ {
87
+ id: 'read-poker-situation',
88
+ label: 'Read poker situation',
89
+ method: 'GET',
90
+ path: '/:id',
91
+ intent: 'read',
92
+ },
93
+ ],
94
+ resource: {
95
+ kind: 'collection',
96
+ collection: {
97
+ name: 'poker_situations',
98
+ primaryKey: 'id',
99
+ fields: [
100
+ { name: 'id', type: 'text', required: true, unique: true },
101
+ { name: 'street', type: 'text', required: true },
102
+ { name: 'blinds', type: 'text', required: true },
103
+ { name: 'heroPosition', type: 'text', required: true },
104
+ { name: 'heroCards', type: 'json', required: true },
105
+ { name: 'pot', type: 'text', required: true },
106
+ { name: 'seats', type: 'json', required: true },
107
+ { name: 'availableActions', type: 'json', required: true },
108
+ { name: 'correctAction', type: 'text', required: true },
109
+ { name: 'prompt', type: 'text', required: true },
110
+ { name: 'explanation', type: 'text', required: true },
111
+ ],
112
+ },
113
+ seed: [toPokerSeedRecord(pokerSituation)],
114
+ },
115
+ },
116
+ },
117
+ };
118
+ function toPokerSeedRecord(situation) {
119
+ return {
120
+ id: situation.id,
121
+ street: situation.street,
122
+ blinds: situation.blinds,
123
+ heroPosition: situation.heroPosition,
124
+ heroCards: situation.heroCards.map(toCardRecord),
125
+ pot: situation.pot,
126
+ level: situation.level,
127
+ progress: situation.progress,
128
+ progressTotal: situation.progressTotal,
129
+ score: situation.score,
130
+ prompt: situation.prompt,
131
+ availableActions: [...situation.availableActions],
132
+ correctAction: situation.correctAction,
133
+ explanation: situation.explanation,
134
+ seats: situation.seats.map(toSeatRecord),
135
+ };
136
+ }
137
+ function toCardRecord(card) {
138
+ return {
139
+ rank: card.rank,
140
+ suit: card.suit,
141
+ };
142
+ }
143
+ function toSeatRecord(seat) {
144
+ return {
145
+ id: seat.id,
146
+ label: seat.label,
147
+ ...(seat.sublabel ? { sublabel: seat.sublabel } : {}),
148
+ ...(seat.cards ? { cards: seat.cards.map(toCardRecord) } : {}),
149
+ ...(seat.faceDownCards !== undefined ? { faceDownCards: seat.faceDownCards } : {}),
150
+ ...(seat.selected !== undefined ? { selected: seat.selected } : {}),
151
+ ...(seat.muted !== undefined ? { muted: seat.muted } : {}),
152
+ ...(seat.tokenLabel ? { tokenLabel: seat.tokenLabel } : {}),
153
+ ...(seat.accessibilityLabel ? { accessibilityLabel: seat.accessibilityLabel } : {}),
154
+ };
155
+ }
156
+ //# sourceMappingURL=poker.data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poker.data.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.data.ts"],"names":[],"mappings":"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"}
@@ -1 +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,CAmKxB"}
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;AAGxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AA0ErD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,cAAc,GACxB,WAAW,CAAC,SAAS,CAAC,CAgFxB"}
@@ -1,5 +1,6 @@
1
1
  import { createScreen, createSettingsSection } from '../../../shared';
2
2
  import { pokerContent } from './poker.content';
3
+ import { pokerSituation } from './poker.data';
3
4
  function createNode(id, type, props, children) {
4
5
  return {
5
6
  id,
@@ -8,7 +9,48 @@ function createNode(id, type, props, children) {
8
9
  ...(children && children.length > 0 ? { children } : {}),
9
10
  };
10
11
  }
12
+ function createScenarioChips(idPrefix, situation) {
13
+ return createNode(`${idPrefix}-home-scenario-chips`, 'ButtonGroup', {
14
+ align: 'between',
15
+ gap: 'xs',
16
+ orientation: 'horizontal',
17
+ }, [
18
+ createNode(`${idPrefix}-home-chip-street`, 'Button', {
19
+ children: situation.street,
20
+ color: 'neutral',
21
+ disabled: true,
22
+ size: 's',
23
+ variant: 'soft',
24
+ }),
25
+ createNode(`${idPrefix}-home-chip-blinds`, 'Button', {
26
+ children: `Blinds ${situation.blinds}`,
27
+ color: 'neutral',
28
+ disabled: true,
29
+ size: 's',
30
+ variant: 'soft',
31
+ }),
32
+ createNode(`${idPrefix}-home-chip-position`, 'Button', {
33
+ children: `Hero ${situation.heroPosition}`,
34
+ color: 'primary',
35
+ disabled: true,
36
+ size: 's',
37
+ variant: 'soft',
38
+ }),
39
+ ]);
40
+ }
41
+ function createDecisionActions(idPrefix, situation) {
42
+ return createNode(`${idPrefix}-home-actions`, 'ButtonGroup', {
43
+ align: 'stretch',
44
+ gap: 's',
45
+ orientation: 'horizontal',
46
+ }, situation.availableActions.map((action) => createNode(`${idPrefix}-home-action-${action.toLowerCase().replace(/[^a-z0-9]+/g, '-')}`, 'Button', {
47
+ children: action,
48
+ color: action === 'Fold' ? 'neutral' : 'primary',
49
+ variant: 'soft',
50
+ })));
51
+ }
11
52
  export function createPokerScreens(seed, idPrefix, screenIds) {
53
+ const situation = pokerSituation;
12
54
  return {
13
55
  [screenIds.home]: createScreen({
14
56
  id: screenIds.home,
@@ -16,103 +58,34 @@ export function createPokerScreens(seed, idPrefix, screenIds) {
16
58
  title: pokerContent.home.title,
17
59
  description: pokerContent.home.description,
18
60
  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,
61
+ createNode(`${idPrefix}-home-header`, 'Card', {
62
+ eyebrow: 'Poker Trainer',
63
+ title: seed.appName,
64
+ description: `Hand ${situation.progress} / ${situation.progressTotal} · Score ${situation.score}`,
65
+ tone: 'subtle',
23
66
  }),
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-actions`, 'ButtonGroup', {
90
- align: 'start',
91
- gap: 's',
92
- orientation: 'responsive',
93
- }, [
94
- createNode(`${idPrefix}-home-fold`, 'Button', {
95
- children: 'Fold',
96
- color: 'neutral',
97
- variant: 'soft',
98
- }),
99
- createNode(`${idPrefix}-home-call`, 'Button', {
100
- children: 'Call',
101
- color: 'primary',
102
- variant: 'soft',
103
- }),
104
- createNode(`${idPrefix}-home-raise`, 'Button', {
105
- children: 'Raise',
106
- color: 'primary',
107
- variant: 'solid',
108
- }),
109
- ]),
110
- createNode(`${idPrefix}-home-result`, 'Notice', {
111
- title: 'Explanation placeholder',
112
- description: 'Show feedback after an answer is selected. The starter keeps state and scoring out of the template package.',
113
- tone: 'info',
114
- }),
115
- ]),
67
+ createNode(`${idPrefix}-home-progress`, 'Progress', {
68
+ color: 'primary',
69
+ max: situation.progressTotal,
70
+ size: 's',
71
+ value: situation.progress,
72
+ }),
73
+ createScenarioChips(idPrefix, situation),
74
+ createNode(`${idPrefix}-home-table`, 'TabletopTable', {
75
+ centerLabel: `Pot ${situation.pot}`,
76
+ centerSublabel: `Level ${situation.level}`,
77
+ seatCount: situation.seats.length,
78
+ shape: 'oval',
79
+ cardSize: 'small',
80
+ seats: situation.seats,
81
+ testID: `${idPrefix}-home-table`,
82
+ }),
83
+ createNode(`${idPrefix}-home-situation`, 'Card', {
84
+ title: 'Your decision',
85
+ description: situation.prompt,
86
+ tone: 'outline',
87
+ }),
88
+ createDecisionActions(idPrefix, situation),
116
89
  ]),
117
90
  }),
118
91
  [screenIds.settings]: createScreen({
@@ -122,7 +95,6 @@ export function createPokerScreens(seed, idPrefix, screenIds) {
122
95
  description: pokerContent.settings.description,
123
96
  root: createNode(`${idPrefix}-settings-screen`, 'Screen', { width: 'default' }, [
124
97
  createNode(`${idPrefix}-settings-header`, 'SectionHeader', {
125
- eyebrow: pokerContent.settings.eyebrow,
126
98
  title: pokerContent.settings.title,
127
99
  description: pokerContent.settings.description,
128
100
  }),
@@ -130,20 +102,20 @@ export function createPokerScreens(seed, idPrefix, screenIds) {
130
102
  {
131
103
  id: 'table-row',
132
104
  title: 'Table layout',
133
- description: 'Start with six seats and a centered decision table.',
105
+ description: 'Start with six compact seats, visible hero cards, stacks, and chip labels.',
134
106
  meta: '6 seats',
135
107
  },
136
108
  {
137
109
  id: 'feedback-row',
138
110
  title: 'Feedback mode',
139
- description: 'Show explanations after each decision by default.',
111
+ description: 'Initial trainer screen hides explanations until a decision is selected.',
140
112
  meta: 'after answer',
141
113
  },
142
114
  {
143
- id: 'category-row',
144
- title: 'Category',
145
- description: `${seed.categoryLabel} uses tabletop extension components.`,
146
- meta: 'extension',
115
+ id: 'api-row',
116
+ title: 'Scenario API',
117
+ description: 'Generated data is modeled through manifest.data.apis.poker_situations.',
118
+ meta: 'api-first',
147
119
  },
148
120
  ]),
149
121
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"poker.screens.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.screens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poker.screens.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/games/poker.screens.ts"],"names":[],"mappings":"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"}
@@ -1 +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"}
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;AAKxD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,YAAY,GAAG,WAAW,CAa1E"}
@@ -1,5 +1,6 @@
1
1
  import { DEFAULT_TEMPLATE_VERSION } from '../../../../internal/defaults';
2
2
  import { createManifestShell, createTheme } from '../../../shared';
3
+ import { pokerTrainerData } from './poker.data';
3
4
  import { createPokerNavigator, createPokerScreenIds } from './poker.routes';
4
5
  import { createPokerScreens } from './poker.screens';
5
6
  export function createPokerStarterTemplate(seed) {
@@ -12,6 +13,7 @@ export function createPokerStarterTemplate(seed) {
12
13
  version: seed.version ?? DEFAULT_TEMPLATE_VERSION,
13
14
  navigator: createPokerNavigator(screenIds),
14
15
  screens: createPokerScreens(seed, idPrefix, screenIds),
16
+ data: pokerTrainerData,
15
17
  });
16
18
  }
17
19
  //# sourceMappingURL=poker.template.js.map
@@ -1 +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"}
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,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,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;QACtD,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/social-community/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAGrE,eAAO,MAAM,+BAA+B;;;;;GAmBY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/social-community/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAGrE,eAAO,MAAM,+BAA+B;;;;;GAaY,CAAC"}
@@ -7,12 +7,6 @@ export const socialCommunityStarterTemplates = [
7
7
  description: 'A feed, groups, messages, profile, and settings starter for community apps.',
8
8
  create: createSocialCommunityTemplate,
9
9
  },
10
- {
11
- id: 'community',
12
- label: 'Community network',
13
- description: 'A feed, groups, messages, profile, and settings starter for community apps.',
14
- create: createSocialCommunityTemplate,
15
- },
16
10
  {
17
11
  id: 'creator',
18
12
  label: 'Creator social',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/social-community/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,6EAA6E;QAC1F,MAAM,EAAE,6BAA6B;KACtC;IACD;QACE,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,6EAA6E;QAC1F,MAAM,EAAE,6BAA6B;KACtC;IACD;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,6EAA6E;QAC1F,MAAM,EAAE,2BAA2B;KACpC;CACqD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/templates/starter/categories/social-community/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,6EAA6E;QAC1F,MAAM,EAAE,6BAA6B;KACtC;IACD;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,6EAA6E;QAC1F,MAAM,EAAE,2BAA2B;KACpC;CACqD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ankhorage/templates",
3
- "version": "1.3.2",
3
+ "version": "1.3.3",
4
4
  "description": "Reusable Ankhorage app templates, presets, and manifest generators.",
5
5
  "homepage": "https://github.com/ankhorage/templates#readme",
6
6
  "bugs": {
@@ -51,7 +51,7 @@
51
51
  "version-packages": "changeset version"
52
52
  },
53
53
  "dependencies": {
54
- "@ankhorage/contracts": "^1.14.0",
54
+ "@ankhorage/contracts": "^1.16.0",
55
55
  "@ankhorage/zora": "^2.6.0"
56
56
  },
57
57
  "devDependencies": {