@hozu/cli 0.7.0 → 0.9.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.
Files changed (189) hide show
  1. package/dist/cdp.d.ts.map +1 -1
  2. package/dist/cdp.js +1 -0
  3. package/dist/cdp.js.map +1 -1
  4. package/dist/commands/add-component.d.ts +5 -0
  5. package/dist/commands/add-component.d.ts.map +1 -0
  6. package/dist/commands/add-component.js +125 -0
  7. package/dist/commands/add-component.js.map +1 -0
  8. package/dist/commands/add-kit.d.ts +2 -0
  9. package/dist/commands/add-kit.d.ts.map +1 -0
  10. package/dist/commands/add-kit.js +20 -0
  11. package/dist/commands/add-kit.js.map +1 -0
  12. package/dist/commands/add-widget.d.ts.map +1 -1
  13. package/dist/commands/add-widget.js +4 -5
  14. package/dist/commands/add-widget.js.map +1 -1
  15. package/dist/commands/add.d.ts +1 -0
  16. package/dist/commands/add.d.ts.map +1 -1
  17. package/dist/commands/add.js +5 -11
  18. package/dist/commands/add.js.map +1 -1
  19. package/dist/commands/app.d.ts +27 -0
  20. package/dist/commands/app.d.ts.map +1 -0
  21. package/dist/commands/app.js +148 -0
  22. package/dist/commands/app.js.map +1 -0
  23. package/dist/commands/browse-page.d.ts +2 -0
  24. package/dist/commands/browse-page.d.ts.map +1 -0
  25. package/dist/commands/browse-page.js +228 -0
  26. package/dist/commands/browse-page.js.map +1 -0
  27. package/dist/commands/browse-tab.d.ts +80 -0
  28. package/dist/commands/browse-tab.d.ts.map +1 -0
  29. package/dist/commands/browse-tab.js +431 -0
  30. package/dist/commands/browse-tab.js.map +1 -0
  31. package/dist/commands/browse-world.d.ts +36 -0
  32. package/dist/commands/browse-world.d.ts.map +1 -0
  33. package/dist/commands/browse-world.js +108 -0
  34. package/dist/commands/browse-world.js.map +1 -0
  35. package/dist/commands/browse.d.ts +24 -3
  36. package/dist/commands/browse.d.ts.map +1 -1
  37. package/dist/commands/browse.js +343 -409
  38. package/dist/commands/browse.js.map +1 -1
  39. package/dist/commands/build.js +8 -8
  40. package/dist/commands/build.js.map +1 -1
  41. package/dist/commands/check.d.ts +1 -2
  42. package/dist/commands/check.d.ts.map +1 -1
  43. package/dist/commands/check.js +34 -28
  44. package/dist/commands/check.js.map +1 -1
  45. package/dist/commands/components.d.ts +21 -0
  46. package/dist/commands/components.d.ts.map +1 -0
  47. package/dist/commands/components.js +143 -0
  48. package/dist/commands/components.js.map +1 -0
  49. package/dist/commands/docs.d.ts +2 -2
  50. package/dist/commands/docs.d.ts.map +1 -1
  51. package/dist/commands/docs.js +15 -3
  52. package/dist/commands/docs.js.map +1 -1
  53. package/dist/commands/explain.js +1 -1
  54. package/dist/commands/explain.js.map +1 -1
  55. package/dist/commands/graph.js +2 -2
  56. package/dist/commands/graph.js.map +1 -1
  57. package/dist/commands/impact.d.ts +3 -2
  58. package/dist/commands/impact.d.ts.map +1 -1
  59. package/dist/commands/impact.js +8 -3
  60. package/dist/commands/impact.js.map +1 -1
  61. package/dist/commands/inspect.d.ts +1 -1
  62. package/dist/commands/inspect.d.ts.map +1 -1
  63. package/dist/commands/inspect.js +7 -1
  64. package/dist/commands/inspect.js.map +1 -1
  65. package/dist/commands/kits.d.ts +16 -0
  66. package/dist/commands/kits.d.ts.map +1 -0
  67. package/dist/commands/kits.js +172 -0
  68. package/dist/commands/kits.js.map +1 -0
  69. package/dist/commands/map.d.ts +12 -0
  70. package/dist/commands/map.d.ts.map +1 -1
  71. package/dist/commands/map.js +101 -5
  72. package/dist/commands/map.js.map +1 -1
  73. package/dist/commands/migrate-agent.d.ts +12 -0
  74. package/dist/commands/migrate-agent.d.ts.map +1 -0
  75. package/dist/commands/migrate-agent.js +6 -0
  76. package/dist/commands/migrate-agent.js.map +1 -0
  77. package/dist/commands/migrate-app.d.ts +15 -0
  78. package/dist/commands/migrate-app.d.ts.map +1 -0
  79. package/dist/commands/migrate-app.js +334 -0
  80. package/dist/commands/migrate-app.js.map +1 -0
  81. package/dist/commands/migrate-ast.d.ts +63 -0
  82. package/dist/commands/migrate-ast.d.ts.map +1 -0
  83. package/dist/commands/migrate-ast.js +257 -0
  84. package/dist/commands/migrate-ast.js.map +1 -0
  85. package/dist/commands/migrate-forms.d.ts +4 -0
  86. package/dist/commands/migrate-forms.d.ts.map +1 -0
  87. package/dist/commands/migrate-forms.js +120 -0
  88. package/dist/commands/migrate-forms.js.map +1 -0
  89. package/dist/commands/migrate-freshness.d.ts +4 -0
  90. package/dist/commands/migrate-freshness.d.ts.map +1 -0
  91. package/dist/commands/migrate-freshness.js +47 -0
  92. package/dist/commands/migrate-freshness.js.map +1 -0
  93. package/dist/commands/migrate-head.d.ts +8 -0
  94. package/dist/commands/migrate-head.d.ts.map +1 -0
  95. package/dist/commands/migrate-head.js +132 -0
  96. package/dist/commands/migrate-head.js.map +1 -0
  97. package/dist/commands/migrate-links.d.ts +5 -0
  98. package/dist/commands/migrate-links.d.ts.map +1 -0
  99. package/dist/commands/migrate-links.js +55 -0
  100. package/dist/commands/migrate-links.js.map +1 -0
  101. package/dist/commands/migrate-lists.d.ts +9 -0
  102. package/dist/commands/migrate-lists.d.ts.map +1 -0
  103. package/dist/commands/migrate-lists.js +225 -0
  104. package/dist/commands/migrate-lists.js.map +1 -0
  105. package/dist/commands/migrate-normalize.d.ts +27 -0
  106. package/dist/commands/migrate-normalize.d.ts.map +1 -0
  107. package/dist/commands/migrate-normalize.js +252 -0
  108. package/dist/commands/migrate-normalize.js.map +1 -0
  109. package/dist/commands/migrate-ops.d.ts +4 -0
  110. package/dist/commands/migrate-ops.d.ts.map +1 -0
  111. package/dist/commands/migrate-ops.js +192 -0
  112. package/dist/commands/migrate-ops.js.map +1 -0
  113. package/dist/commands/migrate-parts.d.ts +7 -0
  114. package/dist/commands/migrate-parts.d.ts.map +1 -0
  115. package/dist/commands/migrate-parts.js +166 -0
  116. package/dist/commands/migrate-parts.js.map +1 -0
  117. package/dist/commands/migrate-stale.d.ts +24 -0
  118. package/dist/commands/migrate-stale.d.ts.map +1 -0
  119. package/dist/commands/migrate-stale.js +114 -0
  120. package/dist/commands/migrate-stale.js.map +1 -0
  121. package/dist/commands/migrate.d.ts +21 -0
  122. package/dist/commands/migrate.d.ts.map +1 -0
  123. package/dist/commands/migrate.js +358 -0
  124. package/dist/commands/migrate.js.map +1 -0
  125. package/dist/commands/plan.d.ts.map +1 -1
  126. package/dist/commands/plan.js +2 -6
  127. package/dist/commands/plan.js.map +1 -1
  128. package/dist/commands/render.d.ts +10 -0
  129. package/dist/commands/render.d.ts.map +1 -0
  130. package/dist/commands/render.js +79 -0
  131. package/dist/commands/render.js.map +1 -0
  132. package/dist/commands/request.d.ts +13 -16
  133. package/dist/commands/request.d.ts.map +1 -1
  134. package/dist/commands/request.js +140 -161
  135. package/dist/commands/request.js.map +1 -1
  136. package/dist/commands/scaffold.d.ts.map +1 -1
  137. package/dist/commands/scaffold.js +10 -8
  138. package/dist/commands/scaffold.js.map +1 -1
  139. package/dist/commands/seed-lock.d.ts +2 -0
  140. package/dist/commands/seed-lock.d.ts.map +1 -0
  141. package/dist/commands/seed-lock.js +6 -0
  142. package/dist/commands/seed-lock.js.map +1 -0
  143. package/dist/commands/serve.d.ts +6 -0
  144. package/dist/commands/serve.d.ts.map +1 -0
  145. package/dist/commands/serve.js +31 -0
  146. package/dist/commands/serve.js.map +1 -0
  147. package/dist/commands/skill.d.ts.map +1 -1
  148. package/dist/commands/skill.js +1 -2
  149. package/dist/commands/skill.js.map +1 -1
  150. package/dist/commands/validate.d.ts +13 -0
  151. package/dist/commands/validate.d.ts.map +1 -1
  152. package/dist/commands/validate.js +56 -9
  153. package/dist/commands/validate.js.map +1 -1
  154. package/dist/contract.d.ts +163 -11
  155. package/dist/contract.d.ts.map +1 -1
  156. package/dist/index.d.ts +1 -0
  157. package/dist/index.d.ts.map +1 -1
  158. package/dist/index.js +1 -0
  159. package/dist/index.js.map +1 -1
  160. package/dist/main.d.ts +8 -0
  161. package/dist/main.d.ts.map +1 -1
  162. package/dist/main.js +159 -47
  163. package/dist/main.js.map +1 -1
  164. package/dist/output.d.ts.map +1 -1
  165. package/dist/output.js +40 -3
  166. package/dist/output.js.map +1 -1
  167. package/dist/render.d.ts.map +1 -1
  168. package/dist/render.js +5 -1
  169. package/dist/render.js.map +1 -1
  170. package/dist/styles.d.ts +12 -1
  171. package/dist/styles.d.ts.map +1 -1
  172. package/dist/styles.js +19 -9
  173. package/dist/styles.js.map +1 -1
  174. package/dist/uses.d.ts +6 -0
  175. package/dist/uses.d.ts.map +1 -0
  176. package/dist/uses.js +72 -0
  177. package/dist/uses.js.map +1 -0
  178. package/package.json +7 -7
  179. package/schema/browse.schema.json +184 -4
  180. package/schema/check.schema.json +114 -9
  181. package/schema/docs-components.schema.json +197 -0
  182. package/schema/impact.schema.json +107 -1
  183. package/schema/inspect.schema.json +341 -24
  184. package/schema/map.schema.json +90 -0
  185. package/schema/plan.schema.json +8 -22
  186. package/schema/render.schema.json +333 -0
  187. package/schema/request.schema.json +133 -8
  188. package/schema/skill.schema.json +22 -1
  189. package/schema/validate.schema.json +39 -8
package/dist/main.js CHANGED
@@ -1,41 +1,53 @@
1
+ import { relative } from 'node:path';
1
2
  import { parseArgs } from 'node:util';
2
3
  import { describeAdd, runAddFeature } from './commands/add.js';
3
- import { describeAddWidget, runAddWidget } from './commands/add-widget.js';
4
- import { browseFailed, describeBrowse, runBrowse } from './commands/browse.js';
4
+ import { describeAddComponent, runAddComponent } from './commands/add-component.js';
5
+ import { BuildFailed } from './commands/app.js';
6
+ import { browseFailed, describeBrowse, runBrowse, } from './commands/browse.js';
5
7
  import { runBuild } from './commands/build.js';
6
8
  import { runCheck } from './commands/check.js';
9
+ import { describeComponent, describeComponentImpact } from './commands/components.js';
7
10
  import { runDocs } from './commands/docs.js';
8
11
  import { describeExplain, runExplain } from './commands/explain.js';
9
12
  import { mermaid, runGraph } from './commands/graph.js';
10
13
  import { describeImpact, runImpact } from './commands/impact.js';
11
14
  import { runInspect } from './commands/inspect.js';
15
+ import { describeAddKit, runAddKit } from './commands/kits.js';
12
16
  import { describeMap, runMap } from './commands/map.js';
13
17
  import { describePlan, runPlan } from './commands/plan.js';
18
+ import { describeRender, runRender } from './commands/render.js';
14
19
  import { describeRequest, runRequest } from './commands/request.js';
20
+ import { runServe } from './commands/serve.js';
15
21
  import { runSkill } from './commands/skill.js';
16
- import { runValidate } from './commands/validate.js';
22
+ import { featuresCreated, runValidate, seedLockIsolated } from './commands/validate.js';
17
23
  import { HozuCliError } from './errors.js';
18
24
  import { load } from './load.js';
19
25
  import { human, json } from './output.js';
26
+ import { describeOverrides } from './uses.js';
20
27
  const usage = `Usage: hozu <command> [options]
21
28
 
22
29
  Commands:
23
30
  validate [feature] Build the IR, run contracts, report diagnostics (exit 1 on errors)
24
- inspect <feature> Print a feature's canonical IR and summary
31
+ inspect <feature|id> Print a feature's canonical IR and summary, or a component (ui.Button) with its uses
25
32
  graph <feature> Print a feature's state/effect/view graph (Mermaid, or --json)
26
33
  explain <feature>.<state> Explain a state: transitions, guards, effects, covering contracts
27
- impact <feature>.<symbol> What a query, mutation, tag, event, fn or view affects
34
+ impact <feature>.<symbol> What a query, mutation, tag, event, fn, view or component (ui.Button) affects
28
35
  plan <route> Derived render plan: regions, cache modes, hydration islands
29
36
  build Write dist/public, dist/server/render.js and dist/manifest.json for deployment
30
- docs [topic] Print one topic of the guide (no topic: list them)
37
+ serve Start the app module (project({ app })) on PORT with adapter-node: what npm start runs
38
+ docs [topic] Print one topic of the guide (no topic: list them); docs components adds the app's list
39
+ render <id> Render one component alone (ui.Button): HTML, root class, owned properties, diagnostics
31
40
  skill Rewrite the agent skill for this Hozu version (--agent claude|agents|both)
32
41
  check Type-check the app and validate it: the one command to run after every edit
33
42
  map Outline the app (routes, queries, mutations, events, states, views) with file:line
34
- get <path>... Request pages in-process (no server): status, title, alerts, visible text
35
- post <path> --field k=v Submit the page's form like a browser, follow the redirect (--next <path> after)
36
- browse <path> --do <step> Load the page in headless Chrome (no server): errors, widgets, text after the steps
43
+ get <path>... Request pages in-process (no server): status, title, alerts, visible text, forms
44
+ browse <path> --do <step> Run the steps in headless Chrome with and without JS (no server): what each step changed
37
45
  add feature <name> Scaffold a working feature (model, views, contracts, resolvers) and wire it in
38
- add widget <feature> <Name> Add a widget: declaration, client module, serve.ts bundle, @hozu/bundle dependency
46
+ add component <kit|feature> <Name> [--client]
47
+ Add a component to a kit or a feature; --client adds the client module, the app.ts
48
+ bundle and the @hozu/bundle dependency
49
+ add kit <id> [--sync] Add a component kit: <id>/kit.ts, <id>/tv.ts (tailwind-merge config from the design
50
+ system) and project({ kits }); --sync regenerates only the config block
39
51
 
40
52
  Options:
41
53
  --json Machine-readable output (schemas in @hozu/cli/schema)
@@ -43,44 +55,97 @@ Options:
43
55
  --update-lock validate: rewrite hozu.lock.json when there are no errors
44
56
  --out <dir> build: output directory (default: dist)
45
57
  --agent <agent> skill: claude, agents or both (default: the folders that exist)
46
- --field <name=value> post: a form field (repeatable); other fields keep their defaults
47
- --button <label> post: the form whose submit button reads <label> (for forms without fields)
48
- --next <step> post: next '<path>', 'GET <path>', 'POST <path> a=1&b=2' or 'POST <path> @Label' (repeatable)
49
- --session <json> get/post/browse: the session value for user-scoped queries
50
- --full get/post/browse: print the whole visible text
51
- --select <selector> get/post/browse: print matching elements with their attributes: button, #id, [role=alert], a[href]
52
- --forms get/post: list the page's forms: action, fields with defaults, submit buttons
53
- --do <step> browse: 'fill <label>=<value>', 'select <label>=<option>', 'check <label>', 'click <name>',
54
- 'press <key>', 'wait <ms>', 'goto <path>' (repeatable, in order)
58
+ --session <json> get/browse: start signed in with this session (a real one: sign-out works); after --as, that actor's
59
+ --full get/browse: print the whole visible text and every changed line
60
+ --select <selector> get/browse: print matching elements with their attributes: button, #id, [role=alert], a[href]
61
+ --forms get: list the page's forms: fields with defaults, checkbox groups, form= controls, submit buttons
62
+ --do <step> browse: 'fill <label>=<value>', 'select <label>=<option>', 'check <label>', 'uncheck <label>',
63
+ 'click <name>', 'submit "<form>"', 'press <key>', 'wait <ms>', 'goto <path>' (repeatable, in
64
+ order); a target may end with in "<text>" (the list item, table row or form containing it)
65
+ --js <on|off|both> browse: run the steps with JS, without JS, or both side by side (default both)
66
+ --as <name> browse: the steps after it are this actor's, in its own browser; repeat to switch actors
55
67
  --screenshot <file> browse: save a PNG of the viewport after the steps
56
68
  --reduced-motion browse: emulate prefers-reduced-motion: reduce
57
69
  --page <path> add feature: also add a route and a page at this path
58
70
  --with <parts> add feature: any of detail,toggle,filter,remove (comma-separated)
71
+ --sync add kit: rewrite the generated block of <id>/tv.ts from the current design system
72
+ --client add component: a client component (browser code in its own module)
73
+ --variant <k=v> render: a variant value (repeatable)
74
+ --props <json> render: the props, a JSON object
75
+ --slot <name=text> render: a slot's text (repeatable)
59
76
  -h, --help Show this help
60
77
  `;
78
+ const browseJs = (value) => {
79
+ if (value === undefined)
80
+ return 'both';
81
+ if (value === 'on' || value === 'off' || value === 'both')
82
+ return value;
83
+ throw new HozuCliError('usage', `--js takes on, off or both, not "${value}"`, ['--js both']);
84
+ };
85
+ export function browsePlan(tokens) {
86
+ const actors = [];
87
+ const plan = [];
88
+ const named = tokens.some((t) => t.kind === 'option' && t.name === 'as');
89
+ if (!named) {
90
+ const session = tokens.filter((t) => t.kind === 'option' && t.name === 'session').at(-1)?.value;
91
+ actors.push({ name: null, session });
92
+ plan.push({ open: 0 });
93
+ }
94
+ let current = named ? -1 : 0;
95
+ for (const t of tokens) {
96
+ if (t.kind !== 'option')
97
+ continue;
98
+ if (t.name === 'as') {
99
+ const name = t.value ?? '';
100
+ current = actors.findIndex((a) => a.name === name);
101
+ if (current < 0) {
102
+ current = actors.push({ name, session: undefined }) - 1;
103
+ plan.push({ open: current });
104
+ }
105
+ }
106
+ else if (named && (t.name === 'do' || t.name === 'session') && current < 0)
107
+ throw new HozuCliError('usage', `--${t.name} comes after the --as <name> it belongs to`, [
108
+ "hozu browse / --as ada --session '{\"user\":\"ada\"}' --do 'click Share' --as bob --do 'wait 500'",
109
+ ]);
110
+ else if (t.name === 'session' && named) {
111
+ const actor = actors[current];
112
+ if (actor.session !== undefined || plan.some((p) => 'actor' in p && p.actor === current))
113
+ throw new HozuCliError('usage', `--session for ${actor.name} must come right after its first --as`, []);
114
+ actor.session = t.value;
115
+ }
116
+ else if (t.name === 'do')
117
+ plan.push({ actor: current, step: t.value ?? '' });
118
+ }
119
+ return { actors, plan };
120
+ }
61
121
  export async function main(argv, cwd = process.cwd(), out = (s) => process.stdout.write(s)) {
62
122
  let asJson = false;
63
123
  try {
64
- const { values, positionals } = parseArgs({
124
+ const { values, positionals, tokens } = parseArgs({
65
125
  args: argv,
66
126
  allowPositionals: true,
67
127
  strict: true,
128
+ tokens: true,
68
129
  options: {
69
130
  json: { type: 'boolean', default: false },
70
131
  config: { type: 'string' },
71
132
  'update-lock': { type: 'boolean', default: false },
72
133
  out: { type: 'string' },
73
134
  agent: { type: 'string' },
74
- field: { type: 'string', multiple: true },
75
- next: { type: 'string', multiple: true },
76
135
  session: { type: 'string' },
77
136
  full: { type: 'boolean', default: false },
78
137
  page: { type: 'string' },
79
138
  with: { type: 'string' },
80
- button: { type: 'string' },
139
+ sync: { type: 'boolean', default: false },
140
+ client: { type: 'boolean', default: false },
141
+ variant: { type: 'string', multiple: true },
142
+ props: { type: 'string' },
143
+ slot: { type: 'string', multiple: true },
81
144
  select: { type: 'string', multiple: true },
82
145
  forms: { type: 'boolean', default: false },
83
146
  do: { type: 'string', multiple: true },
147
+ as: { type: 'string', multiple: true },
148
+ js: { type: 'string' },
84
149
  screenshot: { type: 'string' },
85
150
  'reduced-motion': { type: 'boolean', default: false },
86
151
  help: { type: 'boolean', short: 'h' },
@@ -98,7 +163,6 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
98
163
  'check',
99
164
  'map',
100
165
  'get',
101
- 'post',
102
166
  'browse',
103
167
  'add',
104
168
  'inspect',
@@ -106,33 +170,61 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
106
170
  'explain',
107
171
  'impact',
108
172
  'plan',
173
+ 'render',
109
174
  'build',
175
+ 'serve',
110
176
  'skill',
111
177
  ];
178
+ if (command === 'post')
179
+ throw new HozuCliError('usage', 'hozu post was replaced by hozu browse, which posts forms with JS off too', [
180
+ "hozu browse / --do 'fill Title=Milk' --do 'press Enter' # runs with and without JS",
181
+ 'hozu browse / --js off --do \'click Delete in "Milk"\'',
182
+ ]);
183
+ if (command === 'migrate')
184
+ throw new HozuCliError('usage', '0.9 has no migration tool: upgrade 0.7 apps with `npx @hozu/cli@0.8 migrate 0.8`, then follow the 0.9 CHANGELOG', ['npx @hozu/cli@0.8 migrate 0.8']);
112
185
  if (!commands.includes(command))
113
186
  throw new HozuCliError('usage', `Unknown command "${command}"`, commands);
114
187
  if (command === 'docs') {
115
- const result = await runDocs(cwd, target);
188
+ const result = await runDocs(cwd, target, values.config);
116
189
  out(asJson ? json(result) : result.text);
117
190
  return 0;
118
191
  }
119
192
  if (command === 'skill') {
120
193
  const result = await runSkill(cwd, values.agent);
121
- out(asJson ? json(result) : `✔ wrote ${result.written.join(', ')}\n`);
122
- return 0;
194
+ if (asJson)
195
+ out(json(result));
196
+ else {
197
+ out(`✔ wrote ${result.written.join(', ')}\n`);
198
+ for (const c of result.custom)
199
+ out(`\n✖ ${c.guide} has its own text and no hozu markers. Replace its Hozu instructions with this block:\n\n${c.block}`);
200
+ }
201
+ return result.custom.length ? 1 : 0;
123
202
  }
124
203
  if (command === 'add') {
125
- if (target === 'widget') {
126
- const result = await runAddWidget(cwd, values.config, positionals[2], positionals[3]);
127
- out(asJson ? json(result) : describeAddWidget(result, positionals[3]));
204
+ if (target === 'widget')
205
+ throw new HozuCliError('usage', 'hozu add widget was replaced by hozu add component --client: widgets are client components in 0.9', [`hozu add component ${positionals[2] ?? 'stations'} ${positionals[3] ?? 'StationMap'} --client`]);
206
+ if (target === 'component') {
207
+ const client = values.client === true;
208
+ const result = await runAddComponent(cwd, values.config, positionals[2], positionals[3], client);
209
+ out(asJson ? json(result) : describeAddComponent(result, positionals[3], client));
210
+ return 0;
211
+ }
212
+ if (target === 'kit') {
213
+ const sync = values.sync === true;
214
+ const result = await runAddKit(values.config, cwd, positionals[2], sync);
215
+ out(asJson ? json(result) : describeAddKit(result, positionals[2], sync));
128
216
  return 0;
129
217
  }
130
218
  if (target !== 'feature')
131
- throw new HozuCliError('usage', 'hozu add supports: feature, widget', [
219
+ throw new HozuCliError('usage', 'hozu add supports: feature, component, kit', [
132
220
  'hozu add feature tasks --page /',
133
- 'hozu add widget tasks Chart',
221
+ 'hozu add component tasks Chart --client',
222
+ 'hozu add kit ui',
134
223
  ]);
135
224
  const result = await runAddFeature(cwd, values.config, positionals[2], values.page, values.with);
225
+ const lock = await seedLockIsolated(values.config, cwd, featuresCreated(result.created));
226
+ if (lock)
227
+ (lock.created ? result.created : result.edited).push(relative(cwd, lock.path));
136
228
  out(asJson ? json(result) : describeAdd(result));
137
229
  return 0;
138
230
  }
@@ -148,6 +240,10 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
148
240
  out('\n');
149
241
  for (const d of result.validate.diagnostics)
150
242
  out(`${human(d)}\n\n`);
243
+ for (const o of result.overrides)
244
+ out(`${describeOverrides(o)}\n`);
245
+ if (result.overrides.length)
246
+ out('\n');
151
247
  const v = result.validate;
152
248
  const types = result.types.skipped
153
249
  ? 'types skipped (npm install -D typescript)'
@@ -156,18 +252,18 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
156
252
  }
157
253
  return result.ok ? 0 : 1;
158
254
  }
255
+ if (command === 'serve') {
256
+ await runServe(loaded, (line) => out(`${line}\n`));
257
+ return 0;
258
+ }
159
259
  if (command === 'map') {
160
260
  const result = runMap(loaded, cwd);
161
261
  out(asJson ? json(result) : describeMap(result));
162
262
  return 0;
163
263
  }
164
- if (command === 'get' || command === 'post') {
264
+ if (command === 'get') {
165
265
  const result = await runRequest(loaded, {
166
- method: command === 'get' ? 'GET' : 'POST',
167
266
  paths: positionals.slice(1),
168
- fields: values.field ?? [],
169
- next: values.next ?? [],
170
- button: values.button,
171
267
  select: values.select ?? [],
172
268
  forms: values.forms === true,
173
269
  session: values.session,
@@ -179,14 +275,14 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
179
275
  if (command === 'browse') {
180
276
  const result = await runBrowse(loaded, {
181
277
  path: target,
182
- steps: values.do ?? [],
278
+ ...browsePlan(tokens),
279
+ js: browseJs(values.js),
183
280
  select: values.select ?? [],
184
281
  screenshot: values.screenshot,
185
282
  reducedMotion: values['reduced-motion'] === true,
186
- session: values.session,
187
283
  full: values.full === true,
188
284
  });
189
- out(asJson ? json(result) : describeBrowse(result));
285
+ out(asJson ? json(result) : describeBrowse(result, values.full === true));
190
286
  return browseFailed(result) ? 1 : 0;
191
287
  }
192
288
  if (command === 'validate') {
@@ -204,10 +300,13 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
204
300
  return result.ok ? 0 : 1;
205
301
  }
206
302
  if (command === 'inspect') {
207
- const result = runInspect(loaded, target);
208
- out(asJson
209
- ? json(result)
210
- : `${json({ feature: result.feature, hash: result.hash, summary: result.summary })}`);
303
+ const result = runInspect(loaded, target, cwd);
304
+ if (asJson)
305
+ out(json(result));
306
+ else if ('component' in result)
307
+ out(describeComponent(loaded.build(true), cwd, result));
308
+ else
309
+ out(json({ feature: result.feature, hash: result.hash, summary: result.summary }));
211
310
  return 0;
212
311
  }
213
312
  if (command === 'build') {
@@ -221,10 +320,23 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
221
320
  return 0;
222
321
  }
223
322
  if (command === 'impact') {
224
- const result = runImpact(loaded, target);
225
- out(asJson ? json(result) : describeImpact(result));
323
+ const result = runImpact(loaded, target, cwd);
324
+ out(asJson
325
+ ? json(result)
326
+ : result.kind === 'component'
327
+ ? describeComponentImpact(result)
328
+ : describeImpact(result));
226
329
  return 0;
227
330
  }
331
+ if (command === 'render') {
332
+ const result = await runRender(loaded, cwd, target, {
333
+ variant: values.variant ?? [],
334
+ props: values.props,
335
+ slot: values.slot ?? [],
336
+ });
337
+ out(asJson ? json(result) : describeRender(result));
338
+ return result.ok ? 0 : 1;
339
+ }
228
340
  if (command === 'explain') {
229
341
  const result = runExplain(loaded, target);
230
342
  out(asJson ? json(result) : describeExplain(result));
@@ -242,7 +354,7 @@ export async function main(argv, cwd = process.cwd(), out = (s) => process.stdou
242
354
  out(json(e.toJSON()));
243
355
  else
244
356
  process.stderr.write(`hozu: ${e.message}${e.suggestions.length ? `\n ${e.suggestions.join('\n ')}` : ''}\n`);
245
- return 2;
357
+ return e instanceof BuildFailed ? 1 : 2;
246
358
  }
247
359
  }
248
360
  //# sourceMappingURL=main.js.map
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAA;AAEnE,eAAO,MAAM,IAAI,UAAW,OAAO,KAAG,MACiC,CAAA;AAEvE,eAAO,MAAM,UAAU,gBAAiB,UAAU,EAAE,OAAO,MAAM,KAAG,UAAU,EAW3E,CAAA;AA4CH,wBAAgB,KAAK,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAa3C"}
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAA;AAEnE,eAAO,MAAM,IAAI,UAAW,OAAO,KAAG,MACiC,CAAA;AAEvE,eAAO,MAAM,UAAU,gBAAiB,UAAU,EAAE,OAAO,MAAM,KAAG,UAAU,EAW3E,CAAA;AAkFH,wBAAgB,KAAK,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAa3C"}
package/dist/output.js CHANGED
@@ -37,7 +37,7 @@ const TOPICS = {
37
37
  HZ024: 'pages',
38
38
  HZ025: 'pages',
39
39
  HZ035: 'pages',
40
- HZ029: 'widgets',
40
+ HZ029: 'components',
41
41
  HZ037: 'http',
42
42
  HZ038: 'http',
43
43
  HZ039: 'http',
@@ -46,10 +46,47 @@ const TOPICS = {
46
46
  HZ042: 'i18n',
47
47
  HZ043: 'content',
48
48
  HZ044: 'deploy',
49
- HZ045: 'widgets',
49
+ HZ045: 'deploy',
50
50
  HZ046: 'endpoints',
51
51
  HZ047: 'data',
52
52
  HZ048: 'machine',
53
+ HZ049: 'data',
54
+ HZ050: 'data',
55
+ HZ051: 'pages',
56
+ HZ052: 'pages',
57
+ HZ053: 'endpoints',
58
+ HZ054: 'forms',
59
+ HZ055: 'forms',
60
+ HZ056: 'forms',
61
+ HZ057: 'contracts',
62
+ HZ058: 'contracts',
63
+ HZ059: 'views',
64
+ HZ060: 'i18n',
65
+ HZ061: 'forms',
66
+ HZ062: 'endpoints',
67
+ HZ063: 'forms',
68
+ HZ064: 'contracts',
69
+ HZ070: 'components',
70
+ HZ071: 'components',
71
+ HZ072: 'components',
72
+ HZ073: 'components',
73
+ HZ074: 'components',
74
+ HZ075: 'components',
75
+ HZ076: 'components',
76
+ HZ077: 'components',
77
+ HZ078: 'components',
78
+ HZ079: 'components',
79
+ HZ080: 'components',
80
+ };
81
+ const CAUSE_LINES = 10;
82
+ const cap = (cause) => {
83
+ const lines = cause.split('\n');
84
+ if (lines.length <= CAUSE_LINES + 1)
85
+ return lines.join('\n ');
86
+ return [
87
+ ...lines.slice(0, CAUSE_LINES + 1),
88
+ `… ${lines.length - CAUSE_LINES - 1} more (--json lists all)`,
89
+ ].join('\n ');
53
90
  };
54
91
  export function human(d) {
55
92
  const where = d.location.source
@@ -58,7 +95,7 @@ export function human(d) {
58
95
  const lines = [
59
96
  `${where} ${d.severity} ${d.code} ${d.message}`,
60
97
  ` at ${d.location.pointer}`,
61
- ` cause: ${d.cause}`,
98
+ ` cause: ${cap(d.cause)}`,
62
99
  ];
63
100
  if (d.fix)
64
101
  lines.push(` fix: ${d.fix.summary}${d.fix.patch ? ' (patch available with --json)' : ''}`);
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAKnE,wBAAgB,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAWhD;AAID,wBAAgB,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAYhD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAYhD"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAKnE,wBAAgB,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAahD;AAID,wBAAgB,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAYhD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAYhD"}
package/dist/render.js CHANGED
@@ -13,6 +13,10 @@ export function renderValue(v) {
13
13
  return `(${renderGuard(v.test)})`;
14
14
  if ('link' in v)
15
15
  return `link(${local(v.link)}, ${renderValue(v.params)}, ${renderValue(v.search)})`;
16
+ if ('endpoint' in v)
17
+ return `link(${local(v.endpoint)}${v.input ? `, ${renderValue(v.input)}` : ''})`;
18
+ if ('formRef' in v)
19
+ return `formRef(${v.formRef})`;
16
20
  if (v.ref === 'binding')
17
21
  return `item${v.depth}${suffix(v.path)}`;
18
22
  return `${v.ref}${suffix(v.path)}`;
@@ -41,7 +45,7 @@ export function renderAssign(a) {
41
45
  case 'inc':
42
46
  return `${target} += ${renderValue(a.value)}`;
43
47
  case 'removeWhere':
44
- return `${target} = ${target}.filter(x => x.${a.key} != ${renderValue(a.value)})`;
48
+ return `${target} = ${target}.filter(x => ${a.key === null ? 'x' : `x.${a.key}`} != ${renderValue(a.value)})`;
45
49
  }
46
50
  }
47
51
  //# sourceMappingURL=render.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
package/dist/styles.d.ts CHANGED
@@ -1,3 +1,14 @@
1
1
  import { type BuildResult } from '@hozu/core/ir';
2
- export declare function unknownClasses(configPath: string, build: BuildResult): Promise<Map<string, string | null> | null>;
2
+ import type { ClassStyle } from '@hozu/validator';
3
+ export interface DesignTokens {
4
+ theme: string[];
5
+ utilities: string[];
6
+ functional: string[];
7
+ }
8
+ export interface ProjectStyles {
9
+ unknown: Map<string, string | null>;
10
+ classes: Map<string, ClassStyle>;
11
+ tokens: DesignTokens | null;
12
+ }
13
+ export declare function projectStyles(configPath: string, build: BuildResult): Promise<ProjectStyles | null>;
3
14
  //# sourceMappingURL=styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,WAAW,EAA2B,MAAM,eAAe,CAAA;AAwBzE,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,8CAkB1E"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,WAAW,EAAyB,MAAM,eAAe,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAcjD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAUD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAA;IACnC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;CAC5B;AAWD,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CA4BzG"}
package/dist/styles.js CHANGED
@@ -10,18 +10,22 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
10
10
  import { createRequire } from 'node:module';
11
11
  import { dirname, join } from 'node:path';
12
12
  import { pathToFileURL } from 'node:url';
13
- import { classCandidates, sha256 } from '@hozu/core/ir';
13
+ import { sha256, styledClasses } from '@hozu/core/ir';
14
14
  const keyOf = (build, files) => sha256(JSON.stringify([
15
- [...classCandidates(build.ir)].sort(),
15
+ [...styledClasses(build.ir, build.bindings.components)].sort(),
16
16
  build.bindings.styles,
17
17
  files.map((f) => (existsSync(f) ? readFileSync(f, 'utf8') : null)),
18
18
  ]));
19
- export async function unknownClasses(configPath, build) {
19
+ export async function projectStyles(configPath, build) {
20
20
  const base = dirname(configPath);
21
21
  const cacheFile = join(base, 'node_modules/.cache/hozu/styles.json');
22
- const cached = existsSync(cacheFile) ? JSON.parse(readFileSync(cacheFile, 'utf8')) : null;
23
- if (cached && cached.key === keyOf(build, cached.files))
24
- return new Map(cached.unknown);
22
+ let cached = null;
23
+ try {
24
+ cached = existsSync(cacheFile) ? JSON.parse(readFileSync(cacheFile, 'utf8')) : null;
25
+ }
26
+ catch { }
27
+ if (cached?.classes && cached.tokens !== undefined && cached.key === keyOf(build, cached.files))
28
+ return { unknown: new Map(cached.unknown), classes: new Map(cached.classes), tokens: cached.tokens };
25
29
  let css;
26
30
  try {
27
31
  css = (await import(__rewriteRelativeImportExtension(pathToFileURL(createRequire(configPath).resolve('@hozu/css')).href)));
@@ -29,13 +33,19 @@ export async function unknownClasses(configPath, build) {
29
33
  catch {
30
34
  return null;
31
35
  }
32
- const { unknown, files } = await css.compileStyles(build, { minify: false, base });
36
+ const { unknown, classes, tokens, files } = await css.compileStyles(build, { minify: false, base });
33
37
  try {
34
38
  mkdirSync(dirname(cacheFile), { recursive: true });
35
- const entry = { key: keyOf(build, files), files, unknown: [...unknown] };
39
+ const entry = {
40
+ key: keyOf(build, files),
41
+ files,
42
+ unknown: [...unknown],
43
+ classes: [...classes],
44
+ tokens,
45
+ };
36
46
  writeFileSync(cacheFile, JSON.stringify(entry));
37
47
  }
38
48
  catch { }
39
- return unknown;
49
+ return { unknown, classes, tokens };
40
50
  }
41
51
  //# sourceMappingURL=styles.js.map