@starci/grammar 0.9.5 → 0.9.7
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/LICENSE +21 -21
- package/dist/.build-stamp.json +4 -4
- package/dist/common/components-forms.css +45 -0
- package/dist/common/components-navigation.css +75 -0
- package/dist/common/components-overlays.css +9 -0
- package/dist/common/registry.d.ts +14 -14
- package/dist/common/renderers-forms.d.ts +7 -7
- package/dist/common/renderers-navigation.d.ts +4 -4
- package/dist/common/renderers-overlays.d.ts +1 -1
- package/dist/common/renderers.d.ts +1 -1
- package/dist/common/renderers.d.ts.map +1 -1
- package/dist/common/renderers.js +1 -1
- package/dist/common/renderers.js.map +1 -1
- package/dist/common/styles.css +14 -0
- package/dist/core/branch/ListBox/index.d.ts +9 -1
- package/dist/core/branch/ListBox/index.d.ts.map +1 -1
- package/dist/core/branch/ListBox/index.js +8 -2
- package/dist/core/branch/ListBox/index.js.map +1 -1
- package/dist/core/branch/Select/index.d.ts +6 -1
- package/dist/core/branch/Select/index.d.ts.map +1 -1
- package/dist/core/branch/Select/index.js +5 -2
- package/dist/core/branch/Select/index.js.map +1 -1
- package/dist/core/composite/Breadcrumbs/index.d.ts +5 -0
- package/dist/core/composite/Breadcrumbs/index.d.ts.map +1 -1
- package/dist/core/composite/Breadcrumbs/index.js +3 -2
- package/dist/core/composite/Breadcrumbs/index.js.map +1 -1
- package/dist/core/composite/ChatBubble/index.d.ts +21 -3
- package/dist/core/composite/ChatBubble/index.d.ts.map +1 -1
- package/dist/core/composite/ChatBubble/index.js +10 -1
- package/dist/core/composite/ChatBubble/index.js.map +1 -1
- package/dist/core/composite/CheckboxGroup/index.d.ts +6 -1
- package/dist/core/composite/CheckboxGroup/index.d.ts.map +1 -1
- package/dist/core/composite/CheckboxGroup/index.js +2 -2
- package/dist/core/composite/CheckboxGroup/index.js.map +1 -1
- package/dist/core/composite/SegmentedControl/index.d.ts +6 -1
- package/dist/core/composite/SegmentedControl/index.d.ts.map +1 -1
- package/dist/core/composite/SegmentedControl/index.js +5 -2
- package/dist/core/composite/SegmentedControl/index.js.map +1 -1
- package/dist/core/composite/Stepper/index.d.ts +7 -1
- package/dist/core/composite/Stepper/index.d.ts.map +1 -1
- package/dist/core/composite/Stepper/index.js +2 -1
- package/dist/core/composite/Stepper/index.js.map +1 -1
- package/dist/core/composite/Timeline/index.d.ts +8 -1
- package/dist/core/composite/Timeline/index.d.ts.map +1 -1
- package/dist/core/composite/Timeline/index.js +2 -1
- package/dist/core/composite/Timeline/index.js.map +1 -1
- package/dist/core/primitive/Avatar/index.d.ts +6 -1
- package/dist/core/primitive/Avatar/index.d.ts.map +1 -1
- package/dist/core/primitive/Avatar/index.js +2 -1
- package/dist/core/primitive/Avatar/index.js.map +1 -1
- package/dist/core/primitive/Field/index.d.ts +24 -0
- package/dist/core/primitive/Field/index.d.ts.map +1 -1
- package/dist/core/primitive/Field/index.js +15 -1
- package/dist/core/primitive/Field/index.js.map +1 -1
- package/dist/core/primitive/Meter/index.d.ts +7 -1
- package/dist/core/primitive/Meter/index.d.ts.map +1 -1
- package/dist/core/primitive/Meter/index.js +5 -1
- package/dist/core/primitive/Meter/index.js.map +1 -1
- package/dist/core/primitive/NumberField/index.d.ts +6 -1
- package/dist/core/primitive/NumberField/index.d.ts.map +1 -1
- package/dist/core/primitive/NumberField/index.js +2 -2
- package/dist/core/primitive/NumberField/index.js.map +1 -1
- package/dist/core/primitive/SearchField/index.d.ts +6 -1
- package/dist/core/primitive/SearchField/index.d.ts.map +1 -1
- package/dist/core/primitive/SearchField/index.js +2 -2
- package/dist/core/primitive/SearchField/index.js.map +1 -1
- package/dist/core/primitive/SectionHeader/index.d.ts +8 -1
- package/dist/core/primitive/SectionHeader/index.d.ts.map +1 -1
- package/dist/core/primitive/SectionHeader/index.js +2 -1
- package/dist/core/primitive/SectionHeader/index.js.map +1 -1
- package/dist/core/primitive/Switch/index.d.ts +6 -1
- package/dist/core/primitive/Switch/index.d.ts.map +1 -1
- package/dist/core/primitive/Switch/index.js +2 -2
- package/dist/core/primitive/Switch/index.js.map +1 -1
- package/dist/core/primitive/Textarea/index.d.ts +6 -1
- package/dist/core/primitive/Textarea/index.d.ts.map +1 -1
- package/dist/core/primitive/Textarea/index.js +5 -2
- package/dist/core/primitive/Textarea/index.js.map +1 -1
- package/dist/offset-pop/components-forms.css +17 -0
- package/dist/offset-pop/components-navigation.css +7 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Field/index.tsx"],"names":[],"mappings":"AAOA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Field/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
3
|
import { Description as HeroDescription, FieldError as HeroFieldError, Label as HeroLabel, } from "@heroui/react";
|
|
4
4
|
import { useCallback, useId, useState } from "react";
|
|
5
|
+
import { Skeleton } from "../Skeleton/index.js";
|
|
5
6
|
/** The hook a rendered control carries so a gate reads its layer variant without vendor class names. */
|
|
6
7
|
export const fieldVariantAttributes = (variant) => ({ "data-grammar-variant": variant });
|
|
7
8
|
/** Folds the control's state into the render-neutral presentation vocabulary. */
|
|
@@ -99,4 +100,17 @@ export const Field = ({ id: idProp, label, isLabelHidden, description, errorMess
|
|
|
99
100
|
...(isReadOnly === true ? { readOnly: true } : {}),
|
|
100
101
|
}) }), errorId === undefined ? null : (_jsx("span", { id: errorId, className: "starci-core-field-error", "data-grammar-field-error": "true", "data-contract": "FEEDBACK-1", children: errorMessage }))] }));
|
|
101
102
|
};
|
|
103
|
+
/**
|
|
104
|
+
* Loading view of a field (knowledge STATE-8): the label stays real text, the control becomes Skeleton geometry of the loaded
|
|
105
|
+
* control's size. The geometry is `aria-hidden` and nothing in it is focusable; the root owns `aria-busy`. Description and error
|
|
106
|
+
* copy are not drawn (they are content, and nothing is invalid while loading).
|
|
107
|
+
* `kind`: `select` and `input` a one-line field block, `textarea` the `rows` height, `segmented` a joined-segments block
|
|
108
|
+
* (`count` segments wide; `fill` stretches it), `choices` one Skeleton box per option beside its real label, `switch` a
|
|
109
|
+
* Skeleton track beside the real label.
|
|
110
|
+
*/
|
|
111
|
+
export const FieldSkeleton = ({ component, tier, label, isLabelHidden, isRequired, variant, kind, rows, count, fill, choiceLabels, orientation, className }) => {
|
|
112
|
+
const geometry = (shape, style, extra) => (_jsx("span", { "aria-hidden": "true", className: "starci-core-field-skeleton-control", "data-grammar-field-skeleton": shape, ...(extra ?? {}), ...(style === undefined ? {} : { style }), children: _jsx(Skeleton, { shape: "rect" }) }));
|
|
113
|
+
const labelNode = (_jsxs("span", { className: labelClassName(isLabelHidden), "data-grammar-field-label": "true", children: [label, isRequired === true ? _jsx("span", { "aria-hidden": "true", className: "starci-core-field-required", children: "*" }) : null] }));
|
|
114
|
+
return (_jsx("div", { "data-tier": tier, "data-component": component, "data-contract": "A11Y-1 FIELD-1 STATE-8", className: `${kind === "switch" ? "starci-core-choice" : "starci-core-field"} ${className} starci-core-field-skeleton`, ...(variant === undefined ? {} : fieldVariantAttributes(variant)), ...(orientation === undefined ? {} : { "data-grammar-orientation": orientation }), "data-grammar-skeleton": "true", "data-loading": "true", "aria-busy": "true", children: kind === "switch" ? (_jsxs("span", { className: "starci-core-choice-content", children: [geometry("switch"), labelNode] })) : (_jsxs(_Fragment, { children: [labelNode, kind === "choices" ? (_jsx("div", { className: "starci-core-choice-group-options", children: (choiceLabels ?? []).map((choiceLabel, index) => (_jsxs("span", { className: "starci-core-choice-content", children: [geometry("choice"), _jsx("span", { className: "starci-core-field-skeleton-choice-label", children: choiceLabel })] }, index))) })) : kind === "textarea" ? (geometry("textarea", { "--starci-core-skeleton-rows": Math.max(1, Math.round(Number.isFinite(rows) ? rows : 4)) })) : kind === "segmented" ? (geometry("segmented", { "--starci-core-skeleton-segments": Math.max(1, Math.round(count ?? 2)) }, { "data-width": fill === true ? "fill" : "content" })) : (geometry(kind))] })) }));
|
|
115
|
+
};
|
|
102
116
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Field/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EACH,WAAW,IAAI,eAAe,EAC9B,UAAU,IAAI,cAAc,EAC5B,KAAK,IAAI,SAAS,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Field/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,12 @@ export type MeterProps = {
|
|
|
25
25
|
* accessible name and `aria-value*`. Out-of-range counts from untyped callers clamp to 2..12.
|
|
26
26
|
*/
|
|
27
27
|
readonly segments?: MeterSegments;
|
|
28
|
+
/**
|
|
29
|
+
* Initial unresolved reading (knowledge STATE-8), the twin of `Progress isSkeleton`: the `label` stays real text, the
|
|
30
|
+
* bar is a static Skeleton bar of the track height, and no `role="meter"`, value or reading is announced (a skeleton is
|
|
31
|
+
* not a zero measurement). The geometry is `aria-hidden`; the root is `aria-busy`. `value`, `tone` and `segments` are ignored.
|
|
32
|
+
*/
|
|
33
|
+
readonly isSkeleton?: boolean;
|
|
28
34
|
};
|
|
29
|
-
export declare const Meter: ({ label, value, minValue, maxValue, valueLabel, tone, isLabelHidden, segments, }: MeterProps) => import("react").JSX.Element;
|
|
35
|
+
export declare const Meter: ({ label, value, minValue, maxValue, valueLabel, tone, isLabelHidden, segments, isSkeleton, }: MeterProps) => import("react").JSX.Element;
|
|
30
36
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Meter/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Meter/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAIjE;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;AAExE,MAAM,MAAM,UAAU,GAAG;IACrB,4FAA4F;IAC5F,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,0FAA0F;IAC1F,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAA;IACjC,qEAAqE;IACrE,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC;;;;;;;OAOG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;IACjC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AA0BD,eAAO,MAAM,KAAK,GAAI,8FAUnB,UAAU,gCAmEZ,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Label as HeroLabel, Meter as HeroMeter } from "@heroui/react";
|
|
3
3
|
import { vendorStatusFor } from "../../overlayScope.js";
|
|
4
|
+
import { Skeleton } from "../Skeleton/index.js";
|
|
4
5
|
const MIN_SEGMENTS = 2;
|
|
5
6
|
const MAX_SEGMENTS = 12;
|
|
6
7
|
/** A whole segment count in 2..12, whatever an untyped caller passed. */
|
|
@@ -21,7 +22,10 @@ const wholeNumber = (value, fallback) => (Number.isFinite(value) ? Math.round(va
|
|
|
21
22
|
* `data-grammar-meter-segments` and each segment its state on `data-grammar-meter-segment`.
|
|
22
23
|
*/
|
|
23
24
|
const renderMeterRoot = (domProps) => _jsx("div", { ...domProps, role: "meter" });
|
|
24
|
-
export const Meter = ({ label, value, minValue = 0, maxValue = 100, valueLabel, tone = "neutral", isLabelHidden = false, segments, }) => {
|
|
25
|
+
export const Meter = ({ label, value, minValue = 0, maxValue = 100, valueLabel, tone = "neutral", isLabelHidden = false, segments, isSkeleton = false, }) => {
|
|
26
|
+
if (isSkeleton) {
|
|
27
|
+
return (_jsxs("div", { "data-tier": "atom", "data-component": "Meter", "data-loading": "true", "data-grammar-skeleton": "true", "data-grammar-tone": "neutral", "data-contract": "A11Y-3 STATE-8", "aria-busy": "true", className: "starci-core-meter starci-core-meter-skeleton", children: [_jsx("span", { className: "starci-core-meter-header", children: _jsx("span", { className: isLabelHidden ? "starci-core-meter-label starci-core-form-label--screen-reader" : "starci-core-meter-label", children: label }) }), _jsx("span", { "aria-hidden": "true", "data-slot": "meter-track", className: "starci-core-meter-skeleton-bar", children: _jsx(Skeleton, { shape: "rect" }) })] }));
|
|
28
|
+
}
|
|
25
29
|
const status = vendorStatusFor(tone);
|
|
26
30
|
const count = segments === undefined ? undefined : clampSegments(segments);
|
|
27
31
|
const min = count === undefined ? minValue : wholeNumber(minValue, 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Meter/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,eAAe,CAAA;AAGtE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Meter/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -14,10 +14,15 @@ export type NumberFieldProps = FieldControlProps & {
|
|
|
14
14
|
readonly hideSteppers?: boolean;
|
|
15
15
|
/** Layer variant: `secondary` when the control sits on a surface (ANATOMY-2 case-1). */
|
|
16
16
|
readonly variant?: "primary" | "secondary";
|
|
17
|
+
/**
|
|
18
|
+
* Initial unresolved content (knowledge STATE-8): the label stays real text and the input group becomes Skeleton geometry of the same size,
|
|
19
|
+
* `aria-hidden` and not focusable; the root is `aria-busy`. Value, description and error copy are not drawn.
|
|
20
|
+
*/
|
|
21
|
+
readonly isSkeleton?: boolean;
|
|
17
22
|
};
|
|
18
23
|
/**
|
|
19
24
|
* A number with stepping. The vendor owns `role="spinbutton"`-equivalent semantics on the input,
|
|
20
25
|
* locale parsing, arrow-key and wheel stepping, clamping to min/max and the localized stepper names.
|
|
21
26
|
*/
|
|
22
|
-
export declare const NumberField: ({ id, placeholder, value, defaultValue, onValueChange, minValue, maxValue, step, formatOptions, hideSteppers, variant, ...field }: NumberFieldProps) => import("react").JSX.Element;
|
|
27
|
+
export declare const NumberField: ({ id, placeholder, value, defaultValue, onValueChange, minValue, maxValue, step, formatOptions, hideSteppers, variant, isSkeleton, ...field }: NumberFieldProps) => import("react").JSX.Element;
|
|
23
28
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/NumberField/index.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/NumberField/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAOH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IAC/C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,uEAAuE;IACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAA;IACjD,mFAAmF;IACnF,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,wFAAwF;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,+IAczB,gBAAgB,gCAiClB,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { NumberField as HeroNumberField } from "@heroui/react";
|
|
4
|
-
import { FieldDescription, FieldErrorText, FieldLabel, fieldVariantAttributes, vendorFieldProps, } from "../Field/index.js";
|
|
4
|
+
import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVariantAttributes, vendorFieldProps, } from "../Field/index.js";
|
|
5
5
|
/*
|
|
6
6
|
* Consumer hook: `starci-core-number-field` names this control's root for a consumer or family
|
|
7
7
|
* stylesheet. No shipped sheet paints it: the root is drawn as a whole by `.starci-core-field`, so
|
|
@@ -11,5 +11,5 @@ import { FieldDescription, FieldErrorText, FieldLabel, fieldVariantAttributes, v
|
|
|
11
11
|
* A number with stepping. The vendor owns `role="spinbutton"`-equivalent semantics on the input,
|
|
12
12
|
* locale parsing, arrow-key and wheel stepping, clamping to min/max and the localized stepper names.
|
|
13
13
|
*/
|
|
14
|
-
export const NumberField = ({ id, placeholder, value, defaultValue, onValueChange, minValue, maxValue, step, formatOptions, hideSteppers = false, variant = "primary", ...field }) => (_jsxs(HeroNumberField, { "data-tier": "atom", "data-component": "NumberField", "data-contract": "A11Y-1 FIELD-1 FIELD-2 FIELD-3", className: "starci-core-field starci-core-number-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(minValue === undefined ? {} : { minValue }), ...(maxValue === undefined ? {} : { maxValue }), ...(step === undefined ? {} : { step }), ...(formatOptions === undefined ? {} : { formatOptions }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroNumberField.Group, { className: "starci-core-number-field-group", "data-grammar-field-control": "true", children: [hideSteppers ? null : _jsx(HeroNumberField.DecrementButton, { className: "starci-core-number-field-step" }), _jsx(HeroNumberField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-number-field-input" }), hideSteppers ? null : _jsx(HeroNumberField.IncrementButton, { className: "starci-core-number-field-step" })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
|
|
14
|
+
export const NumberField = ({ id, placeholder, value, defaultValue, onValueChange, minValue, maxValue, step, formatOptions, hideSteppers = false, variant = "primary", isSkeleton = false, ...field }) => isSkeleton ? (_jsx(FieldSkeleton, { component: "NumberField", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, variant: variant, kind: "input", className: "starci-core-number-field" })) : (_jsxs(HeroNumberField, { "data-tier": "atom", "data-component": "NumberField", "data-contract": "A11Y-1 FIELD-1 FIELD-2 FIELD-3", className: "starci-core-field starci-core-number-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(minValue === undefined ? {} : { minValue }), ...(maxValue === undefined ? {} : { maxValue }), ...(step === undefined ? {} : { step }), ...(formatOptions === undefined ? {} : { formatOptions }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroNumberField.Group, { className: "starci-core-number-field-group", "data-grammar-field-control": "true", children: [hideSteppers ? null : _jsx(HeroNumberField.DecrementButton, { className: "starci-core-number-field-step" }), _jsx(HeroNumberField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-number-field-input" }), hideSteppers ? null : _jsx(HeroNumberField.IncrementButton, { className: "starci-core-number-field-step" })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
|
|
15
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/NumberField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,eAAe,CAAA;AAC9D,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,sBAAsB,EACtB,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/NumberField/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -15,10 +15,15 @@ export type SearchFieldProps = FieldControlProps & {
|
|
|
15
15
|
readonly clearLabel?: string;
|
|
16
16
|
/** Layer variant: `secondary` when the control sits on a surface (ANATOMY-2 case-1). */
|
|
17
17
|
readonly variant?: "primary" | "secondary";
|
|
18
|
+
/**
|
|
19
|
+
* Initial unresolved content (knowledge STATE-8): the label stays real text and the search box becomes Skeleton geometry of the same size,
|
|
20
|
+
* `aria-hidden` and not focusable; the root is `aria-busy`. Value, description and error copy are not drawn.
|
|
21
|
+
*/
|
|
22
|
+
readonly isSkeleton?: boolean;
|
|
18
23
|
};
|
|
19
24
|
/**
|
|
20
25
|
* A text field whose job is a query: `type="search"`, a clear button, Escape to clear, Enter to
|
|
21
26
|
* submit - all the vendor's. The leading glyph is decoration; the label is the name.
|
|
22
27
|
*/
|
|
23
|
-
export declare const SearchField: ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending, clearLabel, variant, ...field }: SearchFieldProps) => import("react").JSX.Element;
|
|
28
|
+
export declare const SearchField: ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending, clearLabel, variant, isSkeleton, ...field }: SearchFieldProps) => import("react").JSX.Element;
|
|
24
29
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAOH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IAC/C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,oDAAoD;IACpD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,wFAAwF;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,kIAazB,gBAAgB,gCAoClB,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { SearchField as HeroSearchField, Spinner as HeroSpinner } from "@heroui/react";
|
|
4
|
-
import { FieldDescription, FieldErrorText, FieldLabel, fieldVariantAttributes, vendorFieldProps, } from "../Field/index.js";
|
|
4
|
+
import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVariantAttributes, vendorFieldProps, } from "../Field/index.js";
|
|
5
5
|
/*
|
|
6
6
|
* Consumer hook: `starci-core-search-field` names this control's root for a consumer or family
|
|
7
7
|
* stylesheet. No shipped sheet paints it: the root is drawn as a whole by `.starci-core-field`, so
|
|
@@ -11,5 +11,5 @@ import { FieldDescription, FieldErrorText, FieldLabel, fieldVariantAttributes, v
|
|
|
11
11
|
* A text field whose job is a query: `type="search"`, a clear button, Escape to clear, Enter to
|
|
12
12
|
* submit - all the vendor's. The leading glyph is decoration; the label is the name.
|
|
13
13
|
*/
|
|
14
|
-
export const SearchField = ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending = false, clearLabel, variant = "primary", ...field }) => (_jsxs(HeroSearchField, { "data-tier": "atom", "data-component": "SearchField", "data-contract": "A11Y-1 FIELD-1 FIELD-2 CONTROL-STATE-2", className: "starci-core-field starci-core-search-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps({ ...field, isPending }), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(onSubmit === undefined ? {} : { onSubmit }), ...(onClear === undefined ? {} : { onClear }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroSearchField.Group, { className: "starci-core-search-field-group", "data-grammar-field-control": "true", children: [_jsx(HeroSearchField.SearchIcon, { "aria-hidden": "true" }), _jsx(HeroSearchField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-search-field-input", ...(isPending ? { "aria-busy": true } : {}) }), isPending ? _jsx(HeroSpinner, { size: "sm", color: "current", "aria-hidden": "true", className: "starci-core-field-spinner" }) : null, _jsx(HeroSearchField.ClearButton, { className: "starci-core-search-field-clear", ...(clearLabel === undefined ? {} : { "aria-label": clearLabel }) })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
|
|
14
|
+
export const SearchField = ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending = false, clearLabel, variant = "primary", isSkeleton = false, ...field }) => isSkeleton ? (_jsx(FieldSkeleton, { component: "SearchField", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, variant: variant, kind: "input", className: "starci-core-search-field" })) : (_jsxs(HeroSearchField, { "data-tier": "atom", "data-component": "SearchField", "data-contract": "A11Y-1 FIELD-1 FIELD-2 CONTROL-STATE-2", className: "starci-core-field starci-core-search-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps({ ...field, isPending }), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(onSubmit === undefined ? {} : { onSubmit }), ...(onClear === undefined ? {} : { onClear }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroSearchField.Group, { className: "starci-core-search-field-group", "data-grammar-field-control": "true", children: [_jsx(HeroSearchField.SearchIcon, { "aria-hidden": "true" }), _jsx(HeroSearchField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-search-field-input", ...(isPending ? { "aria-busy": true } : {}) }), isPending ? _jsx(HeroSpinner, { size: "sm", color: "current", "aria-hidden": "true", className: "starci-core-field-spinner" }) : null, _jsx(HeroSearchField.ClearButton, { className: "starci-core-search-field-clear", ...(clearLabel === undefined ? {} : { "aria-label": clearLabel }) })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
|
|
15
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtF,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,sBAAsB,EACtB,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtF,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,sBAAsB,EACtB,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;AAyB1B;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EACxB,EAAE,EACF,WAAW,EACX,KAAK,EACL,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,OAAO,EACP,SAAS,GAAG,KAAK,EACjB,UAAU,EACV,OAAO,GAAG,SAAS,EACnB,UAAU,GAAG,KAAK,EAClB,GAAG,KAAK,EACO,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CACjC,KAAC,aAAa,IAAC,SAAS,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,0BAA0B,GAAG,CAClN,CAAC,CAAC,CAAC,CACA,MAAC,eAAe,iBACF,MAAM,oBACD,aAAa,mBACd,wCAAwC,EACtD,SAAS,EAAC,4CAA4C,EACtD,SAAS,QACT,OAAO,EAAE,OAAO,KACZ,sBAAsB,CAAC,OAAO,CAAC,KAC/B,gBAAgB,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,CAAC,EAC7C,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,KACjC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtF,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,KAChE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAC5C,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,aAE9C,KAAC,UAAU,IAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,YAAG,KAAK,CAAC,KAAK,GAAc,EACnG,MAAC,eAAe,CAAC,KAAK,IAAC,SAAS,EAAC,gCAAgC,gCAA4B,MAAM,aAC/F,KAAC,eAAe,CAAC,UAAU,mBAAa,MAAM,GAAG,EACjD,KAAC,eAAe,CAAC,KAAK,OACd,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAChC,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EACtD,SAAS,EAAC,gCAAgC,KACtC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAC9C,EACD,SAAS,CAAC,CAAC,CAAC,KAAC,WAAW,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,SAAS,iBAAa,MAAM,EAAC,SAAS,EAAC,2BAA2B,GAAG,CAAC,CAAC,CAAC,IAAI,EACtH,KAAC,eAAe,CAAC,WAAW,IACxB,SAAS,EAAC,gCAAgC,KACtC,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,GACpE,IACkB,EACxB,KAAC,gBAAgB,cAAE,KAAK,CAAC,WAAW,GAAoB,EACxD,KAAC,cAAc,cAAE,KAAK,CAAC,YAAY,GAAkB,IACvC,CACrB,CAAA"}
|
|
@@ -20,6 +20,13 @@ export type SectionHeaderProps = {
|
|
|
20
20
|
readonly id?: string;
|
|
21
21
|
/** Closed semantic anatomy; ContextIntro requires eyebrow, title and description. */
|
|
22
22
|
readonly composition?: "section-header" | "context-intro";
|
|
23
|
+
/**
|
|
24
|
+
* Draw the header as inert geometry while its content is unresolved (knowledge STATE-8): `title` keeps its heading rank and
|
|
25
|
+
* size but holds a Skeleton text line, `description` and `meta` become Skeleton text of their own size (each only if passed),
|
|
26
|
+
* `count` is dropped, and `action` keeps its footprint as a small Skeleton block with no control inside. `eyebrow` stays real.
|
|
27
|
+
* The skeleton parts are `aria-hidden` (the heading is hidden with its line, so no empty heading is announced); the root is `aria-busy`.
|
|
28
|
+
*/
|
|
29
|
+
readonly isSkeleton?: boolean;
|
|
23
30
|
};
|
|
24
31
|
/**
|
|
25
32
|
* Reusable title-copy-action hierarchy shared by StarCi product sections.
|
|
@@ -28,5 +35,5 @@ export type SectionHeaderProps = {
|
|
|
28
35
|
* banner landmark, and the banner belongs to the application bar (TopBar / NavigationFeatureNav /
|
|
29
36
|
* WorkspaceShell header). A section heading group must not add a second one.
|
|
30
37
|
*/
|
|
31
|
-
export declare const SectionHeader: ({ title, description, eyebrow, action, count, meta, level, className, id, composition, }: SectionHeaderProps) => import("react").JSX.Element;
|
|
38
|
+
export declare const SectionHeader: ({ title, description, eyebrow, action, count, meta, level, className, id, composition, isSkeleton, }: SectionHeaderProps) => import("react").JSX.Element;
|
|
32
39
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/SectionHeader/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/SectionHeader/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAGrD,MAAM,MAAM,kBAAkB,GAAG;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAA;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;IAC3B;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,+FAA+F;IAC/F,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,qFAAqF;IACrF,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,GAAG,eAAe,CAAA;IACzD;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,sGAY3B,kBAAkB,gCAkDpB,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { cn } from "@heroui/react";
|
|
3
3
|
import { createElement } from "react";
|
|
4
|
+
import { Skeleton } from "../Skeleton/index.js";
|
|
4
5
|
/**
|
|
5
6
|
* Reusable title-copy-action hierarchy shared by StarCi product sections.
|
|
6
7
|
*
|
|
@@ -8,5 +9,5 @@ import { createElement } from "react";
|
|
|
8
9
|
* banner landmark, and the banner belongs to the application bar (TopBar / NavigationFeatureNav /
|
|
9
10
|
* WorkspaceShell header). A section heading group must not add a second one.
|
|
10
11
|
*/
|
|
11
|
-
export const SectionHeader = ({ title, description, eyebrow, action, count, meta, level = 2, className, id, composition = "section-header", }) => (_jsxs("div", { className: cn("starci-core-section-header", className), "data-component": "SectionHeader", "data-tier": "atom", "data-contract": "GAP-5", "data-grammar-section-header": "true", "data-grammar-composition": composition, children: [_jsxs("div", { className: "starci-core-section-header-copy", "data-contract": "GAP-2", children: [eyebrow === undefined ? null : _jsx("div", { className: "starci-core-section-eyebrow", children: eyebrow }), createElement(`h${level}`, { className: "starci-core-section-title", id, "data-contract": "MARGIN-0 FLOW-3" }, title, count === undefined ? null : (_jsx("span", { className: "starci-core-section-count", "data-grammar-section-count": count, "data-contract": "TONE-2", children: ` (${count})` }, "count"))), description === undefined ? null : _jsx("div", { className: "starci-core-section-description", children: description })] }), meta === undefined ? null : _jsx("div", { className: "starci-core-section-meta", "data-contract": "FONT-1 TONE-2", children: meta }), action === undefined ? null : _jsx("div", { className: "starci-core-section-action", children: action })] }));
|
|
12
|
+
export const SectionHeader = ({ title, description, eyebrow, action, count, meta, level = 2, className, id, composition = "section-header", isSkeleton = false, }) => isSkeleton ? (_jsxs("div", { className: cn("starci-core-section-header", className), "data-component": "SectionHeader", "data-tier": "atom", "data-contract": "GAP-5 STATE-8", "data-grammar-section-header": "true", "data-grammar-composition": composition, "data-grammar-skeleton": "true", "data-loading": "true", "aria-busy": "true", children: [_jsxs("div", { className: "starci-core-section-header-copy", "data-contract": "GAP-2", children: [eyebrow === undefined ? null : _jsx("div", { className: "starci-core-section-eyebrow", children: eyebrow }), createElement(`h${level}`, { className: "starci-core-section-title starci-core-section-skeleton-title", id, "aria-hidden": "true", "data-contract": "MARGIN-0 FLOW-3" }, _jsx(Skeleton, { shape: "text" })), description === undefined ? null : _jsx("div", { "aria-hidden": "true", className: "starci-core-section-description starci-core-section-skeleton-description", children: _jsx(Skeleton, { shape: "text" }) })] }), meta === undefined ? null : _jsx("div", { "aria-hidden": "true", className: "starci-core-section-meta starci-core-section-skeleton-meta", children: _jsx(Skeleton, { shape: "text" }) }), action === undefined ? null : _jsx("div", { "aria-hidden": "true", className: "starci-core-section-action", children: _jsx("span", { className: "starci-core-section-skeleton-action", children: _jsx(Skeleton, { shape: "rect" }) }) })] })) : (_jsxs("div", { className: cn("starci-core-section-header", className), "data-component": "SectionHeader", "data-tier": "atom", "data-contract": "GAP-5", "data-grammar-section-header": "true", "data-grammar-composition": composition, children: [_jsxs("div", { className: "starci-core-section-header-copy", "data-contract": "GAP-2", children: [eyebrow === undefined ? null : _jsx("div", { className: "starci-core-section-eyebrow", children: eyebrow }), createElement(`h${level}`, { className: "starci-core-section-title", id, "data-contract": "MARGIN-0 FLOW-3" }, title, count === undefined ? null : (_jsx("span", { className: "starci-core-section-count", "data-grammar-section-count": count, "data-contract": "TONE-2", children: ` (${count})` }, "count"))), description === undefined ? null : _jsx("div", { className: "starci-core-section-description", children: description })] }), meta === undefined ? null : _jsx("div", { className: "starci-core-section-meta", "data-contract": "FONT-1 TONE-2", children: meta }), action === undefined ? null : _jsx("div", { className: "starci-core-section-action", children: action })] }));
|
|
12
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/SectionHeader/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAClC,OAAO,EAAE,aAAa,EAAkB,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/SectionHeader/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,15 @@ export type SwitchProps = Omit<FieldControlProps, "isLabelHidden"> & {
|
|
|
4
4
|
readonly isSelected?: boolean;
|
|
5
5
|
readonly defaultSelected?: boolean;
|
|
6
6
|
readonly onSelectedChange?: (isSelected: boolean) => void;
|
|
7
|
+
/**
|
|
8
|
+
* Initial unresolved content (knowledge STATE-8): the label stays real text and the switch track becomes a Skeleton of the same size,
|
|
9
|
+
* `aria-hidden`, no `role="switch"` and nothing focusable; the root is `aria-busy`.
|
|
10
|
+
*/
|
|
11
|
+
readonly isSkeleton?: boolean;
|
|
7
12
|
};
|
|
8
13
|
/**
|
|
9
14
|
* An immediate on/off setting (`role="switch"`). Use Checkbox for a choice that only takes effect
|
|
10
15
|
* on submit. The label is part of the hit area; Space toggles.
|
|
11
16
|
*/
|
|
12
|
-
export declare const Switch: ({ value, isSelected, defaultSelected, onSelectedChange, ...field }: SwitchProps) => import("react").JSX.Element;
|
|
17
|
+
export declare const Switch: ({ value, isSelected, defaultSelected, onSelectedChange, isSkeleton, ...field }: SwitchProps) => import("react").JSX.Element;
|
|
13
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAMH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAAG;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAA;IACzD;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,gFAAwF,WAAW,gCAuBzH,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { Switch as HeroSwitch } from "@heroui/react";
|
|
4
|
-
import { FieldDescription, FieldErrorText, FieldLabel, vendorFieldProps, } from "../Field/index.js";
|
|
4
|
+
import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, vendorFieldProps, } from "../Field/index.js";
|
|
5
5
|
/*
|
|
6
6
|
* Consumer hook: `starci-core-switch` names this control's root for a consumer or family
|
|
7
7
|
* stylesheet. No shipped sheet paints it: the root is drawn as a whole by `.starci-core-choice`, so
|
|
@@ -11,5 +11,5 @@ import { FieldDescription, FieldErrorText, FieldLabel, vendorFieldProps, } from
|
|
|
11
11
|
* An immediate on/off setting (`role="switch"`). Use Checkbox for a choice that only takes effect
|
|
12
12
|
* on submit. The label is part of the hit area; Space toggles.
|
|
13
13
|
*/
|
|
14
|
-
export const Switch = ({ value, isSelected, defaultSelected, onSelectedChange, ...field }) => (_jsxs(HeroSwitch, { "data-tier": "atom", "data-component": "Switch", "data-contract": "A11Y-1 FIELD-1 CONTROL-STATE-3", className: "starci-core-choice starci-core-switch", ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? {} : { value }), ...(isSelected === undefined ? defaultSelected === undefined ? {} : { defaultSelected } : { isSelected }), ...(onSelectedChange === undefined ? {} : { onChange: onSelectedChange }), children: [_jsxs(HeroSwitch.Content, { className: "starci-core-choice-content", "data-grammar-choice-target": "true", children: [_jsx(HeroSwitch.Control, { className: "starci-core-choice-control", "data-grammar-choice-control": "switch", children: _jsx(HeroSwitch.Thumb, {}) }), _jsx(FieldLabel, { children: field.label })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
|
|
14
|
+
export const Switch = ({ value, isSelected, defaultSelected, onSelectedChange, isSkeleton = false, ...field }) => isSkeleton ? (_jsx(FieldSkeleton, { component: "Switch", tier: "atom", label: field.label, isRequired: field.isRequired, kind: "switch", className: "starci-core-switch" })) : (_jsxs(HeroSwitch, { "data-tier": "atom", "data-component": "Switch", "data-contract": "A11Y-1 FIELD-1 CONTROL-STATE-3", className: "starci-core-choice starci-core-switch", ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? {} : { value }), ...(isSelected === undefined ? defaultSelected === undefined ? {} : { defaultSelected } : { isSelected }), ...(onSelectedChange === undefined ? {} : { onChange: onSelectedChange }), children: [_jsxs(HeroSwitch.Content, { className: "starci-core-choice-content", "data-grammar-choice-target": "true", children: [_jsx(HeroSwitch.Control, { className: "starci-core-choice-control", "data-grammar-choice-control": "switch", children: _jsx(HeroSwitch.Thumb, {}) }), _jsx(FieldLabel, { children: field.label })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
|
|
15
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;AAc1B;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,GAAG,KAAK,EAAE,GAAG,KAAK,EAAe,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CACxI,KAAC,aAAa,IAAC,SAAS,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,oBAAoB,GAAG,CAClJ,CAAC,CAAC,CAAC,CACA,MAAC,UAAU,iBACG,MAAM,oBACD,QAAQ,mBACT,gCAAgC,EAC9C,SAAS,EAAC,uCAAuC,KAC7C,gBAAgB,CAAC,KAAK,CAAC,EAC3B,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,KACjC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtC,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,KACtG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,aAE1E,MAAC,UAAU,CAAC,OAAO,IAAC,SAAS,EAAC,4BAA4B,gCAA4B,MAAM,aACxF,KAAC,UAAU,CAAC,OAAO,IAAC,SAAS,EAAC,4BAA4B,iCAA6B,QAAQ,YAC3F,KAAC,UAAU,CAAC,KAAK,KAAG,GACH,EACrB,KAAC,UAAU,cAAE,KAAK,CAAC,KAAK,GAAc,IACrB,EACrB,KAAC,gBAAgB,cAAE,KAAK,CAAC,WAAW,GAAoB,EACxD,KAAC,cAAc,cAAE,KAAK,CAAC,YAAY,GAAkB,IAC5C,CAChB,CAAA"}
|
|
@@ -26,6 +26,11 @@ export type TextareaProps = FieldControlProps & {
|
|
|
26
26
|
readonly defaultValue?: string;
|
|
27
27
|
/** Initial visible lines. The field still grows with the reader's own resize. */
|
|
28
28
|
readonly rows?: number;
|
|
29
|
+
/**
|
|
30
|
+
* Initial unresolved content (knowledge STATE-8): the label stays real and the field becomes a Skeleton block of the
|
|
31
|
+
* `rows` height, `aria-hidden` and not focusable; the root is `aria-busy`.
|
|
32
|
+
*/
|
|
33
|
+
readonly isSkeleton?: boolean;
|
|
29
34
|
/** Also shows a live `count / max` beside the guidance. */
|
|
30
35
|
readonly maxLength?: number;
|
|
31
36
|
readonly minLength?: number;
|
|
@@ -49,6 +54,6 @@ export declare const findMentionQuery: (text: string, caret: number, trigger?: s
|
|
|
49
54
|
/** Options whose label (accent- and case-insensitive) contains the query, at most eight. */
|
|
50
55
|
export declare const filterMentionOptions: (options: ReadonlyArray<TextareaMentionOption>, query: string) => ReadonlyArray<TextareaMentionOption>;
|
|
51
56
|
/** Multi-line text with the shared field anatomy, an optional Enter-to-submit shortcut and optional mention suggestions. */
|
|
52
|
-
export declare const Textarea: ({ id, placeholder, value, defaultValue, rows, maxLength, minLength, onValueChange, variant, onSubmitShortcut, mentions, ...field }: TextareaProps) => import("react").JSX.Element;
|
|
57
|
+
export declare const Textarea: ({ id, placeholder, value, defaultValue, rows, isSkeleton, maxLength, minLength, onValueChange, variant, onSubmitShortcut, mentions, ...field }: TextareaProps) => import("react").JSX.Element;
|
|
53
58
|
export {};
|
|
54
59
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAQH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,iGAAiG;AACjG,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,iEAAiE;IACjE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAChC,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAA;IACtD,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAA;CAC9D,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG;IAC5C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,2DAA2D;IAC3D,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,wFAAwF;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;CACvC,CAAA;AAED,KAAK,YAAY,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAI3F,gIAAgI;AAChI,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,EAAE,gBAAa,KAAG,YAAY,GAAG,IAQ5F,CAAA;AAED,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,GAAI,SAAS,aAAa,CAAC,qBAAqB,CAAC,EAAE,OAAO,MAAM,KAAG,aAAa,CAAC,qBAAqB,CAGtI,CAAA;AAQD,4HAA4H;AAC5H,eAAO,MAAM,QAAQ,GAAI,gJActB,aAAa,gCAgKf,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { TextArea as HeroTextArea, TextField as HeroTextField } from "@heroui/react";
|
|
4
4
|
import { useId, useMemo, useState } from "react";
|
|
5
|
-
import { FieldDescription, FieldErrorText, FieldLabel, fieldVariantAttributes, isFieldInvalid, vendorFieldProps, } from "../Field/index.js";
|
|
5
|
+
import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVariantAttributes, isFieldInvalid, vendorFieldProps, } from "../Field/index.js";
|
|
6
6
|
const fold = (s) => s.normalize("NFD").replace(/\p{Diacritic}/gu, "").toLowerCase();
|
|
7
7
|
/** The trigger word that ends at the caret (`@an` in "hi @an|"), or null. The trigger must start the text or follow a space. */
|
|
8
8
|
export const findMentionQuery = (text, caret, trigger = "@") => {
|
|
@@ -28,7 +28,7 @@ export const filterMentionOptions = (options, query) => {
|
|
|
28
28
|
* a rule on the hook adds to the shared anatomy and never has to replace it.
|
|
29
29
|
*/
|
|
30
30
|
/** Multi-line text with the shared field anatomy, an optional Enter-to-submit shortcut and optional mention suggestions. */
|
|
31
|
-
export const Textarea = ({ id, placeholder, value, defaultValue, rows = 4, maxLength, minLength, onValueChange, variant = "primary", onSubmitShortcut, mentions, ...field }) => {
|
|
31
|
+
export const Textarea = ({ id, placeholder, value, defaultValue, rows = 4, isSkeleton = false, maxLength, minLength, onValueChange, variant = "primary", onSubmitShortcut, mentions, ...field }) => {
|
|
32
32
|
const [uncontrolledLength, setUncontrolledLength] = useState((defaultValue ?? "").length);
|
|
33
33
|
const length = value === undefined ? uncontrolledLength : value.length;
|
|
34
34
|
const generatedId = useId();
|
|
@@ -90,6 +90,9 @@ export const Textarea = ({ id, placeholder, value, defaultValue, rows = 4, maxLe
|
|
|
90
90
|
}
|
|
91
91
|
};
|
|
92
92
|
const activeId = isOpen ? `${listId}-${suggestions[active]?.id ?? ""}` : undefined;
|
|
93
|
+
if (isSkeleton) {
|
|
94
|
+
return _jsx(FieldSkeleton, { component: "Textarea", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, variant: variant, kind: "textarea", rows: rows, className: "starci-core-textarea" });
|
|
95
|
+
}
|
|
93
96
|
return (_jsxs(HeroTextField, { "data-tier": "atom", "data-component": "Textarea", "data-contract": "A11Y-1 FIELD-1 FIELD-2 FIELD-3", className: "starci-core-field starci-core-textarea", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(maxLength === undefined ? {} : { maxLength }), ...(minLength === undefined ? {} : { minLength }), onChange: (next) => {
|
|
94
97
|
setUncontrolledLength(next.length);
|
|
95
98
|
onValueChange?.(next);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,eAAe,CAAA;AACpF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAsB,MAAM,OAAO,CAAA;AACpE,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,sBAAsB,EACtB,cAAc,EACd,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,eAAe,CAAA;AACpF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAsB,MAAM,OAAO,CAAA;AACpE,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,sBAAsB,EACtB,cAAc,EACd,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;AAoD1B,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;AAE3F,gIAAgI;AAChI,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,OAAO,GAAG,GAAG,EAAuB,EAAE;IAChG,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACnC,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACtC,IAAI,EAAE,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IACvB,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC/C,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;AACjD,CAAC,CAAA;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAA6C,EAAE,KAAa,EAAwC,EAAE;IACvI,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;IACrB,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAChH,CAAC,CAAA;AAED;;;;GAIG;AAEH,4HAA4H;AAC5H,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACrB,EAAE,EACF,WAAW,EACX,KAAK,EACL,YAAY,EACZ,IAAI,GAAG,CAAC,EACR,UAAU,GAAG,KAAK,EAClB,SAAS,EACT,SAAS,EACT,aAAa,EACb,OAAO,GAAG,SAAS,EACnB,gBAAgB,EAChB,QAAQ,EACR,GAAG,KAAK,EACI,EAAE,EAAE;IAChB,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;IACzF,MAAM,MAAM,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;IACtE,MAAM,WAAW,GAAG,KAAK,EAAE,CAAA;IAC3B,MAAM,SAAS,GAAG,EAAE,IAAI,YAAY,WAAW,EAAE,CAAA;IACjD,MAAM,MAAM,GAAG,GAAG,SAAS,WAAW,CAAA;IACtC,MAAM,OAAO,GAAG,QAAQ,EAAE,OAAO,IAAI,GAAG,CAAA;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsB,IAAI,CAAC,CAAA;IAC7D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACvC,MAAM,WAAW,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAC1G,CAAC,QAAQ,EAAE,KAAK,CAAC,CACpB,CAAA;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAA;IAErC,MAAM,SAAS,GAAG,CAAC,OAA4B,EAAE,EAAE;QAC/C,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAM;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACtI,QAAQ,CAAC,IAAI,CAAC,CAAA;QACd,SAAS,CAAC,CAAC,CAAC,CAAA;IAChB,CAAC,CAAA;IAED,MAAM,MAAM,GAAG,CAAC,MAA6B,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,CAAC,CAAC,OAAO,YAAY,mBAAmB,CAAC,IAAI,KAAK,KAAK,IAAI;YAAE,OAAM;QACvE,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1B,MAAM,QAAQ,GAAG,GAAG,OAAO,GAAG,MAAM,CAAC,KAAK,GAAG,CAAA;QAC7C,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAA;QAC/E,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAA;QAC3C,aAAa,EAAE,CAAC,IAAI,CAAC,CAAA;QACrB,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAClC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACd,QAAQ,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAA;QAC5B,qBAAqB,CAAC,GAAG,EAAE;YACvB,OAAO,CAAC,KAAK,EAAE,CAAA;YACf,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;IACN,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,KAAyC,EAAE,EAAE;QAC5D,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gBACvD,KAAK,CAAC,cAAc,EAAE,CAAA;gBACtB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/C,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;gBAClF,OAAM;YACV,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;gBAC/C,KAAK,CAAC,cAAc,EAAE,CAAA;gBACtB,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;gBAClC,IAAI,MAAM,KAAK,SAAS;oBAAE,MAAM,CAAC,MAAM,CAAC,CAAA;gBACxC,OAAM;YACV,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACzB,KAAK,CAAC,cAAc,EAAE,CAAA;gBACtB,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACd,OAAM;YACV,CAAC;QACL,CAAC;QACD,IAAI,gBAAgB,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YAC/G,KAAK,CAAC,cAAc,EAAE,CAAA;YACtB,gBAAgB,EAAE,CAAA;QACtB,CAAC;IACL,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IAElF,IAAI,UAAU,EAAE,CAAC;QACb,OAAO,KAAC,aAAa,IAAC,SAAS,EAAC,UAAU,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,UAAU,EAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAC,sBAAsB,GAAG,CAAA;IAClO,CAAC;IAED,OAAO,CACH,MAAC,aAAa,iBACA,MAAM,oBACD,UAAU,mBACX,gCAAgC,EAC9C,SAAS,EAAC,wCAAwC,EAClD,SAAS,QACT,OAAO,EAAE,OAAO,KACZ,sBAAsB,CAAC,OAAO,CAAC,KAC/B,gBAAgB,CAAC,KAAK,CAAC,EAC3B,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,KACjC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtF,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAC9C,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAClD,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;YACf,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAClC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAA;YACrB,iHAAiH;YACjH,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,cAAc,CAAC,GAAG,EAAE;oBAChB,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAA;oBAClD,IAAI,OAAO,YAAY,mBAAmB;wBAAE,SAAS,CAAC,OAAO,CAAC,CAAA;gBAClE,CAAC,CAAC,CAAA;YACN,CAAC;QACL,CAAC,aAED,KAAC,UAAU,IAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,YAAG,KAAK,CAAC,KAAK,GAAc,EACnG,eAAK,SAAS,EAAC,6BAA6B,aACxC,KAAC,YAAY,IACT,EAAE,EAAE,SAAS,EACb,IAAI,EAAE,IAAI,KACN,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EACtD,SAAS,EAAC,8BAA8B,gCACb,MAAM,EACjC,SAAS,EAAE,SAAS,KAChB,CAAC,QAAQ,KAAK,SAAS;4BACvB,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC;gCACE,OAAO,EAAE,CAAC,KAAyC,EAAE,EAAE;oCACnD,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;wCAAE,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;gCAC/G,CAAC;gCACD,OAAO,EAAE,CAAC,KAA6C,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC;gCAC1F,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;gCAC5B,mBAAmB,EAAE,MAAe;gCACpC,+GAA+G;gCAC/G,gGAAgG;gCAChG,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,CAAC;6BACpG,CAAC,GACR,EACD,QAAQ,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxC,aAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAC,SAAS,gBAAa,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAC,0BAA0B,+BAA2B,MAAM,YAC3H,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAChC,cAEI,EAAE,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,EAAE,EAAE,EAC5B,IAAI,EAAC,QAAQ,mBACE,KAAK,KAAK,MAAM,EAC/B,SAAS,EAAC,4BAA4B,iCACT,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAChE,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;gCACnB,KAAK,CAAC,cAAc,EAAE,CAAA;gCACtB,MAAM,CAAC,MAAM,CAAC,CAAA;4BAClB,CAAC,EACD,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,aAEpC,eAAM,SAAS,EAAC,2BAA2B,YAAE,MAAM,CAAC,KAAK,GAAQ,EAChE,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,iCAAiC,YAAE,MAAM,CAAC,WAAW,GAAQ,KAbnH,MAAM,CAAC,EAAE,CAcb,CACR,CAAC,GACD,CACR,IACC,EACL,KAAK,CAAC,WAAW,IAAI,IAAI,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC3D,eAAK,SAAS,EAAC,wBAAwB,aACnC,KAAC,gBAAgB,cAAE,KAAK,CAAC,WAAW,GAAoB,EACvD,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC9B,gBACI,SAAS,EAAC,yBAAyB,8BACV,MAAM,0BACT,cAAc,CAAC,KAAK,CAAC,IAAI,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,aAEnF,MAAM,OAAG,SAAS,IAChB,CACV,IACC,CACT,EACD,KAAC,cAAc,cAAE,KAAK,CAAC,YAAY,GAAkB,IACzC,CACnB,CAAA;AACL,CAAC,CAAA"}
|
|
@@ -69,6 +69,23 @@
|
|
|
69
69
|
border-color var(--offset-pop-transition);
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
+
/* A loading Select or Textarea (knowledge STATE-8) keeps the field box: ink outline and control radius around the skeleton block. */
|
|
73
|
+
.grammar-common-root[data-grammar-family="offset-pop"] :is([data-component="Select"], [data-component="Textarea"], [data-component="NumberField"], [data-component="SearchField"], [data-component="SegmentedControl"]) .starci-core-field-skeleton-control {
|
|
74
|
+
box-sizing: border-box;
|
|
75
|
+
border: var(--offset-pop-outline-width) solid var(--offset-pop-ink);
|
|
76
|
+
border-radius: var(--offset-pop-control-radius);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.grammar-common-root[data-grammar-family="offset-pop"] :is([data-component="Select"], [data-component="Textarea"], [data-component="NumberField"], [data-component="SearchField"], [data-component="SegmentedControl"]) .starci-core-field-skeleton-control > .starci-core-skeleton {
|
|
80
|
+
border-radius: calc(var(--offset-pop-control-radius) - var(--offset-pop-outline-width));
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/* A loading checkbox box or switch track keeps the ink outline of the real control. */
|
|
84
|
+
.grammar-common-root[data-grammar-family="offset-pop"] :is([data-component="CheckboxGroup"], [data-component="Switch"]) .starci-core-field-skeleton-control {
|
|
85
|
+
box-sizing: border-box;
|
|
86
|
+
border: var(--offset-pop-outline-width) solid var(--offset-pop-ink);
|
|
87
|
+
}
|
|
88
|
+
|
|
72
89
|
/* Focus: the hard offset shadow, ink by default, critical while invalid. */
|
|
73
90
|
.grammar-common-root[data-grammar-family="offset-pop"] :is([data-component="Select"], [data-component="ComboBox"], [data-component="SearchField"], [data-component="NumberField"], [data-component="DateField"], [data-component="TimeField"], [data-component="DatePicker"], [data-component="DateRangePicker"], [data-component="Textarea"]) [data-grammar-field-control="true"]:is(:focus-visible, :focus-within, [data-focus-visible="true"], [data-focus-within="true"]),
|
|
74
91
|
.grammar-common-root[data-grammar-family="offset-pop"] [data-component="Field"] [data-grammar-field-control="true"] > :where(input, select, textarea):focus-visible,
|
|
@@ -173,6 +173,13 @@
|
|
|
173
173
|
font-weight: 800;
|
|
174
174
|
}
|
|
175
175
|
|
|
176
|
+
/* Selectable chips take the secondary-button treatment: --default fill (via the Common token hook), ink outline, a small ink offset. */
|
|
177
|
+
.grammar-common-root[data-grammar-family="offset-pop"] :is([data-grammar-tag-selection="single"], [data-grammar-tag-selection="multiple"]) [data-grammar-tag]:not([data-grammar-tag-state="off"]) {
|
|
178
|
+
--starci-core-tag-bg: var(--default);
|
|
179
|
+
--starci-core-tag-bg-hover: var(--default-hover, var(--default));
|
|
180
|
+
box-shadow: 0.125rem 0.125rem 0 var(--offset-pop-shadow-ink);
|
|
181
|
+
}
|
|
182
|
+
|
|
176
183
|
.grammar-common-root[data-grammar-family="offset-pop"] [data-component="TagGroup"] [data-grammar-tag]:has(> [data-grammar-selected="true"]) {
|
|
177
184
|
background: var(--offset-pop-pink);
|
|
178
185
|
color: var(--accent-foreground);
|