@gratiaos/ui 1.1.0 → 1.3.0

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.
@@ -1,4 +1,4 @@
1
- export * from './useMissingScrew';
2
- export * from './useSceneTheme';
3
- export * from './useFlowActivity';
1
+ export * from './useMissingScrew.js';
2
+ export * from './useSceneTheme.js';
3
+ export * from './useFlowActivity.js';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -1,4 +1,4 @@
1
- export * from './useMissingScrew';
2
- export * from './useSceneTheme';
3
- export * from './useFlowActivity';
1
+ export * from './useMissingScrew.js';
2
+ export * from './useSceneTheme.js';
3
+ export * from './useFlowActivity.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMissingScrew.d.ts","sourceRoot":"","sources":["../../src/hooks/useMissingScrew.ts"],"names":[],"mappings":"AAEA,KAAK,sBAAsB,GAAG;IAC5B,2EAA2E;IAC3E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B;IA4DhE,4DAA4D;;IAE5D,wEAAwE;;;;;IAExE,2EAA2E;;EAG9E;AAED,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"useMissingScrew.d.ts","sourceRoot":"","sources":["../../src/hooks/useMissingScrew.ts"],"names":[],"mappings":"AAIA,KAAK,sBAAsB,GAAG;IAC5B,2EAA2E;IAC3E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B;IA4DhE,4DAA4D;;IAE5D,wEAAwE;;;;;IAExE,2EAA2E;;EAG9E;AAED,eAAe,eAAe,CAAC"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { useCallback, useEffect, useId, useMemo, useState } from 'react';
2
3
  /**
3
4
  * Headless helper for a playful “Missing Screw” interaction.
@@ -1 +1 @@
1
- {"version":3,"file":"useMissingScrew.js","sourceRoot":"","sources":["../../src/hooks/useMissingScrew.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useMissingScrew.js","sourceRoot":"","sources":["../../src/hooks/useMissingScrew.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,6 +6,8 @@ export * from './primitives/field.js';
6
6
  export * from './primitives/badge.js';
7
7
  export * from './primitives/toast.js';
8
8
  export * from './primitives/whisper.js';
9
+ export * from './primitives/select.js';
10
+ export * from './primitives/toolbar.js';
9
11
  export * from './hooks/index.js';
10
12
  export * from './header/ConductorChip.js';
11
13
  export * from './header/Constellation.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC"}
package/dist/index.js CHANGED
@@ -6,6 +6,8 @@ export * from './primitives/field.js';
6
6
  export * from './primitives/badge.js';
7
7
  export * from './primitives/toast.js';
8
8
  export * from './primitives/whisper.js';
9
+ export * from './primitives/select.js';
10
+ export * from './primitives/toolbar.js';
9
11
  export * from './hooks/index.js';
10
12
  export * from './header/ConductorChip.js';
11
13
  export * from './header/Constellation.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Garden UI — Select primitive (headless)
3
+ * ---------------------------------------
4
+ * Whisper: "let choices stay simple." 🌿
5
+ *
6
+ * Purpose
7
+ * • Accessible wrapper around native <select> for Garden forms.
8
+ * • Headless: visuals live in `styles/select.css`; this file emits structure + data-attrs.
9
+ * • Works standalone or inside <Field> (as the [data-part="control"] payload).
10
+ *
11
+ * Data API
12
+ * • [data-ui="select"] — root hook for the skin
13
+ * • [data-state="valid|invalid"] — derived from `aria-invalid`
14
+ * • [data-disabled] — present when `disabled` is true
15
+ * • [data-tone="subtle|accent|positive|warning|danger"]
16
+ * • [data-variant="ghost"] — minimal chrome (toolbar/inline)
17
+ *
18
+ * A11y
19
+ * • Keeps native <select> semantics, focus, and keyboard behavior.
20
+ * • Use `aria-invalid="true"` to flag validation errors; skin will render
21
+ * the `invalid` state via [data-state].
22
+ *
23
+ * Theming
24
+ * • Skin reads Garden tokens only (no hard-coded colors) in `styles/select.css`.
25
+ * • Pair with <Field> for labels, hints, and error messages.
26
+ *
27
+ * Notes
28
+ * • If you use this inside <Field>, wrap it in the [data-part="control"] slot.
29
+ * • Tone is optional; defaults to "subtle" for calm, non-distracting selects.
30
+ */
31
+ import * as React from 'react';
32
+ import type { Tone } from './field.js';
33
+ export interface SelectProps extends React.SelectHTMLAttributes<HTMLSelectElement> {
34
+ /** Visual tone hint for the skin (subtle/accent/positive/warning/danger). */
35
+ tone?: Tone;
36
+ /** Optional visual variant (e.g., "ghost" for minimal chrome). */
37
+ variant?: 'ghost' | (string & {});
38
+ }
39
+ export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
40
+ //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/primitives/select.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IAChF,6EAA6E;IAC7E,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;CACnC;AAED,eAAO,MAAM,MAAM,uFAiBjB,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * Garden UI — Select primitive (headless)
4
+ * ---------------------------------------
5
+ * Whisper: "let choices stay simple." 🌿
6
+ *
7
+ * Purpose
8
+ * • Accessible wrapper around native <select> for Garden forms.
9
+ * • Headless: visuals live in `styles/select.css`; this file emits structure + data-attrs.
10
+ * • Works standalone or inside <Field> (as the [data-part="control"] payload).
11
+ *
12
+ * Data API
13
+ * • [data-ui="select"] — root hook for the skin
14
+ * • [data-state="valid|invalid"] — derived from `aria-invalid`
15
+ * • [data-disabled] — present when `disabled` is true
16
+ * • [data-tone="subtle|accent|positive|warning|danger"]
17
+ * • [data-variant="ghost"] — minimal chrome (toolbar/inline)
18
+ *
19
+ * A11y
20
+ * • Keeps native <select> semantics, focus, and keyboard behavior.
21
+ * • Use `aria-invalid="true"` to flag validation errors; skin will render
22
+ * the `invalid` state via [data-state].
23
+ *
24
+ * Theming
25
+ * • Skin reads Garden tokens only (no hard-coded colors) in `styles/select.css`.
26
+ * • Pair with <Field> for labels, hints, and error messages.
27
+ *
28
+ * Notes
29
+ * • If you use this inside <Field>, wrap it in the [data-part="control"] slot.
30
+ * • Tone is optional; defaults to "subtle" for calm, non-distracting selects.
31
+ */
32
+ import * as React from 'react';
33
+ export const Select = React.forwardRef(function Select({ tone = 'subtle', variant, className, disabled, ...rest }, ref) {
34
+ const ariaInvalid = rest['aria-invalid'];
35
+ const state = ariaInvalid === true || ariaInvalid === 'true' ? 'invalid' : 'valid';
36
+ return (_jsx("select", { ...rest, ref: ref, disabled: disabled, "data-ui": "select", "data-state": state, "data-disabled": disabled ? '' : undefined, "data-tone": tone, "data-variant": variant, className: className }));
37
+ });
38
+ Select.displayName = 'Select';
39
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/primitives/select.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAiC,SAAS,MAAM,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG;IACpJ,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;IACzC,MAAM,KAAK,GAAwB,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IAExG,OAAO,CACL,oBACM,IAAI,EACR,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,aACV,QAAQ,gBACJ,KAAK,mBACF,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,eAC7B,IAAI,kBACD,OAAO,EACrB,SAAS,EAAE,SAAS,GACpB,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC"}
@@ -1,34 +1,3 @@
1
- /**
2
- * Garden UI — Toast primitive (headless)
3
- * --------------------------------------
4
- * Rendering is data-attribute driven; visuals live in styles/toast.css.
5
- * Emit with `showToast(...)` (CustomEvent), render with `<Toaster/>`.
6
- *
7
- * A11y
8
- * • Each item is `role="status"` with `aria-atomic="true"` so screen readers
9
- * announce the toast as a single unit.
10
- * • Items are focusable by default (tabIndex=0). Focus/hover pauses auto‑dismiss;
11
- * blur/mouseleave resumes. Keyboard: Enter/Space dismiss (when dismissOnClick),
12
- * Escape always dismisses.
13
- *
14
- * Theming
15
- * • Duration prefers `--dur-toast`; otherwise derives from `--dur-pulse` with a
16
- * generous hold. Colors/shape come from tokens: `--elev`, `--text`, `--border`,
17
- * and `--color-*` accents.
18
- *
19
- *
20
- * UI data‑states (handled by the primitive)
21
- * • Each toast mounts with `data-state="entering"` and clears it on next frame
22
- * so CSS can ease in.
23
- * • On dismiss, we set `data-state="leaving"` and remove the node after the
24
- * tokenized transition (see styles/toast.css).
25
- *
26
- * Event API (headless, global)
27
- * • showToast("Saved ✓", { variant: "positive" })
28
- * • showToast({ key: "sync", title: "Syncing…", variant: "neutral" }) // keyed upsert
29
- * • clearToast() // remove all
30
- * • clearToast("sync") // remove item(s) with key
31
- */
32
1
  import React from 'react';
33
2
  export type ToastVariant = 'neutral' | 'positive' | 'warning' | 'danger';
34
3
  export type ToastOptions = {
@@ -1 +1 @@
1
- {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../src/primitives/toast.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;AACzE,MAAM,MAAM,YAAY,GAAG;IACzB,wDAAwD;IACxD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iGAAiG;IACjG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qGAAqG;IACrG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAUF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;;;;;;EAmFA;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;AACtE,wBAAgB,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;AAcpD,2BAA2B;AAC3B,wBAAgB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAO7C;AAGD,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IAEnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC,CAAC;AA4CF,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,YAAY,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;AAElG,MAAM,MAAM,YAAY,GAAG;IACzB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,cAAc,CAAC;IACzE,oEAAoE;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,8EAA8E;IAC9E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAmT1C,CAAC"}
1
+ {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../src/primitives/toast.tsx"],"names":[],"mappings":"AAiCA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;AACzE,MAAM,MAAM,YAAY,GAAG;IACzB,wDAAwD;IACxD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iGAAiG;IACjG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qGAAqG;IACrG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAUF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;;;;;;EAmFA;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;AACtE,wBAAgB,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;AAcpD,2BAA2B;AAC3B,wBAAgB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAO7C;AAGD,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IAEnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC,CAAC;AA4CF,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,YAAY,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;AAElG,MAAM,MAAM,YAAY,GAAG;IACzB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,cAAc,CAAC;IACzE,oEAAoE;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,8EAA8E;IAC9E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAmT1C,CAAC"}
@@ -1,4 +1,3 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
1
  /**
3
2
  * Garden UI — Toast primitive (headless)
4
3
  * --------------------------------------
@@ -30,6 +29,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
30
29
  * • clearToast() // remove all
31
30
  * • clearToast("sync") // remove item(s) with key
32
31
  */
32
+ 'use client';
33
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
33
34
  import React, { useEffect, useMemo, useRef, useState } from 'react';
34
35
  // Detect dev mode without importing Node types (works in browser ESM).
35
36
  function isDevEnvironment() {
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","sourceRoot":"","sources":["../../src/primitives/toast.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toast.js","sourceRoot":"","sources":["../../src/primitives/toast.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Garden UI — Toolbar primitive (headless)
3
+ * ---------------------------------------
4
+ * Whisper: "tools should feel near, not loud." 🌬️
5
+ *
6
+ * Purpose
7
+ * • Structural container for icon/text controls (filters, view toggles, etc.).
8
+ * • Headless: visuals live in `styles/toolbar.css`; this file emits structure + data-attrs.
9
+ * • Works with <Button>, <Select>, and other Garden primitives inside.
10
+ *
11
+ * Data API
12
+ * • [data-ui="toolbar"] — root
13
+ * • [data-orientation="horizontal|vertical"] — layout hint; default: "horizontal"
14
+ * • [data-density="cozy|snug"] — vertical padding; default: "cozy"
15
+ * • [data-part="group"] — optional sub-group wrapper
16
+ *
17
+ * A11y
18
+ * • Renders role="toolbar" on the root.
19
+ * • Pass `aria-label` or `aria-labelledby` so screen readers know what this toolbar does.
20
+ *
21
+ * Theming
22
+ * • Skin reads Garden tokens only (no hard-coded colors) in `styles/toolbar.css`.
23
+ * • Typical pattern: place ghost/subtle Buttons inside so toolbar feels calm by default.
24
+ */
25
+ import * as React from 'react';
26
+ export type ToolbarOrientation = 'horizontal' | 'vertical';
27
+ export type ToolbarDensity = 'cozy' | 'snug';
28
+ export interface ToolbarProps extends React.HTMLAttributes<HTMLDivElement> {
29
+ /** Layout direction; horizontal by default. */
30
+ orientation?: ToolbarOrientation;
31
+ /** Vertical density; "cozy" = default, "snug" = tighter. */
32
+ density?: ToolbarDensity;
33
+ }
34
+ /**
35
+ * Root toolbar container.
36
+ *
37
+ * Example:
38
+ * <Toolbar aria-label="Presence view tools">
39
+ * <ToolbarGroup>
40
+ * <Button variant="ghost" tone="default">Today</Button>
41
+ * <Button variant="ghost" tone="default">Week</Button>
42
+ * </ToolbarGroup>
43
+ * <ToolbarGroup>
44
+ * <Select>...</Select>
45
+ * </ToolbarGroup>
46
+ * </Toolbar>
47
+ */
48
+ export declare const Toolbar: React.ForwardRefExoticComponent<ToolbarProps & React.RefAttributes<HTMLDivElement>>;
49
+ export interface ToolbarGroupProps extends React.HTMLAttributes<HTMLDivElement> {
50
+ }
51
+ /**
52
+ * Optional group wrapper for logically related controls inside a toolbar.
53
+ *
54
+ * <Toolbar>
55
+ * <ToolbarGroup>primary controls…</ToolbarGroup>
56
+ * <ToolbarGroup>secondary controls…</ToolbarGroup>
57
+ * </Toolbar>
58
+ */
59
+ export declare const ToolbarGroup: React.ForwardRefExoticComponent<ToolbarGroupProps & React.RefAttributes<HTMLDivElement>>;
60
+ //# sourceMappingURL=toolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../src/primitives/toolbar.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAAG,UAAU,CAAC;AAC3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACxE,+CAA+C;IAC/C,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,4DAA4D;IAC5D,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,qFAmBlB,CAAC;AAEH,MAAM,WAAW,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAElF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,0FAYvB,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * Garden UI — Toolbar primitive (headless)
4
+ * ---------------------------------------
5
+ * Whisper: "tools should feel near, not loud." 🌬️
6
+ *
7
+ * Purpose
8
+ * • Structural container for icon/text controls (filters, view toggles, etc.).
9
+ * • Headless: visuals live in `styles/toolbar.css`; this file emits structure + data-attrs.
10
+ * • Works with <Button>, <Select>, and other Garden primitives inside.
11
+ *
12
+ * Data API
13
+ * • [data-ui="toolbar"] — root
14
+ * • [data-orientation="horizontal|vertical"] — layout hint; default: "horizontal"
15
+ * • [data-density="cozy|snug"] — vertical padding; default: "cozy"
16
+ * • [data-part="group"] — optional sub-group wrapper
17
+ *
18
+ * A11y
19
+ * • Renders role="toolbar" on the root.
20
+ * • Pass `aria-label` or `aria-labelledby` so screen readers know what this toolbar does.
21
+ *
22
+ * Theming
23
+ * • Skin reads Garden tokens only (no hard-coded colors) in `styles/toolbar.css`.
24
+ * • Typical pattern: place ghost/subtle Buttons inside so toolbar feels calm by default.
25
+ */
26
+ import * as React from 'react';
27
+ /**
28
+ * Root toolbar container.
29
+ *
30
+ * Example:
31
+ * <Toolbar aria-label="Presence view tools">
32
+ * <ToolbarGroup>
33
+ * <Button variant="ghost" tone="default">Today</Button>
34
+ * <Button variant="ghost" tone="default">Week</Button>
35
+ * </ToolbarGroup>
36
+ * <ToolbarGroup>
37
+ * <Select>...</Select>
38
+ * </ToolbarGroup>
39
+ * </Toolbar>
40
+ */
41
+ export const Toolbar = React.forwardRef(function Toolbar({ orientation = 'horizontal', density = 'cozy', className, role, ...rest }, ref) {
42
+ const dataAttrs = {
43
+ 'data-ui': 'toolbar',
44
+ 'data-orientation': orientation,
45
+ 'data-density': density,
46
+ };
47
+ return (_jsx("div", { ...rest, ...dataAttrs, ref: ref, role: role ?? 'toolbar', className: className }));
48
+ });
49
+ /**
50
+ * Optional group wrapper for logically related controls inside a toolbar.
51
+ *
52
+ * <Toolbar>
53
+ * <ToolbarGroup>primary controls…</ToolbarGroup>
54
+ * <ToolbarGroup>secondary controls…</ToolbarGroup>
55
+ * </Toolbar>
56
+ */
57
+ export const ToolbarGroup = React.forwardRef(function ToolbarGroup({ className, ...rest }, ref) {
58
+ return (_jsx("div", { ...rest, ref: ref, "data-part": "group", className: className }));
59
+ });
60
+ Toolbar.displayName = 'Toolbar';
61
+ ToolbarGroup.displayName = 'ToolbarGroup';
62
+ //# sourceMappingURL=toolbar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbar.js","sourceRoot":"","sources":["../../src/primitives/toolbar.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAY/B;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAA+B,SAAS,OAAO,CACpF,EAAE,WAAW,GAAG,YAAY,EAAE,OAAO,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAC1E,GAAG;IAEH,MAAM,SAAS,GAAG;QAChB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,WAAW;QAC/B,cAAc,EAAE,OAAO;KACf,CAAC;IAEX,OAAO,CACL,iBACM,IAAI,KACJ,SAAS,EACb,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,IAAI,SAAS,EACvB,SAAS,EAAE,SAAS,GACpB,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAIH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAoC,SAAS,YAAY,CACnG,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EACtB,GAAG;IAEH,OAAO,CACL,iBACM,IAAI,EACR,GAAG,EAAE,GAAG,eACE,OAAO,EACjB,SAAS,EAAE,SAAS,GACpB,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;AAChC,YAAY,CAAC,WAAW,GAAG,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gratiaos/ui",
3
- "version": "1.1.0",
3
+ "version": "1.3.0",
4
4
  "funding": "https://github.com/sponsors/GratiaOS",
5
5
  "type": "module",
6
6
  "license": "AGPL-3.0-only",
@@ -46,6 +46,10 @@
46
46
  "types": "./dist/primitives/badge.d.ts",
47
47
  "import": "./dist/primitives/badge.js"
48
48
  },
49
+ "./primitives/Toolbar": {
50
+ "types": "./dist/primitives/toolbar.d.ts",
51
+ "import": "./dist/primitives/toolbar.js"
52
+ },
49
53
  "./styles/base.css": {
50
54
  "default": "./styles/base.css"
51
55
  },
@@ -72,6 +76,9 @@
72
76
  },
73
77
  "./styles/badge.css": {
74
78
  "default": "./styles/badge.css"
79
+ },
80
+ "./styles/toolbar.css": {
81
+ "default": "./styles/toolbar.css"
75
82
  }
76
83
  },
77
84
  "files": [
package/styles/base.css CHANGED
@@ -7,3 +7,5 @@
7
7
  @import './badge.css';
8
8
  @import './whisper.css';
9
9
  @import './header.css';
10
+ @import './select.css';
11
+ @import './toolbar.css';
package/styles/field.css CHANGED
@@ -123,17 +123,6 @@
123
123
  min-height: 2.5rem;
124
124
  }
125
125
 
126
- /* Select tweaks */
127
- [data-ui='field'] [data-part='control'] select {
128
- appearance: none;
129
- padding-right: 1.5rem; /* room for chevron */
130
- background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
131
- background-position: right 0.5rem center, right 0.25rem center;
132
- background-size: 6px 6px, 6px 6px;
133
- background-repeat: no-repeat;
134
- color: var(--text);
135
- }
136
-
137
126
  /* Disabled/read-only native controls (mirrors root [data-disabled]) */
138
127
  [data-ui='field'] [data-part='control'] :is(input, textarea, select):disabled,
139
128
  [data-ui='field'][data-disabled] [data-part='control'] :is(input, textarea, select) {
@@ -0,0 +1,145 @@
1
+ /* ─────────────────────────────────────────────────────────────
2
+ Garden UI — Select skin
3
+ Whisper: "choices should feel gentle, never rushed." 🌬️
4
+
5
+ Purpose
6
+ • Visual skin for the headless Select primitive.
7
+ • Provides chrome for standalone <select>; yields to Field when nested.
8
+
9
+ Data API
10
+ • [data-ui='select'] — root hook
11
+ • [data-disabled] — dim + block interaction
12
+ • [data-variant='ghost'] — minimal chrome, ideal for toolbars
13
+ • [data-state='invalid'] — highlight as error/invalid
14
+
15
+ Integration
16
+ • When placed inside [data-ui='field'] [data-part='control'],
17
+ the Field shell owns layout, border, and focus ring; this skin
18
+ strips its own chrome so the two don’t fight.
19
+
20
+ Notes
21
+ • Uses Garden tokens (surface, border, accent) — no hardcoded hex.
22
+ • Caret is drawn with CSS gradients; no external icon asset.
23
+ ──────────────────────────────────────────────────────────── */
24
+
25
+ [data-ui='select'] {
26
+ appearance: none;
27
+ background: var(--surface-elevated, color-mix(in oklab, var(--color-surface) 90%, white 10%));
28
+ border-radius: var(--radius-lg, 0.85rem);
29
+ border: 1px solid var(--border-subtle, color-mix(in oklab, var(--color-accent) 15%, transparent 85%));
30
+ padding: 0.5rem 1.9rem 0.5rem 0.85rem;
31
+ font: inherit;
32
+ color: var(--text, inherit);
33
+ min-width: 8rem;
34
+ line-height: 1.4;
35
+ position: relative;
36
+ transition:
37
+ border-color 160ms var(--ease-soft, ease),
38
+ box-shadow 160ms var(--ease-soft, ease),
39
+ background 160ms var(--ease-soft, ease);
40
+ }
41
+
42
+ [data-ui='select'][data-variant='ghost'] {
43
+ background: transparent;
44
+ border-color: transparent;
45
+ box-shadow: none;
46
+ border-radius: var(--radius-md, 0.375rem);
47
+ padding-inline: 0.25rem 1.5rem; /* tighter, but keep room for caret */
48
+ min-width: 0;
49
+ }
50
+
51
+ [data-ui='select'][data-variant='ghost']:hover:not([data-disabled]) {
52
+ background: color-mix(in oklab, var(--color-accent) 10%, transparent 90%);
53
+ border-color: transparent;
54
+ }
55
+
56
+ [data-ui='select'][data-variant='ghost']:focus-visible {
57
+ outline: none;
58
+ border-color: transparent;
59
+ box-shadow:
60
+ 0 0 0 1px color-mix(in oklab, var(--color-accent) 35%, transparent 65%),
61
+ 0 0 0 3px color-mix(in oklab, var(--color-accent) 12%, transparent 88%);
62
+ }
63
+
64
+ [data-ui='select']::after {
65
+ content: '';
66
+ position: absolute;
67
+ pointer-events: none;
68
+ top: 50%;
69
+ right: 0.85rem;
70
+ transform: translateY(-45%);
71
+ width: 0;
72
+ height: 0;
73
+ border-left: 4px solid transparent;
74
+ border-right: 4px solid transparent;
75
+ border-top: 5px solid color-mix(in oklab, currentColor 75%, transparent);
76
+ opacity: 0.7;
77
+ transition:
78
+ transform 160ms var(--ease-soft, ease),
79
+ opacity 160ms var(--ease-soft, ease);
80
+ }
81
+
82
+ [data-ui='select']:hover:not([data-disabled])::after {
83
+ opacity: 0.9;
84
+ }
85
+
86
+ [data-ui='select']:focus-visible::after {
87
+ transform: translateY(-45%) scale(1.05);
88
+ opacity: 1;
89
+ }
90
+
91
+ [data-ui='select']:hover:not([data-disabled]) {
92
+ border-color: color-mix(in oklab, var(--color-accent) 35%, transparent 65%);
93
+ }
94
+
95
+ [data-ui='select']:focus-visible {
96
+ outline: 0;
97
+ box-shadow:
98
+ 0 0 0 1px color-mix(in oklab, var(--color-accent) 45%, transparent 55%),
99
+ 0 0 0 4px color-mix(in oklab, var(--color-accent) 18%, transparent 82%);
100
+ }
101
+
102
+ [data-ui='select'][data-disabled] {
103
+ opacity: 0.55;
104
+ cursor: not-allowed;
105
+ }
106
+
107
+ [data-ui='select'][data-state='invalid'] {
108
+ border-color: var(--border-danger, color-mix(in oklab, var(--color-danger) 55%, transparent 45%));
109
+ }
110
+
111
+ /* ==========================================================================
112
+ Select inside Field
113
+ When used inside a Garden Field, the Select strips its own shell chrome
114
+ (background, border, etc.) but still renders its caret. The Field shell
115
+ provides the outer layout, border, and focus ring; Select only draws its
116
+ dropdown chevron inside.
117
+ ========================================================================== */
118
+
119
+ [data-ui='field'] [data-part='control'] [data-ui='select'] {
120
+ /* let Field own the shell chrome; Select just draws its caret */
121
+ appearance: none;
122
+ background: transparent;
123
+ border: 0;
124
+ padding: 0;
125
+ padding-right: 1.5rem; /* room for caret */
126
+ min-width: 0;
127
+ box-shadow: none;
128
+ background-image:
129
+ linear-gradient(45deg, transparent 50%, color-mix(in oklab, currentColor 70%, transparent) 50%),
130
+ linear-gradient(135deg, color-mix(in oklab, currentColor 70%, transparent) 50%, transparent 50%);
131
+ background-position:
132
+ right 0.75rem center,
133
+ right 0.55rem center;
134
+ background-repeat: no-repeat;
135
+ background-size: 6px 6px, 6px 6px;
136
+ }
137
+
138
+ [data-ui='field'] [data-part='control'] [data-ui='select']::after {
139
+ content: none;
140
+ }
141
+
142
+ [data-ui='field'] [data-part='control'] [data-ui='select']:focus-visible {
143
+ outline: none;
144
+ box-shadow: none;
145
+ }
package/styles/theme.css CHANGED
@@ -14,24 +14,21 @@
14
14
  --text-xs: 0.75rem; /* 12px */
15
15
  --text-2xs: 0.6875rem; /* 11px — micro labels (Badge, meta) */
16
16
 
17
- /* === Global semantics (light defaults) === */
18
- --color-surface: oklch(97% 0.01 180);
19
- --color-elev: oklch(96% 0.005 180);
17
+ /* === Core palette (generates bg-*, text-*, border-* utilities) === */
18
+ --color-surface: oklch(97% 0.01 95);
19
+ --color-elev: oklch(96% 0.008 95);
20
20
  --color-text: oklch(27% 0.02 275);
21
21
 
22
- /* Accent & on-accent */
23
- --color-accent: oklch(62% 0.09 150);
22
+ --color-accent: oklch(80% 0.14 80);
24
23
  --color-on-accent: oklch(15% 0.01 180);
24
+ --color-inverse: oklch(15% 0.01 180);
25
25
 
26
- /* === Tone scale (semantic feedback colors) === */
27
- --color-positive: oklch(62% 0.09 150); /* leaf / growth */
28
- --color-warning: oklch(80% 0.14 80); /* amber / alert */
29
- --color-danger: oklch(60% 0.18 27); /* red / stop */
26
+ --color-positive: oklch(62% 0.09 150);
27
+ --color-warning: oklch(82% 0.14 80);
28
+ --color-danger: oklch(60% 0.18 27);
30
29
 
31
- /* Borders */
32
30
  --color-border: oklch(90% 0.02 155);
33
31
 
34
- /* Text subtleties — expose as utilities: text-muted, text-subtle, text-faint */
35
32
  --color-muted: color-mix(in oklab, var(--color-text) 72%, transparent);
36
33
  --color-subtle: color-mix(in oklab, var(--color-text) 60%, transparent);
37
34
  --color-faint: color-mix(in oklab, var(--color-text) 45%, transparent);
@@ -39,8 +36,8 @@
39
36
  /* Tone fade neutrals (scene transitions) */
40
37
  --tone-transition-duration: 800ms;
41
38
  --tone-transition: background var(--tone-transition-duration) var(--ease-soft, ease), color var(--tone-transition-duration) var(--ease-soft, ease);
42
- --tone-neutral-surface: color-mix(in oklab, var(--color-surface) 70%, var(--color-accent) 30%);
43
- --tone-neutral-text: color-mix(in oklab, var(--color-text) 65%, var(--color-accent) 35%);
39
+ --tone-neutral-surface: color-mix(in oklab, var(--surface) 70%, var(--accent) 30%);
40
+ --tone-neutral-text: color-mix(in oklab, var(--text) 65%, var(--accent) 35%);
44
41
 
45
42
  /* Phase hues (used by presence dots + HUD) */
46
43
  --phase-companion-hue: 160; /* trust / green */
@@ -163,6 +160,68 @@
163
160
  /* === Runtime dark mapping (no duplicate @theme) === */
164
161
  @layer base {
165
162
  :root {
163
+ /* Runtime semantic palette defaults (used when no skin is set) */
164
+ --color-surface: oklch(97% 0.03 95);
165
+ --color-elev: oklch(98.6% 0.02 95);
166
+ --color-text: oklch(26% 0.05 70);
167
+
168
+ --color-accent: oklch(80% 0.14 80);
169
+ --color-on-accent: oklch(15% 0.01 180);
170
+ --color-inverse: var(--color-on-accent);
171
+
172
+ --color-positive: oklch(62% 0.09 150);
173
+ --color-warning: oklch(82% 0.14 80);
174
+ --color-danger: oklch(60% 0.18 27);
175
+
176
+ --color-border: oklch(88% 0.04 95);
177
+
178
+ /* Text subtleties */
179
+ --color-muted: color-mix(in oklab, var(--color-text) 72%, transparent);
180
+ --color-subtle: color-mix(in oklab, var(--color-text) 60%, transparent);
181
+ --color-faint: color-mix(in oklab, var(--color-text) 45%, transparent);
182
+
183
+ /* Runtime aliases for custom CSS & calc() (keep inside base for deterministic order) */
184
+ --surface: var(--color-surface);
185
+ --elev: var(--color-elev);
186
+ --text: var(--color-text);
187
+ --accent: var(--color-accent);
188
+ --on-accent: var(--color-on-accent);
189
+ --border: var(--color-border);
190
+
191
+ --text-muted: var(--color-muted);
192
+ --text-subtle: var(--color-subtle);
193
+ --text-faint: var(--color-faint);
194
+ --color-fill-subtle: color-mix(in oklab, var(--color-text) 8%, var(--color-surface));
195
+
196
+ --sheet-radius: var(--radius-2xl);
197
+ --shadow-card-ambient: var(--shadow-card);
198
+
199
+ /* Covenant & RTP-friendly defaults (read by UI; override via [data-mode]) */
200
+ --composer-privacy-default: public; /* flipped to `sealed` in RTP */
201
+ --capacity-units-per-day: 3; /* UI renders three capacity dots */
202
+ --rtp-hint-default: "ask, don't test"; /* language-interrupt default hint */
203
+ --rest-is-repair: 0; /* 1 when RTP mode is active */
204
+
205
+ /* Motion — durations */
206
+ --dur-pulse: 700ms; /* UI chip pulse duration */
207
+ --dur-toast: 5s; /* or 4800ms */
208
+
209
+ /* Pad hero gradient defaults (used by PadChrome) */
210
+ --pad-hero-start: color-mix(in oklab, var(--accent) 12%, var(--surface));
211
+ --pad-hero-end: color-mix(in oklab, var(--accent) 3%, var(--surface));
212
+
213
+ /* Pad mood tokens (default values; remapped by [data-pad-mood]) */
214
+ --accent-strength: 1; /* 0.0–1.2 — scales accent usage */
215
+ --glow-intensity: 0.1; /* 0–1 — subtle halo/glow */
216
+ --ring-alpha: 0.18; /* 0–1 — whisper ring strength */
217
+ --grain-strength: 0.12; /* 0–1 — ambient grain strength */
218
+ --grain-size: 140px; /* px — grain tile size used by card grain overlay */
219
+ --track-glow: color-mix(in oklab, var(--tone-accent) 55%, transparent);
220
+ --track-shadow: color-mix(in oklab, var(--tone-accent) 32%, transparent);
221
+ --scene-highlight: color-mix(in oklab, var(--tone-accent) 60%, transparent);
222
+ --presence-dot-color: color-mix(in oklab, var(--tone-accent) 70%, white 15%);
223
+ --ghost-trail-color: color-mix(in oklab, var(--tone-accent) 22%, transparent);
224
+
166
225
  --tone-accent: color-mix(in oklab, var(--color-accent) 82%, white 18%);
167
226
  --tone-surface: color-mix(in oklab, var(--color-surface) 92%, var(--tone-accent) 8%);
168
227
  --tone-ink: color-mix(in oklab, var(--color-text) 96%, white 4%);
@@ -205,25 +264,65 @@
205
264
  --tone-accent: #ffd59e;
206
265
  }
207
266
 
208
- :root[data-theme='dark'],
209
- :root.dark {
210
- --color-surface: oklch(21% 0.07 241);
211
- --color-elev: oklch(18% 0.02 200);
212
- --color-text: oklch(97% 0.01 180);
267
+ /* ---------------------------------------------------------------------- */
268
+ /* Skins (explicit global palette switch) */
269
+ /* ---------------------------------------------------------------------- */
213
270
 
214
- /* Slightly cooler/glow accent at night */
215
- --color-accent: oklch(78% 0.12 190);
216
- --color-on-accent: oklch(16% 0.02 200);
271
+ /* ☀️ SUN — warm dawn/dusk paper, soft glare */
272
+ :root[data-skin-id='SUN'] {
273
+ color-scheme: light;
217
274
 
218
- --color-positive: oklch(75% 0.12 150);
275
+ /* Firecircle parchment — dawn/dusk (less white, more soft warmth) */
276
+ --color-surface: oklch(92.8% 0.028 88);
277
+ --color-elev: oklch(94.2% 0.024 88);
278
+
279
+ /* Warm ink (deeper for readability, not harsh) */
280
+ --color-text: oklch(23% 0.045 70);
281
+
282
+ /* Ember accent (kept warm, slightly gentler) */
283
+ --color-accent: oklch(68% 0.145 55);
284
+ --color-on-accent: oklch(14% 0.02 70);
285
+
286
+ --color-positive: oklch(62% 0.09 150);
219
287
  --color-warning: oklch(82% 0.14 80);
220
- --color-danger: oklch(68% 0.16 27);
288
+ --color-danger: oklch(60% 0.18 27);
289
+
290
+ /* Softer, warmer borders */
291
+ --color-border: oklch(82% 0.03 88);
221
292
 
222
- --color-border: oklch(38% 0.03 180);
293
+ /* Calmer interactive halo on bright skins */
294
+ --ring-alpha: 0.11;
295
+ --glow-intensity: 0.05;
223
296
 
224
- /* Darker card shadow */
297
+ /* Slightly warmer card shadow (reads nicer on parchment) */
298
+ --shadow-card: 0 1px 2px rgb(0 0 0 / 0.04), 0 10px 28px -12px rgb(0 0 0 / 0.14);
299
+ }
300
+
301
+ /* 🌙 MOON — deep forest night, full‑moon accent */
302
+ :root[data-skin-id='MOON'] {
303
+ color-scheme: dark;
304
+
305
+ /* Deep green night (no corporate blue) */
306
+ --color-surface: oklch(18% 0.02 150);
307
+ --color-elev: oklch(15% 0.015 150);
308
+ --color-text: oklch(95% 0.015 92); /* ivory ember text */
309
+
310
+ /* Full‑moon accent (soft warm lunar) */
311
+ --color-accent: oklch(84% 0.035 85);
312
+ --color-on-accent: oklch(16% 0.015 150);
313
+ --color-inverse: var(--color-on-accent);
314
+
315
+ --color-positive: oklch(72% 0.07 152); /* mint tea (cozy, not neon) */
316
+ --color-warning: oklch(78% 0.1 70); /* pumpkin pie amber (warm, softer) */
317
+ --color-danger: oklch(66% 0.12 30); /* flame red (alert, not neon) */
318
+
319
+ --color-border: oklch(32% 0.015 150);
225
320
  --shadow-card: 0 1px 2px rgb(0 0 0 / 0.12), 0 8px 18px -8px rgb(0 0 0 / 0.35);
226
321
 
322
+ /* Held-night interaction (present, not neon) */
323
+ --ring-alpha: 0.16; /* a touch more held */
324
+ --glow-intensity: 0.12; /* +1 semineu */
325
+
227
326
  /* Depth shadows tuned for dark */
228
327
  --shadow-depth-0: 0 0 0 0 rgb(0 0 0 / 0);
229
328
  --shadow-depth-1: 0 1px 2px rgb(0 0 0 / 0.12), 0 6px 14px -8px rgb(0 0 0 / 0.28);
@@ -241,39 +340,48 @@
241
340
  --drop-shadow-depth-3: 0 6px 6px rgb(0 0 0 / 0.42);
242
341
  }
243
342
 
244
- /* Respect system preference when no explicit choice */
245
- @media (prefers-color-scheme: dark) {
246
- :root:not([data-theme]) {
247
- --color-surface: oklch(21% 0.07 241);
248
- --color-elev: oklch(18% 0.02 200);
249
- --color-text: oklch(97% 0.01 180);
250
- --color-accent: oklch(78% 0.12 190);
251
- --color-on-accent: oklch(16% 0.02 200);
343
+ /* 🌿 GARDEN soft daylight green */
344
+ :root[data-skin-id='GARDEN'] {
345
+ color-scheme: light;
346
+ --color-surface: oklch(97% 0.01 150);
347
+ --color-elev: oklch(96% 0.01 150);
348
+ --color-text: oklch(27% 0.02 160);
252
349
 
253
- --color-positive: oklch(75% 0.12 150);
254
- --color-warning: oklch(82% 0.14 80);
255
- --color-danger: oklch(68% 0.16 27);
350
+ --color-accent: oklch(62% 0.09 150);
351
+ --color-on-accent: oklch(15% 0.01 180);
352
+ --color-inverse: var(--color-on-accent);
256
353
 
257
- --color-border: oklch(38% 0.03 180);
258
- --shadow-card: 0 1px 2px rgb(0 0 0 / 0.12), 0 8px 18px -8px rgb(0 0 0 / 0.35);
354
+ --color-positive: oklch(62% 0.09 150);
355
+ --color-warning: oklch(80% 0.14 80);
356
+ --color-danger: oklch(60% 0.18 27);
259
357
 
260
- --inset-shadow-depth-0: inset 0 0 0 0 rgb(0 0 0 / 0);
261
- --inset-shadow-depth-1: inset 0 1px 1px rgb(0 0 0 / 0.12);
262
- --inset-shadow-depth-2: inset 0 2px 3px rgb(0 0 0 / 0.2);
263
- --inset-shadow-depth-3: inset 0 3px 6px rgb(0 0 0 / 0.3);
358
+ --color-border: oklch(90% 0.02 155);
359
+ }
264
360
 
265
- --drop-shadow-depth-0: 0 0 0 rgb(0 0 0 / 0);
266
- --drop-shadow-depth-1: 0 1px 1px rgb(0 0 0 / 0.25);
267
- --drop-shadow-depth-2: 0 3px 3px rgb(0 0 0 / 0.32);
268
- --drop-shadow-depth-3: 0 6px 6px rgb(0 0 0 / 0.42);
361
+ /* 🟣 STELLAR violet night */
362
+ :root[data-skin-id='STELLAR'] {
363
+ color-scheme: dark;
364
+ --color-surface: oklch(19% 0.05 290);
365
+ --color-elev: oklch(16% 0.03 290);
366
+ --color-text: oklch(97% 0.01 180);
269
367
 
270
- --tone-accent: color-mix(in oklab, var(--color-accent) 70%, white 30%);
271
- --tone-surface: color-mix(in oklab, var(--color-surface) 88%, var(--tone-accent) 12%);
272
- --tone-ink: color-mix(in oklab, var(--color-text) 98%, white 2%);
273
- --tone-glow: 0 0 32px color-mix(in oklab, var(--tone-accent) 42%, transparent);
274
- --constellation-dot: color-mix(in oklab, var(--tone-ink) 65%, transparent);
368
+ --color-accent: oklch(70% 0.16 300);
369
+ --color-on-accent: oklch(16% 0.02 290);
370
+ --color-inverse: var(--color-on-accent);
371
+
372
+ --color-positive: oklch(75% 0.12 150);
373
+ --color-warning: oklch(82% 0.14 80);
374
+ --color-danger: oklch(68% 0.16 27);
375
+
376
+ --color-border: oklch(38% 0.03 290);
377
+
378
+ /* Reuse dark depth shadows */
379
+ --shadow-card: 0 1px 2px rgb(0 0 0 / 0.12), 0 8px 18px -8px rgb(0 0 0 / 0.35);
380
+ --shadow-depth-0: 0 0 0 0 rgb(0 0 0 / 0);
381
+ --shadow-depth-1: 0 1px 2px rgb(0 0 0 / 0.12), 0 6px 14px -8px rgb(0 0 0 / 0.28);
382
+ --shadow-depth-2: 0 2px 8px rgb(0 0 0 / 0.18), 0 14px 30px -12px rgb(0 0 0 / 0.36);
383
+ --shadow-depth-3: 0 8px 20px rgb(0 0 0 / 0.28), 0 26px 54px -20px rgb(0 0 0 / 0.5);
275
384
  }
276
- }
277
385
 
278
386
  /* Depth mapping helpers — set current depth variables from [data-depth] */
279
387
  :root {
@@ -373,52 +481,6 @@
373
481
  }
374
482
  }
375
483
 
376
- /* === Aliases for custom CSS & calc() ===
377
- These do not create utilities; they are convenience variables.
378
- */
379
- :root {
380
- --surface: var(--color-surface);
381
- --elev: var(--color-elev);
382
- --text: var(--color-text);
383
- --accent: var(--color-accent);
384
- --on-accent: var(--color-on-accent);
385
- --border: var(--color-border);
386
-
387
- --text-muted: var(--color-muted);
388
- --text-subtle: var(--color-subtle);
389
- --text-faint: var(--color-faint);
390
- --color-fill-subtle: color-mix(in oklab, var(--color-text) 8%, var(--color-surface));
391
-
392
- --sheet-radius: var(--radius-2xl);
393
- --shadow-card-ambient: var(--shadow-card);
394
-
395
- /* Covenant & RTP-friendly defaults (read by UI; override via [data-mode]) */
396
- --composer-privacy-default: public; /* flipped to `sealed` in RTP */
397
- --capacity-units-per-day: 3; /* UI renders three capacity dots */
398
- --rtp-hint-default: "ask, don't test"; /* language-interrupt default hint */
399
- --rest-is-repair: 0; /* 1 when RTP mode is active */
400
-
401
- /* Motion — durations */
402
- --dur-pulse: 700ms; /* UI chip pulse duration */
403
- --dur-toast: 5s; /* or 4800ms */
404
-
405
- /* Pad hero gradient defaults (used by PadChrome) */
406
- --pad-hero-start: color-mix(in oklab, var(--accent) 12%, var(--surface));
407
- --pad-hero-end: color-mix(in oklab, var(--accent) 3%, var(--surface));
408
-
409
- /* Pad mood tokens (default values; remapped by [data-pad-mood]) */
410
- --accent-strength: 1; /* 0.0–1.2 — scales accent usage */
411
- --glow-intensity: 0.1; /* 0–1 — subtle halo/glow */
412
- --ring-alpha: 0.18; /* 0–1 — whisper ring strength */
413
- --grain-strength: 0.12; /* 0–1 — ambient grain strength */
414
- --grain-size: 140px; /* px — grain tile size used by card grain overlay */
415
- --track-glow: color-mix(in oklab, var(--tone-accent) 55%, transparent);
416
- --track-shadow: color-mix(in oklab, var(--tone-accent) 32%, transparent);
417
- --scene-highlight: color-mix(in oklab, var(--tone-accent) 60%, transparent);
418
- --presence-dot-color: color-mix(in oklab, var(--tone-accent) 70%, white 15%);
419
- --ghost-trail-color: color-mix(in oklab, var(--tone-accent) 22%, transparent);
420
- }
421
-
422
484
  @layer utilities {
423
485
  .border-transparent {
424
486
  border-color: transparent;
@@ -426,6 +488,15 @@
426
488
  .text-2xs {
427
489
  font-size: var(--text-2xs);
428
490
  }
491
+ .text-muted {
492
+ color: var(--text-muted);
493
+ }
494
+ .text-subtle {
495
+ color: var(--text-subtle);
496
+ }
497
+ .text-faint {
498
+ color: var(--text-faint);
499
+ }
429
500
  .elev-1 {
430
501
  @apply shadow-depth-1;
431
502
  }
@@ -0,0 +1,77 @@
1
+ /* ─────────────────────────────────────────────────────────────
2
+ Garden UI — Toolbar skin
3
+ Whisper: "tools should feel near, not loud." 🌬️
4
+
5
+ Purpose
6
+ • Calm container for view / filter / mode controls.
7
+ • Pairs well with ghost/subtle Buttons and small Selects.
8
+
9
+ Data API (from primitives/toolbar.tsx)
10
+ • [data-ui='toolbar'] — root
11
+ • [data-orientation='horizontal|vertical']
12
+ • [data-density='cozy|snug']
13
+ • [data-part='group'] — logical clusters of controls
14
+
15
+ Theming
16
+ • Uses Garden tokens:
17
+ --surface, --elev, --color-border, --radius-lg, --shadow-soft,
18
+ --space-*, --text-subtle.
19
+
20
+ Notes
21
+ • Keep it low-contrast by default; toolbar is a frame, not the star.
22
+ • Use in layouts like: card header, pad header, page sub-nav.
23
+ ──────────────────────────────────────────────────────────── */
24
+
25
+ @layer components {
26
+ [data-ui='toolbar'] {
27
+ display: inline-flex;
28
+ align-items: center;
29
+ gap: var(--space-2, 0.5rem);
30
+
31
+ padding: 0.375rem 0.5rem;
32
+ border-radius: var(--radius-lg, 0.75rem);
33
+ border: 1px solid color-mix(in oklab, var(--color-border) 80%, transparent);
34
+ background: color-mix(in oklab, var(--surface) 88%, var(--elev) 12%);
35
+ box-shadow: var(--shadow-soft, 0 8px 24px rgba(15, 23, 42, 0.08));
36
+
37
+ color: var(--text-subtle);
38
+ }
39
+
40
+ [data-ui='toolbar'][data-orientation='vertical'] {
41
+ flex-direction: column;
42
+ align-items: stretch;
43
+ }
44
+
45
+ [data-ui='toolbar'][data-density='snug'] {
46
+ padding-block: 0.25rem;
47
+ }
48
+
49
+ /* groups: slight separation when multiple clusters exist */
50
+ [data-ui='toolbar'] [data-part='group'] {
51
+ display: inline-flex;
52
+ align-items: center;
53
+ gap: var(--space-1, 0.375rem);
54
+ }
55
+
56
+ /* subtle divider between groups, only when there are siblings */
57
+ [data-ui='toolbar'] [data-part='group'] + [data-part='group']::before {
58
+ content: '';
59
+ display: inline-block;
60
+ width: 1px;
61
+ align-self: stretch;
62
+ margin-inline: var(--space-1, 0.375rem);
63
+ background: color-mix(in oklab, var(--color-border) 70%, transparent);
64
+ }
65
+
66
+ /* Make ghost/subtle buttons feel extra calm inside toolbars (optional hint) */
67
+ [data-ui='toolbar'] [data-ui='button'][data-variant='ghost'],
68
+ [data-ui='toolbar'] [data-ui='button'][data-variant='subtle'] {
69
+ --button-bg-hover: color-mix(in oklab, var(--surface) 80%, var(--elev) 20%);
70
+ --button-fg: var(--text-subtle);
71
+ }
72
+
73
+ /* Selects inside toolbar — a bit tighter */
74
+ [data-ui='toolbar'] [data-ui='select'] {
75
+ font-size: 0.875rem;
76
+ }
77
+ }