@akanjs/cli 3.0.0-alpha.33 → 3.0.0-alpha.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.build-stamp CHANGED
@@ -1 +1 @@
1
- 92c020a25f9a2117ffc1aac1e1581b005e93ce7da63656e22aa9756cad18ea57
1
+ 1ba5af5f113a1c106187a2b639d58cebb76b91f2b81154ec5fd690e268026a8e
@@ -59,10 +59,13 @@ that looks wrong; do not "fix" it back.
59
59
  - **Never redeclare a generated CRUD endpoint name** in `*.signal.ts` (`no-redeclare-predefined-endpoint.grit`).
60
60
  - **Never type a `*.Util.tsx` / `*.Zone.tsx` prop as a `cnst` model** (`no-model-type-in-util-zone.grit`). Those two
61
61
  roles are always client components, so a `cnst.Banner` / `cnst.LightBanner` prop is a class instance the server has
62
- to hand across the boundary; take `bannerId: string` and read the model from the store instead. Two shapes are
63
- exempt because neither is an instance: `cnst.<Enum>["value"]`, whose indexed access resolves to a string union, and
64
- a `ClientInit` / `ClientView` / `ClientEdit` type argument, which the framework maps to `GetStateObject<…>` plain
65
- data. Any *other* indexed access is still flagged `cnst.Banner["image"]` is a `File`.
62
+ to hand across the boundary; take `bannerId: string` and read the model from the store instead. Three shapes are
63
+ exempt because none of them is an instance: `cnst.<Enum>["value"]`, whose indexed access resolves to a string
64
+ union; a `ClientInit` / `ClientView` / `ClientEdit` type argument, which the framework maps to `GetStateObject<…>`
65
+ plain data; and a `ModelsProps<cnst.Setting>` type argument, whose only use of the model is the `onClickItem`
66
+ callback, so nothing model-shaped ever lands on a prop. `ModelProps<"setting", cnst.LightSetting>` is *not* exempt
67
+ — that one spreads the model onto the props themselves, and `Unit` / `View`, which take it, are server components
68
+ this rule does not cover. Any *other* indexed access is still flagged — `cnst.Banner["image"]` is a `File`.
66
69
  **Only prop positions are read** — a `*Props` interface or type alias, and the inline object type on the
67
70
  component's own parameter. A `cnst` type that never leaves the file is not a boundary crossing and stays legal: a
68
71
  local annotation, a callback parameter the framework itself types with the model
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akanjs/cli",
3
- "version": "3.0.0-alpha.33",
3
+ "version": "3.0.0-alpha.34",
4
4
  "sourceType": "module",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -34,7 +34,7 @@
34
34
  "@langchain/openai": "^1.4.6",
35
35
  "@tailwindcss/node": "^4.3.0",
36
36
  "@trapezedev/project": "^7.1.4",
37
- "akanjs": "3.0.0-alpha.33",
37
+ "akanjs": "3.0.0-alpha.34",
38
38
  "chalk": "^5.6.2",
39
39
  "commander": "^14.0.3",
40
40
  "dayjs": "^1.11.20",