@godxjp/ui-mcp 0.21.0 → 0.21.2
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/dist/index.js +18 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -57,6 +57,12 @@ var COMPONENTS = [
|
|
|
57
57
|
type: "boolean",
|
|
58
58
|
defaultValue: "false",
|
|
59
59
|
description: 'Pin footer to viewport bottom on scroll \u2014 pairs with variant="narrow".'
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: "fill",
|
|
63
|
+
type: "boolean",
|
|
64
|
+
defaultValue: "false",
|
|
65
|
+
description: "Grow the body to fill the remaining shell height. Default false = top-packed, content-height (short pages leave no stretched void). Enable for a full-height DataTable, SplitPane, or a chat surface."
|
|
60
66
|
}
|
|
61
67
|
],
|
|
62
68
|
usage: [
|
|
@@ -65,7 +71,8 @@ var COMPONENTS = [
|
|
|
65
71
|
"DO: Use `variant='flush'` when the page body contains a full-bleed component like DataTable. Inside a flush container, wrap any padded strips (Toolbar, intro text) in `<PageContainer.Inset>` to align them with the header. Never add manual `px-*` or `p-*` padding to compensate \u2014 use PageContainer.Inset.",
|
|
66
72
|
"DO: Pass `breadcrumb` as an ordered array of `{ label, to? }` objects from root to current page. The last item is automatically rendered without a link and receives `aria-current='page'`; earlier items with `to` become router `<Link>` elements. Never hand-roll a breadcrumb nav inside a PageContainer.",
|
|
67
73
|
"DON'T: Use `density` to change individual control sizes \u2014 it cascades spacing across the entire page subtree. Set it once per page (e.g. `density='compact'` for data-dense list pages) and let all child components inherit it. Do not apply density classes manually.",
|
|
68
|
-
"DON'T: Confuse PageContainer's prop names with the old PageHeader's prop names \u2014 PageContainer uses `subtitle` (not `description`) and `extra` (not `actions`). If you see those legacy names in old code, migrate them to PageContainer."
|
|
74
|
+
"DON'T: Confuse PageContainer's prop names with the old PageHeader's prop names \u2014 PageContainer uses `subtitle` (not `description`) and `extra` (not `actions`). If you see those legacy names in old code, migrate them to PageContainer.",
|
|
75
|
+
"DO: Leave `fill` off (the default) for ordinary pages \u2014 the body is content-height and top-packed, so a short page on a tall viewport leaves no stretched empty void below the content (the page background simply spans the shell). Only set `fill` when the body itself should occupy the full remaining height: a full-height DataTable, a SplitPane, or a chat surface whose message list scrolls and whose composer is pinned to the bottom via `footer` + `stickyFooter`. DON'T add a manual `min-h-screen` / `flex-1` wrapper or a spacer div to fight or fake this."
|
|
69
76
|
],
|
|
70
77
|
useCases: [
|
|
71
78
|
"A master list page (e.g. invoices, journal entries, customers) where the header holds the page title, a 'New Invoice' button in `extra`, a breadcrumb trail, and a full-bleed DataTable as the body \u2014 use `variant='flush'` + `<PageContainer.Inset>` for the Toolbar above the table.",
|
|
@@ -73,11 +80,12 @@ var COMPONENTS = [
|
|
|
73
80
|
"A settings or narrow-form page (e.g. account profile, entity configuration) where `variant='narrow'` constrains content to a readable column width and `stickyFooter` pins the submit bar.",
|
|
74
81
|
"A dashboard page with KPI cards and chart sections \u2014 use `variant='default'` with `children={<Flex direction='col' gap='lg'>\u2026</Flex>}` to vertically stack multiple Card/StatCard sections beneath the page title.",
|
|
75
82
|
"Any deep-nav page in a multi-level admin (e.g. Accounting > Ledger > Journal Entry #42) where a 3-segment breadcrumb trail provides back-navigation without browser history dependence.",
|
|
76
|
-
"A high-density data reconciliation page where an analyst needs to see maximum rows \u2014 use `density='compact'` to tighten all spacing across the DataTable, Toolbar, and controls in a single prop."
|
|
83
|
+
"A high-density data reconciliation page where an analyst needs to see maximum rows \u2014 use `density='compact'` to tighten all spacing across the DataTable, Toolbar, and controls in a single prop.",
|
|
84
|
+
"A chat / messaging detail page where the message list should scroll inside the page and the composer stays pinned at the bottom \u2014 use `fill` so the body occupies the full shell height, with `footer={<Composer/>}` + `stickyFooter`. Without `fill` the page would top-pack and the composer would float mid-screen on a tall viewport."
|
|
77
85
|
],
|
|
78
86
|
related: [
|
|
79
87
|
"PageContainer.Inset \u2014 use INSIDE a `variant='flush'` PageContainer to re-introduce horizontal padding for strips like Toolbar or intro text that should align with the page header, while the surrounding DataTable stays full-bleed. Not a standalone page shell.",
|
|
80
|
-
"PageContainer \u2014 always use PageContainer for new pages; it supports `children`, `footer`, `variant`, `density`, and `
|
|
88
|
+
"PageContainer \u2014 always use PageContainer for new pages; it supports `children`, `footer`, `variant`, `density`, `stickyFooter`, and `fill`. Legacy code using the old prop names (`description` \u2192 `subtitle`, `actions` \u2192 `extra`) should be migrated to PageContainer.",
|
|
81
89
|
"AppShell \u2014 the outer shell that owns the sidebar/topbar layout grid; PageContainer lives inside AppShell's `children` slot. Do not put AppShell inside PageContainer \u2014 the nesting order is AppShell \u2192 PageContainer.",
|
|
82
90
|
"SplitPane \u2014 use instead of PageContainer when the page body needs a fixed-width aside panel alongside main content (e.g. a detail drawer next to a list). PageContainer has no aside slot; SplitPane fills that gap and can itself be placed inside PageContainer's children."
|
|
83
91
|
],
|
|
@@ -8304,7 +8312,12 @@ primitive, see gaps handling in design-to-page/gaps-extend-or-ask + report-bug.`
|
|
|
8304
8312
|
1\u20132 hero facts + ONE primary list/form + contextual actions; push tertiary content to
|
|
8305
8313
|
a Sheet/Dialog/next page. An 8-stat-card wall is a red flag. Use real page chrome
|
|
8306
8314
|
(AppShell/Sidebar/Topbar/PageContainer) \u2014 content never touches the viewport edge,
|
|
8307
|
-
two bordered surfaces never touch (\u9593/breathing via Stack gap).
|
|
8315
|
+
two bordered surfaces never touch (\u9593/breathing via Stack gap). PageContainer is
|
|
8316
|
+
top-packed by default: a short page on a tall viewport leaves NO stretched void
|
|
8317
|
+
(the page background just spans the shell) \u2014 never add min-h-screen / flex-1 / a
|
|
8318
|
+
spacer div to fight it. Reach for PageContainer fill ONLY when the body must own
|
|
8319
|
+
the full height: a full-height DataTable, a SplitPane, or a chat surface whose
|
|
8320
|
+
composer is pinned to the bottom via footer + stickyFooter. Exactly ONE --primary
|
|
8308
8321
|
action per view; status uses the FIXED semantic mapping (success/warning/info/
|
|
8309
8322
|
attention/danger) \u2014 never recolor a wa-iro hue into a role, never use --primary for
|
|
8310
8323
|
status. Pick density up front (compact 28 heavy-table / default 32 / comfortable 44
|
|
@@ -10222,7 +10235,7 @@ ${c.example}
|
|
|
10222
10235
|
// package.json
|
|
10223
10236
|
var package_default = {
|
|
10224
10237
|
name: "@godxjp/ui-mcp",
|
|
10225
|
-
version: "0.21.
|
|
10238
|
+
version: "0.21.2",
|
|
10226
10239
|
description: "Model Context Protocol server for @godxjp/ui \u2014 gives Claude Code / Codex CLI / Cursor / any MCP-aware agent live access to the component catalog, prop vocabulary, design tokens, 34 cardinal rules, copy-paste-ready patterns, 12 design / taste skills synthesised from Leonxlnx/taste-skill, 20+ anti-AI-tell patterns, and a 50-check redesign audit \u2014 token-efficient (list \u2192 drill-down).",
|
|
10227
10240
|
type: "module",
|
|
10228
10241
|
main: "./dist/index.js",
|