@scattered-light/loomiere-base-ui 0.7.1 → 0.8.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.
- package/README.md +27 -2
- package/dist/{chunk-JUUPOOQQ.js → chunk-LJQ3RZDJ.js} +51 -3
- package/dist/chunk-LJQ3RZDJ.js.map +1 -0
- package/dist/custom/collection/index.d.ts +6 -1
- package/dist/custom/collection/index.js +18 -12
- package/dist/custom/collection/index.js.map +1 -1
- package/dist/custom/index.d.ts +1 -1
- package/dist/custom/index.js +1 -1
- package/dist/design-system/components/ContextMenu/README.md +1 -1
- package/dist/design-system/components/ContextMenu/preview.html +1 -1
- package/dist/design-system/components/DataList/README.md +1 -1
- package/dist/design-system/components/DataList/preview.html +1 -1
- package/dist/design-system/components/DataTable/README.md +1 -1
- package/dist/design-system/components/DataTable/preview.html +38 -38
- package/dist/design-system/components/DescriptionList/README.md +41 -0
- package/dist/design-system/components/DescriptionList/preview.html +19 -0
- package/dist/design-system/components/Drawer/README.md +1 -1
- package/dist/design-system/components/ScrollArea/preview.html +2 -2
- package/dist/design-system/components/Sheet/README.md +46 -0
- package/dist/design-system/components/Sheet/preview.html +19 -0
- package/dist/design-system/components/StatFigure/README.md +38 -0
- package/dist/design-system/components/StatFigure/preview.html +19 -0
- package/dist/design-system/components/Table/README.md +2 -2
- package/dist/design-system/components/Table/preview.html +2 -2
- package/dist/design-system/components/bundle.js +7 -7
- package/dist/design-system/components/index.d.ts +1 -1
- package/dist/design-system/components/styles.css +370 -56
- package/dist/{index-ChJXlxzq.d.ts → index-CBAo353T.d.ts} +55 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/styles/components/Accordion.css +1 -1
- package/dist/styles/components/AlertDialog.css +1 -1
- package/dist/styles/components/Autocomplete.css +1 -1
- package/dist/styles/components/Avatar.css +1 -1
- package/dist/styles/components/Button.css +1 -1
- package/dist/styles/components/Checkbox.css +1 -1
- package/dist/styles/components/CheckboxGroup.css +1 -1
- package/dist/styles/components/Collapsible.css +1 -1
- package/dist/styles/components/Combobox.css +1 -1
- package/dist/styles/components/ContextMenu.css +1 -1
- package/dist/styles/components/Dialog.css +1 -1
- package/dist/styles/components/Drawer.css +8 -2
- package/dist/styles/components/Field.css +1 -1
- package/dist/styles/components/Fieldset.css +1 -1
- package/dist/styles/components/Form.css +1 -1
- package/dist/styles/components/Input.css +1 -1
- package/dist/styles/components/Menu.css +1 -1
- package/dist/styles/components/Menubar.css +1 -1
- package/dist/styles/components/Meter.css +1 -1
- package/dist/styles/components/NavigationMenu.css +1 -1
- package/dist/styles/components/NumberField.css +1 -1
- package/dist/styles/components/OTPField.css +1 -1
- package/dist/styles/components/Popover.css +1 -1
- package/dist/styles/components/PreviewCard.css +1 -1
- package/dist/styles/components/Progress.css +1 -1
- package/dist/styles/components/Radio.css +1 -1
- package/dist/styles/components/ScrollArea.css +1 -1
- package/dist/styles/components/Select.css +1 -1
- package/dist/styles/components/Separator.css +1 -1
- package/dist/styles/components/Slider.css +1 -1
- package/dist/styles/components/Switch.css +1 -1
- package/dist/styles/components/Tabs.css +1 -1
- package/dist/styles/components/Toast.css +1 -1
- package/dist/styles/components/Toggle.css +1 -1
- package/dist/styles/components/ToggleGroup.css +1 -1
- package/dist/styles/components/Toolbar.css +1 -1
- package/dist/styles/components/Tooltip.css +1 -1
- package/dist/styles/custom/Badge.css +1 -1
- package/dist/styles/custom/Collection.css +1 -1
- package/dist/styles/custom/CollectionPagination.css +1 -1
- package/dist/styles/custom/CollectionToolbar.css +1 -1
- package/dist/styles/custom/DataList.css +19 -1
- package/dist/styles/custom/DataTable.css +1 -1
- package/dist/styles/custom/DatePicker.css +1 -1
- package/dist/styles/custom/DescriptionList.css +75 -0
- package/dist/styles/custom/EditableList.css +1 -1
- package/dist/styles/custom/EmptyState.css +1 -1
- package/dist/styles/custom/ListDetail.css +1 -1
- package/dist/styles/custom/MoneyField.css +1 -1
- package/dist/styles/custom/Sheet.css +90 -0
- package/dist/styles/custom/Splitter.css +1 -1
- package/dist/styles/custom/StatFigure.css +60 -0
- package/dist/styles/custom/Table.css +63 -1
- package/dist/styles/index.css +4 -1
- package/dist/styles/reset/accessibility.css +1 -1
- package/dist/styles/reset/reset-accessibility.css +1 -1
- package/dist/styles/reset/reset-tailwind.css +2 -2
- package/dist/styles/reset/reset.css +2 -2
- package/dist/styles/tailwind.css +4 -1
- package/package.json +2 -2
- package/dist/chunk-JUUPOOQQ.js.map +0 -1
|
@@ -732,6 +732,60 @@ declare const EmptyState: React.ForwardRefExoticComponent<Omit<EmptyStateProps,
|
|
|
732
732
|
Actions: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
733
733
|
};
|
|
734
734
|
|
|
735
|
+
type SheetProps = Omit<React.ComponentProps<'section'>, 'title'> & {
|
|
736
|
+
/** The tab label that sits on the top rule, set in caps. It also names the section. */
|
|
737
|
+
label?: React.ReactNode;
|
|
738
|
+
/** Something at the end of the header row, beside the tab label: an Edit link, a count. */
|
|
739
|
+
action?: React.ReactNode;
|
|
740
|
+
/** Pad the content by sheet.padding. Leave it off when rows or a table inside run edge to edge. */
|
|
741
|
+
inset?: boolean;
|
|
742
|
+
};
|
|
743
|
+
/**
|
|
744
|
+
* A working-paper surface: a raised panel with a heavier rule across its top (sheet.rule-*),
|
|
745
|
+
* and an optional tab label sitting on that rule. A section, named by its label; without
|
|
746
|
+
* a label, give it an `aria-label`. Not a Base UI part, so it does not take `render`.
|
|
747
|
+
*/
|
|
748
|
+
declare const Sheet: React.ForwardRefExoticComponent<Omit<SheetProps, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
749
|
+
|
|
750
|
+
type StatFigureProps = Omit<React.ComponentProps<'div'>, 'children'> & {
|
|
751
|
+
/** The caps label above the figure: "Book balance", "Open questions". */
|
|
752
|
+
label: React.ReactNode;
|
|
753
|
+
/** The figure itself, already formatted: "1,318.22", "(40.00)", "3". */
|
|
754
|
+
value: React.ReactNode;
|
|
755
|
+
/** A short line under the figure: "on client", "DR · Oct 29". */
|
|
756
|
+
caption?: React.ReactNode;
|
|
757
|
+
/** "double" draws the accountant's double underline, for a final total. Default none. */
|
|
758
|
+
underline?: 'none' | 'double';
|
|
759
|
+
/** "accent" colors the figure as a call to act on it. Default is the text color. */
|
|
760
|
+
tone?: 'default' | 'accent';
|
|
761
|
+
/** "sm" for a row of figures in a card or header. Default "md". */
|
|
762
|
+
size?: 'sm' | 'md';
|
|
763
|
+
};
|
|
764
|
+
/**
|
|
765
|
+
* One large figure with a caps label and an optional caption. The label, figure and caption
|
|
766
|
+
* are read in that order. Not interactive: wrap it in a link to make it one.
|
|
767
|
+
* Not a Base UI part, so it does not take `render`.
|
|
768
|
+
*/
|
|
769
|
+
declare const StatFigure: React.ForwardRefExoticComponent<Omit<StatFigureProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
770
|
+
|
|
771
|
+
type DescriptionListProps = React.ComponentProps<'dl'> & {
|
|
772
|
+
/**
|
|
773
|
+
* "columns" (the default) sets labels in a column beside their values. "leader" runs a dotted
|
|
774
|
+
* leader from each label to its value, which sits at the end of the row.
|
|
775
|
+
*/
|
|
776
|
+
variant?: 'columns' | 'leader';
|
|
777
|
+
};
|
|
778
|
+
/** Label and value pairs. Children are DescriptionItems. */
|
|
779
|
+
declare const DescriptionList: React.ForwardRefExoticComponent<Omit<DescriptionListProps, "ref"> & React.RefAttributes<HTMLDListElement>>;
|
|
780
|
+
type DescriptionItemProps = Omit<React.ComponentProps<'div'>, 'children'> & {
|
|
781
|
+
/** The term: "Legal name", "Fiscal year". */
|
|
782
|
+
label: React.ReactNode;
|
|
783
|
+
/** The value. */
|
|
784
|
+
children?: React.ReactNode;
|
|
785
|
+
};
|
|
786
|
+
/** One pair: a dt and its dd, grouped in a div as HTML allows inside a dl. */
|
|
787
|
+
declare const DescriptionItem: React.ForwardRefExoticComponent<Omit<DescriptionItemProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
788
|
+
|
|
735
789
|
interface EditableListApi<T> {
|
|
736
790
|
update: (patch: Partial<T>) => void;
|
|
737
791
|
remove: () => void;
|
|
@@ -806,4 +860,4 @@ declare const EditableList: {
|
|
|
806
860
|
Balance: typeof EditableListBalance;
|
|
807
861
|
};
|
|
808
862
|
|
|
809
|
-
export {
|
|
863
|
+
export { inclusiveDays as $, type SheetProps as A, Badge as B, Calendar as C, DatePicker as D, EditableList as E, Splitter as F, type SplitterHandleProps as G, type SplitterPanelProps as H, type SplitterRootProps as I, StatFigure as J, type StatFigureProps as K, ListDetail as L, MoneyField as M, NumberField as N, addDays as O, type Preset as P, addMonths as Q, builtinPresets as R, Sheet as S, clampDate as T, daysInMonth as U, defaultPresets as V, defaultWeekStartsOn as W, endOfWeek as X, formatMoney as Y, fromMinorUnits as Z, getCurrencyDigits as _, type BadgeProps as a, moveFocusDate as a$, isValidCurrency as a0, isoWeek as a1, last30Days as a2, last7Days as a3, lastMonth as a4, lastWeek as a5, lengthBlockReason as a6, nextMonth as a7, nextWeek as a8, orderRange as a9, MoneyFieldRoot as aA, type MoneyFieldSteps as aB, type NormalizedPaste as aC, type PanelSpec as aD, type RuntimePanel as aE, type Size as aF, type SizeInput as aG, SplitterHandle as aH, type SplitterKey as aI, SplitterPanel as aJ, SplitterRoot as aK, type StoredLayout as aL, type StoredPanel as aM, affixSide as aN, applyKey as aO, applyStored as aP, ariaPercents as aQ, createPanels as aR, cssSize as aS, currencyName as aT, currencySymbol as aU, formatDay as aV, formatFull as aW, handleTarget as aX, layoutOf as aY, measure as aZ, monthCells as a_, parseDecimalString as aa, resolvePreset as ab, startOfWeek as ac, thisMonth as ad, thisQuarter as ae, thisWeek as af, toDecimalString as ag, toMinorUnits as ah, today as ai, todayDate as aj, tomorrow as ak, useListDetail as al, yearToDate as am, yesterday as an, CURRENCY_SEARCH_THRESHOLD as ao, CurrencySelect as ap, type KeyOptions as aq, ListDetailDetail as ar, ListDetailList as as, ListDetailRoot as at, MAX_MINOR_UNITS as au, type MoneyChangeDetails as av, type MoneyDisplay as aw, MoneyFieldAffix as ax, MoneyFieldGroup as ay, MoneyFieldInput as az, type CalendarProps as b, normalizePaste as b0, parseDate as b1, parseSize as b2, presetInBounds as b3, resetToDefault as b4, resizeByDelta as b5, roundHalfExpand as b6, roundingChangesValue as b7, sameSelection as b8, serializeSize as b9, settle as ba, sizeText as bb, syncPanels as bc, toggleCollapsed as bd, valueText as be, type CurrencyCode as c, type DatePickerProps as d, DatePresets as e, type DatePresetsProps as f, type DateRange as g, type DateValue as h, DescriptionItem as i, type DescriptionItemProps as j, DescriptionList as k, type DescriptionListProps as l, type EditableListApi as m, type EditableListRootProps as n, EmptyState as o, type EmptyStateKind as p, type EmptyStateProps as q, type ListDetailCloseReason as r, type ListDetailDetailProps as s, type ListDetailLayout as t, type ListDetailRootProps as u, type ListDetailValue as v, type MoneyFieldProps as w, type MoneyFieldRootProps as x, type NumberFieldLabelProps as y, type PresetValue as z };
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { Fieldset as Fieldset$1 } from '@base-ui/react/fieldset';
|
|
|
7
7
|
import { Form as Form$1 } from '@base-ui/react/form';
|
|
8
8
|
import { NavigationMenu as NavigationMenu$1 } from '@base-ui/react/navigation-menu';
|
|
9
9
|
import { Select as Select$1 } from '@base-ui/react/select';
|
|
10
|
-
export { B as Badge, a as BadgeProps, C as Calendar, b as CalendarProps, c as CurrencyCode, D as DatePicker, d as DatePickerProps, e as DatePresets, f as DatePresetsProps, g as DateRange, h as DateValue, E as EditableList,
|
|
10
|
+
export { B as Badge, a as BadgeProps, C as Calendar, b as CalendarProps, c as CurrencyCode, D as DatePicker, d as DatePickerProps, e as DatePresets, f as DatePresetsProps, g as DateRange, h as DateValue, i as DescriptionItem, j as DescriptionItemProps, k as DescriptionList, l as DescriptionListProps, E as EditableList, m as EditableListApi, n as EditableListRootProps, o as EmptyState, p as EmptyStateKind, q as EmptyStateProps, L as ListDetail, r as ListDetailCloseReason, s as ListDetailDetailProps, t as ListDetailLayout, u as ListDetailRootProps, v as ListDetailValue, M as MoneyField, w as MoneyFieldProps, x as MoneyFieldRootProps, N as NumberField, y as NumberFieldLabelProps, P as Preset, z as PresetValue, S as Sheet, A as SheetProps, F as Splitter, G as SplitterHandleProps, H as SplitterPanelProps, I as SplitterRootProps, J as StatFigure, K as StatFigureProps, O as addDays, Q as addMonths, R as builtinPresets, T as clampDate, U as daysInMonth, V as defaultPresets, W as defaultWeekStartsOn, X as endOfWeek, Y as formatMoney, Z as fromMinorUnits, _ as getCurrencyDigits, $ as inclusiveDays, a0 as isValidCurrency, a1 as isoWeek, a2 as last30Days, a3 as last7Days, a4 as lastMonth, a5 as lastWeek, a6 as lengthBlockReason, a7 as nextMonth, a8 as nextWeek, a9 as orderRange, aa as parseDecimalString, ab as resolvePreset, ac as startOfWeek, ad as thisMonth, ae as thisQuarter, af as thisWeek, ag as toDecimalString, ah as toMinorUnits, ai as today, aj as todayDate, ak as tomorrow, al as useListDetail, am as yearToDate, an as yesterday } from './index-CBAo353T.js';
|
|
11
11
|
import * as _base_ui_react_internals_filter from '@base-ui/react/internals/filter';
|
|
12
12
|
import { AutocompleteRootProps, Autocomplete as Autocomplete$1 } from '@base-ui/react/autocomplete';
|
|
13
13
|
import { ComboboxRootProps, Combobox as Combobox$1 } from '@base-ui/react/combobox';
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { Badge, Calendar, DatePicker, DatePresets, Drawer, EditableList, Field, ListDetail, MoneyField, NumberField, Popover, Splitter, addDays, addMonths, builtinPresets, clampDate, daysInMonth, defaultPresets, defaultWeekStartsOn, endOfWeek, formatMoney, fromMinorUnits, getCurrencyDigits, inclusiveDays, isValidCurrency, isoWeek, last30Days, last7Days, lastMonth, lastWeek, lengthBlockReason, nextMonth, nextWeek, orderRange, parseDecimalString, resolvePreset, startOfWeek, thisMonth, thisQuarter, thisWeek, toDecimalString, toMinorUnits, today, todayDate, tomorrow, useListDetail, yearToDate, yesterday } from './chunk-
|
|
1
|
+
export { Badge, Calendar, DatePicker, DatePresets, DescriptionItem, DescriptionList, Drawer, EditableList, Field, ListDetail, MoneyField, NumberField, Popover, Sheet, Splitter, StatFigure, addDays, addMonths, builtinPresets, clampDate, daysInMonth, defaultPresets, defaultWeekStartsOn, endOfWeek, formatMoney, fromMinorUnits, getCurrencyDigits, inclusiveDays, isValidCurrency, isoWeek, last30Days, last7Days, lastMonth, lastWeek, lengthBlockReason, nextMonth, nextWeek, orderRange, parseDecimalString, resolvePreset, startOfWeek, thisMonth, thisQuarter, thisWeek, toDecimalString, toMinorUnits, today, todayDate, tomorrow, useListDetail, yearToDate, yesterday } from './chunk-LJQ3RZDJ.js';
|
|
2
2
|
export { Checkbox, CheckboxLabel, Input, Menu, Tabs } from './chunk-Y2CPBMFJ.js';
|
|
3
3
|
import { cnState, styledPart, styledPartUnless, buttonPart, cn } from './chunk-M7KJASGK.js';
|
|
4
4
|
export { Button, Combobox, EmptyState, Select, cn, cnState } from './chunk-M7KJASGK.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Accordion - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. Hover, press, chevron, divider and motion are the disclosure
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Alert Dialog - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens and no rules of its own. An alert dialog looks exactly like a
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Autocomplete - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. The input is Input (Input.css), the clear button is an icon
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Avatar - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* A round picture with a ring in the page color, so avatars in a group cut out of each other in
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Button - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* Colors are the brand's emphasis levels, sizes are control.*, text is the trigger
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Checkbox - Mojave Theme
|
|
3
3
|
* Sizes follow the label: the box is the icon size one tier above the label's text
|
|
4
4
|
* tier (like a button's icon) and the check mark one tier below it.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Checkbox Group - Mojave Theme */
|
|
3
3
|
|
|
4
4
|
/* Each checkbox row is already a full tap target tall, so the rows sit close. */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Collapsible - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. Hover, press, chevron and motion are the disclosure concept
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Combobox - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. The input is Input (Input.css); the chips box is a field; the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Context Menu - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. Opens on right-click; the trigger area only sets the cursor. The popup is the popup concept, rows are item rows at the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Dialog and Alert dialog - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* Both are centered modals built from the modal concept (tokens/semantic/modal.json):
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Drawer - a panel that slides in from an edge and can be swiped away.
|
|
3
3
|
The surface, scrim, heading and motion are the modal concept's (--sl-modal-*), so a
|
|
4
4
|
drawer reads as a dialog's sibling; only its size and grab bar are its own
|
|
5
5
|
(--sl-drawer-*). Base UI supplies the swipe through
|
|
6
|
-
--drawer-swipe-movement-x/y and data-swipe-direction on the popup.
|
|
6
|
+
--drawer-swipe-movement-x/y and data-swipe-direction on the popup.
|
|
7
|
+
The working-paper rule (rule.width, 0 by default) replaces the top border with a heavier
|
|
8
|
+
line in rule.color. It is an inset shadow, so it stays put while the drawer scrolls. */
|
|
7
9
|
|
|
8
10
|
.DrawerBackdrop {
|
|
9
11
|
position: fixed;
|
|
@@ -40,6 +42,8 @@
|
|
|
40
42
|
overflow-y: auto;
|
|
41
43
|
overscroll-behavior: contain;
|
|
42
44
|
pointer-events: auto;
|
|
45
|
+
border-top-width: max(0px, var(--sl-modal-border-width) - var(--sl-rule-width) * 1000);
|
|
46
|
+
box-shadow: inset 0 var(--sl-rule-width) 0 0 var(--sl-rule-color), var(--sl-modal-shadow);
|
|
43
47
|
transform: translate(var(--drawer-swipe-movement-x, 0px), var(--drawer-swipe-movement-y, 0px));
|
|
44
48
|
transition: transform calc(var(--sl-modal-animation-duration) * var(--drawer-swipe-strength, 1)) var(--sl-modal-animation-easing);
|
|
45
49
|
}
|
|
@@ -70,6 +74,8 @@
|
|
|
70
74
|
max-height: var(--sl-drawer-popup-max-size);
|
|
71
75
|
border-top: 0;
|
|
72
76
|
border-radius: 0 0 var(--sl-modal-radius) var(--sl-modal-radius);
|
|
77
|
+
/* Its top edge is the screen's, so no rule. */
|
|
78
|
+
box-shadow: var(--sl-modal-shadow);
|
|
73
79
|
}
|
|
74
80
|
|
|
75
81
|
.DrawerPopup[data-swipe-direction='right'] {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Field - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* Label, control, description and error. No component tokens: spacing is the field
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Fieldset - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens: a titled group of fields, spaced by the stack gaps, with
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Input - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens: the look is the field concept (tokens/semantic/field.json),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Menu - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. The trigger is a Button. The popup is the popup concept, rows are item rows at the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Menubar - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. A row of quiet triggers, each opening a menu. The popup is the popup concept, rows are item rows at the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Meter - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* A gauge (tokens/semantic/gauge.json). The fill is the solid color of the scope around it:
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Navigation Menu - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* The strip is the bar concept, the panel is the popup concept and each link is an item
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Number Field - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. The input is Input (Input.css) and the label, description and
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* OTP Field - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* One-time code entry: a row of single-character inputs. Each slot is the same control as Input
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Preview Card - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* The popup concept (surface, arrow, motion) with a title-magnify title and condense
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Progress - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* A gauge (tokens/semantic/gauge.json), the same bar as Meter. The fill is the solid color of
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Radio - Mojave Theme
|
|
3
3
|
* Same box as Checkbox, always round. Sizes follow the label the same way, and the
|
|
4
4
|
* dot is a share of the circle (check.dot-scale).
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Scroll Area - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* The scrollbar is the content scrollbar (content.scrollbar-*): a track that stays clear until
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Select - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* The trigger is a field (the field pattern, control sizes, the base text style); the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Separator - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* A hairline in the everyday divider color (border.default), one stroke thick, with a step of
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Slider - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* A slider is a gauge you can drag: the track, fill and label row are gauge.* (the same bar as
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Switch - Mojave Theme
|
|
3
3
|
* Switch keeps its track sizes. The thumb, its travel and the ON/OFF text are
|
|
4
4
|
* worked out from them: the thumb fills the track's height inside the padding,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Tabs - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. The divider, the selected line and color, hover and the disabled
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Toast - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* A toast is a notice (tokens/semantic/notice.json) on the popup surface. A toast whose type
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Toggle - Mojave Theme
|
|
3
3
|
* A toggle is a button that stays pressed: the same heights, padding, gap and
|
|
4
4
|
* trigger text style as a button of the same size. Pressed, it takes its emphasis level's
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Toggle Group - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* No component tokens. The strip is the bar concept (tokens/semantic/bar.json); the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Toolbar - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* The strip is the bar concept (tokens/semantic/bar.json). Buttons, toggles, selects
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Tooltip - Mojave Theme
|
|
3
3
|
*
|
|
4
4
|
* The inverse surface (surface.inverse, text.on-inverse-surface) with condense text, so a tooltip
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* Collection toolbar
|
|
3
3
|
*
|
|
4
4
|
* The wrap follows the toolbar's own width, not the window: a table in a narrow pane wraps
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* DataList
|
|
3
3
|
*
|
|
4
4
|
* The same rows as the table, in one container with the table's borders, hover, selected
|
|
5
5
|
* and current states. Not a stack of floating cards: the two views should read as one family.
|
|
6
6
|
* variant=cards adds the surface radius and a gap when a queue should read as separate items.
|
|
7
|
+
*
|
|
8
|
+
* The working-paper rule (rule.width, 0 by default) replaces the top border with a heavier
|
|
9
|
+
* line in rule.color: on the first row, or on each card's top edge.
|
|
7
10
|
*/
|
|
8
11
|
|
|
9
12
|
.DataList {
|
|
@@ -22,6 +25,13 @@
|
|
|
22
25
|
background: var(--sl-table-background);
|
|
23
26
|
border: var(--sl-stroke-default) solid var(--sl-table-border-color);
|
|
24
27
|
border-radius: var(--sl-table-radius);
|
|
28
|
+
/* The top border steps aside while the working-paper rule is on (any rule.width above 0). */
|
|
29
|
+
border-top-width: max(0px, var(--sl-stroke-default) - var(--sl-rule-width) * 1000);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/* The working-paper rule on the first row. At rule.width 0 this is no border at all. */
|
|
33
|
+
.DataList ul > li:first-child {
|
|
34
|
+
border-top: var(--sl-rule-width) solid var(--sl-rule-color);
|
|
25
35
|
}
|
|
26
36
|
|
|
27
37
|
.DataList li {
|
|
@@ -115,6 +125,14 @@
|
|
|
115
125
|
background: var(--sl-table-background);
|
|
116
126
|
border: var(--sl-stroke-default) solid var(--sl-table-border-color);
|
|
117
127
|
border-radius: var(--sl-table-radius);
|
|
128
|
+
border-top-width: max(0px, var(--sl-stroke-default) - var(--sl-rule-width) * 1000);
|
|
129
|
+
box-shadow: inset 0 var(--sl-rule-width) 0 0 var(--sl-rule-color);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.DataList[data-variant='cards'] li[aria-current='true'] {
|
|
133
|
+
box-shadow:
|
|
134
|
+
inset var(--sl-stroke-strong) 0 0 0 var(--sl-border-accent),
|
|
135
|
+
inset 0 var(--sl-rule-width) 0 0 var(--sl-rule-color);
|
|
118
136
|
}
|
|
119
137
|
|
|
120
138
|
.DataList[data-loading] ul {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* DataTable additions on top of .Table.
|
|
3
3
|
*
|
|
4
4
|
* Sort buttons fill the header cell and inherit its hover, so old aria-sort markup keeps
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/*
|
|
3
3
|
* DatePicker: a field that opens a calendar for one date or a period.
|
|
4
4
|
* Not a Base UI part. The popup is Popover on a wide viewport and Drawer
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
|
+
/* DescriptionList
|
|
3
|
+
*
|
|
4
|
+
* Label and value pairs in a native dl, one DescriptionItem (a div holding a dt and a dd)
|
|
5
|
+
* per pair, with a hairline between pairs. The default variant sets labels in a column
|
|
6
|
+
* beside their values. data-variant="leader" runs a dotted leader from each label to its
|
|
7
|
+
* value, which sits at the end of the row, as on a working paper. Labels are body text
|
|
8
|
+
* in the secondary color, values primary text with tabular numbers.
|
|
9
|
+
* Tokens: description-list.* (tokens/component/description-list.json).
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
.DescriptionList {
|
|
13
|
+
font-family: var(--sl-font-body-base-font-family);
|
|
14
|
+
font-size: var(--sl-font-body-base-font-size);
|
|
15
|
+
font-weight: var(--sl-font-body-base-font-weight);
|
|
16
|
+
line-height: var(--sl-font-body-base-line-height);
|
|
17
|
+
letter-spacing: var(--sl-font-body-base-letter-spacing);
|
|
18
|
+
margin: 0;
|
|
19
|
+
padding: 0;
|
|
20
|
+
font-variant-numeric: tabular-nums;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.DescriptionItem {
|
|
24
|
+
display: grid;
|
|
25
|
+
grid-template-columns: var(--sl-description-list-label-width) 2fr;
|
|
26
|
+
align-items: baseline;
|
|
27
|
+
column-gap: var(--sl-description-list-column-gap);
|
|
28
|
+
padding-block: var(--sl-description-list-row-padding-block);
|
|
29
|
+
padding-inline: var(--sl-description-list-row-padding-inline);
|
|
30
|
+
border-bottom: var(--sl-stroke-default) solid var(--sl-description-list-row-border-color);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.DescriptionItem:last-child {
|
|
34
|
+
border-bottom: none;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.DescriptionTerm {
|
|
38
|
+
margin: 0;
|
|
39
|
+
color: var(--sl-description-list-label-color);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.DescriptionDetails {
|
|
43
|
+
margin: 0;
|
|
44
|
+
min-width: 0;
|
|
45
|
+
color: var(--sl-description-list-value-color);
|
|
46
|
+
overflow-wrap: anywhere;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/* Leader: the label grows to fill the row, and its ::after is the dotted line that leads
|
|
50
|
+
to the value. The line sits on the text's baseline. */
|
|
51
|
+
.DescriptionList[data-variant='leader'] .DescriptionItem {
|
|
52
|
+
display: flex;
|
|
53
|
+
column-gap: var(--sl-description-list-leader-gap);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.DescriptionList[data-variant='leader'] .DescriptionTerm {
|
|
57
|
+
display: flex;
|
|
58
|
+
flex: 1 1 auto;
|
|
59
|
+
align-items: baseline;
|
|
60
|
+
gap: var(--sl-description-list-leader-gap);
|
|
61
|
+
min-width: 0;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.DescriptionList[data-variant='leader'] .DescriptionTerm::after {
|
|
65
|
+
content: '';
|
|
66
|
+
flex: 1 1 var(--sl-space-6);
|
|
67
|
+
min-width: var(--sl-space-6);
|
|
68
|
+
border-bottom: var(--sl-description-list-leader-width) dotted var(--sl-description-list-leader-color);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.DescriptionList[data-variant='leader'] .DescriptionDetails {
|
|
72
|
+
flex: 0 1 auto;
|
|
73
|
+
max-width: 60%;
|
|
74
|
+
text-align: end;
|
|
75
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @scattered-light/loomiere-base-ui 0.
|
|
1
|
+
/* @scattered-light/loomiere-base-ui 0.8.0 · styles for @base-ui/react 1.9.0 */
|
|
2
2
|
/* EditableList
|
|
3
3
|
*
|
|
4
4
|
* One table at every width, so a field is not submitted twice. Under the stack width each
|