@imfusion/web-ui 0.5.1-dev.25.gf0207a31 → 0.5.1-dev.3.g8e0a047a
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/README.md +55 -148
- package/bin/install-skill.js +180 -0
- package/dist/index.d.ts +0 -2
- package/dist/index.js +4317 -4956
- package/dist/integrations/image-display-options.js +1 -1
- package/dist/style.css +1 -1
- package/dist/{tabs-CVp_SgBl.js → tabs-DqBFSqq6.js} +1 -1
- package/package.json +24 -35
- package/src/docgen/doc.gen.json +0 -327
- package/src/llms/llms.gen.txt +0 -12
- package/src/llms/skills/imf-web-ui/SKILL.md +11 -15
- package/src/llms/skills/imf-web-ui-components/SKILL.md +1 -1
- package/src/llms/skills/imf-web-ui-frontend-patterns/SKILL.md +93 -0
- package/src/llms/skills/imf-web-ui-frontend-patterns/references/code-conventions.md +133 -0
- package/src/llms/skills/{imf-web-ui-frontend-conventions/references/react.md → imf-web-ui-frontend-patterns/references/react-patterns.md} +12 -26
- package/src/llms/skills/imf-web-ui-imfusion-frontend-setup/SKILL.md +201 -0
- package/src/llms/skills/imf-web-ui-setup/SKILL.md +57 -0
- package/src/llms/skills/imf-web-ui-ux/SKILL.md +4 -4
- package/src/llms/skills/imf-web-ui-ux/references/forms.md +1 -1
- package/bin/install.js +0 -343
- package/bin/install.test.ts +0 -166
- package/dist/build/vite-css-module-names/index.d.ts +0 -20
- package/dist/build/vite-css-module-names.js +0 -17
- package/dist/components/field/field.d.ts +0 -104
- package/dist/components/field/field.meta.d.ts +0 -2
- package/dist/components/field/index.d.ts +0 -2
- package/dist/components/fieldset/fieldset.d.ts +0 -29
- package/dist/components/fieldset/fieldset.meta.d.ts +0 -2
- package/dist/components/fieldset/index.d.ts +0 -2
- package/src/llms/skills/imf-web-ui-agent-setup/SKILL.md +0 -71
- package/src/llms/skills/imf-web-ui-agent-setup/templates/hooks/baseline-staleness.sh +0 -17
- package/src/llms/skills/imf-web-ui-agent-setup/templates/hooks/post-tool-use.sh +0 -21
- package/src/llms/skills/imf-web-ui-agent-setup/templates/hooks/session-start.sh +0 -4
- package/src/llms/skills/imf-web-ui-agent-setup/templates/hooks/user-prompt-submit.sh +0 -4
- package/src/llms/skills/imf-web-ui-agent-setup/templates/settings.json +0 -37
- package/src/llms/skills/imf-web-ui-frontend-conventions/SKILL.md +0 -45
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/assets.md +0 -23
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/class-names.md +0 -42
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/components.md +0 -63
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/data.md +0 -196
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/docs-structure.md +0 -44
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/git.md +0 -33
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/library-boundary.md +0 -37
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/npm-project.md +0 -57
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/project-structure.md +0 -21
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/stack.md +0 -39
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/styling.md +0 -91
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/testing.md +0 -16
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/tooling.md +0 -76
- package/src/llms/skills/imf-web-ui-frontend-conventions/references/typescript.md +0 -45
- package/src/llms/skills/imf-web-ui-frontend-setup/SKILL.md +0 -89
- package/src/llms/skills/imf-web-ui-frontend-setup/templates/AGENTS.md +0 -34
- package/src/llms/skills/imf-web-ui-frontend-setup/templates/README.md +0 -27
- package/src/llms/skills/imf-web-ui-library-setup/SKILL.md +0 -36
- package/src/llms/skills/imf-web-ui-update/SKILL.md +0 -165
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: imf-web-ui-update
|
|
3
|
-
description:
|
|
4
|
-
"Update @imfusion/web-ui in a consumer repository: refresh the package and vendored skills, audit and optionally install
|
|
5
|
-
lifecycle hooks, verify the base update, then audit and optionally migrate affected or custom consumer components in a
|
|
6
|
-
separate approved commit."
|
|
7
|
-
argument-hint: "[--dry-run] [optional version or reason]"
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# imf-web-ui-update
|
|
11
|
-
|
|
12
|
-
Update a repository that consumes `@imfusion/web-ui`. Preserve existing project choices and user work. The workflow has two
|
|
13
|
-
commits: the dependency/tooling update first, then an optional consumer migration. Never commit without a fresh explicit
|
|
14
|
-
approval.
|
|
15
|
-
|
|
16
|
-
## Rules
|
|
17
|
-
|
|
18
|
-
- Work from the frontend package root. In a monorepo, inspect package manifests and `git worktree list` first, then choose
|
|
19
|
-
the frontend package in the active worktree that uses web-ui. Read repository and component instructions before changing
|
|
20
|
-
files.
|
|
21
|
-
- Detect the package manager from lockfiles. Use npm for `package-lock.json`, pnpm for `pnpm-lock.yaml`, Yarn for
|
|
22
|
-
`yarn.lock`, and Bun for `bun.lock*`. If multiple lockfiles exist, stop and ask which is authoritative.
|
|
23
|
-
- A dry run is read-only. Do not install, run the installer, format, stage, commit, reset, or clean. Report what would run.
|
|
24
|
-
- Record the initial `git status --short`. Existing changes are held back, never staged or overwritten.
|
|
25
|
-
- A dirty file that the workflow needs to modify is a conflict. Stop and report it. This includes package files, installed
|
|
26
|
-
skill directories, the `AGENTS.md` installer fence, hook files, and hook settings.
|
|
27
|
-
- Do not hand-edit installer-owned skills, the `AGENTS.md` fenced block, or installer-owned hook files.
|
|
28
|
-
- Keep the base update and consumer migration in separate commits. Do not begin the migration audit until the base update
|
|
29
|
-
commit is complete.
|
|
30
|
-
- Treat the installed package version before the update as the comparison baseline. There is no assumed changelog.
|
|
31
|
-
- A migration candidate is a custom consumer implementation whose behavior overlaps with a current web-ui component, or an
|
|
32
|
-
existing web-ui usage affected by changed types or documented API. Do not infer a replacement from a name alone; inspect
|
|
33
|
-
the implementation and the current component documentation/types.
|
|
34
|
-
|
|
35
|
-
## Preflight
|
|
36
|
-
|
|
37
|
-
1. Select the frontend package in the active worktree and read its instructions, `package.json`, and lockfile.
|
|
38
|
-
2. Check whether `@imfusion/web-ui` is already declared and record its installed/version-marker version.
|
|
39
|
-
3. Record the worktree status and identify files the update would touch.
|
|
40
|
-
4. Inspect `.agents/skills/`, `.claude/skills/`, the `AGENTS.md` fence, `.claude/settings.json`, and `.agents/hooks/`.
|
|
41
|
-
5. Check for another package-manager process. Stop on any conflict or ambiguous target.
|
|
42
|
-
|
|
43
|
-
## Base update
|
|
44
|
-
|
|
45
|
-
In a non-dry run, update the dependency with the detected manager:
|
|
46
|
-
|
|
47
|
-
```sh
|
|
48
|
-
npm install @imfusion/web-ui
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
Use the equivalent command for another detected manager. Pass an explicit version only when the user supplied one. Do not use
|
|
52
|
-
`--force` or `--legacy-peer-deps` to make installation pass. Stop on install failure.
|
|
53
|
-
|
|
54
|
-
Then refresh the existing web-ui skill target:
|
|
55
|
-
|
|
56
|
-
```sh
|
|
57
|
-
npx web-ui-install --skills
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
Use the detected manager's runner for non-npm projects. Preserve the existing target (`.agents`, `.claude`, or both); do not
|
|
61
|
-
silently choose a new one. Stop on malformed settings or installer conflicts.
|
|
62
|
-
|
|
63
|
-
## Hook audit
|
|
64
|
-
|
|
65
|
-
Audit these responsibilities separately: session start, prompt submit, and post-edit verification.
|
|
66
|
-
|
|
67
|
-
- If current web-ui hooks cover a responsibility, do not reinstall it.
|
|
68
|
-
- If no equivalent hook exists and the installer-owned destination is clean, ask whether to run:
|
|
69
|
-
|
|
70
|
-
```sh
|
|
71
|
-
npx web-ui-install --hooks
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
Run it only after the user accepts. Use the detected runner otherwise.
|
|
75
|
-
|
|
76
|
-
- If another hook covers a responsibility, do not stack a duplicate. Report the overlap and ask whether to leave hooks alone
|
|
77
|
-
or adapt the existing hook in a separate approved change.
|
|
78
|
-
- Invalid settings or dirty installer-owned hook files are conflicts. Stop and ask for resolution.
|
|
79
|
-
|
|
80
|
-
A declined hook offer is valid. Report `hooks: skipped by user` and continue.
|
|
81
|
-
|
|
82
|
-
## Verification
|
|
83
|
-
|
|
84
|
-
After each mutating command, compare `git status --short` with the preflight snapshot.
|
|
85
|
-
|
|
86
|
-
Classify paths as:
|
|
87
|
-
|
|
88
|
-
- **Update-owned:** package files and installer-owned files changed by this workflow.
|
|
89
|
-
- **Held back:** pre-existing user changes, excluded from the commit.
|
|
90
|
-
- **Conflict:** an overlapping pre-existing change, ambiguous target, or unexpected changed path.
|
|
91
|
-
|
|
92
|
-
On conflict, stop. Never use `git restore`, `git reset`, `git clean`, or broad staging to hide it.
|
|
93
|
-
|
|
94
|
-
Run the frontend package's documented full verification after the base update. Read its `package.json` scripts and choose
|
|
95
|
-
commands that cover typechecking, linting, tests, and building. Prefer one documented aggregate `verify`/`check` script when
|
|
96
|
-
it covers those responsibilities; otherwise run the documented non-watch scripts for the responsibilities that exist. Do not
|
|
97
|
-
invent script names or run watch/dev scripts. A type or build failure is a base-update conflict to resolve before the base
|
|
98
|
-
commit, not a migration finding to defer.
|
|
99
|
-
|
|
100
|
-
Verify the dependency/lockfile, current skill markers, the `AGENTS.md` fence, hook coverage, and the final path list. In
|
|
101
|
-
dry-run mode, say that mutation-dependent checks were skipped.
|
|
102
|
-
|
|
103
|
-
## Base update report and approval
|
|
104
|
-
|
|
105
|
-
Before the base commit, show this concise report:
|
|
106
|
-
|
|
107
|
-
```text
|
|
108
|
-
@imfusion/web-ui update report
|
|
109
|
-
Package : <old> -> <new> / would update
|
|
110
|
-
Skills : <status>
|
|
111
|
-
Hooks : <status>
|
|
112
|
-
Verification : <status>
|
|
113
|
-
Update files : <paths>
|
|
114
|
-
Held back : <paths or none>
|
|
115
|
-
Conflicts : <paths or none>
|
|
116
|
-
Commit : <imperative message or not proposed>
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
Normal mode: ask exactly, **“Approve these update-owned changes and commit them?”** Do not commit without an affirmative
|
|
120
|
-
answer. If denied, leave the changes uncommitted.
|
|
121
|
-
|
|
122
|
-
Dry-run mode: state **“Dry run complete; no changes or commit were made.”** Do not mutate or ask for commit approval.
|
|
123
|
-
|
|
124
|
-
## Consumer migration audit
|
|
125
|
-
|
|
126
|
-
Begin this phase only after the approved base update has been committed. Record the old and new package versions from the
|
|
127
|
-
pre-update and current manifests/lockfile. Use the current package's exported types, generated documentation, and component
|
|
128
|
-
examples as the source of truth. Use the old version's package metadata or repository history when available to identify what
|
|
129
|
-
changed; do not pretend a changelog exists.
|
|
130
|
-
|
|
131
|
-
Run the same documented full verification again after the base commit. Separate findings into:
|
|
132
|
-
|
|
133
|
-
- **Compatibility fixes:** existing web-ui imports, props, or usage patterns that no longer typecheck, build, lint, or pass
|
|
134
|
-
tests.
|
|
135
|
-
- **Changed component usages:** existing components whose current API, behavior, or documented contract changed between the
|
|
136
|
-
two versions and may need a consumer update, even when the typecheck passes.
|
|
137
|
-
- **Replacement candidates:** custom consumer components, wrappers, or field implementations that overlap with a component
|
|
138
|
-
now exported by `@imfusion/web-ui`. Inspect their code, styles, and call sites before suggesting a replacement. Include the
|
|
139
|
-
current custom implementation, the proposed web-ui component, the relevant API/type evidence, and any behavior or styling
|
|
140
|
-
that still needs to be preserved.
|
|
141
|
-
|
|
142
|
-
Report these findings separately from the base update. Ask whether to apply the proposed migration. If the user declines,
|
|
143
|
-
leave the consumer code unchanged. If accepted, make only the approved migration changes, run the documented full
|
|
144
|
-
verification again, and show a second report with the migration paths, held-back paths, conflicts, and verification result.
|
|
145
|
-
|
|
146
|
-
If no findings exist, report that the installed update has no detected compatibility fixes, changed usages, or replacement
|
|
147
|
-
candidates. Do not create an empty migration commit.
|
|
148
|
-
|
|
149
|
-
## Migration approval
|
|
150
|
-
|
|
151
|
-
Ask exactly, **“Approve these consumer migration changes and commit them separately?”** Do not commit without an affirmative
|
|
152
|
-
answer. The migration approval is not implied by approval of the base update.
|
|
153
|
-
|
|
154
|
-
## Commit
|
|
155
|
-
|
|
156
|
-
For the base update, after approval:
|
|
157
|
-
|
|
158
|
-
1. Recheck status and exclude held-back paths.
|
|
159
|
-
2. Stage base update-owned paths selectively. Never use `git add .` or `git add -A`.
|
|
160
|
-
3. Run the repository's commit workflow if it has one, including its required verification and documentation audit. Otherwise
|
|
161
|
-
run documented verification and follow the repository's commit convention.
|
|
162
|
-
4. Commit with a concise imperative message and confirm the commit and final status.
|
|
163
|
-
|
|
164
|
-
For an approved migration, repeat the same selective staging and documented commit workflow with a separate imperative
|
|
165
|
-
message. Never bypass hooks or amend an unrelated commit after a hook failure.
|