@wix/himalaya-cli 0.1140.0 → 0.1142.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.
|
@@ -281,7 +281,7 @@ Concrete patterns lifted from real usage:
|
|
|
281
281
|
- **Cell list** — `card([ vstack({ spacing: 0, alignment: "leading", children: [ …ListItem cells… ] }) ])`. `spacing: 0` because the cells own their own dividers/padding.
|
|
282
282
|
- **Overlay** — `zstack({ alignment: "center", children: [ backdropImage(cornerRadius 12), withModifiers(label, { padding, background: { token: "accentPrimary" }, cornerRadius: 10 }) ] })`.
|
|
283
283
|
- **Responsive** — `grid({ columns: 1, columnsMedium: 2, spacing: 12 })` for 1-up on phone / 2-up on tablet; `splitView({ primary, detail, primaryMaxWidth: 280 })` for master/detail that stacks on a phone; set `contentMaxWidth` in tokens so wide surfaces keep a readable column instead of running edge-to-edge.
|
|
284
|
-
- **Centered separator, not a flanked divider** — the classic "—— or ——" needs each `divider()` to take equal remaining width, and the HStack row-share only kicks in for controls with an intrinsic fill. **
|
|
284
|
+
- **Centered separator, not a flanked divider** — the classic "—— or ——" needs each `divider()` to take equal remaining width, and the HStack row-share only kicks in for controls with an intrinsic fill. **A bare `divider()` inside an HStack is a column separator, not a flanking line**: iOS, macOS, Android, web and React Native all draw it as a thin vertical rule the height of the row that takes no share of the width, which is right for a stats row (`12 | 340 | 87`) and wrong for "—— or ——". For "—— or ——", use a **centered caption**: `hstack({ children: [spacer(), text("or continue with", "caption", { color: "textSecondary" }), spacer()] })`, optionally over a single full-width `divider()`.
|
|
285
285
|
|
|
286
286
|
> **Intrinsic-fill controls grab the row.** `Button` and `TextField` have an intrinsic FILL, so the next four idioms are about NOT letting that surprise you (they were the papercuts every off-repo app hit):
|
|
287
287
|
|
|
@@ -122,6 +122,27 @@ placeholder copy, flow/state matrix, and compact/phone/expanded + device evidenc
|
|
|
122
122
|
the app ready. Keep scenario switches out of customer UI. A labelled preview fallback is acceptable
|
|
123
123
|
only when the host cannot perform the task and it cannot write customer data.
|
|
124
124
|
|
|
125
|
+
**Adopting a template, step by step.** A template proves a capability; it is not the customer's
|
|
126
|
+
product. Right after `init`:
|
|
127
|
+
|
|
128
|
+
1. **Inventory what you inherited** before editing: its screens, local and remote data, auth,
|
|
129
|
+
capabilities, demo/fallback behaviour, and template-specific copy. Write it down — it is the
|
|
130
|
+
list the next steps work through.
|
|
131
|
+
2. **Replace the template's identity**: its app name, addresses, sample content, and every
|
|
132
|
+
`YOUR_*` / `replace with` placeholder. A placeholder left in is shipped as copy —
|
|
133
|
+
`himi ux audit --strict` fails on one as `template-placeholder`.
|
|
134
|
+
3. **Put each inherited risky flow in the acceptance matrix** — booking/cancellation, payments,
|
|
135
|
+
deletion, media, maps, entitlement — or remove it (`himi template trim`). A flow the plan does
|
|
136
|
+
not mention is a flow nobody approved.
|
|
137
|
+
4. **Classify every control** as primary, secondary, destructive, or preview/fallback, and keep a
|
|
138
|
+
destructive or writing control only when the approved data-access matrix allows it.
|
|
139
|
+
5. **Prove each adopted flow, not just each screen**: with fixtures or `dev/net-mocks.json`, prove
|
|
140
|
+
typed input → submit → the persisted result with a typed journey in `himi-test.json`
|
|
141
|
+
(`--deep` replays action chains but never types a field value), then prove the destination
|
|
142
|
+
and cancel/back recovery separately — a typed journey is screen-local and does not follow
|
|
143
|
+
navigation, so use a render of the destination or a device drive. A fresh-screen crawl alone
|
|
144
|
+
does not prove a flow.
|
|
145
|
+
|
|
125
146
|
Before authoring a multi-screen mobile app, ensure the customer-approved `SPEC.md` and
|
|
126
147
|
`MOBILE-UX.md` are in the content-package root. Use `himi docs <topic>` only after `himi docs`
|
|
127
148
|
shows that topic for the installed CLI.
|
package/guides/himi-skill.md
CHANGED
|
@@ -151,6 +151,27 @@ placeholder copy, flow/state matrix, and compact/phone/expanded + device evidenc
|
|
|
151
151
|
the app ready. Keep scenario switches out of customer UI. A labelled preview fallback is acceptable
|
|
152
152
|
only when the host cannot perform the task and it cannot write customer data.
|
|
153
153
|
|
|
154
|
+
**Adopting a template, step by step.** A template proves a capability; it is not the customer's
|
|
155
|
+
product. Right after `init`:
|
|
156
|
+
|
|
157
|
+
1. **Inventory what you inherited** before editing: its screens, local and remote data, auth,
|
|
158
|
+
capabilities, demo/fallback behaviour, and template-specific copy. Write it down — it is the
|
|
159
|
+
list the next steps work through.
|
|
160
|
+
2. **Replace the template's identity**: its app name, addresses, sample content, and every
|
|
161
|
+
`YOUR_*` / `replace with` placeholder. A placeholder left in is shipped as copy —
|
|
162
|
+
`himi ux audit --strict` fails on one as `template-placeholder`.
|
|
163
|
+
3. **Put each inherited risky flow in the acceptance matrix** — booking/cancellation, payments,
|
|
164
|
+
deletion, media, maps, entitlement — or remove it (`himi template trim`). A flow the plan does
|
|
165
|
+
not mention is a flow nobody approved.
|
|
166
|
+
4. **Classify every control** as primary, secondary, destructive, or preview/fallback, and keep a
|
|
167
|
+
destructive or writing control only when the approved data-access matrix allows it.
|
|
168
|
+
5. **Prove each adopted flow, not just each screen**: with fixtures or `dev/net-mocks.json`, prove
|
|
169
|
+
typed input → submit → the persisted result with a typed journey in `himi-test.json`
|
|
170
|
+
(`--deep` replays action chains but never types a field value), then prove the destination
|
|
171
|
+
and cancel/back recovery separately — a typed journey is screen-local and does not follow
|
|
172
|
+
navigation, so use a render of the destination or a device drive. A fresh-screen crawl alone
|
|
173
|
+
does not prove a flow.
|
|
174
|
+
|
|
154
175
|
Before authoring a multi-screen mobile app, ensure the customer-approved `SPEC.md` and
|
|
155
176
|
`MOBILE-UX.md` are in the content-package root. Use `himi docs <topic>` only after `himi docs`
|
|
156
177
|
shows that topic for the installed CLI.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wix/himalaya-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1142.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "himi — the Himalaya authoring CLI. Build a Tier-5 content package on your own machine, push it to the production serve as a draft, preview it on web + Himi Player, and read worker logs back — the remote dev loop. Wraps @himalaya/serve-cli for transport.",
|
|
6
6
|
"keywords": [
|
|
@@ -67,5 +67,5 @@
|
|
|
67
67
|
"artifactId": "himalaya-cli"
|
|
68
68
|
}
|
|
69
69
|
},
|
|
70
|
-
"falconPackageHash": "
|
|
70
|
+
"falconPackageHash": "da6ce19c2485b32baf1d9f2aca5df0f7110f9b0dbff3115b10b40ac9"
|
|
71
71
|
}
|