@starci/grammar 0.17.0 → 0.17.1
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/.build-stamp.json +4 -4
- package/dist/core/composition/Page/PanesFill.d.ts +11 -0
- package/dist/core/composition/Page/PanesFill.d.ts.map +1 -0
- package/dist/core/composition/Page/PanesFill.js +12 -0
- package/dist/core/composition/Page/PanesFill.js.map +1 -0
- package/dist/core/composition/Page/index.d.ts.map +1 -1
- package/dist/core/composition/Page/index.js +2 -3
- package/dist/core/composition/Page/index.js.map +1 -1
- package/package.json +1 -1
package/dist/.build-stamp.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": "starci/grammar-build-stamp@1",
|
|
3
3
|
"package": "@starci/grammar",
|
|
4
|
-
"version": "0.17.
|
|
4
|
+
"version": "0.17.1",
|
|
5
5
|
"algorithm": "starci/grammar-source-digest@1",
|
|
6
|
-
"sourceDigest": "sha256:
|
|
7
|
-
"distDigest": "sha256:
|
|
8
|
-
"builtAt": "2026-10-
|
|
6
|
+
"sourceDigest": "sha256:1415cc469a0bd9438d2bfe9cdbee3ba143d5c7d458ed3e10938f140f4e0b89f4",
|
|
7
|
+
"distDigest": "sha256:dc7ca20b82316d1cb1efa88121ad1d834ffa10f38948319079f1f2ffd8acfd38",
|
|
8
|
+
"builtAt": "2026-10-31T12:36:26.842Z"
|
|
9
9
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { FillViewportMinHeight } from "../../composite/FillViewport/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* The measured fill box of `Page chrome="panes"`: it holds the page's one PaneGrid flush under the band and reaches the
|
|
5
|
+
* viewport bottom. It is the client part of Page, so a Page rendered by a server component never calls the measuring hook.
|
|
6
|
+
*/
|
|
7
|
+
export declare const PanesFill: ({ minHeight, children }: {
|
|
8
|
+
readonly minHeight: FillViewportMinHeight;
|
|
9
|
+
readonly children: ReactNode;
|
|
10
|
+
}) => import("react").JSX.Element;
|
|
11
|
+
//# sourceMappingURL=PanesFill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanesFill.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/Page/PanesFill.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;AAElF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,yBAAyB;IAAE,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,gCAY7H,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useFillMeasure } from "../../composite/FillViewport/useFillMeasure.js";
|
|
4
|
+
/**
|
|
5
|
+
* The measured fill box of `Page chrome="panes"`: it holds the page's one PaneGrid flush under the band and reaches the
|
|
6
|
+
* viewport bottom. It is the client part of Page, so a Page rendered by a server component never calls the measuring hook.
|
|
7
|
+
*/
|
|
8
|
+
export const PanesFill = ({ minHeight, children }) => {
|
|
9
|
+
const fillRef = useFillMeasure();
|
|
10
|
+
return (_jsx("div", { ref: fillRef, className: "starci-core-page-body starci-core-page-panes-fill", "data-grammar-page-body": "true", "data-grammar-fill-min": minHeight, children: children }));
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=PanesFill.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanesFill.js","sourceRoot":"","sources":["../../../../src/core/composition/Page/PanesFill.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAA;AAG/E;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAA+E,EAAE,EAAE;IAC9H,MAAM,OAAO,GAAG,cAAc,EAAE,CAAA;IAChC,OAAO,CACH,cACI,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,mDAAmD,4BACtC,MAAM,2BACN,SAAS,YAE/B,QAAQ,GACP,CACT,CAAA;AACL,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/Page/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/composition/Page/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;AAClF,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAC/F,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEnE,OAAO,EAAc,KAAK,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAErG,gHAAgH;AAChH,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,YAAY,GAAG,WAAW,CAAC,CAAA;AAE7F;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAAE,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAA;CAAE,GAAG;IAC7E,QAAQ,EAAE,IAAI,IAAI,OAAO,CAAC,MAAM,iBAAiB,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK;CAC7E,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,CAAA;AAEvD,KAAK,eAAe,GAAG;IACnB,+GAA+G;IAC/G,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B,wGAAwG;IACxG,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAChD,4HAA4H;IAC5H,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,6EAA6E;AAC7E,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAA;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAA;CACtC,CAAA;AAED,iHAAiH;AACjH,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,gBAAgB,CAAA;CACzD,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,gBAAgB,CAAA;IACtD,sFAAsF;IACtF,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAA;IAC1C,4BAA4B;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC,CAAA;CACjD,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,iBAAiB,GAAG,cAAc,GAAG,cAAc,CAAA;AAM3E;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,GAAI,OAAO,SAAS,gCAoCpC,CAAA"}
|
|
@@ -2,9 +2,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { cn } from "@heroui/react";
|
|
3
3
|
import { isValidElement } from "react";
|
|
4
4
|
import { Breadcrumbs } from "../../composite/Breadcrumbs/index.js";
|
|
5
|
-
import { useFillMeasure } from "../../composite/FillViewport/useFillMeasure.js";
|
|
6
5
|
import { PageContainer } from "../../primitive/PageContainer/index.js";
|
|
7
6
|
import { PaneGrid } from "../PaneGrid/index.js";
|
|
7
|
+
import { PanesFill } from "./PanesFill.js";
|
|
8
8
|
import { PageHeader } from "../PageHeader/index.js";
|
|
9
9
|
/** True when the header is a band: every standard header is, and a bleed header is when it carries the page heading. */
|
|
10
10
|
const isBand = (chrome, header) => chrome === "standard" || header.title !== undefined;
|
|
@@ -18,12 +18,11 @@ const isBand = (chrome, header) => chrome === "standard" || header.title !== und
|
|
|
18
18
|
*/
|
|
19
19
|
export const Page = (props) => {
|
|
20
20
|
const { chrome = "standard", header, children, measure = "product", isSkeleton = false, className } = props;
|
|
21
|
-
const fillRef = useFillMeasure();
|
|
22
21
|
if (props.chrome === "panes" && !(isValidElement(children) && children.type === PaneGrid)) {
|
|
23
22
|
throw new Error("PAGE_PANES_CHILD_NOT_PANE_GRID");
|
|
24
23
|
}
|
|
25
24
|
const band = header !== undefined && isBand(chrome, header) ? header : undefined;
|
|
26
25
|
const trail = header !== undefined && !isBand(chrome, header) ? header.breadcrumbs : undefined;
|
|
27
|
-
return (_jsxs("div", { className: cn("starci-core-page", className), "data-component": "Page", "data-tier": "composition", "data-contract": chrome === "panes" ? "LAYOUT-1 BOUNDARY-1 GAP-0" : chrome === "bleed" ? "LAYOUT-1" : "MARGIN-5 MEASURE-1", "data-grammar-page-chrome": chrome, "data-grammar-page-header": band === undefined ? "false" : "true", "data-grammar-page-trail": trail === undefined ? "false" : "true", children: [band === undefined ? null : _jsx(PageHeader, { ...band, measure: measure, isSkeleton: isSkeleton }), trail === undefined ? null : (_jsx("div", { className: "starci-core-page-trail", "data-grammar-page-trail-row": "true", children: _jsx(Breadcrumbs, { label: trail.label, items: trail.items, ...(trail.onAction === undefined ? {} : { onAction: trail.onAction }) }) })), chrome === "panes" ? (_jsx(
|
|
26
|
+
return (_jsxs("div", { className: cn("starci-core-page", className), "data-component": "Page", "data-tier": "composition", "data-contract": chrome === "panes" ? "LAYOUT-1 BOUNDARY-1 GAP-0" : chrome === "bleed" ? "LAYOUT-1" : "MARGIN-5 MEASURE-1", "data-grammar-page-chrome": chrome, "data-grammar-page-header": band === undefined ? "false" : "true", "data-grammar-page-trail": trail === undefined ? "false" : "true", children: [band === undefined ? null : _jsx(PageHeader, { ...band, measure: measure, isSkeleton: isSkeleton }), trail === undefined ? null : (_jsx("div", { className: "starci-core-page-trail", "data-grammar-page-trail-row": "true", children: _jsx(Breadcrumbs, { label: trail.label, items: trail.items, ...(trail.onAction === undefined ? {} : { onAction: trail.onAction }) }) })), chrome === "panes" ? (_jsx(PanesFill, { minHeight: props.chrome === "panes" ? props.minHeight ?? "md" : "md", children: children })) : chrome === "bleed" ? (_jsx("div", { className: "starci-core-page-body", "data-grammar-page-body": "true", children: children })) : (_jsx(PageContainer, { className: "starci-core-page-body", "data-grammar-page-body": "true", measure: measure, children: children }))] }));
|
|
28
27
|
};
|
|
29
28
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/Page/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAClC,OAAO,EAAE,cAAc,EAAqC,MAAM,OAAO,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/composition/Page/index.tsx"],"names":[],"mappings":"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"}
|