@crisp-ui-kit/crisp 0.31.2 → 0.31.4

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.
Files changed (142) hide show
  1. package/dist/cjs/components/accordion/accordion.js +1 -1
  2. package/dist/cjs/components/avatargroup/avatargroup.js +1 -1
  3. package/dist/cjs/components/barchart/barchart.js +1 -1
  4. package/dist/cjs/components/breadcrumb/breadcrumb.js +1 -1
  5. package/dist/cjs/components/bulkbar/bulkbar.js +1 -1
  6. package/dist/cjs/components/callout/callout.js +1 -1
  7. package/dist/cjs/components/checkbox/checkbox.js +1 -1
  8. package/dist/cjs/components/columncalc/columncalc.js +2 -2
  9. package/dist/cjs/components/datatable/datatable.js +19 -10
  10. package/dist/cjs/components/datatable/datatable.recipe.js +2 -2
  11. package/dist/cjs/components/datepickerfield/datepickerfield.js +1 -1
  12. package/dist/cjs/components/dialog/dialog.js +1 -1
  13. package/dist/cjs/components/donutchart/donutchart.js +1 -1
  14. package/dist/cjs/components/fileupload/fileupload.js +1 -1
  15. package/dist/cjs/components/formfield/formfield.js +1 -1
  16. package/dist/cjs/components/linechart/linechart.js +1 -1
  17. package/dist/cjs/components/menu/menu.js +1 -1
  18. package/dist/cjs/components/multiselect/multiselect.js +1 -1
  19. package/dist/cjs/components/radiogroup/radiogroup.js +1 -1
  20. package/dist/cjs/components/resizablepanel/resizablepanel.js +1 -1
  21. package/dist/cjs/components/segmented/segmented.js +1 -1
  22. package/dist/cjs/components/select/select.js +1 -1
  23. package/dist/cjs/components/stagebar/stagebar.js +1 -1
  24. package/dist/cjs/components/statcard/statcard.js +1 -1
  25. package/dist/cjs/components/switch/switch.js +1 -1
  26. package/dist/cjs/components/tabletoolbar/tabletoolbar.js +2 -2
  27. package/dist/cjs/components/tabs/tabs.js +2 -2
  28. package/dist/cjs/components/textarea/textarea.js +1 -1
  29. package/dist/cjs/components/tooltip/tooltip.js +1 -1
  30. package/dist/cjs/product/appshell/appshell.js +4 -4
  31. package/dist/cjs/product/authshell/authshell.js +1 -1
  32. package/dist/cjs/product/board/board.js +1 -1
  33. package/dist/cjs/product/command/command.js +1 -1
  34. package/dist/cjs/product/entitycard/entitycard.js +1 -1
  35. package/dist/cjs/product/flowcanvas/flowcanvas.js +1 -1
  36. package/dist/cjs/product/inbox/inbox.js +1 -1
  37. package/dist/cjs/product/listpage/listpage.js +1 -1
  38. package/dist/cjs/product/onboarding/onboarding.js +1 -1
  39. package/dist/cjs/product/recordpage/recordpage.js +7 -7
  40. package/dist/cjs/product/recordstable/recordstable.js +9 -9
  41. package/dist/cjs/product/richtext/richtext.js +1 -1
  42. package/dist/cjs/product/settingssection/settingssection.js +1 -1
  43. package/dist/cjs/product/settingsshell/settingsshell.js +1 -1
  44. package/dist/cjs/product/sidebar/sidebar.js +6 -6
  45. package/dist/cjs/product/tasklist/tasklist.js +1 -1
  46. package/dist/cjs/product/trialbanner/trialbanner.js +1 -1
  47. package/dist/cjs/product/viewtoggle/viewtoggle.js +1 -1
  48. package/dist/datatable.css +2 -2
  49. package/dist/esm/components/accordion/accordion.js +1 -1
  50. package/dist/esm/components/avatargroup/avatargroup.js +1 -1
  51. package/dist/esm/components/barchart/barchart.js +1 -1
  52. package/dist/esm/components/breadcrumb/breadcrumb.js +1 -1
  53. package/dist/esm/components/bulkbar/bulkbar.js +1 -1
  54. package/dist/esm/components/callout/callout.js +1 -1
  55. package/dist/esm/components/checkbox/checkbox.js +1 -1
  56. package/dist/esm/components/columncalc/columncalc.js +2 -2
  57. package/dist/esm/components/datatable/datatable.js +19 -10
  58. package/dist/esm/components/datatable/datatable.recipe.js +2 -2
  59. package/dist/esm/components/datepickerfield/datepickerfield.js +1 -1
  60. package/dist/esm/components/dialog/dialog.js +1 -1
  61. package/dist/esm/components/donutchart/donutchart.js +1 -1
  62. package/dist/esm/components/fileupload/fileupload.js +1 -1
  63. package/dist/esm/components/formfield/formfield.js +1 -1
  64. package/dist/esm/components/linechart/linechart.js +1 -1
  65. package/dist/esm/components/menu/menu.js +1 -1
  66. package/dist/esm/components/multiselect/multiselect.js +1 -1
  67. package/dist/esm/components/radiogroup/radiogroup.js +1 -1
  68. package/dist/esm/components/resizablepanel/resizablepanel.js +1 -1
  69. package/dist/esm/components/segmented/segmented.js +1 -1
  70. package/dist/esm/components/select/select.js +1 -1
  71. package/dist/esm/components/stagebar/stagebar.js +1 -1
  72. package/dist/esm/components/statcard/statcard.js +1 -1
  73. package/dist/esm/components/switch/switch.js +1 -1
  74. package/dist/esm/components/tabletoolbar/tabletoolbar.js +2 -2
  75. package/dist/esm/components/tabs/tabs.js +2 -2
  76. package/dist/esm/components/textarea/textarea.js +1 -1
  77. package/dist/esm/components/tooltip/tooltip.js +1 -1
  78. package/dist/esm/product/appshell/appshell.js +4 -4
  79. package/dist/esm/product/authshell/authshell.js +1 -1
  80. package/dist/esm/product/board/board.js +1 -1
  81. package/dist/esm/product/command/command.js +1 -1
  82. package/dist/esm/product/entitycard/entitycard.js +1 -1
  83. package/dist/esm/product/flowcanvas/flowcanvas.js +1 -1
  84. package/dist/esm/product/inbox/inbox.js +1 -1
  85. package/dist/esm/product/listpage/listpage.js +1 -1
  86. package/dist/esm/product/onboarding/onboarding.js +1 -1
  87. package/dist/esm/product/recordpage/recordpage.js +7 -7
  88. package/dist/esm/product/recordstable/recordstable.js +9 -9
  89. package/dist/esm/product/richtext/richtext.js +1 -1
  90. package/dist/esm/product/settingssection/settingssection.js +1 -1
  91. package/dist/esm/product/settingsshell/settingsshell.js +1 -1
  92. package/dist/esm/product/sidebar/sidebar.js +6 -6
  93. package/dist/esm/product/tasklist/tasklist.js +1 -1
  94. package/dist/esm/product/trialbanner/trialbanner.js +1 -1
  95. package/dist/esm/product/viewtoggle/viewtoggle.js +1 -1
  96. package/dist/styles.css +2 -2
  97. package/dist/types/components/avatargroup/avatargroup.d.ts +1 -1
  98. package/dist/types/components/barchart/barchart.d.ts +1 -1
  99. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -1
  100. package/dist/types/components/bulkbar/bulkbar.d.ts +1 -1
  101. package/dist/types/components/callout/callout.d.ts +1 -1
  102. package/dist/types/components/checkbox/checkbox.d.ts +1 -1
  103. package/dist/types/components/columncalc/columncalc.d.ts +5 -5
  104. package/dist/types/components/datatable/datatable.d.ts +5 -5
  105. package/dist/types/components/datepickerfield/datepickerfield.d.ts +1 -1
  106. package/dist/types/components/dialog/dialog.d.ts +1 -1
  107. package/dist/types/components/donutchart/donutchart.d.ts +1 -1
  108. package/dist/types/components/emptystate/emptystate.d.ts +1 -1
  109. package/dist/types/components/formfield/formfield.d.ts +1 -1
  110. package/dist/types/components/linechart/linechart.d.ts +1 -1
  111. package/dist/types/components/menu/menu.d.ts +1 -1
  112. package/dist/types/components/multiselect/multiselect.d.ts +1 -1
  113. package/dist/types/components/progress/progress.d.ts +1 -1
  114. package/dist/types/components/radiogroup/radiogroup.d.ts +1 -1
  115. package/dist/types/components/resizablepanel/resizablepanel.d.ts +4 -4
  116. package/dist/types/components/segmented/segmented.d.ts +1 -1
  117. package/dist/types/components/select/select.d.ts +2 -2
  118. package/dist/types/components/stagebar/stagebar.d.ts +1 -1
  119. package/dist/types/components/statcard/statcard.d.ts +1 -1
  120. package/dist/types/components/switch/switch.d.ts +1 -1
  121. package/dist/types/components/tabletoolbar/tabletoolbar.d.ts +1 -1
  122. package/dist/types/components/tabs/tabs.d.ts +2 -2
  123. package/dist/types/components/textarea/textarea.d.ts +1 -1
  124. package/dist/types/components/tooltip/tooltip.d.ts +1 -1
  125. package/dist/types/product/appshell/appshell.d.ts +2 -2
  126. package/dist/types/product/authshell/authshell.d.ts +1 -1
  127. package/dist/types/product/board/board.d.ts +1 -1
  128. package/dist/types/product/entitycard/entitycard.d.ts +1 -1
  129. package/dist/types/product/flowcanvas/flowcanvas.d.ts +1 -1
  130. package/dist/types/product/inbox/inbox.d.ts +1 -1
  131. package/dist/types/product/listpage/listpage.d.ts +1 -1
  132. package/dist/types/product/onboarding/onboarding.d.ts +1 -1
  133. package/dist/types/product/recordpage/recordpage.d.ts +2 -2
  134. package/dist/types/product/recordstable/recordstable.d.ts +10 -4
  135. package/dist/types/product/richtext/richtext.d.ts +1 -1
  136. package/dist/types/product/settingssection/settingssection.d.ts +1 -1
  137. package/dist/types/product/settingsshell/settingsshell.d.ts +1 -1
  138. package/dist/types/product/sidebar/sidebar.d.ts +10 -10
  139. package/dist/types/product/tasklist/tasklist.d.ts +1 -1
  140. package/dist/types/product/trialbanner/trialbanner.d.ts +1 -1
  141. package/dist/types/product/viewtoggle/viewtoggle.d.ts +1 -1
  142. package/package.json +1 -1
@@ -39,7 +39,7 @@ export type ResizablePanelProps = Omit<React.ComponentPropsWithoutRef<"div">, "c
39
39
  min?: number;
40
40
  /**
41
41
  * `max-width` — a px number, or a raw CSS expression for callers that need
42
- * Attio's real clamp, e.g. `max="min(60%, 100% - 350px)"`. Constraints are
42
+ * a real clamp, e.g. `max="min(60%, 100% - 350px)"`. Constraints are
43
43
  * never re-applied in JS: the handler writes the unclamped drag width, and
44
44
  * the browser's own `min-width`/`max-width` resolve the rendered size.
45
45
  */
@@ -53,8 +53,8 @@ export type ResizablePanelProps = Omit<React.ComponentPropsWithoutRef<"div">, "c
53
53
  /** Resize-handle geometry — "panel" (default) or "column" (table edges). */
54
54
  handleVariant?: ResizablePanelHandleVariant;
55
55
  /**
56
- * Persist width as a percentage of the container under this key (matches
57
- * Attio: a `%`, not px, so the panel keeps its proportion on resize).
56
+ * Persist width as a percentage of the container under this key (a `%`,
57
+ * not px, so the panel keeps its proportion on resize).
58
58
  * Only applies when `size` is uncontrolled.
59
59
  */
60
60
  storageKey?: string;
@@ -62,7 +62,7 @@ export type ResizablePanelProps = Omit<React.ComponentPropsWithoutRef<"div">, "c
62
62
  children?: React.ReactNode;
63
63
  };
64
64
  /**
65
- * Attio's adjustable-panel primitive: a spacer that reserves layout width
65
+ * An adjustable-panel primitive: a spacer that reserves layout width
66
66
  * plus a panel that overlays it, so the panel can move between docked
67
67
  * (in-flow) and floating (`position: fixed`, an overlay) without a reflow
68
68
  * glitch. Drag the edge handle to resize; constraints are CSS `min-width`/
@@ -17,7 +17,7 @@ export type SegmentedProps = Omit<React.ComponentPropsWithoutRef<"div">, "defaul
17
17
  className?: string;
18
18
  };
19
19
  /**
20
- * A segmented control (single-choice toggle) — measured from Attio's view
20
+ * A segmented control (single-choice toggle) — measured from a view
21
21
  * switcher. `role="radiogroup"` over `role="radio"` buttons with roving
22
22
  * tabindex and ←/→ (Home/End) keyboard selection.
23
23
  */
@@ -4,7 +4,7 @@ export type SelectOption = {
4
4
  label: React.ReactNode;
5
5
  /** Text used for filtering when `searchable` (falls back to a string label). */
6
6
  keywords?: string;
7
- /** A status colour dot shown before the label (Attio status/select fields). */
7
+ /** A status colour dot shown before the label (status/select fields). */
8
8
  color?: string;
9
9
  disabled?: boolean;
10
10
  };
@@ -47,7 +47,7 @@ export type SelectProps = Omit<React.ComponentPropsWithoutRef<"div">, "value" |
47
47
  id?: string;
48
48
  };
49
49
  /**
50
- * A select / dropdown — the settings control, measured from Attio, with an
50
+ * A select / dropdown — the settings control, measured live, with an
51
51
  * optional Linear-style search. A `role="combobox"` trigger opens a
52
52
  * `role="listbox"`; pass `searchable` to add a filter field at the top (with a
53
53
  * "No results" empty state). Full keyboard model — ↑/↓ move, Enter/Space pick,
@@ -11,7 +11,7 @@ export type StageBarProps = React.ComponentPropsWithoutRef<"div"> & {
11
11
  className?: string;
12
12
  };
13
13
  /**
14
- * A pipeline stage bar — measured from Attio's Deal-stage Highlight. Each stage
14
+ * A pipeline stage bar — measured from a deal-stage highlight. Each stage
15
15
  * is a segment tinted with its colour; the current stage is at full strength.
16
16
  */
17
17
  export declare function StageBar({ stages, current, "aria-label": ariaLabel, className, ...rest }: StageBarProps): import("react").JSX.Element;
@@ -20,7 +20,7 @@ export type StatCardProps = React.ComponentPropsWithoutRef<"div"> & {
20
20
  className?: string;
21
21
  };
22
22
  /**
23
- * A single-metric KPI tile — measured from Attio's Reports number/insight cards.
23
+ * A single-metric KPI tile — measured from a reports number/insight card.
24
24
  * Label, a large value, and an optional up/down delta pill with a caption.
25
25
  */
26
26
  export declare function StatCard({ label, icon, value, delta, deltaSuffix, caption, card, className, ...rest }: StatCardProps): React.JSX.Element;
@@ -25,7 +25,7 @@ export type SwitchProps = Omit<React.ComponentPropsWithoutRef<"button">, "onChan
25
25
  required?: boolean;
26
26
  };
27
27
  /**
28
- * An on/off toggle — the settings switch, measured from Attio. Renders a
28
+ * An on/off toggle — the settings switch, measured live. Renders a
29
29
  * `role="switch"` button (a native checkbox's semantics without its box), so
30
30
  * label association and keyboard (Space/Enter) come for free. Controlled via
31
31
  * `checked`/`onCheckedChange`, or uncontrolled from `defaultChecked`.
@@ -86,7 +86,7 @@ export declare function applyFilters<T>(rows: T[], filters: ToolbarFilter[], get
86
86
  */
87
87
  export declare function applySorts<T>(rows: T[], sorts: ToolbarSort[], get?: (row: T, key: string) => unknown): T[];
88
88
  /**
89
- * Attio's table toolbar as a standalone primitive: the Sort and Filter
89
+ * The table toolbar as a standalone primitive: the Sort and Filter
90
90
  * controls, their menus, the sort-condition rows and the filter chips.
91
91
  *
92
92
  * `RecordsTable` renders this same measured chrome internally; this is the
@@ -23,8 +23,8 @@ export type TabsProps = Omit<React.ComponentPropsWithoutRef<"div">, "value" | "d
23
23
  };
24
24
  /**
25
25
  * A row of text tabs over a sliding ink underline — the record-view tab bar,
26
- * measured from Attio. Roving-tabindex keyboard model (←/→ move + activate,
27
- * Home/End jump); activation follows focus, matching Attio. Controlled via
26
+ * measured live. Roving-tabindex keyboard model (←/→ move + activate,
27
+ * Home/End jump); activation follows focus. Controlled via
28
28
  * `value`/`onValueChange`, or uncontrolled from `defaultValue`.
29
29
  */
30
30
  export declare function Tabs({ tabs, value, defaultValue, onValueChange, leading, children, className, "aria-label": ariaLabel, ...rest }: TabsProps): React.JSX.Element;
@@ -6,7 +6,7 @@ export type TextareaProps = React.ComponentPropsWithoutRef<"textarea"> & {
6
6
  wrapperClassName?: string;
7
7
  };
8
8
  /**
9
- * A multiline text field — measured from Attio's settings. Forwards every native
9
+ * A multiline text field — measured from settings. Forwards every native
10
10
  * `<textarea>` prop; pass `showCount` with `maxLength` to render a live
11
11
  * character counter (which turns red if the value exceeds the limit).
12
12
  */
@@ -22,7 +22,7 @@ export type TooltipProps = {
22
22
  onOpenChange?: (open: boolean) => void;
23
23
  };
24
24
  /**
25
- * A hover/focus tooltip — a dark hint chip measured from Attio. Wraps its
25
+ * A hover/focus tooltip — a dark hint chip measured live. Wraps its
26
26
  * trigger in an inline element, shows after `delay` on pointer-enter / focus,
27
27
  * and hides on leave / blur / Escape. The bubble is portaled and positioned
28
28
  * above the trigger (flipping below near the top edge).
@@ -27,8 +27,8 @@ export type AppShellProps = Omit<React.ComponentPropsWithoutRef<"div">, "childre
27
27
  className?: string;
28
28
  };
29
29
  /**
30
- * App-shell layout with a collapsible + resizable sidebar, mirroring Attio's
31
- * window: drag the sidebar's right edge to resize, press the sidebar's
30
+ * App-shell layout with a collapsible + resizable sidebar, mirroring a live
31
+ * app's window: drag the sidebar's right edge to resize, press the sidebar's
32
32
  * collapse button to slide it away (a floating button brings it back). The
33
33
  * sidebar pane clips rather than squishing, so its content never reflows.
34
34
  */
@@ -15,7 +15,7 @@ export type AuthShellProps = Omit<React.ComponentPropsWithoutRef<"div">, "title"
15
15
  className?: string;
16
16
  };
17
17
  /**
18
- * The Attio welcome/auth layout (app.attio.com/welcome/*) — measured live.
18
+ * The welcome/auth layout — measured live.
19
19
  * A centered page frame: an optional top progress bar, a logo, a two-pane
20
20
  * card (the form + an optional product preview, hidden under 1200px), and
21
21
  * a footer. Auth-surface Input/FormField/Button treatment (flatter fields,
@@ -32,7 +32,7 @@ export type BoardProps<T extends BoardCard> = Omit<React.ComponentPropsWithoutRe
32
32
  * A kanban board with native drag-and-drop between columns. Cards are
33
33
  * `draggable`; dropping one on a column reparents it via `onCardsChange`
34
34
  * (the parent owns the cards, so the move is a controlled state update).
35
- * Measured from Attio's Deals pipeline.
35
+ * Measured from a deals pipeline.
36
36
  */
37
37
  export declare function Board<T extends BoardCard>({ columns, cards, onCardsChange, renderCard, onNewCard, newCardLabel, getCardLabel, announceMove, className, ...rest }: BoardProps<T>): React.JSX.Element;
38
38
  export declare namespace Board {
@@ -14,7 +14,7 @@ export type EntityCardProps = Omit<React.ComponentPropsWithoutRef<"button">, "ch
14
14
  className?: string;
15
15
  };
16
16
  /**
17
- * A note / entity card — measured from Attio's Notes grid. A bordered white
17
+ * A note / entity card — measured from a notes grid. A bordered white
18
18
  * card with an author row, a title, a clamped excerpt, and a footer row with a
19
19
  * right-aligned date. Rendered as a button so the whole card is clickable.
20
20
  */
@@ -31,7 +31,7 @@ export type FlowCanvasProps<T extends FlowNode> = Omit<React.ComponentPropsWitho
31
31
  };
32
32
  /**
33
33
  * A pannable, zoomable node canvas with draggable nodes and connecting edges —
34
- * measured from Attio's Workflows editor. Drag a node to move it (fires
34
+ * measured from a workflows editor. Drag a node to move it (fires
35
35
  * `onNodesChange`); drag the background to pan; use the toolbar to zoom.
36
36
  */
37
37
  export declare function FlowCanvas<T extends FlowNode>({ nodes, edges, onNodesChange, renderNode, nodeWidth, nodeHeight, "aria-label": ariaLabel, className, zoomOutLabel, zoomInLabel, resetLabel, edgesLabel, ...rest }: FlowCanvasProps<T>): React.JSX.Element;
@@ -33,7 +33,7 @@ export type InboxProps = Omit<React.ComponentPropsWithoutRef<"div">, "children"
33
33
  className?: string;
34
34
  };
35
35
  /**
36
- * A notifications inbox panel — measured from Attio's notification flyout. A
36
+ * A notifications inbox panel — measured from a notification flyout. A
37
37
  * title, Notifications/Requests tabs with counts, then notification rows
38
38
  * (avatar + message + time + unread dot) or a centred empty state. Put it inside
39
39
  * a Popover for the flyout.
@@ -35,7 +35,7 @@ export declare function ListRow({ children, onClick, }: {
35
35
  onClick?: () => void;
36
36
  }): React.JSX.Element;
37
37
  /**
38
- * The entity-list page shell — measured from Attio's Reports/Sequences/Tasks/
38
+ * The entity-list page shell — measured from Reports/Sequences/Tasks/
39
39
  * Notes list views. A view-bar toolbar (leading/trailing slots + record count),
40
40
  * an optional dashed Favorites region, then column headers and time-grouped
41
41
  * rows. Rows are composed by the caller (wrap each in <ListRow>).
@@ -48,7 +48,7 @@ export declare const onboardingLabels: {
48
48
  completedStepLabel: (label: React.ReactNode) => string;
49
49
  };
50
50
  /**
51
- * An onboarding checklist card — measured from Attio's floating "Getting
51
+ * An onboarding checklist card — measured from a floating "Getting
52
52
  * started" widget. Title + optional menu/minimize, a segmented progress bar,
53
53
  * and step rows (completed rows strike through with a brand check).
54
54
  */
@@ -21,7 +21,7 @@ export type RecordPageProps = Omit<React.ComponentPropsWithoutRef<"div">, "child
21
21
  * The record's own field labels and values are NOT here — those arrive through
22
22
  * `record` and `columns`, and are the consumer's data. What this covers is the
23
23
  * surface crisp draws around them: the tab strip, the Highlights stats (a fixed
24
- * set measured from Attio, not consumer data), the action bar and the feed.
24
+ * set measured live, not consumer data), the action bar and the feed.
25
25
  */
26
26
  export type RecordPageLabels = {
27
27
  breadcrumb: string;
@@ -90,7 +90,7 @@ export type RecordPageLabelsInput = Partial<Omit<RecordPageLabels, "tabs" | "hig
90
90
  highlightEmpty?: Partial<RecordPageLabels["highlightEmpty"]>;
91
91
  };
92
92
  /**
93
- * The full-page company record view — the page Attio opens when you click into a
93
+ * The full-page company record view — the page that opens when you click into a
94
94
  * record (as opposed to the peek [RecordPanel]). A top breadcrumb bar with
95
95
  * favourite/edit/compose/… actions, a 320px left attribute column, and a tabbed
96
96
  * main area: Overview stacks Highlights, an Activity feed, and Notes / Tasks /
@@ -18,8 +18,8 @@ export type Column = {
18
18
  key: string;
19
19
  label: string;
20
20
  type?: ColumnType;
21
- /** Mark the column's values as AI-enriched — tints the cells the way Attio
22
- * washes enriched values (#9b69ff at 4%). */
21
+ /** Mark the column's values as AI-enriched — tints the cells the way
22
+ * enriched values are washed (#9b69ff at 4%). */
23
23
  enriched?: boolean;
24
24
  icon?: IconType;
25
25
  width?: number;
@@ -90,7 +90,7 @@ export type RecordsTableProps = Omit<React.ComponentPropsWithoutRef<"div">, "chi
90
90
  /** Called when a row's entity name is clicked — navigate to its full record page. */
91
91
  onOpenRecordPage?: (row: Row) => void;
92
92
  /** Tone for `entity`/`reference` avatars: `"brand"` (uniform, today's
93
- * measured Attio records-grid behaviour — the default) or `"hashed"` (a
93
+ * measured records-grid behaviour — the default) or `"hashed"` (a
94
94
  * stable colour per name, matching what `DataTable`'s `avatarTone` offers).
95
95
  * Entity avatars only — `TAG_TONES`/tag/status tone logic is untouched. */
96
96
  avatarTone?: "brand" | "hashed";
@@ -120,6 +120,12 @@ export type RecordsTableLabels = {
120
120
  descending: string;
121
121
  noSorts: string;
122
122
  learnSorting: string;
123
+ /**
124
+ * Where the sort popover's "Learn about sorting" row links to. Unset by default:
125
+ * the row renders as plain text, since a component library has no help site of its
126
+ * own to point at. Pass your own docs URL to make it a link.
127
+ */
128
+ learnSortingHref?: string;
123
129
  filter: string;
124
130
  addFilter: string;
125
131
  filterByField: string;
@@ -199,7 +205,7 @@ export declare function parseCellDate(raw: string | undefined): Date | null;
199
205
  /** The inverse: the picked date's own calendar day, not the UTC one. */
200
206
  export declare function formatCellDate(d: Date): string;
201
207
  /**
202
- * Attio-style record grid — fully featured. Toolbar (search / sort status /
208
+ * A measured-style record grid — fully featured. Toolbar (search / sort status /
203
209
  * count / New), sticky checkbox + entity columns, 36px rows, typed cells,
204
210
  * click-to-sort headers, column resize by dragging a header edge, inline cell
205
211
  * editing (double-click a text/number/url/date cell), add-row and add-column,
@@ -19,7 +19,7 @@ export type RichTextEditorProps = Omit<React.ComponentPropsWithoutRef<"div">, "c
19
19
  className?: string;
20
20
  };
21
21
  /**
22
- * A block rich-text editor — measured from Attio's Notes editor. A large title,
22
+ * A block rich-text editor — measured from a notes editor. A large title,
23
23
  * a prose body (headings, lists, quote, marks, links), and a floating toolbar
24
24
  * that appears over a text selection. Built on contentEditable, dependency-free.
25
25
  * Uncontrolled: seed with `defaultTitle`/`defaultHtml`, read via `onChange`.
@@ -8,7 +8,7 @@ export type SettingsSectionProps = Omit<React.ComponentPropsWithoutRef<"section"
8
8
  className?: string;
9
9
  };
10
10
  /**
11
- * A settings section — measured from Attio's Settings pages. A title + optional
11
+ * A settings section — measured from settings pages. A title + optional
12
12
  * subtitle and trailing action, then a gapped stack of rows (pair with
13
13
  * FormField). Compose several inside a settings content pane.
14
14
  */
@@ -28,7 +28,7 @@ export type SettingsShellProps = Omit<React.ComponentPropsWithoutRef<"div">, "ti
28
28
  className?: string;
29
29
  };
30
30
  /**
31
- * The Settings layout — measured from Attio's Settings. A left nav (back header,
31
+ * The Settings layout — measured live. A left nav (back header,
32
32
  * search, grouped items) beside a scrolling content pane. The search filters the
33
33
  * nav by label. Fills the height its container gives it.
34
34
  */
@@ -57,9 +57,9 @@ export type SidebarProps = React.ComponentPropsWithoutRef<"nav"> & {
57
57
  asChild?: boolean;
58
58
  /** Called when the collapse-panel button in the header is pressed. */
59
59
  onToggleCollapse?: () => void;
60
- /** Workspace switcher content. Defaults to the measured Attio workspace. */
60
+ /** Workspace switcher content. Defaults to the measured workspace. */
61
61
  workspace?: SidebarWorkspace;
62
- /** Main nav rows (Home, Tasks, …). Defaults to the measured Attio nav. */
62
+ /** Main nav rows (Home, Tasks, …). Defaults to the measured nav. */
63
63
  items?: SidebarNavItem[];
64
64
  /** The Records section (label + glyph-avatar rows). */
65
65
  recordsSection?: SidebarRecordsSection;
@@ -70,17 +70,17 @@ export type SidebarProps = React.ComponentPropsWithoutRef<"nav"> & {
70
70
  /** Footer copy (onboarding pill, invite row, trial banner). */
71
71
  footer?: SidebarFooter;
72
72
  };
73
- /** The measured Attio workspace switcher — the default `workspace` prop. */
73
+ /** The measured workspace switcher — the default `workspace` prop. */
74
74
  export declare const ATTIO_SIDEBAR_WORKSPACE: SidebarWorkspace;
75
- /** The measured Attio main nav — the default `items` prop. */
75
+ /** The measured main nav — the default `items` prop. */
76
76
  export declare const ATTIO_SIDEBAR_ITEMS: SidebarNavItem[];
77
- /** The measured Attio Records section — the default `recordsSection` prop. */
77
+ /** The measured Records section — the default `recordsSection` prop. */
78
78
  export declare const ATTIO_SIDEBAR_RECORDS_SECTION: SidebarRecordsSection;
79
- /** The measured Attio Lists section — the default `listsSection` prop. */
79
+ /** The measured Lists section — the default `listsSection` prop. */
80
80
  export declare const ATTIO_SIDEBAR_LISTS_SECTION: SidebarListsSection;
81
- /** The measured Attio Chats section — the default `chatsSection` prop. */
81
+ /** The measured Chats section — the default `chatsSection` prop. */
82
82
  export declare const ATTIO_SIDEBAR_CHATS_SECTION: SidebarSection;
83
- /** The measured Attio footer copy — the default `footer` prop. */
83
+ /** The measured footer copy — the default `footer` prop. */
84
84
  export declare const ATTIO_SIDEBAR_FOOTER: SidebarFooter;
85
85
  export declare const Sidebar: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & {
86
86
  /** Label for the collapse control. */
@@ -92,9 +92,9 @@ export declare const Sidebar: React.ForwardRefExoticComponent<Omit<React.Detaile
92
92
  asChild?: boolean;
93
93
  /** Called when the collapse-panel button in the header is pressed. */
94
94
  onToggleCollapse?: () => void;
95
- /** Workspace switcher content. Defaults to the measured Attio workspace. */
95
+ /** Workspace switcher content. Defaults to the measured workspace. */
96
96
  workspace?: SidebarWorkspace;
97
- /** Main nav rows (Home, Tasks, …). Defaults to the measured Attio nav. */
97
+ /** Main nav rows (Home, Tasks, …). Defaults to the measured nav. */
98
98
  items?: SidebarNavItem[];
99
99
  /** The Records section (label + glyph-avatar rows). */
100
100
  recordsSection?: SidebarRecordsSection;
@@ -30,7 +30,7 @@ export type TaskListProps = Omit<React.ComponentPropsWithoutRef<"div">, "childre
30
30
  className?: string;
31
31
  };
32
32
  /**
33
- * A task list — measured from Attio's Tasks page. Optional group headers with a
33
+ * A task list — measured from a tasks page. Optional group headers with a
34
34
  * count, then rows of a round complete-checkbox + title + trailing meta.
35
35
  * Completed rows strike through; overdue dates go red.
36
36
  */
@@ -12,7 +12,7 @@ export type TrialBannerProps = Omit<React.ComponentPropsWithoutRef<"div">, "chil
12
12
  className?: string;
13
13
  };
14
14
  /**
15
- * A compact trial / upgrade banner — measured from Attio's sidebar footer.
15
+ * A compact trial / upgrade banner — measured from a sidebar footer.
16
16
  * Icon + message + an optional small action pill (soft-glow outlined button).
17
17
  */
18
18
  export declare function TrialBanner({ icon, children, action, onAction, tone, className, ...rest }: TrialBannerProps): React.JSX.Element;
@@ -26,7 +26,7 @@ export type ViewToggleProps<T extends string = string> = Omit<React.ComponentPro
26
26
  className?: string;
27
27
  };
28
28
  /**
29
- * A compact icon toggle — measured from Attio's list/grid switch. A padded track
29
+ * A compact icon toggle — measured from a list/grid switch. A padded track
30
30
  * of icon tiles; the selected tile is raised. Use for view-mode switches (list ⇄
31
31
  * grid) or any small mutually-exclusive icon choice.
32
32
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crisp-ui-kit/crisp",
3
- "version": "0.31.2",
3
+ "version": "0.31.4",
4
4
  "description": "A lean React design system, measured pixel-for-pixel from Attio.",
5
5
  "license": "MIT",
6
6
  "type": "module",