@imfusion/web-ui 0.5.1-dev.53.gb710322e → 0.5.1-dev.6.g9d275fa8
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 +20 -59
- package/bin/install-skill.js +180 -0
- package/dist/code-qBbqAHK-.js +190 -0
- package/dist/components/callout/callout.d.ts +1 -1
- package/dist/components/chip-link/chip-link.d.ts +1 -1
- package/dist/components/code/code.d.ts +18 -10
- package/dist/components/input/input.d.ts +1 -3
- package/dist/components/typo/typo.d.ts +2 -2
- package/dist/hooks/index.d.ts +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.js +5140 -5746
- package/dist/integrations/code-highlight/code-highlight.d.ts +6 -8
- package/dist/integrations/code-highlight/highlighter.d.ts +3 -32
- package/dist/integrations/code-highlight.js +59 -198
- package/dist/integrations/image-display-options.js +56 -56
- package/dist/meta-B8C51eyL.js +74 -0
- package/dist/provider/web-ui-provider.d.ts +1 -4
- package/dist/style.css +1 -1
- package/dist/{tabs-CYqtw1q9.js → tabs-DqBFSqq6.js} +2 -3
- package/package.json +26 -46
- package/src/docgen/doc.gen.json +38 -381
- package/src/llms/llms.gen.txt +0 -17
- package/src/llms/skills/imf-web-ui/SKILL.md +12 -13
- package/src/llms/skills/imf-web-ui-components/SKILL.md +3 -56
- 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-patterns/references/react-patterns.md +94 -0
- package/src/llms/skills/imf-web-ui-imfusion-frontend-setup/SKILL.md +201 -0
- package/src/llms/skills/imf-web-ui-setup/SKILL.md +37 -67
- package/src/llms/skills/imf-web-ui-ux/SKILL.md +4 -4
- package/src/llms/skills/imf-web-ui-ux/references/forms.md +2 -2
- package/bin/install.js +0 -428
- package/bin/install.test.ts +0 -329
- package/dist/build/vite-css-module-names/index.d.ts +0 -20
- package/dist/build/vite-css-module-names.js +0 -17
- package/dist/chunk-DA_OvQe2.js +0 -11
- package/dist/code-BRy_lg-h.js +0 -135
- package/dist/codegen/gen-icons.d.ts +0 -24
- 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/dist/components/icon/icon.d.ts +0 -16
- package/dist/components/icon/icon.meta.d.ts +0 -2
- package/dist/components/icon/index.d.ts +0 -4
- package/dist/components/icon/types.d.ts +0 -2
- package/dist/docgen/component-sources.d.ts +0 -7
- package/dist/hooks/use-resize-observer.d.ts +0 -2
- package/dist/icons/catalog.gen.d.ts +0 -8357
- package/dist/icons/icon-config-provider.d.ts +0 -8
- package/dist/icons/icon-context.d.ts +0 -4
- package/dist/icons/icons.gen.d.ts +0 -1672
- package/dist/icons/index.d.ts +0 -3
- package/dist/icons-BhogvWBV.js +0 -77
- package/dist/icons.js +0 -2
- package/dist/integrations/code-highlight/language-patterns.d.ts +0 -7
- package/dist/integrations/code-highlight/languages/cmake.d.ts +0 -1
- package/dist/integrations/code-highlight/languages/cpp.d.ts +0 -1
- package/dist/integrations/code-highlight/languages/python.d.ts +0 -1
- package/dist/llms/gen-tokens.d.ts +0 -7
- package/dist/meta-BwCupYyq.js +0 -64
- package/src/llms/icon-catalog.gen.json +0 -11203
- package/src/llms/install-templates/AGENTS.md +0 -34
- package/src/llms/install-templates/codex-hooks.json +0 -44
- package/src/llms/install-templates/hooks/baseline-staleness.sh +0 -17
- package/src/llms/install-templates/hooks/session-start.sh +0 -5
- package/src/llms/install-templates/hooks/stop.sh +0 -18
- package/src/llms/install-templates/hooks/subagent-start.sh +0 -5
- package/src/llms/install-templates/hooks/user-prompt-submit.sh +0 -5
- package/src/llms/install-templates/settings.json +0 -45
- package/src/llms/skills/imf-web-ui-audit/SKILL.md +0 -119
- package/src/llms/skills/imf-web-ui-conventions/SKILL.md +0 -57
- package/src/llms/skills/imf-web-ui-conventions/templates/AUDIT_CHECKLIST.md +0 -141
- package/src/llms/skills/imf-web-ui-conventions/templates/REPORT.md +0 -45
- package/src/llms/skills/imf-web-ui-conventions/topics/agent-tooling.md +0 -82
- package/src/llms/skills/imf-web-ui-conventions/topics/assets.md +0 -27
- package/src/llms/skills/imf-web-ui-conventions/topics/authentication.md +0 -65
- package/src/llms/skills/imf-web-ui-conventions/topics/class-names.md +0 -50
- package/src/llms/skills/imf-web-ui-conventions/topics/components.md +0 -101
- package/src/llms/skills/imf-web-ui-conventions/topics/data.md +0 -221
- package/src/llms/skills/imf-web-ui-conventions/topics/docs-structure.md +0 -40
- package/src/llms/skills/imf-web-ui-conventions/topics/git.md +0 -34
- package/src/llms/skills/imf-web-ui-conventions/topics/library-boundary.md +0 -35
- package/src/llms/skills/imf-web-ui-conventions/topics/library-setup.md +0 -26
- package/src/llms/skills/imf-web-ui-conventions/topics/npm-project.md +0 -53
- package/src/llms/skills/imf-web-ui-conventions/topics/project-structure.md +0 -44
- package/src/llms/skills/imf-web-ui-conventions/topics/react.md +0 -109
- package/src/llms/skills/imf-web-ui-conventions/topics/styling.md +0 -88
- package/src/llms/skills/imf-web-ui-conventions/topics/testing.md +0 -25
- package/src/llms/skills/imf-web-ui-conventions/topics/tokens.md +0 -7
- package/src/llms/skills/imf-web-ui-conventions/topics/tooling.md +0 -116
- package/src/llms/skills/imf-web-ui-conventions/topics/typescript.md +0 -73
- package/src/llms/skills/imf-web-ui-conventions/topics/validation.md +0 -62
- package/src/llms/skills/imf-web-ui-update/SKILL.md +0 -157
- package/src/llms/tokens.gen.json +0 -887
package/src/docgen/doc.gen.json
CHANGED
|
@@ -177,7 +177,7 @@
|
|
|
177
177
|
},
|
|
178
178
|
{
|
|
179
179
|
"name": "Callout.Icon",
|
|
180
|
-
"description": "Callout.Icon — the leading status glyph. With no children it renders the\nvariant's default
|
|
180
|
+
"description": "Callout.Icon — the leading status glyph. With no children it renders the\nvariant's default lucide icon; pass a custom icon as children to override.\n`aria-hidden` (the variant is conveyed by copy, not the glyph) and inherits\nthe status colour via `currentColor`.",
|
|
181
181
|
"props": []
|
|
182
182
|
},
|
|
183
183
|
{
|
|
@@ -448,7 +448,7 @@
|
|
|
448
448
|
"chip-link": {
|
|
449
449
|
"root": {
|
|
450
450
|
"name": "ChipLink",
|
|
451
|
-
"description": "ChipLink — anchor styled as a Chip. Reuses Chip's shared variants so the\nvariant and appearance axes stay aligned, and auto-appends a directional icon\n(
|
|
451
|
+
"description": "ChipLink — anchor styled as a Chip. Reuses Chip's shared variants so the\nvariant and appearance axes stay aligned, and auto-appends a directional icon\n(Lucide `ArrowUpRight` for external, `ArrowRight` for internal).",
|
|
452
452
|
"props": [
|
|
453
453
|
{
|
|
454
454
|
"name": "appearance",
|
|
@@ -491,14 +491,14 @@
|
|
|
491
491
|
"subComponents": [
|
|
492
492
|
{
|
|
493
493
|
"name": "Code.Block",
|
|
494
|
-
"description": "Code.Block — a fenced code block on a flat brand surface, with an optional\nchamfered language notch (top-left) and a copy button (top-right). The\nsurface follows the global corner-radius token when a preset opts in.
|
|
494
|
+
"description": "Code.Block — a fenced code block on a flat brand surface, with an optional\nchamfered language notch (top-left) and a copy button (top-right). The\nsurface follows the global corner-radius token when a preset opts in.\nDumb: styling only — syntax coloring arrives pre-rendered through the\n`highlighted` slot (the code-highlight integration supplies it). Children\nmust be a string so the copy button has clean text to copy.",
|
|
495
495
|
"props": [
|
|
496
496
|
{
|
|
497
497
|
"name": "children",
|
|
498
498
|
"required": true,
|
|
499
|
-
"type": "
|
|
499
|
+
"type": "string",
|
|
500
500
|
"defaultValue": null,
|
|
501
|
-
"description": "
|
|
501
|
+
"description": "The code to display, as a raw string — also the value copied by the copy button."
|
|
502
502
|
},
|
|
503
503
|
{
|
|
504
504
|
"name": "hideCopy",
|
|
@@ -507,6 +507,13 @@
|
|
|
507
507
|
"defaultValue": "false",
|
|
508
508
|
"description": "Hide the copy button."
|
|
509
509
|
},
|
|
510
|
+
{
|
|
511
|
+
"name": "highlighted",
|
|
512
|
+
"required": false,
|
|
513
|
+
"type": "ReactNode",
|
|
514
|
+
"defaultValue": null,
|
|
515
|
+
"description": "Pre-rendered display content (e.g. syntax-highlighted tokens) shown in place of `children`, which stays the copied value. The code-highlight integration fills this slot."
|
|
516
|
+
},
|
|
510
517
|
{
|
|
511
518
|
"name": "language",
|
|
512
519
|
"required": false,
|
|
@@ -518,14 +525,14 @@
|
|
|
518
525
|
},
|
|
519
526
|
{
|
|
520
527
|
"name": "Code.Inline",
|
|
521
|
-
"description": "Code.Inline — an inline code fragment (a `<code>` chip) for use inside running\ntext. `Typo.InlineCode
|
|
528
|
+
"description": "Code.Inline — an inline code fragment (a `<code>` chip) for use inside running\ntext. Dumb: styling only — syntax coloring arrives pre-rendered through the\n`highlighted` slot (the code-highlight integration supplies it). `Typo.InlineCode`\nrenders this under the hood so inline-code chrome is defined in one place.\nChildren must be a string so an opted-in copy button has clean text to copy.",
|
|
522
529
|
"props": [
|
|
523
530
|
{
|
|
524
531
|
"name": "children",
|
|
525
532
|
"required": true,
|
|
526
|
-
"type": "
|
|
533
|
+
"type": "string",
|
|
527
534
|
"defaultValue": null,
|
|
528
|
-
"description": "
|
|
535
|
+
"description": "The inline code, as a raw string — also the value copied when `copyable`."
|
|
529
536
|
},
|
|
530
537
|
{
|
|
531
538
|
"name": "copyable",
|
|
@@ -533,6 +540,13 @@
|
|
|
533
540
|
"type": "boolean",
|
|
534
541
|
"defaultValue": "false",
|
|
535
542
|
"description": "Show a small copy button on the right, behind a hairline separator."
|
|
543
|
+
},
|
|
544
|
+
{
|
|
545
|
+
"name": "highlighted",
|
|
546
|
+
"required": false,
|
|
547
|
+
"type": "ReactNode",
|
|
548
|
+
"defaultValue": null,
|
|
549
|
+
"description": "Pre-rendered display content (e.g. syntax-highlighted tokens) shown in place of `children`, which stays the copied value. The code-highlight integration fills this slot."
|
|
536
550
|
}
|
|
537
551
|
]
|
|
538
552
|
},
|
|
@@ -1180,363 +1194,6 @@
|
|
|
1180
1194
|
}
|
|
1181
1195
|
]
|
|
1182
1196
|
},
|
|
1183
|
-
"field": {
|
|
1184
|
-
"root": {
|
|
1185
|
-
"name": "Field.Root",
|
|
1186
|
-
"description": "Field.Root — groups a label, control, validation state, and supporting copy.",
|
|
1187
|
-
"props": [
|
|
1188
|
-
{
|
|
1189
|
-
"name": "actionsRef",
|
|
1190
|
-
"required": false,
|
|
1191
|
-
"type": "RefObject<FieldRootActions | null>",
|
|
1192
|
-
"defaultValue": null,
|
|
1193
|
-
"description": ""
|
|
1194
|
-
},
|
|
1195
|
-
{
|
|
1196
|
-
"name": "className",
|
|
1197
|
-
"required": false,
|
|
1198
|
-
"type": "string | ((state: FieldRootState) => string)",
|
|
1199
|
-
"defaultValue": null,
|
|
1200
|
-
"description": ""
|
|
1201
|
-
},
|
|
1202
|
-
{
|
|
1203
|
-
"name": "dirty",
|
|
1204
|
-
"required": false,
|
|
1205
|
-
"type": "boolean",
|
|
1206
|
-
"defaultValue": null,
|
|
1207
|
-
"description": ""
|
|
1208
|
-
},
|
|
1209
|
-
{
|
|
1210
|
-
"name": "disabled",
|
|
1211
|
-
"required": false,
|
|
1212
|
-
"type": "boolean",
|
|
1213
|
-
"defaultValue": "false",
|
|
1214
|
-
"description": ""
|
|
1215
|
-
},
|
|
1216
|
-
{
|
|
1217
|
-
"name": "invalid",
|
|
1218
|
-
"required": false,
|
|
1219
|
-
"type": "boolean",
|
|
1220
|
-
"defaultValue": null,
|
|
1221
|
-
"description": ""
|
|
1222
|
-
},
|
|
1223
|
-
{
|
|
1224
|
-
"name": "name",
|
|
1225
|
-
"required": false,
|
|
1226
|
-
"type": "string",
|
|
1227
|
-
"defaultValue": null,
|
|
1228
|
-
"description": ""
|
|
1229
|
-
},
|
|
1230
|
-
{
|
|
1231
|
-
"name": "render",
|
|
1232
|
-
"required": false,
|
|
1233
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldRootState>",
|
|
1234
|
-
"defaultValue": null,
|
|
1235
|
-
"description": ""
|
|
1236
|
-
},
|
|
1237
|
-
{
|
|
1238
|
-
"name": "style",
|
|
1239
|
-
"required": false,
|
|
1240
|
-
"type": "| CSSProperties\n| ((state: FieldRootState) => CSSProperties)",
|
|
1241
|
-
"defaultValue": null,
|
|
1242
|
-
"description": ""
|
|
1243
|
-
},
|
|
1244
|
-
{
|
|
1245
|
-
"name": "touched",
|
|
1246
|
-
"required": false,
|
|
1247
|
-
"type": "boolean",
|
|
1248
|
-
"defaultValue": null,
|
|
1249
|
-
"description": ""
|
|
1250
|
-
},
|
|
1251
|
-
{
|
|
1252
|
-
"name": "validate",
|
|
1253
|
-
"required": false,
|
|
1254
|
-
"type": "(\n value: unknown,\n formValues: Record<string, any>\n) =>\n | string\n | string[]\n | Promise<string | string[] | null>\n | null",
|
|
1255
|
-
"defaultValue": null,
|
|
1256
|
-
"description": ""
|
|
1257
|
-
},
|
|
1258
|
-
{
|
|
1259
|
-
"name": "validationDebounceTime",
|
|
1260
|
-
"required": false,
|
|
1261
|
-
"type": "number",
|
|
1262
|
-
"defaultValue": "0",
|
|
1263
|
-
"description": ""
|
|
1264
|
-
},
|
|
1265
|
-
{
|
|
1266
|
-
"name": "validationMode",
|
|
1267
|
-
"required": false,
|
|
1268
|
-
"type": "FormValidationMode",
|
|
1269
|
-
"defaultValue": "onSubmit",
|
|
1270
|
-
"description": ""
|
|
1271
|
-
}
|
|
1272
|
-
]
|
|
1273
|
-
},
|
|
1274
|
-
"subComponents": [
|
|
1275
|
-
{
|
|
1276
|
-
"name": "Field.Control",
|
|
1277
|
-
"description": "Field.Control — a native input control with Field labeling and validation.",
|
|
1278
|
-
"props": [
|
|
1279
|
-
{
|
|
1280
|
-
"name": "className",
|
|
1281
|
-
"required": false,
|
|
1282
|
-
"type": "string | ((state: FieldControlState) => string)",
|
|
1283
|
-
"defaultValue": null,
|
|
1284
|
-
"description": ""
|
|
1285
|
-
},
|
|
1286
|
-
{
|
|
1287
|
-
"name": "defaultValue",
|
|
1288
|
-
"required": false,
|
|
1289
|
-
"type": "string | number | readonly string[]",
|
|
1290
|
-
"defaultValue": null,
|
|
1291
|
-
"description": ""
|
|
1292
|
-
},
|
|
1293
|
-
{
|
|
1294
|
-
"name": "onValueChange",
|
|
1295
|
-
"required": false,
|
|
1296
|
-
"type": "(\n value: string,\n eventDetails: {\n reason: \"none\";\n event: Event;\n cancel: () => void;\n allowPropagation: () => void;\n isCanceled: boolean;\n isPropagationAllowed: boolean;\n trigger: Element;\n }\n) => void",
|
|
1297
|
-
"defaultValue": null,
|
|
1298
|
-
"description": ""
|
|
1299
|
-
},
|
|
1300
|
-
{
|
|
1301
|
-
"name": "render",
|
|
1302
|
-
"required": false,
|
|
1303
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldControlState>",
|
|
1304
|
-
"defaultValue": null,
|
|
1305
|
-
"description": ""
|
|
1306
|
-
},
|
|
1307
|
-
{
|
|
1308
|
-
"name": "style",
|
|
1309
|
-
"required": false,
|
|
1310
|
-
"type": "| CSSProperties\n| ((state: FieldControlState) => CSSProperties)",
|
|
1311
|
-
"defaultValue": null,
|
|
1312
|
-
"description": ""
|
|
1313
|
-
}
|
|
1314
|
-
]
|
|
1315
|
-
},
|
|
1316
|
-
{
|
|
1317
|
-
"name": "Field.Description",
|
|
1318
|
-
"description": "Field.Description — supporting information for a field.",
|
|
1319
|
-
"props": [
|
|
1320
|
-
{
|
|
1321
|
-
"name": "className",
|
|
1322
|
-
"required": false,
|
|
1323
|
-
"type": "| string\n| ((state: FieldDescriptionState) => string)",
|
|
1324
|
-
"defaultValue": null,
|
|
1325
|
-
"description": ""
|
|
1326
|
-
},
|
|
1327
|
-
{
|
|
1328
|
-
"name": "render",
|
|
1329
|
-
"required": false,
|
|
1330
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldDescriptionState>",
|
|
1331
|
-
"defaultValue": null,
|
|
1332
|
-
"description": ""
|
|
1333
|
-
},
|
|
1334
|
-
{
|
|
1335
|
-
"name": "style",
|
|
1336
|
-
"required": false,
|
|
1337
|
-
"type": "| CSSProperties\n| ((state: FieldDescriptionState) => CSSProperties)",
|
|
1338
|
-
"defaultValue": null,
|
|
1339
|
-
"description": ""
|
|
1340
|
-
}
|
|
1341
|
-
]
|
|
1342
|
-
},
|
|
1343
|
-
{
|
|
1344
|
-
"name": "Field.Error",
|
|
1345
|
-
"description": "Field.Error — an inline validation message shown when its match condition fails.",
|
|
1346
|
-
"props": [
|
|
1347
|
-
{
|
|
1348
|
-
"name": "className",
|
|
1349
|
-
"required": false,
|
|
1350
|
-
"type": "string | ((state: FieldErrorState) => string)",
|
|
1351
|
-
"defaultValue": null,
|
|
1352
|
-
"description": ""
|
|
1353
|
-
},
|
|
1354
|
-
{
|
|
1355
|
-
"name": "match",
|
|
1356
|
-
"required": false,
|
|
1357
|
-
"type": "boolean | keyof ValidityState",
|
|
1358
|
-
"defaultValue": null,
|
|
1359
|
-
"description": ""
|
|
1360
|
-
},
|
|
1361
|
-
{
|
|
1362
|
-
"name": "render",
|
|
1363
|
-
"required": false,
|
|
1364
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldErrorState>",
|
|
1365
|
-
"defaultValue": null,
|
|
1366
|
-
"description": ""
|
|
1367
|
-
},
|
|
1368
|
-
{
|
|
1369
|
-
"name": "style",
|
|
1370
|
-
"required": false,
|
|
1371
|
-
"type": "| CSSProperties\n| ((state: FieldErrorState) => CSSProperties)",
|
|
1372
|
-
"defaultValue": null,
|
|
1373
|
-
"description": ""
|
|
1374
|
-
}
|
|
1375
|
-
]
|
|
1376
|
-
},
|
|
1377
|
-
{
|
|
1378
|
-
"name": "Field.Item",
|
|
1379
|
-
"description": "Field.Item — groups one checkable option with its label and description.",
|
|
1380
|
-
"props": [
|
|
1381
|
-
{
|
|
1382
|
-
"name": "className",
|
|
1383
|
-
"required": false,
|
|
1384
|
-
"type": "string | ((state: FieldItemState) => string)",
|
|
1385
|
-
"defaultValue": null,
|
|
1386
|
-
"description": ""
|
|
1387
|
-
},
|
|
1388
|
-
{
|
|
1389
|
-
"name": "disabled",
|
|
1390
|
-
"required": false,
|
|
1391
|
-
"type": "boolean",
|
|
1392
|
-
"defaultValue": "false",
|
|
1393
|
-
"description": ""
|
|
1394
|
-
},
|
|
1395
|
-
{
|
|
1396
|
-
"name": "render",
|
|
1397
|
-
"required": false,
|
|
1398
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldItemState>",
|
|
1399
|
-
"defaultValue": null,
|
|
1400
|
-
"description": ""
|
|
1401
|
-
},
|
|
1402
|
-
{
|
|
1403
|
-
"name": "style",
|
|
1404
|
-
"required": false,
|
|
1405
|
-
"type": "| CSSProperties\n| ((state: FieldItemState) => CSSProperties)",
|
|
1406
|
-
"defaultValue": null,
|
|
1407
|
-
"description": ""
|
|
1408
|
-
}
|
|
1409
|
-
]
|
|
1410
|
-
},
|
|
1411
|
-
{
|
|
1412
|
-
"name": "Field.Label",
|
|
1413
|
-
"description": "Field.Label — an accessible label automatically associated with the control.",
|
|
1414
|
-
"props": [
|
|
1415
|
-
{
|
|
1416
|
-
"name": "className",
|
|
1417
|
-
"required": false,
|
|
1418
|
-
"type": "string | ((state: FieldLabelState) => string)",
|
|
1419
|
-
"defaultValue": null,
|
|
1420
|
-
"description": ""
|
|
1421
|
-
},
|
|
1422
|
-
{
|
|
1423
|
-
"name": "nativeLabel",
|
|
1424
|
-
"required": false,
|
|
1425
|
-
"type": "boolean",
|
|
1426
|
-
"defaultValue": "true",
|
|
1427
|
-
"description": ""
|
|
1428
|
-
},
|
|
1429
|
-
{
|
|
1430
|
-
"name": "render",
|
|
1431
|
-
"required": false,
|
|
1432
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldLabelState>",
|
|
1433
|
-
"defaultValue": null,
|
|
1434
|
-
"description": ""
|
|
1435
|
-
},
|
|
1436
|
-
{
|
|
1437
|
-
"name": "style",
|
|
1438
|
-
"required": false,
|
|
1439
|
-
"type": "| CSSProperties\n| ((state: FieldLabelState) => CSSProperties)",
|
|
1440
|
-
"defaultValue": null,
|
|
1441
|
-
"description": ""
|
|
1442
|
-
}
|
|
1443
|
-
]
|
|
1444
|
-
},
|
|
1445
|
-
{
|
|
1446
|
-
"name": "Field.Validity",
|
|
1447
|
-
"description": "Field.Validity — renderless access to the field validity data for custom messages.\nIts function child owns the rendered element and therefore its identity and styling.",
|
|
1448
|
-
"props": []
|
|
1449
|
-
}
|
|
1450
|
-
]
|
|
1451
|
-
},
|
|
1452
|
-
"fieldset": {
|
|
1453
|
-
"root": {
|
|
1454
|
-
"name": "Fieldset.Root",
|
|
1455
|
-
"description": "Fieldset.Root — semantic grouping for related form controls and a shared legend.",
|
|
1456
|
-
"props": [
|
|
1457
|
-
{
|
|
1458
|
-
"name": "className",
|
|
1459
|
-
"required": false,
|
|
1460
|
-
"type": "string | ((state: FieldsetRootState) => string)",
|
|
1461
|
-
"defaultValue": null,
|
|
1462
|
-
"description": ""
|
|
1463
|
-
},
|
|
1464
|
-
{
|
|
1465
|
-
"name": "render",
|
|
1466
|
-
"required": false,
|
|
1467
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldsetRootState>",
|
|
1468
|
-
"defaultValue": null,
|
|
1469
|
-
"description": ""
|
|
1470
|
-
},
|
|
1471
|
-
{
|
|
1472
|
-
"name": "style",
|
|
1473
|
-
"required": false,
|
|
1474
|
-
"type": "| CSSProperties\n| ((state: FieldsetRootState) => CSSProperties)",
|
|
1475
|
-
"defaultValue": null,
|
|
1476
|
-
"description": ""
|
|
1477
|
-
}
|
|
1478
|
-
]
|
|
1479
|
-
},
|
|
1480
|
-
"subComponents": [
|
|
1481
|
-
{
|
|
1482
|
-
"name": "Fieldset.Legend",
|
|
1483
|
-
"description": "Fieldset.Legend — the accessible label for its related controls.",
|
|
1484
|
-
"props": [
|
|
1485
|
-
{
|
|
1486
|
-
"name": "className",
|
|
1487
|
-
"required": false,
|
|
1488
|
-
"type": "string | ((state: FieldsetLegendState) => string)",
|
|
1489
|
-
"defaultValue": null,
|
|
1490
|
-
"description": ""
|
|
1491
|
-
},
|
|
1492
|
-
{
|
|
1493
|
-
"name": "render",
|
|
1494
|
-
"required": false,
|
|
1495
|
-
"type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, FieldsetLegendState>",
|
|
1496
|
-
"defaultValue": null,
|
|
1497
|
-
"description": ""
|
|
1498
|
-
},
|
|
1499
|
-
{
|
|
1500
|
-
"name": "style",
|
|
1501
|
-
"required": false,
|
|
1502
|
-
"type": "| CSSProperties\n| ((state: FieldsetLegendState) => CSSProperties)",
|
|
1503
|
-
"defaultValue": null,
|
|
1504
|
-
"description": ""
|
|
1505
|
-
}
|
|
1506
|
-
]
|
|
1507
|
-
}
|
|
1508
|
-
]
|
|
1509
|
-
},
|
|
1510
|
-
"icon": {
|
|
1511
|
-
"root": {
|
|
1512
|
-
"name": "Icon",
|
|
1513
|
-
"description": "Icon — renders an icon component with a semantic Web UI foreground color.",
|
|
1514
|
-
"props": [
|
|
1515
|
-
{
|
|
1516
|
-
"name": "glyph",
|
|
1517
|
-
"required": true,
|
|
1518
|
-
"type": "IconComponent",
|
|
1519
|
-
"defaultValue": null,
|
|
1520
|
-
"description": "Icon component imported from `@imfusion/web-ui/icons`."
|
|
1521
|
-
},
|
|
1522
|
-
{
|
|
1523
|
-
"name": "size",
|
|
1524
|
-
"required": false,
|
|
1525
|
-
"type": "string | number",
|
|
1526
|
-
"defaultValue": null,
|
|
1527
|
-
"description": "Sets both SVG dimensions unless `width` or `height` is provided."
|
|
1528
|
-
},
|
|
1529
|
-
{
|
|
1530
|
-
"name": "variant",
|
|
1531
|
-
"required": false,
|
|
1532
|
-
"type": "| \"inherit\"\n| \"main\"\n| \"support\"\n| \"minor\"\n| \"brand\"\n| \"primary\"\n| \"positive\"\n| \"negative\"\n| \"warning\"\n| \"info\"\n| \"oncolor\"\n| \"accent-1\"\n| \"accent-2\"\n| \"accent-3\"\n| null",
|
|
1533
|
-
"defaultValue": "inherit",
|
|
1534
|
-
"description": ""
|
|
1535
|
-
}
|
|
1536
|
-
]
|
|
1537
|
-
},
|
|
1538
|
-
"subComponents": []
|
|
1539
|
-
},
|
|
1540
1197
|
"input": {
|
|
1541
1198
|
"root": {
|
|
1542
1199
|
"name": "Input",
|
|
@@ -1549,13 +1206,6 @@
|
|
|
1549
1206
|
"defaultValue": null,
|
|
1550
1207
|
"description": ""
|
|
1551
1208
|
},
|
|
1552
|
-
{
|
|
1553
|
-
"name": "onClear",
|
|
1554
|
-
"required": false,
|
|
1555
|
-
"type": "() => void",
|
|
1556
|
-
"defaultValue": null,
|
|
1557
|
-
"description": "Called when the search input's clear button is pressed."
|
|
1558
|
-
},
|
|
1559
1209
|
{
|
|
1560
1210
|
"name": "onValueChange",
|
|
1561
1211
|
"required": false,
|
|
@@ -4794,9 +4444,9 @@
|
|
|
4794
4444
|
{
|
|
4795
4445
|
"name": "children",
|
|
4796
4446
|
"required": true,
|
|
4797
|
-
"type": "
|
|
4447
|
+
"type": "string",
|
|
4798
4448
|
"defaultValue": null,
|
|
4799
|
-
"description": "
|
|
4449
|
+
"description": "The inline code, as a raw string — also the value copied when `copyable`."
|
|
4800
4450
|
},
|
|
4801
4451
|
{
|
|
4802
4452
|
"name": "copyable",
|
|
@@ -4804,6 +4454,13 @@
|
|
|
4804
4454
|
"type": "boolean",
|
|
4805
4455
|
"defaultValue": "false",
|
|
4806
4456
|
"description": "Show a small copy button on the right, behind a hairline separator."
|
|
4457
|
+
},
|
|
4458
|
+
{
|
|
4459
|
+
"name": "highlighted",
|
|
4460
|
+
"required": false,
|
|
4461
|
+
"type": "ReactNode",
|
|
4462
|
+
"defaultValue": null,
|
|
4463
|
+
"description": "Pre-rendered display content (e.g. syntax-highlighted tokens) shown in place of `children`, which stays the copied value. The code-highlight integration fills this slot."
|
|
4807
4464
|
}
|
|
4808
4465
|
]
|
|
4809
4466
|
},
|
|
@@ -4829,7 +4486,7 @@
|
|
|
4829
4486
|
},
|
|
4830
4487
|
{
|
|
4831
4488
|
"name": "Typo.Link",
|
|
4832
|
-
"description": "Typo.Link — inline anchor. Auto-appends a
|
|
4489
|
+
"description": "Typo.Link — inline anchor. Auto-appends a directional icon (Lucide `ArrowUpRight` for external, `ArrowRight` for internal), mirroring ChipLink's affordance for prose links.",
|
|
4833
4490
|
"props": [
|
|
4834
4491
|
{
|
|
4835
4492
|
"name": "kind",
|
|
@@ -4931,14 +4588,14 @@
|
|
|
4931
4588
|
"subComponents": [
|
|
4932
4589
|
{
|
|
4933
4590
|
"name": "CodeHighlight.Block",
|
|
4934
|
-
"description": "Code.Block — the core `Code.Block` with TanStack Highlight tokens
|
|
4591
|
+
"description": "Code.Block — the core `Code.Block` with TanStack Highlight tokens filling its `highlighted` slot.",
|
|
4935
4592
|
"props": [
|
|
4936
4593
|
{
|
|
4937
4594
|
"name": "children",
|
|
4938
4595
|
"required": true,
|
|
4939
4596
|
"type": "string",
|
|
4940
4597
|
"defaultValue": null,
|
|
4941
|
-
"description": "
|
|
4598
|
+
"description": "The code to display, as a raw string — also the value copied by the copy button."
|
|
4942
4599
|
},
|
|
4943
4600
|
{
|
|
4944
4601
|
"name": "hideCopy",
|
|
@@ -4952,20 +4609,20 @@
|
|
|
4952
4609
|
"required": false,
|
|
4953
4610
|
"type": "SupportedLanguage",
|
|
4954
4611
|
"defaultValue": null,
|
|
4955
|
-
"description": ""
|
|
4612
|
+
"description": "Language of `children`: grammar for tokenization and label for the corner notch. Omit to hide the notch and skip highlighting."
|
|
4956
4613
|
}
|
|
4957
4614
|
]
|
|
4958
4615
|
},
|
|
4959
4616
|
{
|
|
4960
4617
|
"name": "CodeHighlight.Inline",
|
|
4961
|
-
"description": "Code.Inline — the core `Code.Inline` with TanStack Highlight tokens
|
|
4618
|
+
"description": "Code.Inline — the core `Code.Inline` with TanStack Highlight tokens filling its `highlighted` slot.",
|
|
4962
4619
|
"props": [
|
|
4963
4620
|
{
|
|
4964
4621
|
"name": "children",
|
|
4965
4622
|
"required": true,
|
|
4966
4623
|
"type": "string",
|
|
4967
4624
|
"defaultValue": null,
|
|
4968
|
-
"description": "
|
|
4625
|
+
"description": "The inline code, as a raw string — also the value copied when `copyable`."
|
|
4969
4626
|
},
|
|
4970
4627
|
{
|
|
4971
4628
|
"name": "copyable",
|
|
@@ -4979,7 +4636,7 @@
|
|
|
4979
4636
|
"required": false,
|
|
4980
4637
|
"type": "SupportedLanguage",
|
|
4981
4638
|
"defaultValue": null,
|
|
4982
|
-
"description": ""
|
|
4639
|
+
"description": "Grammar used to tokenize the fragment. Purely visual — the chip shows no language label. Omit for plain text."
|
|
4983
4640
|
}
|
|
4984
4641
|
]
|
|
4985
4642
|
},
|
package/src/llms/llms.gen.txt
CHANGED
|
@@ -73,23 +73,6 @@ Off-canvas panel that slides in from a screen edge. Use for mobile navigation, s
|
|
|
73
73
|
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .drawer (jq: jq '.drawer' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
74
74
|
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/drawer.md
|
|
75
75
|
|
|
76
|
-
## Field
|
|
77
|
-
- category: Inputs, status: stable
|
|
78
|
-
Accessible field composition for a label, form control, supporting description, and inline validation message. Use it to associate a control such as Input, Checkbox, or Select with field state including valid, invalid, dirty, touched, filled, and focused.
|
|
79
|
-
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .field (jq: jq '.field' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
80
|
-
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/field.md
|
|
81
|
-
|
|
82
|
-
## Fieldset
|
|
83
|
-
- category: Inputs, status: stable
|
|
84
|
-
Semantic grouping for related form controls with a shared legend. Also called a form group; use it to communicate a common topic and propagate disabled state without introducing a decorative container.
|
|
85
|
-
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .fieldset (jq: jq '.fieldset' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
86
|
-
- further reading (usage/anatomy, not props): https://base-ui.com/react/components/fieldset.md
|
|
87
|
-
|
|
88
|
-
## Icon
|
|
89
|
-
- category: Display, status: stable
|
|
90
|
-
Semantic color wrapper for an icon imported from the Web UI icons entry. Use it when an icon needs a named foreground role instead of the inherited currentColor.
|
|
91
|
-
- props: node_modules/@imfusion/web-ui/src/docgen/doc.gen.json -> .icon (jq: jq '.icon' node_modules/@imfusion/web-ui/src/docgen/doc.gen.json)
|
|
92
|
-
|
|
93
76
|
## ImageDisplayOptions
|
|
94
77
|
- category: Inputs, status: experimental
|
|
95
78
|
A panel or toolbar of controls bound to an image dataset's display options.
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
name: imf-web-ui
|
|
3
3
|
description:
|
|
4
4
|
"Entry point for UI work in a project that depends on @imfusion/web-ui. Decides whether guidance is needed at all, then
|
|
5
|
-
routes to the right companion skill — component reference, UX guidance, or frontend
|
|
6
|
-
|
|
5
|
+
routes to the right companion skill — component reference, UX guidance, or frontend patterns. Load when adding or editing
|
|
6
|
+
UI in a consumer repo."
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# imf-web-ui
|
|
@@ -24,17 +24,16 @@ Guidance skills exist to fill gaps, not to add ceremony to clear tasks.
|
|
|
24
24
|
|
|
25
25
|
## Routing
|
|
26
26
|
|
|
27
|
-
| The task at hand | Open
|
|
28
|
-
| ----------------------------------------------------------------------------------------------------- |
|
|
29
|
-
| Using a specific component; checking props, sub-components, or defaults | `imf-web-ui-components`
|
|
30
|
-
| First-time setup, adding a library dependency, or components rendering unstyled/broken | `imf-web-ui-setup`
|
|
31
|
-
| Building/reshaping a screen or flow; choosing between components; layout, density, hierarchy, states | `imf-web-ui-ux`
|
|
32
|
-
| Writing wrappers or custom UI; styling beyond defaults; adding files; TypeScript, naming, testing | `imf-web-ui-
|
|
33
|
-
| Setting up or auditing an **ImFusion** repo's tooling: formatting, linting, hooks, scripts, structure | `imf-web-ui-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
Being asked to add one config file is just that edit; make it, and don't open a skill to do so.
|
|
27
|
+
| The task at hand | Open |
|
|
28
|
+
| ----------------------------------------------------------------------------------------------------- | ------------------------------------ |
|
|
29
|
+
| Using a specific component; checking props, sub-components, or defaults | `imf-web-ui-components` |
|
|
30
|
+
| First-time setup, adding a library dependency, or components rendering unstyled/broken | `imf-web-ui-setup` |
|
|
31
|
+
| Building/reshaping a screen or flow; choosing between components; layout, density, hierarchy, states | `imf-web-ui-ux` |
|
|
32
|
+
| Writing wrappers or custom UI; styling beyond defaults; adding files; TypeScript, naming, testing | `imf-web-ui-frontend-patterns` |
|
|
33
|
+
| Setting up or auditing an **ImFusion** repo's tooling: formatting, linting, hooks, scripts, structure | `imf-web-ui-imfusion-frontend-setup` |
|
|
34
|
+
|
|
35
|
+
The last row is narrow on purpose. It's for "what is this project missing?" — a question about the repo as a whole. Being
|
|
36
|
+
asked to add one config file is just that edit; make it, and don't open a skill to do so.
|
|
38
37
|
|
|
39
38
|
Tasks routinely span two: building a screen usually means `imf-web-ui-ux` for the shape and `imf-web-ui-components` for the
|
|
40
39
|
APIs. That's normal — open both, in that order.
|