@crewlethq/ui 0.15.0 → 0.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -198,6 +198,10 @@ places:
198
198
  - A surface that pans or zooms dispatches `LAYER_REPOSITION_EVENT` on its host
199
199
  when the content beneath it moves, and every panel anchored inside follows.
200
200
 
201
+ ## Changes in 0.15.1
202
+
203
+ `@crewlethq/icons`: every Crewlet character is centred on its optical centre rather than its bounding box, and its face and holes are cut into its own paths rather than masked, so a slit shows the badge's plate in every hue and theme, and inside `OrgLabel` or `AddPill` no longer fills with ink. The page's fold is drawn at full detail only, as the keyline is. What to change: nothing.
204
+
201
205
  ## Changes in 0.15.0
202
206
 
203
207
  0.15.0 gives the rail's foot a row that opens a panel, which is what the engine console's engine panel is built from. It also keeps an unread failure on screen, lets the column chart fill a stretched card, and wraps its legend on a narrow one.
@@ -1,3 +1,3 @@
1
- export { ADD_PILL_MS, AddPill } from '../chunk-74WGARJE.js';
1
+ export { ADD_PILL_MS, AddPill } from '../chunk-TROLVEZY.js';
2
2
  import '../chunk-BZFWDIV6.js';
3
3
  import '../chunk-ODEQTPFM.js';
@@ -408,7 +408,9 @@
408
408
  /* THE FILL IS FOR A FILLED DRAWING, and a glyph is a stroke. Painting the
409
409
  inside of a Lucide glyph turns every closed shape in it solid and every
410
410
  open one into a smear, so a `.crewlet-glyph` keeps the fill its own frame
411
- decides and takes the ink through its stroke, which is `currentColor`. */
411
+ decides and takes the ink through its stroke, which is `currentColor`.
412
+ A drawing here cuts its holes as geometry, never through a mask: this rule
413
+ repaints a mask's paths and groups as well, and fills its holes with ink. */
412
414
  .crewlet-add-pill__section svg:not(.crewlet-glyph),
413
415
  .crewlet-add-pill__section svg:not(.crewlet-glyph) g,
414
416
  .crewlet-add-pill__section svg:not(.crewlet-glyph) path {
@@ -1,3 +1,3 @@
1
- export { AvatarStack, avatarStackLabel } from '../chunk-6NIZCQUM.js';
1
+ export { AvatarStack, avatarStackLabel } from '../chunk-ZPWUVVIB.js';
2
2
  export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarPixels, avatarTint, getInitials } from '../chunk-HI6Q2UXQ.js';
3
3
  import '../chunk-ODEQTPFM.js';
@@ -160,9 +160,9 @@
160
160
 
161
161
  /*
162
162
  * THE CHARACTER FILLS MOST OF THE PLATE, centred by its own frame (it frames
163
- * every silhouette square on what it draws), with the plate's corner clear of
164
- * it: a wide character such as the original Crewlet reaches the plate's
165
- * sides, a tall one its top and its foot, and none touches the curve.
163
+ * every silhouette square on its optical centre), with the plate's corner
164
+ * clear of it: a wide character such as the original Crewlet reaches the
165
+ * plate's sides, a tall one its top and its foot, and none touches the curve.
166
166
  */
167
167
  .crewlet-avatar--character {
168
168
  border: 1px solid transparent;
@@ -1,11 +1,11 @@
1
- export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-QV266R6G.js';
1
+ export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-TK6YC5QT.js';
2
2
  import '../chunk-NS7BVLL3.js';
3
3
  import '../chunk-EUCC37WY.js';
4
- import '../chunk-K4VORB64.js';
4
+ import '../chunk-YCTMKKRA.js';
5
5
  import '../chunk-5VNUYO76.js';
6
+ import '../chunk-K4VORB64.js';
6
7
  import '../chunk-OG6CL3EB.js';
7
8
  import '../chunk-AV2DXAEL.js';
8
- import '../chunk-YCTMKKRA.js';
9
9
  import '../chunk-PQADV6P6.js';
10
10
  import '../chunk-4FQT6ZAY.js';
11
11
  import '../chunk-HMPFGIWM.js';
@@ -1,20 +1,20 @@
1
- export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-2GXTIK37.js';
1
+ export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-4EOJR52M.js';
2
2
  import '../chunk-HOXGBLEY.js';
3
3
  import '../chunk-3CZ7XAVY.js';
4
4
  import '../chunk-PGRPNDWM.js';
5
- import '../chunk-QV266R6G.js';
5
+ import '../chunk-TK6YC5QT.js';
6
6
  import '../chunk-NS7BVLL3.js';
7
7
  import '../chunk-EUCC37WY.js';
8
- import '../chunk-2UU5IGZI.js';
8
+ import '../chunk-GUHP5JHC.js';
9
+ import '../chunk-YCTMKKRA.js';
10
+ import '../chunk-5VNUYO76.js';
9
11
  import '../chunk-K4VORB64.js';
10
12
  import '../chunk-F73MC7EZ.js';
11
13
  import '../chunk-SMBKXWML.js';
12
14
  import '../chunk-FTEJPHBI.js';
13
- import '../chunk-5VNUYO76.js';
14
- import '../chunk-GXQ3B46I.js';
15
15
  import '../chunk-OG6CL3EB.js';
16
+ import '../chunk-GXQ3B46I.js';
16
17
  import '../chunk-AV2DXAEL.js';
17
- import '../chunk-YCTMKKRA.js';
18
18
  import '../chunk-PQADV6P6.js';
19
19
  import '../chunk-4FQT6ZAY.js';
20
20
  import '../chunk-BWRGFKJP.js';
@@ -1,6 +1,6 @@
1
- export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-2UU5IGZI.js';
2
- import '../chunk-GXQ3B46I.js';
1
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-GUHP5JHC.js';
3
2
  import '../chunk-OG6CL3EB.js';
3
+ import '../chunk-GXQ3B46I.js';
4
4
  import '../chunk-4FQT6ZAY.js';
5
5
  import '../chunk-BWRGFKJP.js';
6
6
  import '../chunk-HMPFGIWM.js';
@@ -1,4 +1,4 @@
1
1
  export { EntityChip } from '../chunk-DDTDN5L2.js';
2
- import '../chunk-6NIZCQUM.js';
2
+ import '../chunk-ZPWUVVIB.js';
3
3
  import '../chunk-HI6Q2UXQ.js';
4
4
  import '../chunk-ODEQTPFM.js';
@@ -1,4 +1,4 @@
1
1
  export { ImageUpload } from '../chunk-DJMLHCLD.js';
2
- import '../chunk-6NIZCQUM.js';
2
+ import '../chunk-ZPWUVVIB.js';
3
3
  import '../chunk-HI6Q2UXQ.js';
4
4
  import '../chunk-ODEQTPFM.js';
@@ -1,4 +1,4 @@
1
- export { OrgLabel } from '../chunk-6OF2DBKY.js';
2
- import '../chunk-6NIZCQUM.js';
1
+ export { OrgLabel } from '../chunk-22M7OXKW.js';
2
+ import '../chunk-ZPWUVVIB.js';
3
3
  import '../chunk-HI6Q2UXQ.js';
4
4
  import '../chunk-ODEQTPFM.js';
@@ -79,7 +79,12 @@
79
79
  inside of a Lucide glyph turns every closed shape in it solid and every
80
80
  open one into a smear (a person's head and shoulders, a unit's building, a
81
81
  warning's triangle, each a blob), so a `.crewlet-glyph` keeps the fill its
82
- own frame decides and takes the ink through its stroke. */
82
+ own frame decides and takes the ink through its stroke.
83
+
84
+ A DRAWING HERE CUTS ITS HOLES AS GEOMETRY. This rule repaints every path and
85
+ group in the zone, a mask's included, so a hole cut by a mask fills with a
86
+ share of the ink that changes with the hue: every agent's eyes on the chart
87
+ did, until the Crewlet characters cut their faces into their own paths. */
83
88
  .crewlet-org-label__icon svg:not(.crewlet-glyph),
84
89
  .crewlet-org-label__icon svg:not(.crewlet-glyph) g,
85
90
  .crewlet-org-label__icon svg:not(.crewlet-glyph) path {
@@ -1,5 +1,5 @@
1
- export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-IHGKPEEV.js';
2
- import '../chunk-6OF2DBKY.js';
3
- import '../chunk-6NIZCQUM.js';
1
+ export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-FY2R4U4Q.js';
2
+ import '../chunk-22M7OXKW.js';
3
+ import '../chunk-ZPWUVVIB.js';
4
4
  import '../chunk-HI6Q2UXQ.js';
5
5
  import '../chunk-ODEQTPFM.js';
@@ -1,11 +1,11 @@
1
- export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-DYHSQHAZ.js';
1
+ export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-YYBD73OI.js';
2
2
  import '../chunk-B2Z2CDM5.js';
3
3
  import '../chunk-MY374UUD.js';
4
- import '../chunk-6OF2DBKY.js';
4
+ import '../chunk-22M7OXKW.js';
5
5
  import '../chunk-VYOKRN2I.js';
6
- import '../chunk-74WGARJE.js';
6
+ import '../chunk-TROLVEZY.js';
7
7
  import '../chunk-4FQT6ZAY.js';
8
- import '../chunk-6NIZCQUM.js';
8
+ import '../chunk-ZPWUVVIB.js';
9
9
  import '../chunk-HMPFGIWM.js';
10
10
  import '../chunk-R25RGPUB.js';
11
11
  import '../chunk-BZFWDIV6.js';
@@ -1,9 +1,9 @@
1
- export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-7BZPYA5P.js';
1
+ export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-DY77H372.js';
2
2
  import '../chunk-FC4YTTFJ.js';
3
3
  import '../chunk-F73MC7EZ.js';
4
4
  import '../chunk-FTEJPHBI.js';
5
- import '../chunk-GXQ3B46I.js';
6
5
  import '../chunk-OG6CL3EB.js';
6
+ import '../chunk-GXQ3B46I.js';
7
7
  import '../chunk-PQADV6P6.js';
8
8
  import '../chunk-4FQT6ZAY.js';
9
9
  import '../chunk-BWRGFKJP.js';
@@ -1,6 +1,6 @@
1
1
  import { Avatar } from './chunk-HI6Q2UXQ.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './OrgLabel-6WSKJQOT.css';
3
+ import './OrgLabel-R5KY7C3W.css';
4
4
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
5
 
6
6
  function OrgLabel(props) {
@@ -1,9 +1,9 @@
1
1
  import { PageHeader } from './chunk-HOXGBLEY.js';
2
2
  import { RelativeTime } from './chunk-3CZ7XAVY.js';
3
3
  import { Toolbar } from './chunk-PGRPNDWM.js';
4
- import { DataTable } from './chunk-QV266R6G.js';
4
+ import { DataTable } from './chunk-TK6YC5QT.js';
5
5
  import { Menu } from './chunk-NS7BVLL3.js';
6
- import { DateTimePicker } from './chunk-2UU5IGZI.js';
6
+ import { DateTimePicker } from './chunk-GUHP5JHC.js';
7
7
  import { useListbox, useOptionKeys } from './chunk-F73MC7EZ.js';
8
8
  import { Kbd } from './chunk-SMBKXWML.js';
9
9
  import { Input } from './chunk-FTEJPHBI.js';
@@ -1,4 +1,4 @@
1
- import { OrgLabel } from './chunk-6OF2DBKY.js';
1
+ import { OrgLabel } from './chunk-22M7OXKW.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
3
  import './OrgNode-TCHJH5FO.css';
4
4
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -1,6 +1,6 @@
1
1
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './AddPill-V4TQXJ53.css';
3
+ import './AddPill-RYCY56P4.css';
4
4
  import { useState, useId, useRef, useCallback, useEffect, Fragment } from 'react';
5
5
  import { jsxs, jsx } from 'react/jsx-runtime';
6
6
 
@@ -1,7 +1,7 @@
1
1
  import { TreeGrid } from './chunk-B2Z2CDM5.js';
2
2
  import { createTreeModel, treeParent } from './chunk-MY374UUD.js';
3
- import { OrgLabel } from './chunk-6OF2DBKY.js';
4
- import { AddPill } from './chunk-74WGARJE.js';
3
+ import { OrgLabel } from './chunk-22M7OXKW.js';
4
+ import { AddPill } from './chunk-TROLVEZY.js';
5
5
  import { IconButton } from './chunk-4FQT6ZAY.js';
6
6
  import { cx } from './chunk-ODEQTPFM.js';
7
7
  import './OrgTable-JZSYTUIK.css';
@@ -1,6 +1,6 @@
1
1
  import { AVATAR_SIZES, Avatar } from './chunk-HI6Q2UXQ.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './Avatar-BPJ36QZR.css';
3
+ import './Avatar-I4NFP3WQ.css';
4
4
  import './AvatarStack-GEJBNV7E.css';
5
5
  import { jsxs, jsx } from 'react/jsx-runtime';
6
6
 
@@ -11,7 +11,7 @@ export { ThemeSwatch } from '../chunk-MNFU2RNT.js';
11
11
  export { DensitySwitcher, ThemeSwitcher } from '../chunk-SBRE7IML.js';
12
12
  export { ThemeToggle } from '../chunk-6TSZCBID.js';
13
13
  export { applyDensity, applyStoredPreferences, applyTheme, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from '../chunk-K3OWD7BJ.js';
14
- export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-7BZPYA5P.js';
14
+ export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-DY77H372.js';
15
15
  export { StatGroup } from '../chunk-QVAFL2LE.js';
16
16
  export { Stepper } from '../chunk-5QWIJSQM.js';
17
17
  export { Switch } from '../chunk-A722MUNR.js';
@@ -35,11 +35,11 @@ export { MARKDOWN_FORMATS, MarkdownEditor, formatMarkdown, insertMarkdown, markd
35
35
  import '../chunk-VYY56AMX.js';
36
36
  export { DEFAULT_METER_THRESHOLDS, METER_STATES, Meter, meterState, meterStateTone, meterTone, progressTone } from '../chunk-4PZ6FJKW.js';
37
37
  export { NewItemsNotice } from '../chunk-PXU6HOZB.js';
38
- export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-IHGKPEEV.js';
39
- export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-DYHSQHAZ.js';
38
+ export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-FY2R4U4Q.js';
39
+ export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-YYBD73OI.js';
40
40
  export { TreeGrid } from '../chunk-B2Z2CDM5.js';
41
41
  export { SIZE_EPSILON, TYPE_AHEAD_RESET_MS, createTreeModel, isTypeAheadKey, layoutConnectors, layoutForest, placeGroups, treeAllExpandable, treeAncestors, treeCollapseOrAscend, treeExpandOrDescend, treeExpandTo, treeExpandable, treeFirst, treeFirstChild, treeItemAction, treeLast, treeLevel, treeNext, treeParent, treePosInSet, treePrevious, treeSetSize, treeStep, treeTypeAhead, treeVisible, typeAheadBuffer, useLayoutAnchor, useMeasuredSizes, useTreeState } from '../chunk-MY374UUD.js';
42
- export { OrgLabel } from '../chunk-6OF2DBKY.js';
42
+ export { OrgLabel } from '../chunk-22M7OXKW.js';
43
43
  export { AutoGrid, Inline, Spacer, Stack } from '../chunk-ZAC7SKUN.js';
44
44
  export { Link } from '../chunk-FBSEJO2C.js';
45
45
  export { List, ListItem } from '../chunk-DS2C73RJ.js';
@@ -58,20 +58,23 @@ export { Eyebrow } from '../chunk-RK4XPHVG.js';
58
58
  export { FactList } from '../chunk-JI5AVQLA.js';
59
59
  export { Tooltip } from '../chunk-QWOPX2MN.js';
60
60
  export { FILTER_CHIP_ATTRIBUTE, FilterChip, FilterChipGroup } from '../chunk-5YLON2PW.js';
61
- export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-2GXTIK37.js';
61
+ export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-4EOJR52M.js';
62
62
  export { PageHeader } from '../chunk-HOXGBLEY.js';
63
63
  export { RelativeTime, currentNow, formatElapsed, formatExact, formatRelative, formatUntil, toISO, toInstant, useNow } from '../chunk-3CZ7XAVY.js';
64
64
  export { Toolbar, ToolbarOverflow, ToolbarWide } from '../chunk-PGRPNDWM.js';
65
- export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-QV266R6G.js';
65
+ export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-TK6YC5QT.js';
66
66
  export { Menu } from '../chunk-NS7BVLL3.js';
67
67
  export { EMPTY_VALUE, EmptyValue } from '../chunk-EUCC37WY.js';
68
- export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-2UU5IGZI.js';
68
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-GUHP5JHC.js';
69
69
  export { DescriptionList, DescriptionListItem } from '../chunk-F2XSYBKH.js';
70
70
  export { DIFF_LIST_LABELS, DiffList } from '../chunk-LFHCXZO5.js';
71
71
  export { Disclosure } from '../chunk-S4RCG44T.js';
72
+ export { Checkbox } from '../chunk-YCTMKKRA.js';
72
73
  export { ChoiceButtons } from '../chunk-YSJC7AZC.js';
73
- export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from '../chunk-MLT2HBPN.js';
74
74
  export { ChoiceList } from '../chunk-QBXZLGK2.js';
75
+ export { CodeBlock } from '../chunk-KGTQ5CVD.js';
76
+ export { CopyButton, Copyable } from '../chunk-YACKC3K2.js';
77
+ export { useClipboard, writeClipboard } from '../chunk-5VNUYO76.js';
75
78
  export { Combobox } from '../chunk-4Y7WKXAW.js';
76
79
  export { CommandPalette } from '../chunk-IYZZL3MZ.js';
77
80
  export { ConfirmModal, Modal } from '../chunk-K4VORB64.js';
@@ -79,30 +82,27 @@ export { HIGHLIGHT_REST_MS, TYPE_AHEAD_WINDOW, useHighlightRest, useListbox, use
79
82
  export { COMPOSER_COUNTER_AT, Composer } from '../chunk-QSLIN64M.js';
80
83
  export { Kbd, isApplePlatform, keyGlyph } from '../chunk-SMBKXWML.js';
81
84
  export { FormField, FormRow, FormSection, Input, InputAffix, Label, ReadOnlyField, Textarea } from '../chunk-FTEJPHBI.js';
82
- export { CodeBlock } from '../chunk-KGTQ5CVD.js';
83
- export { CopyButton, Copyable } from '../chunk-YACKC3K2.js';
84
- export { useClipboard, writeClipboard } from '../chunk-5VNUYO76.js';
85
85
  export { Container } from '../chunk-QVE4GJAT.js';
86
86
  export { Breadcrumb } from '../chunk-VWNC2L6W.js';
87
87
  export { KeyChip } from '../chunk-FYTIJM2T.js';
88
- export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from '../chunk-GXQ3B46I.js';
89
88
  export { Callout } from '../chunk-R6FBDTP3.js';
90
89
  export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, anchorView, beyondSlop, clampPan, clampZoom, fitView, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-AMH67MLM.js';
91
90
  import '../chunk-VYOKRN2I.js';
92
91
  export { Button, ButtonLink } from '../chunk-OG6CL3EB.js';
92
+ export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from '../chunk-GXQ3B46I.js';
93
93
  export { Card } from '../chunk-EG6NYWVK.js';
94
94
  export { useCardHeaderSlot } from '../chunk-AV2DXAEL.js';
95
95
  import '../chunk-3L5NHASN.js';
96
- export { Checkbox } from '../chunk-YCTMKKRA.js';
96
+ export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from '../chunk-MLT2HBPN.js';
97
97
  export { Accordion, AccordionItem } from '../chunk-G2AVKPSL.js';
98
98
  export { DisclosureAnatomy } from '../chunk-ENJUPIND.js';
99
99
  export { HeadingLevelProvider, headingTag, nextHeadingLevel, useHeadingLevel } from '../chunk-PQADV6P6.js';
100
- export { ADD_PILL_MS, AddPill } from '../chunk-74WGARJE.js';
100
+ export { ADD_PILL_MS, AddPill } from '../chunk-TROLVEZY.js';
101
101
  export { Announcer, announce, useAnnouncer } from '../chunk-RSAQOKH3.js';
102
102
  export { AppShell, AppShellRail, AppShellRailRow, AppShellToggle, AppShellTopbar, useAppShell } from '../chunk-H3XOMT7W.js';
103
103
  import '../chunk-IG75YMUN.js';
104
104
  export { IconButton } from '../chunk-4FQT6ZAY.js';
105
- export { AvatarStack, avatarStackLabel } from '../chunk-6NIZCQUM.js';
105
+ export { AvatarStack, avatarStackLabel } from '../chunk-ZPWUVVIB.js';
106
106
  export { AvatarPicker } from '../chunk-EFNHOVC2.js';
107
107
  export { HuePicker } from '../chunk-NXDEPUVG.js';
108
108
  export { NODE_HUES, NODE_HUE_NAMES, isNodeHue } from '../chunk-AYKXMIOR.js';
package/dist/index.js CHANGED
@@ -11,7 +11,7 @@ export { ThemeSwatch } from './chunk-MNFU2RNT.js';
11
11
  export { DensitySwitcher, ThemeSwitcher } from './chunk-SBRE7IML.js';
12
12
  export { ThemeToggle } from './chunk-6TSZCBID.js';
13
13
  export { applyDensity, applyStoredPreferences, applyTheme, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from './chunk-K3OWD7BJ.js';
14
- export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from './chunk-7BZPYA5P.js';
14
+ export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from './chunk-DY77H372.js';
15
15
  export { StatGroup } from './chunk-QVAFL2LE.js';
16
16
  export { Stepper } from './chunk-5QWIJSQM.js';
17
17
  export { Switch } from './chunk-A722MUNR.js';
@@ -35,11 +35,11 @@ export { MARKDOWN_FORMATS, MarkdownEditor, formatMarkdown, insertMarkdown, markd
35
35
  import './chunk-VYY56AMX.js';
36
36
  export { DEFAULT_METER_THRESHOLDS, METER_STATES, Meter, meterState, meterStateTone, meterTone, progressTone } from './chunk-4PZ6FJKW.js';
37
37
  export { NewItemsNotice } from './chunk-PXU6HOZB.js';
38
- export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from './chunk-IHGKPEEV.js';
39
- export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from './chunk-DYHSQHAZ.js';
38
+ export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from './chunk-FY2R4U4Q.js';
39
+ export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from './chunk-YYBD73OI.js';
40
40
  export { TreeGrid } from './chunk-B2Z2CDM5.js';
41
41
  export { SIZE_EPSILON, TYPE_AHEAD_RESET_MS, createTreeModel, isTypeAheadKey, layoutConnectors, layoutForest, placeGroups, treeAllExpandable, treeAncestors, treeCollapseOrAscend, treeExpandOrDescend, treeExpandTo, treeExpandable, treeFirst, treeFirstChild, treeItemAction, treeLast, treeLevel, treeNext, treeParent, treePosInSet, treePrevious, treeSetSize, treeStep, treeTypeAhead, treeVisible, typeAheadBuffer, useLayoutAnchor, useMeasuredSizes, useTreeState } from './chunk-MY374UUD.js';
42
- export { OrgLabel } from './chunk-6OF2DBKY.js';
42
+ export { OrgLabel } from './chunk-22M7OXKW.js';
43
43
  export { AutoGrid, Inline, Spacer, Stack } from './chunk-ZAC7SKUN.js';
44
44
  export { Link } from './chunk-FBSEJO2C.js';
45
45
  export { List, ListItem } from './chunk-DS2C73RJ.js';
@@ -58,20 +58,23 @@ export { Eyebrow } from './chunk-RK4XPHVG.js';
58
58
  export { FactList } from './chunk-JI5AVQLA.js';
59
59
  export { Tooltip } from './chunk-QWOPX2MN.js';
60
60
  export { FILTER_CHIP_ATTRIBUTE, FilterChip, FilterChipGroup } from './chunk-5YLON2PW.js';
61
- export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from './chunk-2GXTIK37.js';
61
+ export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from './chunk-4EOJR52M.js';
62
62
  export { PageHeader } from './chunk-HOXGBLEY.js';
63
63
  export { RelativeTime, currentNow, formatElapsed, formatExact, formatRelative, formatUntil, toISO, toInstant, useNow } from './chunk-3CZ7XAVY.js';
64
64
  export { Toolbar, ToolbarOverflow, ToolbarWide } from './chunk-PGRPNDWM.js';
65
- export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from './chunk-QV266R6G.js';
65
+ export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from './chunk-TK6YC5QT.js';
66
66
  export { Menu } from './chunk-NS7BVLL3.js';
67
67
  export { EMPTY_VALUE, EmptyValue } from './chunk-EUCC37WY.js';
68
- export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from './chunk-2UU5IGZI.js';
68
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from './chunk-GUHP5JHC.js';
69
69
  export { DescriptionList, DescriptionListItem } from './chunk-F2XSYBKH.js';
70
70
  export { DIFF_LIST_LABELS, DiffList } from './chunk-LFHCXZO5.js';
71
71
  export { Disclosure } from './chunk-S4RCG44T.js';
72
+ export { Checkbox } from './chunk-YCTMKKRA.js';
72
73
  export { ChoiceButtons } from './chunk-YSJC7AZC.js';
73
- export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from './chunk-MLT2HBPN.js';
74
74
  export { ChoiceList } from './chunk-QBXZLGK2.js';
75
+ export { CodeBlock } from './chunk-KGTQ5CVD.js';
76
+ export { CopyButton, Copyable } from './chunk-YACKC3K2.js';
77
+ export { useClipboard, writeClipboard } from './chunk-5VNUYO76.js';
75
78
  export { Combobox } from './chunk-4Y7WKXAW.js';
76
79
  export { CommandPalette } from './chunk-IYZZL3MZ.js';
77
80
  export { ConfirmModal, Modal } from './chunk-K4VORB64.js';
@@ -79,30 +82,27 @@ export { HIGHLIGHT_REST_MS, TYPE_AHEAD_WINDOW, useHighlightRest, useListbox, use
79
82
  export { COMPOSER_COUNTER_AT, Composer } from './chunk-QSLIN64M.js';
80
83
  export { Kbd, isApplePlatform, keyGlyph } from './chunk-SMBKXWML.js';
81
84
  export { FormField, FormRow, FormSection, Input, InputAffix, Label, ReadOnlyField, Textarea } from './chunk-FTEJPHBI.js';
82
- export { CodeBlock } from './chunk-KGTQ5CVD.js';
83
- export { CopyButton, Copyable } from './chunk-YACKC3K2.js';
84
- export { useClipboard, writeClipboard } from './chunk-5VNUYO76.js';
85
85
  export { Container } from './chunk-QVE4GJAT.js';
86
86
  export { Breadcrumb } from './chunk-VWNC2L6W.js';
87
87
  export { KeyChip } from './chunk-FYTIJM2T.js';
88
- export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from './chunk-GXQ3B46I.js';
89
88
  export { Callout } from './chunk-R6FBDTP3.js';
90
89
  export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, anchorView, beyondSlop, clampPan, clampZoom, fitView, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from './chunk-AMH67MLM.js';
91
90
  import './chunk-VYOKRN2I.js';
92
91
  export { Button, ButtonLink } from './chunk-OG6CL3EB.js';
92
+ export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from './chunk-GXQ3B46I.js';
93
93
  export { Card } from './chunk-EG6NYWVK.js';
94
94
  export { useCardHeaderSlot } from './chunk-AV2DXAEL.js';
95
95
  import './chunk-3L5NHASN.js';
96
- export { Checkbox } from './chunk-YCTMKKRA.js';
96
+ export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from './chunk-MLT2HBPN.js';
97
97
  export { Accordion, AccordionItem } from './chunk-G2AVKPSL.js';
98
98
  export { DisclosureAnatomy } from './chunk-ENJUPIND.js';
99
99
  export { HeadingLevelProvider, headingTag, nextHeadingLevel, useHeadingLevel } from './chunk-PQADV6P6.js';
100
- export { ADD_PILL_MS, AddPill } from './chunk-74WGARJE.js';
100
+ export { ADD_PILL_MS, AddPill } from './chunk-TROLVEZY.js';
101
101
  export { Announcer, announce, useAnnouncer } from './chunk-RSAQOKH3.js';
102
102
  export { AppShell, AppShellRail, AppShellRailRow, AppShellToggle, AppShellTopbar, useAppShell } from './chunk-H3XOMT7W.js';
103
103
  import './chunk-IG75YMUN.js';
104
104
  export { IconButton } from './chunk-4FQT6ZAY.js';
105
- export { AvatarStack, avatarStackLabel } from './chunk-6NIZCQUM.js';
105
+ export { AvatarStack, avatarStackLabel } from './chunk-ZPWUVVIB.js';
106
106
  export { AvatarPicker } from './chunk-EFNHOVC2.js';
107
107
  export { HuePicker } from './chunk-NXDEPUVG.js';
108
108
  export { NODE_HUES, NODE_HUE_NAMES, isNodeHue } from './chunk-AYKXMIOR.js';
package/dist/styles.css CHANGED
@@ -88,7 +88,7 @@
88
88
  }
89
89
 
90
90
 
91
- /* AddPill-V4TQXJ53.css */
91
+ /* AddPill-RYCY56P4.css */
92
92
  /*
93
93
  * The control that adds a child (AddPill.tsx).
94
94
  *
@@ -499,7 +499,9 @@
499
499
  /* THE FILL IS FOR A FILLED DRAWING, and a glyph is a stroke. Painting the
500
500
  inside of a Lucide glyph turns every closed shape in it solid and every
501
501
  open one into a smear, so a `.crewlet-glyph` keeps the fill its own frame
502
- decides and takes the ink through its stroke, which is `currentColor`. */
502
+ decides and takes the ink through its stroke, which is `currentColor`.
503
+ A drawing here cuts its holes as geometry, never through a mask: this rule
504
+ repaints a mask's paths and groups as well, and fills its holes with ink. */
503
505
  .crewlet-add-pill__section svg:not(.crewlet-glyph),
504
506
  .crewlet-add-pill__section svg:not(.crewlet-glyph) g,
505
507
  .crewlet-add-pill__section svg:not(.crewlet-glyph) path {
@@ -1161,7 +1163,7 @@
1161
1163
  }
1162
1164
 
1163
1165
 
1164
- /* Avatar-BPJ36QZR.css */
1166
+ /* Avatar-I4NFP3WQ.css */
1165
1167
  /*
1166
1168
  * The identity badge.
1167
1169
  *
@@ -1324,9 +1326,9 @@
1324
1326
 
1325
1327
  /*
1326
1328
  * THE CHARACTER FILLS MOST OF THE PLATE, centred by its own frame (it frames
1327
- * every silhouette square on what it draws), with the plate's corner clear of
1328
- * it: a wide character such as the original Crewlet reaches the plate's
1329
- * sides, a tall one its top and its foot, and none touches the curve.
1329
+ * every silhouette square on its optical centre), with the plate's corner
1330
+ * clear of it: a wide character such as the original Crewlet reaches the
1331
+ * plate's sides, a tall one its top and its foot, and none touches the curve.
1330
1332
  */
1331
1333
  .crewlet-avatar--character {
1332
1334
  border: 1px solid transparent;
@@ -12753,7 +12755,7 @@ svg.crewlet-datetime__chevron {
12753
12755
  }
12754
12756
 
12755
12757
 
12756
- /* OrgLabel-6WSKJQOT.css */
12758
+ /* OrgLabel-R5KY7C3W.css */
12757
12759
  /*
12758
12760
  * What a node of an org chart and a row of an org table both say
12759
12761
  * (OrgLabel.tsx).
@@ -12835,7 +12837,12 @@ svg.crewlet-datetime__chevron {
12835
12837
  inside of a Lucide glyph turns every closed shape in it solid and every
12836
12838
  open one into a smear (a person's head and shoulders, a unit's building, a
12837
12839
  warning's triangle, each a blob), so a `.crewlet-glyph` keeps the fill its
12838
- own frame decides and takes the ink through its stroke. */
12840
+ own frame decides and takes the ink through its stroke.
12841
+
12842
+ A DRAWING HERE CUTS ITS HOLES AS GEOMETRY. This rule repaints every path and
12843
+ group in the zone, a mask's included, so a hole cut by a mask fills with a
12844
+ share of the ink that changes with the hue: every agent's eyes on the chart
12845
+ did, until the Crewlet characters cut their faces into their own paths. */
12839
12846
  .crewlet-org-label__icon svg:not(.crewlet-glyph),
12840
12847
  .crewlet-org-label__icon svg:not(.crewlet-glyph) g,
12841
12848
  .crewlet-org-label__icon svg:not(.crewlet-glyph) path {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crewlethq/ui",
3
- "version": "0.15.0",
3
+ "version": "0.15.1",
4
4
  "description": "Crewlet shared React components built on @crewlethq/tokens and @crewlethq/icons.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -42,8 +42,8 @@
42
42
  "clean": "rm -rf dist src/generated"
43
43
  },
44
44
  "dependencies": {
45
- "@crewlethq/icons": "0.15.0",
46
- "@crewlethq/tokens": "0.15.0"
45
+ "@crewlethq/icons": "0.15.1",
46
+ "@crewlethq/tokens": "0.15.1"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "react": ">=18",
@@ -1,7 +1,7 @@
1
1
  import { Select } from './chunk-FC4YTTFJ.js';
2
2
  import { Input } from './chunk-FTEJPHBI.js';
3
- import { today, shiftMonth, CalendarGrid, compareDays } from './chunk-GXQ3B46I.js';
4
3
  import { Button } from './chunk-OG6CL3EB.js';
4
+ import { today, shiftMonth, CalendarGrid, compareDays } from './chunk-GXQ3B46I.js';
5
5
  import { IconButton } from './chunk-4FQT6ZAY.js';
6
6
  import { Popover } from './chunk-BWRGFKJP.js';
7
7
  import { isComposing } from './chunk-R25RGPUB.js';
@@ -1,5 +1,5 @@
1
- import { today, CalendarGrid, shiftMonth, compareDays } from './chunk-GXQ3B46I.js';
2
1
  import { Button } from './chunk-OG6CL3EB.js';
2
+ import { today, CalendarGrid, shiftMonth, compareDays } from './chunk-GXQ3B46I.js';
3
3
  import { IconButton } from './chunk-4FQT6ZAY.js';
4
4
  import { Popover } from './chunk-BWRGFKJP.js';
5
5
  import { cx } from './chunk-ODEQTPFM.js';
@@ -1,10 +1,10 @@
1
1
  import { Menu } from './chunk-NS7BVLL3.js';
2
2
  import { EmptyValue } from './chunk-EUCC37WY.js';
3
- import { Modal } from './chunk-K4VORB64.js';
3
+ import { Checkbox } from './chunk-YCTMKKRA.js';
4
4
  import { useClipboard } from './chunk-5VNUYO76.js';
5
+ import { Modal } from './chunk-K4VORB64.js';
5
6
  import { Button } from './chunk-OG6CL3EB.js';
6
7
  import { useCardHeaderSlot } from './chunk-AV2DXAEL.js';
7
- import { Checkbox } from './chunk-YCTMKKRA.js';
8
8
  import { IconButton } from './chunk-4FQT6ZAY.js';
9
9
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
10
10
  import { cx } from './chunk-ODEQTPFM.js';