@crewlethq/ui 0.79.0 → 0.80.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 +6 -0
- package/dist/ChangeList/ChangeList.d.ts +16 -1
- package/dist/ChangeList/index.d.ts +1 -1
- package/dist/ChangeList/index.js +1 -1
- package/dist/{ChangeList-MDFH5NPH.css → ChangeList-ITJMTVDF.css} +53 -0
- package/dist/DataTable/DataTable.d.ts +25 -1
- package/dist/DataTable/index.d.ts +1 -1
- package/dist/DataTable/index.js +1 -1
- package/dist/{DataTable-H43JSHOI.css → DataTable-GSLDFY5U.css} +38 -0
- package/dist/DataView/index.js +2 -2
- package/dist/ProposalCard/index.js +2 -2
- package/dist/{chunk-NSCACX5Y.js → chunk-4WTLT66V.js} +1 -1
- package/dist/{chunk-BBD7PTBG.js → chunk-4XF7ENQA.js} +78 -27
- package/dist/{chunk-DSMQTED5.js → chunk-BLGBD2D2.js} +1 -1
- package/dist/{chunk-INO2OXDB.js → chunk-BRWR3QIG.js} +27 -28
- package/dist/generated/index.js +18 -18
- package/dist/index.js +18 -18
- package/dist/styles.css +93 -2
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -205,6 +205,12 @@ places:
|
|
|
205
205
|
- A surface that pans or zooms dispatches `LAYER_REPOSITION_EVENT` on its host
|
|
206
206
|
when the content beneath it moves, and every panel anchored inside follows.
|
|
207
207
|
|
|
208
|
+
## Changes in 0.80.0
|
|
209
|
+
|
|
210
|
+
**`DataTable` takes `columnSizing="content"`** (compact variant): each column as wide as what it holds, its header included, the cells' own insets apart, and the spare width given to the trailing spacer. For a short table in a wide pane (an agent, a switch, a level and a status), which the fit spread across the box until a row read as four separate facts. The browser's automatic table layout measures the columns, so no width is stated on a column the caller did not lock with `width`, the fit pass does not run, and no resize handle is drawn. Its cells stay on one line whatever Wrap lines says, since a column as wide as its content truncates nothing, while a panel or strip that spans the row wraps; a row wider than its box scrolls sideways. `fill`, the default, is the table as it was. The type is `DataTableColumnSizing`.
|
|
211
|
+
|
|
212
|
+
**`ChangeList` takes `layout="inline"`**: each row on one line, its label and then its values as chips ("Deployments: Read-only → Read and write"), the old value on an outline chip and the new one on the added tone. A pair is still said "Changed from X to Y" and an added or removed value says so, and a word diff or a block value keeps its own layout under its label. `grid`, the default, is unchanged. The type is `ChangeListLayout`.
|
|
213
|
+
|
|
208
214
|
## Changes in 0.78.0
|
|
209
215
|
|
|
210
216
|
**`Tabs` take `actions`, controls at the row's far end in a tab list too.** A screen's own buttons ("Check now", "New") stand beside its tabs, in one bar with them, and never inside the tab list: the actions are the row's next sibling, so a screen reader meets a tab list of tabs alone and then the buttons, and the keyboard reaches the tabs (one stop, the arrows inside) and then each action. In router mode they stand outside the `nav` for the same reason. The actions keep their width at every size and the row gives way first: it takes the room left beside them, and scrolls (`overflow="scroll"`) or folds into "More" (`overflow="menu"`) inside that room, where the slider and the fold are measured. A pill or chip row keeps its width while it fits and scrolls inside the bar once it does not, so no tab paints under an action. An underline row's rule runs on under the actions to the bar's edge. With `actions`, `className` lands on the bar, the outermost element (`.crewlet-tabs-bar`, the actions in `.crewlet-tabs__actions`). Actions that arrive after the row is drawn, or go, never re-parent it: every row now sits in one wrapper element, `display: contents` while there are no actions, so the focused tab keeps focus and the slider and fold measure the live row. Without actions `className` stays on the row. `trailing` is unchanged: router mode only, inside the `nav`.
|
|
@@ -78,8 +78,23 @@ export interface ChangeListLabels {
|
|
|
78
78
|
showWhole: string;
|
|
79
79
|
}
|
|
80
80
|
export declare const CHANGE_LIST_LABELS: ChangeListLabels;
|
|
81
|
+
/**
|
|
82
|
+
* How the rows are laid out.
|
|
83
|
+
*
|
|
84
|
+
* - 'grid' the labels in one column and the values in the other, the
|
|
85
|
+
* values in DiffList's tints. The default: a record's fields.
|
|
86
|
+
* - 'inline' each row one line, its label and then its values as chips:
|
|
87
|
+
* "Deployments: [Read-only] → [Read and write]". For a short
|
|
88
|
+
* change read in passing, such as a level moved in a review.
|
|
89
|
+
*/
|
|
90
|
+
export type ChangeListLayout = 'grid' | 'inline';
|
|
81
91
|
export interface ChangeListProps {
|
|
82
92
|
rows: readonly ChangeListRow[];
|
|
93
|
+
/**
|
|
94
|
+
* `inline` sets each row on one line with its values as chips. A word diff
|
|
95
|
+
* and a block value keep their own layout under their label in either.
|
|
96
|
+
*/
|
|
97
|
+
layout?: ChangeListLayout | undefined;
|
|
83
98
|
/** The eyebrow over the rows: "What will change", "What will be created", "What changed". */
|
|
84
99
|
heading?: ReactNode;
|
|
85
100
|
/**
|
|
@@ -134,5 +149,5 @@ declare function BlockValue({ row, labels }: {
|
|
|
134
149
|
* values in the other, rows apart by the list's spacing rather than rules,
|
|
135
150
|
* and no box of its own inside the card that holds it.
|
|
136
151
|
*/
|
|
137
|
-
export declare function ChangeList({ rows, heading, settled, labels: overrides, diffLabels, className }: ChangeListProps): import("react").JSX.Element;
|
|
152
|
+
export declare function ChangeList({ rows, heading, layout, settled, labels: overrides, diffLabels, className, }: ChangeListProps): import("react").JSX.Element;
|
|
138
153
|
export {};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import './ChangeList.css';
|
|
2
2
|
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged } from './ChangeList.js';
|
|
3
|
-
export type { ChangeListAddedRow, ChangeListChangedRow, ChangeListFactRow, ChangeListLabels, ChangeListProps, ChangeListRemovedRow, ChangeListRow, ChangeListTextRow, WordDiffPart, } from './ChangeList.js';
|
|
3
|
+
export type { ChangeListAddedRow, ChangeListChangedRow, ChangeListFactRow, ChangeListLabels, ChangeListLayout, ChangeListProps, ChangeListRemovedRow, ChangeListRow, ChangeListTextRow, WordDiffPart, } from './ChangeList.js';
|
package/dist/ChangeList/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged } from '../chunk-
|
|
1
|
+
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged } from '../chunk-4XF7ENQA.js';
|
|
2
2
|
import '../chunk-LR4IWUWQ.js';
|
|
3
3
|
import '../chunk-VERJCAJ4.js';
|
|
4
4
|
import '../chunk-CYQBDZ6M.js';
|
|
@@ -207,3 +207,56 @@
|
|
|
207
207
|
.crewlet-change-list--settled .crewlet-change-list__value {
|
|
208
208
|
color: var(--color-text-secondary);
|
|
209
209
|
}
|
|
210
|
+
|
|
211
|
+
/*
|
|
212
|
+
* INLINE: one line a row, the label and then its values as chips. The rows
|
|
213
|
+
* stack; a row wraps as the pair does, the arrow staying with what it points
|
|
214
|
+
* at. A word diff and a block value keep their own layout under the label.
|
|
215
|
+
*/
|
|
216
|
+
.crewlet-change-list--inline .crewlet-change-list__rows {
|
|
217
|
+
display: flex;
|
|
218
|
+
flex-direction: column;
|
|
219
|
+
gap: var(--spacing-1);
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
.crewlet-change-list--inline .crewlet-change-list__row {
|
|
223
|
+
display: flex;
|
|
224
|
+
flex-wrap: wrap;
|
|
225
|
+
align-items: center;
|
|
226
|
+
gap: var(--spacing-1) var(--spacing-2);
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
.crewlet-change-list--inline .crewlet-change-list__row--text,
|
|
230
|
+
.crewlet-change-list--inline .crewlet-change-list__row--block {
|
|
231
|
+
flex-direction: column;
|
|
232
|
+
align-items: stretch;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
/* The label in the secondary ink at the row's own size, closed by a colon. */
|
|
236
|
+
.crewlet-change-list--inline .crewlet-change-list__label {
|
|
237
|
+
font-size: inherit;
|
|
238
|
+
color: var(--color-text-secondary);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.crewlet-change-list--inline .crewlet-change-list__row:not(.crewlet-change-list__row--text):not(.crewlet-change-list__row--block) > .crewlet-change-list__label::after {
|
|
242
|
+
content: ':';
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
.crewlet-change-list--inline .crewlet-change-list__pair {
|
|
246
|
+
align-items: center;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
.crewlet-change-list--inline .crewlet-change-list__next {
|
|
250
|
+
align-items: center;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
/* THE CHIP IS THE MARK, so the element around it draws none of its own. */
|
|
254
|
+
.crewlet-change-list__chip {
|
|
255
|
+
display: inline-flex;
|
|
256
|
+
text-decoration: none;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
.crewlet-change-list--inline .crewlet-change-list__note {
|
|
260
|
+
flex-basis: 100%;
|
|
261
|
+
margin-top: 0;
|
|
262
|
+
}
|
|
@@ -190,6 +190,17 @@ export type DataTableItemsPerPage = number | typeof ALL_ITEMS;
|
|
|
190
190
|
* its own resizable column widths.
|
|
191
191
|
*/
|
|
192
192
|
export type DataTableDensity = 'compact' | 'comfortable';
|
|
193
|
+
/**
|
|
194
|
+
* How a compact table's columns share its width.
|
|
195
|
+
*
|
|
196
|
+
* - 'fill' every column grows in proportion until the row fills its
|
|
197
|
+
* box. The default: a list page, where the columns are the
|
|
198
|
+
* screen and a reader resizes them.
|
|
199
|
+
* - 'content' each column is as wide as what it holds, its header
|
|
200
|
+
* included, the cells' own insets apart, and the trailing
|
|
201
|
+
* spacer takes the rest.
|
|
202
|
+
*/
|
|
203
|
+
export type DataTableColumnSizing = 'fill' | 'content';
|
|
193
204
|
/**
|
|
194
205
|
* Every string the table renders on its own behalf, in one prop.
|
|
195
206
|
*
|
|
@@ -344,6 +355,19 @@ export interface DataTableProps<TRow = DataTableRow> {
|
|
|
344
355
|
* render anywhere on the table.
|
|
345
356
|
*/
|
|
346
357
|
resizable?: boolean;
|
|
358
|
+
/**
|
|
359
|
+
* How the columns share the table's width. Compact variant only.
|
|
360
|
+
*
|
|
361
|
+
* `content` IS FOR A SHORT TABLE IN A WIDE PANE: an agent, a switch, a
|
|
362
|
+
* level and a status, spread by the fit across a 900px box, sat so far
|
|
363
|
+
* apart that a row read as four facts about nothing in particular. Sized
|
|
364
|
+
* to content, the columns stand together and the spare width goes to the
|
|
365
|
+
* trailing spacer. Nothing resizes a column then, neither the fit nor a
|
|
366
|
+
* reader, so no resize handle is drawn; a column with a `width` keeps it,
|
|
367
|
+
* and a row wider than its box scrolls sideways as any table here does.
|
|
368
|
+
* `fill` (the default) is the table as it always was.
|
|
369
|
+
*/
|
|
370
|
+
columnSizing?: DataTableColumnSizing;
|
|
347
371
|
onRowAction?: ((row: TRow) => void) | null;
|
|
348
372
|
actionLabel?: string;
|
|
349
373
|
/** The action column's glyph. A component, not a name. */
|
|
@@ -637,4 +661,4 @@ export interface DataTableProps<TRow = DataTableRow> {
|
|
|
637
661
|
/** Every string the table renders itself. Merged over the English defaults. */
|
|
638
662
|
labels?: Partial<DataTableLabels>;
|
|
639
663
|
}
|
|
640
|
-
export declare const DataTable: <TRow>({ data, columns, storageKey, defaultColumnOrder, columnOrder: columnOrderProp, onColumnOrderChange, defaultItemsPerPage, itemsPerPage: itemsPerPageProp, onItemsPerPageChange, page: pageProp, onPageChange, pageCount, minColumnWidth, resizable, itemsPerPageOptions, onRowAction, actionLabel, actionIcon, getRowKey, rowKey, emptyMessage, endMessage, showActions, className, variant, density, maxBodyHeight, sort: sortProp, onSortChange, defaultSort, sortCycle, stableOrder, rowActions, archivedPredicate, archivedLabel, loading, skeletonRows, error, paginated, showSettings, onRowClick, getRowHref, rowTone, isSelected, renderAccessoryRow, renderToolbar, renderFilterBar, onClearFilters, filtersActive, clearFiltersLabel, filterKey, visibleColumns: visibleColumnsProp, onVisibleColumnsChange, renderExpandedRow, defaultExpandedKey, hasMore, onLoadMore, loadingMore, loadMoreLabel, title, ariaLabel, expandLabel, description, icon, defaultWrapLines, labels: labelOverrides, }: DataTableProps<TRow>) => React.JSX.Element;
|
|
664
|
+
export declare const DataTable: <TRow>({ data, columns, storageKey, defaultColumnOrder, columnOrder: columnOrderProp, onColumnOrderChange, defaultItemsPerPage, itemsPerPage: itemsPerPageProp, onItemsPerPageChange, page: pageProp, onPageChange, pageCount, minColumnWidth, resizable, columnSizing, itemsPerPageOptions, onRowAction, actionLabel, actionIcon, getRowKey, rowKey, emptyMessage, endMessage, showActions, className, variant, density, maxBodyHeight, sort: sortProp, onSortChange, defaultSort, sortCycle, stableOrder, rowActions, archivedPredicate, archivedLabel, loading, skeletonRows, error, paginated, showSettings, onRowClick, getRowHref, rowTone, isSelected, renderAccessoryRow, renderToolbar, renderFilterBar, onClearFilters, filtersActive, clearFiltersLabel, filterKey, visibleColumns: visibleColumnsProp, onVisibleColumnsChange, renderExpandedRow, defaultExpandedKey, hasMore, onLoadMore, loadingMore, loadMoreLabel, title, ariaLabel, expandLabel, description, icon, defaultWrapLines, labels: labelOverrides, }: DataTableProps<TRow>) => React.JSX.Element;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './DataTable.css';
|
|
2
2
|
export { DataTable, DATA_TABLE_LABELS, ALL_ITEMS } from './DataTable.js';
|
|
3
|
-
export type { DataTableColumn, DataTableDensity, DataTableItemsPerPage, DataTableLabels, DataTableProps, DataTableRow, DataTableRowAction, DataTableRowTone, DataTableSortCycle, DataTableSortDirection, DataTableSortState, DataTableVariant, } from './DataTable.js';
|
|
3
|
+
export type { DataTableColumn, DataTableColumnSizing, DataTableDensity, DataTableItemsPerPage, DataTableLabels, DataTableProps, DataTableRow, DataTableRowAction, DataTableRowTone, DataTableSortCycle, DataTableSortDirection, DataTableSortState, DataTableVariant, } from './DataTable.js';
|
|
4
4
|
export { CopyableCell } from './CopyableCell.js';
|
|
5
5
|
export type { CopyableCellProps } from './CopyableCell.js';
|
|
6
6
|
export { RowActionsMenu } from './RowActionsMenu.js';
|
package/dist/DataTable/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-
|
|
1
|
+
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-BRWR3QIG.js';
|
|
2
2
|
import '../chunk-C667GCU7.js';
|
|
3
3
|
import '../chunk-STJ7QBC3.js';
|
|
4
4
|
import '../chunk-DTIW4CHZ.js';
|
|
@@ -797,6 +797,44 @@ body.crewlet-data-table-resizing {
|
|
|
797
797
|
width: var(--spacing-6);
|
|
798
798
|
}
|
|
799
799
|
|
|
800
|
+
/*
|
|
801
|
+
* A TABLE SIZED TO ITS CONTENT (`columnSizing="content"`) is laid out by the
|
|
802
|
+
* automatic algorithm, with no width stated on its columns. The spacer asks
|
|
803
|
+
* for the whole row, so every other column gives up all it can: down to its
|
|
804
|
+
* widest cell. What is left over is the spacer's.
|
|
805
|
+
*
|
|
806
|
+
* Its cells never wrap, Wrap lines or not. A cell that may break anywhere is
|
|
807
|
+
* a column the automatic layout squeezes to a few letters a line, which is
|
|
808
|
+
* what a name became the first time this was drawn; and with every column as
|
|
809
|
+
* wide as its content there is nothing to truncate, so the toggle has nothing
|
|
810
|
+
* to decide.
|
|
811
|
+
*
|
|
812
|
+
* After the gutter rule above and as specific, so a pinned column keeps its
|
|
813
|
+
* gutter as the spacer's floor while the spacer still takes the rest of the
|
|
814
|
+
* row. The panels that span the row wrap, as their content does at any width:
|
|
815
|
+
* kept on one line, a sentence in one would be measured as the narrowest the
|
|
816
|
+
* table may be.
|
|
817
|
+
*/
|
|
818
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content {
|
|
819
|
+
table-layout: auto;
|
|
820
|
+
}
|
|
821
|
+
|
|
822
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content td:not(.crewlet-data-table__expanded-cell):not(.crewlet-data-table__accessory-cell) {
|
|
823
|
+
white-space: nowrap;
|
|
824
|
+
overflow-wrap: normal;
|
|
825
|
+
word-break: normal;
|
|
826
|
+
}
|
|
827
|
+
|
|
828
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content .crewlet-data-table__th--spacer,
|
|
829
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content .crewlet-data-table__td--spacer {
|
|
830
|
+
width: 100%;
|
|
831
|
+
}
|
|
832
|
+
|
|
833
|
+
.crewlet-data-table__table--content td.crewlet-data-table__expanded-cell,
|
|
834
|
+
.crewlet-data-table__table--content td.crewlet-data-table__accessory-cell {
|
|
835
|
+
white-space: normal;
|
|
836
|
+
}
|
|
837
|
+
|
|
800
838
|
/*
|
|
801
839
|
* Row actions column: pinned to the viewport's right edge with
|
|
802
840
|
* position: sticky so the kebab affordance stays visible during
|
package/dist/DataView/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
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-
|
|
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-4WTLT66V.js';
|
|
2
2
|
import '../chunk-FPDIHEM4.js';
|
|
3
3
|
import '../chunk-K4LZXSKZ.js';
|
|
4
4
|
import '../chunk-HPI5J6AR.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-BRWR3QIG.js';
|
|
6
6
|
import '../chunk-C667GCU7.js';
|
|
7
7
|
import '../chunk-7KHM2FZH.js';
|
|
8
8
|
import '../chunk-STJ7QBC3.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, PROPOSAL_TONES, ProposalCard } from '../chunk-
|
|
1
|
+
export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, PROPOSAL_TONES, ProposalCard } from '../chunk-BLGBD2D2.js';
|
|
2
2
|
import '../chunk-ZWCK4N4L.js';
|
|
3
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-4XF7ENQA.js';
|
|
4
4
|
import '../chunk-LR4IWUWQ.js';
|
|
5
5
|
import '../chunk-RTMNULTL.js';
|
|
6
6
|
import '../chunk-VERJCAJ4.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PageHeader } from './chunk-FPDIHEM4.js';
|
|
2
2
|
import { FilterPill } from './chunk-K4LZXSKZ.js';
|
|
3
3
|
import { DateTimePicker } from './chunk-HPI5J6AR.js';
|
|
4
|
-
import { DataTable } from './chunk-
|
|
4
|
+
import { DataTable } from './chunk-BRWR3QIG.js';
|
|
5
5
|
import { useListbox, useOptionKeys } from './chunk-7KHM2FZH.js';
|
|
6
6
|
import { Toolbar } from './chunk-NR4CPM4T.js';
|
|
7
7
|
import { Popover } from './chunk-KHJIEPZV.js';
|
|
@@ -3,7 +3,7 @@ import { Tag } from './chunk-VERJCAJ4.js';
|
|
|
3
3
|
import { Disclosure } from './chunk-222VILSP.js';
|
|
4
4
|
import { VisuallyHidden } from './chunk-UT6CW3C7.js';
|
|
5
5
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
6
|
-
import './ChangeList-
|
|
6
|
+
import './ChangeList-ITJMTVDF.css';
|
|
7
7
|
import { useId } from 'react';
|
|
8
8
|
import { ArrowRightGlyph } from '@crewlethq/icons/glyphs';
|
|
9
9
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
@@ -100,8 +100,40 @@ function BlockValue({ row, labels }) {
|
|
|
100
100
|
] });
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
|
-
function
|
|
103
|
+
function ChipValue({ row, labels }) {
|
|
104
|
+
switch (row.kind) {
|
|
105
|
+
case "fact":
|
|
106
|
+
return /* @__PURE__ */ jsx(Tag, { size: "sm", variant: "neutral", children: row.value });
|
|
107
|
+
case "changed":
|
|
108
|
+
return /* @__PURE__ */ jsxs("span", { className: "crewlet-change-list__pair", children: [
|
|
109
|
+
/* @__PURE__ */ jsx(VisuallyHidden, { children: `${labels.changedFrom} ` }),
|
|
110
|
+
/* @__PURE__ */ jsx("del", { className: "crewlet-change-list__chip", children: /* @__PURE__ */ jsx(Tag, { size: "sm", variant: "neutral", appearance: "outline", children: row.from }) }),
|
|
111
|
+
/* @__PURE__ */ jsxs("span", { className: "crewlet-change-list__next", children: [
|
|
112
|
+
/* @__PURE__ */ jsx(ArrowRightGlyph, { size: "sm", className: "crewlet-change-list__arrow" }),
|
|
113
|
+
/* @__PURE__ */ jsx(VisuallyHidden, { children: ` ${labels.to} ` }),
|
|
114
|
+
/* @__PURE__ */ jsx("ins", { className: "crewlet-change-list__chip", children: /* @__PURE__ */ jsx(Tag, { size: "sm", variant: "success", children: row.to }) })
|
|
115
|
+
] })
|
|
116
|
+
] });
|
|
117
|
+
case "added":
|
|
118
|
+
return /* @__PURE__ */ jsxs("span", { className: "crewlet-change-list__pair", children: [
|
|
119
|
+
/* @__PURE__ */ jsx(VisuallyHidden, { children: `${labels.added} ` }),
|
|
120
|
+
/* @__PURE__ */ jsx("ins", { className: "crewlet-change-list__chip", children: /* @__PURE__ */ jsx(Tag, { size: "sm", variant: "success", children: row.to }) }),
|
|
121
|
+
row.isNew ? /* @__PURE__ */ jsx(Tag, { size: "xs", variant: "success", appearance: "outline", children: labels.isNew }) : null
|
|
122
|
+
] });
|
|
123
|
+
case "removed":
|
|
124
|
+
return /* @__PURE__ */ jsxs("span", { className: "crewlet-change-list__pair", children: [
|
|
125
|
+
/* @__PURE__ */ jsx(VisuallyHidden, { children: `${labels.removed} ` }),
|
|
126
|
+
/* @__PURE__ */ jsx("del", { className: "crewlet-change-list__chip", children: /* @__PURE__ */ jsx(Tag, { size: "sm", variant: "danger", appearance: "outline", children: row.from }) })
|
|
127
|
+
] });
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
function Value({
|
|
131
|
+
row,
|
|
132
|
+
labels,
|
|
133
|
+
inline
|
|
134
|
+
}) {
|
|
104
135
|
if (row.block) return /* @__PURE__ */ jsx(BlockValue, { row, labels });
|
|
136
|
+
if (inline) return /* @__PURE__ */ jsx(ChipValue, { row, labels });
|
|
105
137
|
switch (row.kind) {
|
|
106
138
|
case "fact":
|
|
107
139
|
return /* @__PURE__ */ jsx("span", { className: "crewlet-change-list__fact", children: row.value });
|
|
@@ -130,33 +162,52 @@ function Value({ row, labels }) {
|
|
|
130
162
|
] });
|
|
131
163
|
}
|
|
132
164
|
}
|
|
133
|
-
function ChangeList({
|
|
165
|
+
function ChangeList({
|
|
166
|
+
rows,
|
|
167
|
+
heading,
|
|
168
|
+
layout = "grid",
|
|
169
|
+
settled = false,
|
|
170
|
+
labels: overrides,
|
|
171
|
+
diffLabels,
|
|
172
|
+
className
|
|
173
|
+
}) {
|
|
134
174
|
const labels = overrides ? { ...CHANGE_LIST_LABELS, ...overrides } : CHANGE_LIST_LABELS;
|
|
135
175
|
const headingId = useId();
|
|
136
|
-
return /* @__PURE__ */ jsxs(
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
children:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
176
|
+
return /* @__PURE__ */ jsxs(
|
|
177
|
+
"div",
|
|
178
|
+
{
|
|
179
|
+
className: cx(
|
|
180
|
+
"crewlet-change-list",
|
|
181
|
+
layout === "inline" && "crewlet-change-list--inline",
|
|
182
|
+
settled && "crewlet-change-list--settled",
|
|
183
|
+
className
|
|
184
|
+
),
|
|
185
|
+
children: [
|
|
186
|
+
heading === void 0 || heading === null ? null : /* @__PURE__ */ jsx("div", { id: headingId, className: "crewlet-change-list__heading", children: heading }),
|
|
187
|
+
/* @__PURE__ */ jsx("dl", { className: "crewlet-change-list__rows", "aria-labelledby": heading === void 0 || heading === null ? void 0 : headingId, children: rows.map((row, index) => /* @__PURE__ */ jsxs(
|
|
188
|
+
"div",
|
|
189
|
+
{
|
|
190
|
+
className: cx(
|
|
191
|
+
"crewlet-change-list__row",
|
|
192
|
+
`crewlet-change-list__row--${row.kind}`,
|
|
193
|
+
row.kind !== "text" && row.block && "crewlet-change-list__row--block"
|
|
194
|
+
),
|
|
195
|
+
children: [
|
|
196
|
+
/* @__PURE__ */ jsx("dt", { className: "crewlet-change-list__label", children: row.label }),
|
|
197
|
+
/* @__PURE__ */ jsxs("dd", { className: "crewlet-change-list__value", children: [
|
|
198
|
+
row.kind === "text" ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
199
|
+
/* @__PURE__ */ jsx(WordDiff, { row, labels }),
|
|
200
|
+
row.whole && row.whole.length > 0 ? /* @__PURE__ */ jsx(Disclosure, { title: labels.showWhole, headingLevel: "none", size: "compact", className: "crewlet-change-list__whole", children: /* @__PURE__ */ jsx(DiffList, { rows: [...row.whole], layout: "auto", labels: diffLabels }) }) : null
|
|
201
|
+
] }) : /* @__PURE__ */ jsx(Value, { row, labels, inline: layout === "inline" }),
|
|
202
|
+
row.note === void 0 || row.note === null ? null : /* @__PURE__ */ jsx("span", { className: "crewlet-change-list__note", children: row.note })
|
|
203
|
+
] })
|
|
204
|
+
]
|
|
205
|
+
},
|
|
206
|
+
`${index}:${row.label}`
|
|
207
|
+
)) })
|
|
208
|
+
]
|
|
209
|
+
}
|
|
210
|
+
);
|
|
160
211
|
}
|
|
161
212
|
|
|
162
213
|
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RefusalStrip, ReceiptStrip } from './chunk-ZWCK4N4L.js';
|
|
2
|
-
import { ChangeList } from './chunk-
|
|
2
|
+
import { ChangeList } from './chunk-4XF7ENQA.js';
|
|
3
3
|
import { StatusCard } from './chunk-RTMNULTL.js';
|
|
4
4
|
import { Checkbox } from './chunk-LMQG3VPG.js';
|
|
5
5
|
import { Disclosure } from './chunk-222VILSP.js';
|
|
@@ -8,7 +8,7 @@ import { Button } from './chunk-DGXZ635L.js';
|
|
|
8
8
|
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
9
9
|
import { VisuallyHidden } from './chunk-UT6CW3C7.js';
|
|
10
10
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
11
|
-
import './DataTable-
|
|
11
|
+
import './DataTable-GSLDFY5U.css';
|
|
12
12
|
import React, { useState, useCallback, useMemo, useRef, useLayoutEffect, useEffect, useId } from 'react';
|
|
13
13
|
import { createPortal } from 'react-dom';
|
|
14
14
|
import { CheckGlyph, CircleAlertGlyph, CopyGlyph, ChevronsLeftGlyph, ChevronLeftGlyph, ChevronRightGlyph, ChevronsRightGlyph, SettingsGlyph, GripVerticalGlyph, ChevronUpGlyph, ChevronDownGlyph, TrashGlyph, ArrowUpGlyph, ArrowDownGlyph, ChevronsUpDownGlyph, RotateCcwGlyph } from '@crewlethq/icons/glyphs';
|
|
@@ -224,6 +224,7 @@ var DataTable = ({
|
|
|
224
224
|
pageCount,
|
|
225
225
|
minColumnWidth = 80,
|
|
226
226
|
resizable = true,
|
|
227
|
+
columnSizing = "fill",
|
|
227
228
|
itemsPerPageOptions = [5, 10, 20, 50, 100],
|
|
228
229
|
onRowAction = null,
|
|
229
230
|
actionLabel = "Delete",
|
|
@@ -285,6 +286,7 @@ var DataTable = ({
|
|
|
285
286
|
return cellValue(row, "id");
|
|
286
287
|
};
|
|
287
288
|
const isCompact = variant === "compact";
|
|
289
|
+
const sizedToContent = isCompact && columnSizing === "content";
|
|
288
290
|
const hasActionColumn = !!rowActions || showActions && !!onRowAction;
|
|
289
291
|
const expandable = !!renderExpandedRow;
|
|
290
292
|
const settingsEnabled = showSettings;
|
|
@@ -466,7 +468,8 @@ var DataTable = ({
|
|
|
466
468
|
expandable,
|
|
467
469
|
hasChromeColumn,
|
|
468
470
|
isCompact,
|
|
469
|
-
minColumnWidth
|
|
471
|
+
minColumnWidth,
|
|
472
|
+
sizedToContent
|
|
470
473
|
});
|
|
471
474
|
fitInputs.current = {
|
|
472
475
|
columns,
|
|
@@ -477,10 +480,12 @@ var DataTable = ({
|
|
|
477
480
|
expandable,
|
|
478
481
|
hasChromeColumn,
|
|
479
482
|
isCompact,
|
|
480
|
-
minColumnWidth
|
|
483
|
+
minColumnWidth,
|
|
484
|
+
sizedToContent
|
|
481
485
|
};
|
|
482
486
|
useLayoutEffect(() => {
|
|
483
|
-
const { columns: columns2, columnOrder: columnOrder2, visibleColumns: visibleColumns2, columnWidths: columnWidths2, resizedColumns: resizedColumns2, expandable: expandable2, hasChromeColumn: hasChromeColumn2, isCompact: isCompact2, minColumnWidth: minColumnWidth2 } = fitInputs.current;
|
|
487
|
+
const { columns: columns2, columnOrder: columnOrder2, visibleColumns: visibleColumns2, columnWidths: columnWidths2, resizedColumns: resizedColumns2, expandable: expandable2, hasChromeColumn: hasChromeColumn2, isCompact: isCompact2, minColumnWidth: minColumnWidth2, sizedToContent: sizedToContent2 } = fitInputs.current;
|
|
488
|
+
if (sizedToContent2) return;
|
|
484
489
|
const el = scrollRef.current;
|
|
485
490
|
if (!el) return;
|
|
486
491
|
const box = el.getBoundingClientRect();
|
|
@@ -930,6 +935,11 @@ var DataTable = ({
|
|
|
930
935
|
}
|
|
931
936
|
return value !== null && value !== void 0 ? value : /* @__PURE__ */ jsx(EmptyValue, { label: labels.absent });
|
|
932
937
|
};
|
|
938
|
+
const statedWidth = (columnKey) => {
|
|
939
|
+
const width = columnWidths[columnKey];
|
|
940
|
+
if (width == null || sizedToContent && columns[columnKey]?.width == null) return void 0;
|
|
941
|
+
return { width: `${width}px` };
|
|
942
|
+
};
|
|
933
943
|
const columnClasses = (column) => cx(
|
|
934
944
|
column.align === "right" && "crewlet-data-table__cell--right",
|
|
935
945
|
column.align === "center" && "crewlet-data-table__cell--center",
|
|
@@ -940,9 +950,7 @@ var DataTable = ({
|
|
|
940
950
|
if (!column) return null;
|
|
941
951
|
const style = {};
|
|
942
952
|
if (isCompact) {
|
|
943
|
-
|
|
944
|
-
style.width = `${columnWidths[columnKey]}px`;
|
|
945
|
-
}
|
|
953
|
+
Object.assign(style, statedWidth(columnKey));
|
|
946
954
|
} else {
|
|
947
955
|
style.width = `${columnWidths[columnKey]}px`;
|
|
948
956
|
}
|
|
@@ -976,14 +984,11 @@ var DataTable = ({
|
|
|
976
984
|
const ariaSort = isActive ? effectiveSort.direction === "asc" ? "ascending" : "descending" : void 0;
|
|
977
985
|
const isSticky = column.sticky === "right";
|
|
978
986
|
if (isCompact) {
|
|
979
|
-
const style = {};
|
|
980
|
-
if (columnWidths[columnKey] != null) {
|
|
981
|
-
style.width = `${columnWidths[columnKey]}px`;
|
|
982
|
-
}
|
|
987
|
+
const style = { ...statedWidth(columnKey) };
|
|
983
988
|
const visibleStickyExists = columnOrder.some(
|
|
984
989
|
(k) => columns[k]?.sticky === "right" && isColumnVisible(k)
|
|
985
990
|
);
|
|
986
|
-
const suppressResizer = !resizable || isSticky || visibleStickyExists;
|
|
991
|
+
const suppressResizer = !resizable || sizedToContent || isSticky || visibleStickyExists;
|
|
987
992
|
const resizer = suppressResizer ? null : /* @__PURE__ */ jsx(
|
|
988
993
|
"button",
|
|
989
994
|
{
|
|
@@ -1390,6 +1395,7 @@ var DataTable = ({
|
|
|
1390
1395
|
{
|
|
1391
1396
|
className: cx(
|
|
1392
1397
|
"crewlet-data-table__table",
|
|
1398
|
+
sizedToContent && "crewlet-data-table__table--content",
|
|
1393
1399
|
!bodyHoldsRows && "crewlet-data-table__table--rowless"
|
|
1394
1400
|
),
|
|
1395
1401
|
"aria-busy": loading || void 0,
|
|
@@ -1425,23 +1431,16 @@ var DataTable = ({
|
|
|
1425
1431
|
);
|
|
1426
1432
|
return /* @__PURE__ */ jsxs("tr", { className: "crewlet-data-table__skeleton-row", "aria-hidden": true, children: [
|
|
1427
1433
|
expandable && /* @__PURE__ */ jsx("td", { className: "crewlet-data-table__expand-cell", style: { width: 32 } }, "__expand"),
|
|
1428
|
-
visibleKeys.map((columnKey, colIdx) => /* @__PURE__ */ jsx(
|
|
1429
|
-
"
|
|
1434
|
+
visibleKeys.map((columnKey, colIdx) => /* @__PURE__ */ jsx("td", { style: statedWidth(columnKey), children: /* @__PURE__ */ jsx(
|
|
1435
|
+
"span",
|
|
1430
1436
|
{
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
{
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
animationDelay: `${rowIdx * 0.1}s`
|
|
1439
|
-
}
|
|
1440
|
-
}
|
|
1441
|
-
)
|
|
1442
|
-
},
|
|
1443
|
-
columnKey
|
|
1444
|
-
)),
|
|
1437
|
+
className: "crewlet-data-table__skeleton-bar",
|
|
1438
|
+
style: {
|
|
1439
|
+
width: `${widths[(rowIdx + colIdx) % widths.length]}%`,
|
|
1440
|
+
animationDelay: `${rowIdx * 0.1}s`
|
|
1441
|
+
}
|
|
1442
|
+
}
|
|
1443
|
+
) }, columnKey)),
|
|
1445
1444
|
isCompact && /* @__PURE__ */ jsx("td", { className: "crewlet-data-table__td--spacer", "aria-hidden": true }, "__spacer"),
|
|
1446
1445
|
columnOrder.filter((key) => columns[key]?.sticky === "right" && isColumnVisible(key)).map((columnKey) => /* @__PURE__ */ jsx("td", { className: "crewlet-data-table__td--sticky-right" }, columnKey)),
|
|
1447
1446
|
hasChromeColumn && /* @__PURE__ */ jsx("td", { className: "crewlet-data-table__td--actions" }, "__actions")
|
package/dist/generated/index.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import '../chunk-CDFQ7MQK.js';
|
|
2
|
-
export { VersionTimeline } from '../chunk-53J2YNQA.js';
|
|
3
2
|
export { VERSION_COMPARE_LABELS, VERSION_COMPARE_LENSES, VersionCompare } from '../chunk-YT5SWN4Q.js';
|
|
3
|
+
export { VersionTimeline } from '../chunk-53J2YNQA.js';
|
|
4
4
|
export { WidgetFrame } from '../chunk-S5QJZOPL.js';
|
|
5
5
|
export { ElementToPngError, elementToPng, parseCsv, serializeElement, toCsv } from '../chunk-FEJANUZK.js';
|
|
6
6
|
export { ToastProvider, Toaster, readingDuration, toasterInsetStyle, useToast } from '../chunk-JIBWNHTC.js';
|
|
7
7
|
export { TreeCanvas } from '../chunk-JQEXAH7G.js';
|
|
8
8
|
export { TypeSpecimen } from '../chunk-JKAFEFFC.js';
|
|
9
9
|
export { REFERENCE_NAME_PATTERN, ValueField, completeReference, isWholeReference, rankReferences, referenceAt, urlSchemeOf } from '../chunk-GHQG4VZA.js';
|
|
10
|
-
export { ThemeGallery } from '../chunk-63GBSOLU.js';
|
|
11
10
|
export { DensitySwitcher, ThemeSwitcher } from '../chunk-QHQGJQV7.js';
|
|
12
11
|
export { ThemeToggle } from '../chunk-IPMJGK2Q.js';
|
|
13
12
|
export { applyStoredPreferences, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from '../chunk-Z24ZUSTX.js';
|
|
@@ -17,21 +16,22 @@ export { TIME_RANGE_CUSTOM, TIME_RANGE_PICKER_LABELS, TimeRangePicker, timeRange
|
|
|
17
16
|
export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-RIAPCEB5.js';
|
|
18
17
|
export { TABLE_TAGS_CELL_LABELS, TableDateCell, TableEntityCell, TableKeyCell, TableNumberCell, TableStatusCell, TableTagsCell, TableTextCell } from '../chunk-VG3SIJ3M.js';
|
|
19
18
|
export { TagsInput } from '../chunk-WK4FQPYW.js';
|
|
19
|
+
export { ThemeGallery } from '../chunk-63GBSOLU.js';
|
|
20
20
|
export { ThemeSwatch } from '../chunk-3XQUEF5C.js';
|
|
21
|
-
export {
|
|
21
|
+
export { CellDisplay, CellEditor, CheckboxCell, DateCell, LongTextCell, MultiSelectCell, NumberCell, PersonCell, RatingCell, SelectCell, SheetCell, SheetGrid, StatusCell, TextCell, UrlCell } from '../chunk-2STOSJT3.js';
|
|
22
|
+
export { TagGroup } from '../chunk-UEOEBOBR.js';
|
|
22
23
|
export { Statement } from '../chunk-MZJKPTA5.js';
|
|
23
24
|
export { Switcher } from '../chunk-YQDRJZ5J.js';
|
|
24
|
-
export { SLIDE_COMPARE_LABELS, SlideCompare } from '../chunk-DV5L2GRY.js';
|
|
25
25
|
export { SlideFilmstrip } from '../chunk-TPCBPGSB.js';
|
|
26
26
|
export { SlideGrid } from '../chunk-7MGXHCVK.js';
|
|
27
27
|
export { SOURCE_EDITOR_KEYS, SourceEditor, lineStart } from '../chunk-4TMBAOXK.js';
|
|
28
28
|
export { StatCard } from '../chunk-G5IZGAWS.js';
|
|
29
|
+
export { StatGroup } from '../chunk-OUD75UB2.js';
|
|
29
30
|
export { ARTIFACT_ROLES, SHAREABLE_ROLES, ShareDialog, roleAtLeast } from '../chunk-Q2T4L6ML.js';
|
|
30
31
|
export { SHEET_COLUMN_EDITOR_LABELS, SheetColumnEditor, SheetColumnTypeGlyph } from '../chunk-Z4H3NF7U.js';
|
|
31
|
-
export { CellDisplay, CellEditor, CheckboxCell, DateCell, LongTextCell, MultiSelectCell, NumberCell, PersonCell, RatingCell, SelectCell, SheetCell, SheetGrid, StatusCell, TextCell, UrlCell } from '../chunk-2STOSJT3.js';
|
|
32
|
-
export { TagGroup } from '../chunk-UEOEBOBR.js';
|
|
33
32
|
export { matchesShortcut, useShortcut } from '../chunk-AYHIF6DH.js';
|
|
34
33
|
import '../chunk-73GUXYYE.js';
|
|
34
|
+
export { SLIDE_COMPARE_LABELS, SlideCompare } from '../chunk-DV5L2GRY.js';
|
|
35
35
|
export { SectionFrame, SectionFrameBody, SectionFrameNav } from '../chunk-G4CGDUCP.js';
|
|
36
36
|
export { NavGroup, NavItem, SidebarNav } from '../chunk-WCDPFTJZ.js';
|
|
37
37
|
export { SegmentedMeter, segmentedMeterLabel } from '../chunk-4AK52VHB.js';
|
|
@@ -63,7 +63,7 @@ export { SLIDE_HEIGHT, SLIDE_WIDTH, SlideStage, useSlideKeys } from '../chunk-RM
|
|
|
63
63
|
export { PricingCard } from '../chunk-D7G2QGET.js';
|
|
64
64
|
export { PrincipalPicker } from '../chunk-CFTBESST.js';
|
|
65
65
|
export { PropertyList } from '../chunk-OPVTNHPH.js';
|
|
66
|
-
export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, PROPOSAL_TONES, ProposalCard } from '../chunk-
|
|
66
|
+
export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, PROPOSAL_TONES, ProposalCard } from '../chunk-BLGBD2D2.js';
|
|
67
67
|
export { Prose } from '../chunk-DVVP27OD.js';
|
|
68
68
|
export { PageNote } from '../chunk-CV4NES3P.js';
|
|
69
69
|
export { PEEK_RAIL_LABELS, PEEK_RAIL_MAX_WIDTH, PEEK_RAIL_MIN_WIDTH, PEEK_RAIL_WIDTH, PeekHost, PeekNeighbours, PeekRail, isPlainPress, peekClickHandler, peekRowActivation, usePeekNeighbours, usePeekOrder, usePeekStep } from '../chunk-CDNZTCP2.js';
|
|
@@ -83,7 +83,7 @@ import '../chunk-KOJPDCGQ.js';
|
|
|
83
83
|
export { MARKDOWN_FORMATS, MarkdownEditor, formatMarkdown, insertMarkdown, markdownWords } from '../chunk-JNORDILD.js';
|
|
84
84
|
export { MERGE_CONFLICTS_LABELS, MergeConflicts } from '../chunk-3G2BC4K5.js';
|
|
85
85
|
export { MessageBubble } from '../chunk-KAQ2L74F.js';
|
|
86
|
-
export {
|
|
86
|
+
export { LinkInterstitial, openExternal } from '../chunk-JD7P2GJP.js';
|
|
87
87
|
export { ListDetail } from '../chunk-YBC2CYPD.js';
|
|
88
88
|
export { ListInput, withDraft } from '../chunk-45M73G5A.js';
|
|
89
89
|
export { LIVE_CURSOR_HIDE_MS, LIVE_CURSOR_REST_MS, LiveCursor } from '../chunk-DPNVKWJX.js';
|
|
@@ -93,17 +93,17 @@ export { LogoSlot, LogoSlotGroup } from '../chunk-OWHETZIU.js';
|
|
|
93
93
|
export { LAYERS_LIST_LABELS, LayersList } from '../chunk-VUYNNILP.js';
|
|
94
94
|
export { AutoGrid, Inline, Spacer, Stack } from '../chunk-ZAC7SKUN.js';
|
|
95
95
|
export { Link } from '../chunk-QF5UNP4T.js';
|
|
96
|
-
export {
|
|
97
|
-
export { IconTile } from '../chunk-3LI4TRUR.js';
|
|
96
|
+
export { List, ListItem } from '../chunk-PS5ZYIA6.js';
|
|
98
97
|
export { ImageUpload } from '../chunk-ZQEJSEPS.js';
|
|
98
|
+
export { IconTile } from '../chunk-3LI4TRUR.js';
|
|
99
99
|
export { InboxGroup, InboxList, InboxMore, InboxRow, InboxToggle } from '../chunk-QPHD4UUG.js';
|
|
100
100
|
export { IndicatorAnchor } from '../chunk-27MJPU7G.js';
|
|
101
|
-
export { INLINE_EDITOR_LABELS, InlineEditor } from '../chunk-YL7AR6PR.js';
|
|
102
101
|
export { InlineRef } from '../chunk-JGDCVLD4.js';
|
|
103
102
|
export { MARKDOWN_CALLOUT_NAMES, MARKDOWN_CALLOUT_TONES, markdownBreaks, markdownClosesFence, markdownCodeText, markdownFenceOf, markdownHeadingOf, markdownInline, markdownLines, parseMarkdown, parseMarkdownSpans, safeHref } from '../chunk-KBZO4B33.js';
|
|
103
|
+
export { INLINE_EDITOR_LABELS, InlineEditor } from '../chunk-YL7AR6PR.js';
|
|
104
104
|
export { FindingList } from '../chunk-LSRQ2A6B.js';
|
|
105
|
-
export { FolderTile, describeFolderContents, folderContentsParts } from '../chunk-WTXCK46H.js';
|
|
106
105
|
export { FollowBanner } from '../chunk-JT7WRPZ6.js';
|
|
106
|
+
export { FolderTile, describeFolderContents, folderContentsParts } from '../chunk-WTXCK46H.js';
|
|
107
107
|
export { DEFAULT_FRAME_THEME, EXTERNAL_URL_MAX, FRAME_BRIDGE, FRAME_MESSAGE, FRAME_ORIGIN_MODES, FRAME_SANDBOX_TOKENS, applyFrameTheme, checkFrameSandbox, externalUrl, frameFragment, frameOriginMatches, frameThemeMessage, httpOrigin, isFocusExit, isFrameNonce, negotiateBridge, parseFrameFragment, portTargetOrigin, readFrameHello, readFramePortMessage, readFrameTheme, readOpenLink } from '../chunk-F6V2PTN6.js';
|
|
108
108
|
export { DENSITY_PREFERENCES, PALETTE_ID, THEME_PREFERENCES, applyDensity, applyPalette, applyTheme, isDensityPreference, isPaletteId, isThemePreference } from '../chunk-ZXXDZJQN.js';
|
|
109
109
|
export { IDLE_AFTER_MS, useFullscreen, useIdle } from '../chunk-W5XCNEZC.js';
|
|
@@ -136,33 +136,33 @@ export { ContrastBadge, ContrastLevelTag, contrastLevel, contrastRatio, formatCo
|
|
|
136
136
|
export { CursorFlag } from '../chunk-MMCYH5LB.js';
|
|
137
137
|
export { PresenceRing, presenceHueClass } from '../chunk-EFX2YC5T.js';
|
|
138
138
|
export { ChooserList, ColumnChooser, DATA_GRID_ICON_TRACK, DataGrid, columnChoicesOf, countDataGridRows, fitGridColumns, nextGridSort, parseGridSort, useAnyDataGridDriving, useDataGridDriving } from '../chunk-LCZULGMB.js';
|
|
139
|
-
export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-
|
|
139
|
+
export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-4WTLT66V.js';
|
|
140
140
|
export { PageHeader } from '../chunk-FPDIHEM4.js';
|
|
141
141
|
export { FILTER_PILL_LABELS, FILTER_PILL_WORDS_CLASS, FilterPill, filterPillSentence } from '../chunk-K4LZXSKZ.js';
|
|
142
142
|
export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-HPI5J6AR.js';
|
|
143
|
-
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-
|
|
143
|
+
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-BRWR3QIG.js';
|
|
144
144
|
export { ColorSwatch } from '../chunk-6FBPFG3C.js';
|
|
145
|
-
export { Combobox } from '../chunk-6EWNMSS4.js';
|
|
146
145
|
export { CommandPalette } from '../chunk-5CEQ3HLH.js';
|
|
147
146
|
export { ConfirmModal, Modal } from '../chunk-C667GCU7.js';
|
|
147
|
+
export { Combobox } from '../chunk-6EWNMSS4.js';
|
|
148
148
|
export { HIGHLIGHT_REST_MS, TYPE_AHEAD_WINDOW, useHighlightRest, useListbox, useOptionKeys } from '../chunk-7KHM2FZH.js';
|
|
149
149
|
export { COMMENT_THREAD_LABELS, CommentThread } from '../chunk-ADGNISEI.js';
|
|
150
|
+
export { CONFLICT_NOTE_LABELS, ConflictNote } from '../chunk-B3PK2LND.js';
|
|
150
151
|
export { ConfirmField, confirmMatches } from '../chunk-TPIMOGOZ.js';
|
|
151
152
|
export { InlineCode } from '../chunk-PLL7ZJHY.js';
|
|
152
|
-
export { CONFLICT_NOTE_LABELS, ConflictNote } from '../chunk-B3PK2LND.js';
|
|
153
153
|
export { Container } from '../chunk-HJO4WCH6.js';
|
|
154
154
|
export { CheckGrid } from '../chunk-MGQKF7GK.js';
|
|
155
155
|
export { ChoiceButtons } from '../chunk-RVSNBUIU.js';
|
|
156
156
|
export { ChoiceCards } from '../chunk-B7NX425Z.js';
|
|
157
|
-
export { ChoiceList } from '../chunk-6RW2MUTY.js';
|
|
158
157
|
export { CodeBlock } from '../chunk-QSWQJX27.js';
|
|
159
158
|
export { CopyButton, Copyable } from '../chunk-T5GBTXNC.js';
|
|
160
159
|
export { useClipboard, writeClipboard } from '../chunk-STJ7QBC3.js';
|
|
161
160
|
export { useOutcome } from '../chunk-DTIW4CHZ.js';
|
|
161
|
+
export { ChoiceList } from '../chunk-6RW2MUTY.js';
|
|
162
162
|
export { ColorChip } from '../chunk-C6T4VBEY.js';
|
|
163
163
|
export { ColorField } from '../chunk-T24HBEU6.js';
|
|
164
164
|
export { CatalogTile } from '../chunk-QE4OIE3Q.js';
|
|
165
|
-
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged } from '../chunk-
|
|
165
|
+
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged } from '../chunk-4XF7ENQA.js';
|
|
166
166
|
export { DIFF_LIST_LABELS, DiffList } from '../chunk-LR4IWUWQ.js';
|
|
167
167
|
export { ChangeMark } from '../chunk-Z2MZTI3H.js';
|
|
168
168
|
export { LONGTEXT_MAX_DEFAULT, RATING_MAX_CEILING, RATING_MAX_DEFAULT, SHEET_COLUMN_BOUNDS, SHEET_COLUMN_TYPES, SHEET_COLUMN_WIDTHS, SHEET_FIT_SAMPLES, SHEET_LABELS, SHEET_ROW_HEIGHT, SHEET_ROW_NUMBER_WIDTH, SheetPendingEdits, TEXT_MAX_DEFAULT, URL_MAX, cellDescription, cellKey, cellSpeech, changeText, changeTime, checkValue, columnOffsets, columnWidth, compareValues, displayText, drawnColumns, editText, editorSide, findOption, findPerson, fitSamples, fittedWidth, flagText, hasPrevious, inRange, isEmptyValue, isMod, isMultiCell, isSheetColumnType, isTypingKey, liveOptions, moveFrom, nextSort, normalizeValue, optionHue, parseOptionList, parseTSV, parseText, planClear, planPaste, presenceByCell, presenceByColumn, presenceByRow, rangeOf, ratingMax, refusalText, retypeColumn, rowName, sameValue, scrollToRow, sheetLabels, sortRows, spokenText, statusTone, textMax, toTSV, visibleRows } from '../chunk-LFSIKGRQ.js';
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import './chunk-CDFQ7MQK.js';
|
|
2
|
-
export { VersionTimeline } from './chunk-53J2YNQA.js';
|
|
3
2
|
export { VERSION_COMPARE_LABELS, VERSION_COMPARE_LENSES, VersionCompare } from './chunk-YT5SWN4Q.js';
|
|
3
|
+
export { VersionTimeline } from './chunk-53J2YNQA.js';
|
|
4
4
|
export { WidgetFrame } from './chunk-S5QJZOPL.js';
|
|
5
5
|
export { ElementToPngError, elementToPng, parseCsv, serializeElement, toCsv } from './chunk-FEJANUZK.js';
|
|
6
6
|
export { ToastProvider, Toaster, readingDuration, toasterInsetStyle, useToast } from './chunk-JIBWNHTC.js';
|
|
7
7
|
export { TreeCanvas } from './chunk-JQEXAH7G.js';
|
|
8
8
|
export { TypeSpecimen } from './chunk-JKAFEFFC.js';
|
|
9
9
|
export { REFERENCE_NAME_PATTERN, ValueField, completeReference, isWholeReference, rankReferences, referenceAt, urlSchemeOf } from './chunk-GHQG4VZA.js';
|
|
10
|
-
export { ThemeGallery } from './chunk-63GBSOLU.js';
|
|
11
10
|
export { DensitySwitcher, ThemeSwitcher } from './chunk-QHQGJQV7.js';
|
|
12
11
|
export { ThemeToggle } from './chunk-IPMJGK2Q.js';
|
|
13
12
|
export { applyStoredPreferences, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from './chunk-Z24ZUSTX.js';
|
|
@@ -17,21 +16,22 @@ export { TIME_RANGE_CUSTOM, TIME_RANGE_PICKER_LABELS, TimeRangePicker, timeRange
|
|
|
17
16
|
export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from './chunk-RIAPCEB5.js';
|
|
18
17
|
export { TABLE_TAGS_CELL_LABELS, TableDateCell, TableEntityCell, TableKeyCell, TableNumberCell, TableStatusCell, TableTagsCell, TableTextCell } from './chunk-VG3SIJ3M.js';
|
|
19
18
|
export { TagsInput } from './chunk-WK4FQPYW.js';
|
|
19
|
+
export { ThemeGallery } from './chunk-63GBSOLU.js';
|
|
20
20
|
export { ThemeSwatch } from './chunk-3XQUEF5C.js';
|
|
21
|
-
export {
|
|
21
|
+
export { CellDisplay, CellEditor, CheckboxCell, DateCell, LongTextCell, MultiSelectCell, NumberCell, PersonCell, RatingCell, SelectCell, SheetCell, SheetGrid, StatusCell, TextCell, UrlCell } from './chunk-2STOSJT3.js';
|
|
22
|
+
export { TagGroup } from './chunk-UEOEBOBR.js';
|
|
22
23
|
export { Statement } from './chunk-MZJKPTA5.js';
|
|
23
24
|
export { Switcher } from './chunk-YQDRJZ5J.js';
|
|
24
|
-
export { SLIDE_COMPARE_LABELS, SlideCompare } from './chunk-DV5L2GRY.js';
|
|
25
25
|
export { SlideFilmstrip } from './chunk-TPCBPGSB.js';
|
|
26
26
|
export { SlideGrid } from './chunk-7MGXHCVK.js';
|
|
27
27
|
export { SOURCE_EDITOR_KEYS, SourceEditor, lineStart } from './chunk-4TMBAOXK.js';
|
|
28
28
|
export { StatCard } from './chunk-G5IZGAWS.js';
|
|
29
|
+
export { StatGroup } from './chunk-OUD75UB2.js';
|
|
29
30
|
export { ARTIFACT_ROLES, SHAREABLE_ROLES, ShareDialog, roleAtLeast } from './chunk-Q2T4L6ML.js';
|
|
30
31
|
export { SHEET_COLUMN_EDITOR_LABELS, SheetColumnEditor, SheetColumnTypeGlyph } from './chunk-Z4H3NF7U.js';
|
|
31
|
-
export { CellDisplay, CellEditor, CheckboxCell, DateCell, LongTextCell, MultiSelectCell, NumberCell, PersonCell, RatingCell, SelectCell, SheetCell, SheetGrid, StatusCell, TextCell, UrlCell } from './chunk-2STOSJT3.js';
|
|
32
|
-
export { TagGroup } from './chunk-UEOEBOBR.js';
|
|
33
32
|
export { matchesShortcut, useShortcut } from './chunk-AYHIF6DH.js';
|
|
34
33
|
import './chunk-73GUXYYE.js';
|
|
34
|
+
export { SLIDE_COMPARE_LABELS, SlideCompare } from './chunk-DV5L2GRY.js';
|
|
35
35
|
export { SectionFrame, SectionFrameBody, SectionFrameNav } from './chunk-G4CGDUCP.js';
|
|
36
36
|
export { NavGroup, NavItem, SidebarNav } from './chunk-WCDPFTJZ.js';
|
|
37
37
|
export { SegmentedMeter, segmentedMeterLabel } from './chunk-4AK52VHB.js';
|
|
@@ -63,7 +63,7 @@ export { SLIDE_HEIGHT, SLIDE_WIDTH, SlideStage, useSlideKeys } from './chunk-RME
|
|
|
63
63
|
export { PricingCard } from './chunk-D7G2QGET.js';
|
|
64
64
|
export { PrincipalPicker } from './chunk-CFTBESST.js';
|
|
65
65
|
export { PropertyList } from './chunk-OPVTNHPH.js';
|
|
66
|
-
export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, PROPOSAL_TONES, ProposalCard } from './chunk-
|
|
66
|
+
export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, PROPOSAL_TONES, ProposalCard } from './chunk-BLGBD2D2.js';
|
|
67
67
|
export { Prose } from './chunk-DVVP27OD.js';
|
|
68
68
|
export { PageNote } from './chunk-CV4NES3P.js';
|
|
69
69
|
export { PEEK_RAIL_LABELS, PEEK_RAIL_MAX_WIDTH, PEEK_RAIL_MIN_WIDTH, PEEK_RAIL_WIDTH, PeekHost, PeekNeighbours, PeekRail, isPlainPress, peekClickHandler, peekRowActivation, usePeekNeighbours, usePeekOrder, usePeekStep } from './chunk-CDNZTCP2.js';
|
|
@@ -83,7 +83,7 @@ import './chunk-KOJPDCGQ.js';
|
|
|
83
83
|
export { MARKDOWN_FORMATS, MarkdownEditor, formatMarkdown, insertMarkdown, markdownWords } from './chunk-JNORDILD.js';
|
|
84
84
|
export { MERGE_CONFLICTS_LABELS, MergeConflicts } from './chunk-3G2BC4K5.js';
|
|
85
85
|
export { MessageBubble } from './chunk-KAQ2L74F.js';
|
|
86
|
-
export {
|
|
86
|
+
export { LinkInterstitial, openExternal } from './chunk-JD7P2GJP.js';
|
|
87
87
|
export { ListDetail } from './chunk-YBC2CYPD.js';
|
|
88
88
|
export { ListInput, withDraft } from './chunk-45M73G5A.js';
|
|
89
89
|
export { LIVE_CURSOR_HIDE_MS, LIVE_CURSOR_REST_MS, LiveCursor } from './chunk-DPNVKWJX.js';
|
|
@@ -93,17 +93,17 @@ export { LogoSlot, LogoSlotGroup } from './chunk-OWHETZIU.js';
|
|
|
93
93
|
export { LAYERS_LIST_LABELS, LayersList } from './chunk-VUYNNILP.js';
|
|
94
94
|
export { AutoGrid, Inline, Spacer, Stack } from './chunk-ZAC7SKUN.js';
|
|
95
95
|
export { Link } from './chunk-QF5UNP4T.js';
|
|
96
|
-
export {
|
|
97
|
-
export { IconTile } from './chunk-3LI4TRUR.js';
|
|
96
|
+
export { List, ListItem } from './chunk-PS5ZYIA6.js';
|
|
98
97
|
export { ImageUpload } from './chunk-ZQEJSEPS.js';
|
|
98
|
+
export { IconTile } from './chunk-3LI4TRUR.js';
|
|
99
99
|
export { InboxGroup, InboxList, InboxMore, InboxRow, InboxToggle } from './chunk-QPHD4UUG.js';
|
|
100
100
|
export { IndicatorAnchor } from './chunk-27MJPU7G.js';
|
|
101
|
-
export { INLINE_EDITOR_LABELS, InlineEditor } from './chunk-YL7AR6PR.js';
|
|
102
101
|
export { InlineRef } from './chunk-JGDCVLD4.js';
|
|
103
102
|
export { MARKDOWN_CALLOUT_NAMES, MARKDOWN_CALLOUT_TONES, markdownBreaks, markdownClosesFence, markdownCodeText, markdownFenceOf, markdownHeadingOf, markdownInline, markdownLines, parseMarkdown, parseMarkdownSpans, safeHref } from './chunk-KBZO4B33.js';
|
|
103
|
+
export { INLINE_EDITOR_LABELS, InlineEditor } from './chunk-YL7AR6PR.js';
|
|
104
104
|
export { FindingList } from './chunk-LSRQ2A6B.js';
|
|
105
|
-
export { FolderTile, describeFolderContents, folderContentsParts } from './chunk-WTXCK46H.js';
|
|
106
105
|
export { FollowBanner } from './chunk-JT7WRPZ6.js';
|
|
106
|
+
export { FolderTile, describeFolderContents, folderContentsParts } from './chunk-WTXCK46H.js';
|
|
107
107
|
export { DEFAULT_FRAME_THEME, EXTERNAL_URL_MAX, FRAME_BRIDGE, FRAME_MESSAGE, FRAME_ORIGIN_MODES, FRAME_SANDBOX_TOKENS, applyFrameTheme, checkFrameSandbox, externalUrl, frameFragment, frameOriginMatches, frameThemeMessage, httpOrigin, isFocusExit, isFrameNonce, negotiateBridge, parseFrameFragment, portTargetOrigin, readFrameHello, readFramePortMessage, readFrameTheme, readOpenLink } from './chunk-F6V2PTN6.js';
|
|
108
108
|
export { DENSITY_PREFERENCES, PALETTE_ID, THEME_PREFERENCES, applyDensity, applyPalette, applyTheme, isDensityPreference, isPaletteId, isThemePreference } from './chunk-ZXXDZJQN.js';
|
|
109
109
|
export { IDLE_AFTER_MS, useFullscreen, useIdle } from './chunk-W5XCNEZC.js';
|
|
@@ -136,33 +136,33 @@ export { ContrastBadge, ContrastLevelTag, contrastLevel, contrastRatio, formatCo
|
|
|
136
136
|
export { CursorFlag } from './chunk-MMCYH5LB.js';
|
|
137
137
|
export { PresenceRing, presenceHueClass } from './chunk-EFX2YC5T.js';
|
|
138
138
|
export { ChooserList, ColumnChooser, DATA_GRID_ICON_TRACK, DataGrid, columnChoicesOf, countDataGridRows, fitGridColumns, nextGridSort, parseGridSort, useAnyDataGridDriving, useDataGridDriving } from './chunk-LCZULGMB.js';
|
|
139
|
-
export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from './chunk-
|
|
139
|
+
export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from './chunk-4WTLT66V.js';
|
|
140
140
|
export { PageHeader } from './chunk-FPDIHEM4.js';
|
|
141
141
|
export { FILTER_PILL_LABELS, FILTER_PILL_WORDS_CLASS, FilterPill, filterPillSentence } from './chunk-K4LZXSKZ.js';
|
|
142
142
|
export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from './chunk-HPI5J6AR.js';
|
|
143
|
-
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from './chunk-
|
|
143
|
+
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from './chunk-BRWR3QIG.js';
|
|
144
144
|
export { ColorSwatch } from './chunk-6FBPFG3C.js';
|
|
145
|
-
export { Combobox } from './chunk-6EWNMSS4.js';
|
|
146
145
|
export { CommandPalette } from './chunk-5CEQ3HLH.js';
|
|
147
146
|
export { ConfirmModal, Modal } from './chunk-C667GCU7.js';
|
|
147
|
+
export { Combobox } from './chunk-6EWNMSS4.js';
|
|
148
148
|
export { HIGHLIGHT_REST_MS, TYPE_AHEAD_WINDOW, useHighlightRest, useListbox, useOptionKeys } from './chunk-7KHM2FZH.js';
|
|
149
149
|
export { COMMENT_THREAD_LABELS, CommentThread } from './chunk-ADGNISEI.js';
|
|
150
|
+
export { CONFLICT_NOTE_LABELS, ConflictNote } from './chunk-B3PK2LND.js';
|
|
150
151
|
export { ConfirmField, confirmMatches } from './chunk-TPIMOGOZ.js';
|
|
151
152
|
export { InlineCode } from './chunk-PLL7ZJHY.js';
|
|
152
|
-
export { CONFLICT_NOTE_LABELS, ConflictNote } from './chunk-B3PK2LND.js';
|
|
153
153
|
export { Container } from './chunk-HJO4WCH6.js';
|
|
154
154
|
export { CheckGrid } from './chunk-MGQKF7GK.js';
|
|
155
155
|
export { ChoiceButtons } from './chunk-RVSNBUIU.js';
|
|
156
156
|
export { ChoiceCards } from './chunk-B7NX425Z.js';
|
|
157
|
-
export { ChoiceList } from './chunk-6RW2MUTY.js';
|
|
158
157
|
export { CodeBlock } from './chunk-QSWQJX27.js';
|
|
159
158
|
export { CopyButton, Copyable } from './chunk-T5GBTXNC.js';
|
|
160
159
|
export { useClipboard, writeClipboard } from './chunk-STJ7QBC3.js';
|
|
161
160
|
export { useOutcome } from './chunk-DTIW4CHZ.js';
|
|
161
|
+
export { ChoiceList } from './chunk-6RW2MUTY.js';
|
|
162
162
|
export { ColorChip } from './chunk-C6T4VBEY.js';
|
|
163
163
|
export { ColorField } from './chunk-T24HBEU6.js';
|
|
164
164
|
export { CatalogTile } from './chunk-QE4OIE3Q.js';
|
|
165
|
-
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged } from './chunk-
|
|
165
|
+
export { CHANGE_LIST_COLLAPSE_OVER, CHANGE_LIST_LABELS, ChangeList, ChangeListItems, shortenUnchanged } from './chunk-4XF7ENQA.js';
|
|
166
166
|
export { DIFF_LIST_LABELS, DiffList } from './chunk-LR4IWUWQ.js';
|
|
167
167
|
export { ChangeMark } from './chunk-Z2MZTI3H.js';
|
|
168
168
|
export { LONGTEXT_MAX_DEFAULT, RATING_MAX_CEILING, RATING_MAX_DEFAULT, SHEET_COLUMN_BOUNDS, SHEET_COLUMN_TYPES, SHEET_COLUMN_WIDTHS, SHEET_FIT_SAMPLES, SHEET_LABELS, SHEET_ROW_HEIGHT, SHEET_ROW_NUMBER_WIDTH, SheetPendingEdits, TEXT_MAX_DEFAULT, URL_MAX, cellDescription, cellKey, cellSpeech, changeText, changeTime, checkValue, columnOffsets, columnWidth, compareValues, displayText, drawnColumns, editText, editorSide, findOption, findPerson, fitSamples, fittedWidth, flagText, hasPrevious, inRange, isEmptyValue, isMod, isMultiCell, isSheetColumnType, isTypingKey, liveOptions, moveFrom, nextSort, normalizeValue, optionHue, parseOptionList, parseTSV, parseText, planClear, planPaste, presenceByCell, presenceByColumn, presenceByRow, rangeOf, ratingMax, refusalText, retypeColumn, rowName, sameValue, scrollToRow, sheetLabels, sortRows, spokenText, statusTone, textMax, toTSV, visibleRows } from './chunk-LFSIKGRQ.js';
|
package/dist/styles.css
CHANGED
|
@@ -8387,7 +8387,7 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8387
8387
|
}
|
|
8388
8388
|
|
|
8389
8389
|
|
|
8390
|
-
/* ChangeList-
|
|
8390
|
+
/* ChangeList-ITJMTVDF.css */
|
|
8391
8391
|
/*
|
|
8392
8392
|
* What a change will do, as a before and after on PropertyList's grid: one
|
|
8393
8393
|
* label column (as wide as the longest label, never under 92px) and one value
|
|
@@ -8598,6 +8598,59 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
8598
8598
|
color: var(--color-text-secondary);
|
|
8599
8599
|
}
|
|
8600
8600
|
|
|
8601
|
+
/*
|
|
8602
|
+
* INLINE: one line a row, the label and then its values as chips. The rows
|
|
8603
|
+
* stack; a row wraps as the pair does, the arrow staying with what it points
|
|
8604
|
+
* at. A word diff and a block value keep their own layout under the label.
|
|
8605
|
+
*/
|
|
8606
|
+
.crewlet-change-list--inline .crewlet-change-list__rows {
|
|
8607
|
+
display: flex;
|
|
8608
|
+
flex-direction: column;
|
|
8609
|
+
gap: var(--spacing-1);
|
|
8610
|
+
}
|
|
8611
|
+
|
|
8612
|
+
.crewlet-change-list--inline .crewlet-change-list__row {
|
|
8613
|
+
display: flex;
|
|
8614
|
+
flex-wrap: wrap;
|
|
8615
|
+
align-items: center;
|
|
8616
|
+
gap: var(--spacing-1) var(--spacing-2);
|
|
8617
|
+
}
|
|
8618
|
+
|
|
8619
|
+
.crewlet-change-list--inline .crewlet-change-list__row--text,
|
|
8620
|
+
.crewlet-change-list--inline .crewlet-change-list__row--block {
|
|
8621
|
+
flex-direction: column;
|
|
8622
|
+
align-items: stretch;
|
|
8623
|
+
}
|
|
8624
|
+
|
|
8625
|
+
/* The label in the secondary ink at the row's own size, closed by a colon. */
|
|
8626
|
+
.crewlet-change-list--inline .crewlet-change-list__label {
|
|
8627
|
+
font-size: inherit;
|
|
8628
|
+
color: var(--color-text-secondary);
|
|
8629
|
+
}
|
|
8630
|
+
|
|
8631
|
+
.crewlet-change-list--inline .crewlet-change-list__row:not(.crewlet-change-list__row--text):not(.crewlet-change-list__row--block) > .crewlet-change-list__label::after {
|
|
8632
|
+
content: ':';
|
|
8633
|
+
}
|
|
8634
|
+
|
|
8635
|
+
.crewlet-change-list--inline .crewlet-change-list__pair {
|
|
8636
|
+
align-items: center;
|
|
8637
|
+
}
|
|
8638
|
+
|
|
8639
|
+
.crewlet-change-list--inline .crewlet-change-list__next {
|
|
8640
|
+
align-items: center;
|
|
8641
|
+
}
|
|
8642
|
+
|
|
8643
|
+
/* THE CHIP IS THE MARK, so the element around it draws none of its own. */
|
|
8644
|
+
.crewlet-change-list__chip {
|
|
8645
|
+
display: inline-flex;
|
|
8646
|
+
text-decoration: none;
|
|
8647
|
+
}
|
|
8648
|
+
|
|
8649
|
+
.crewlet-change-list--inline .crewlet-change-list__note {
|
|
8650
|
+
flex-basis: 100%;
|
|
8651
|
+
margin-top: 0;
|
|
8652
|
+
}
|
|
8653
|
+
|
|
8601
8654
|
|
|
8602
8655
|
/* ChangeMark-KFDGBF6G.css */
|
|
8603
8656
|
/*
|
|
@@ -13862,7 +13915,7 @@ button.crewlet-data-grid__row-link {
|
|
|
13862
13915
|
}
|
|
13863
13916
|
|
|
13864
13917
|
|
|
13865
|
-
/* DataTable-
|
|
13918
|
+
/* DataTable-GSLDFY5U.css */
|
|
13866
13919
|
/* ─────────────────────────────────────────────────────────────────
|
|
13867
13920
|
* Default variant.
|
|
13868
13921
|
*
|
|
@@ -14662,6 +14715,44 @@ body.crewlet-data-table-resizing {
|
|
|
14662
14715
|
width: var(--spacing-6);
|
|
14663
14716
|
}
|
|
14664
14717
|
|
|
14718
|
+
/*
|
|
14719
|
+
* A TABLE SIZED TO ITS CONTENT (`columnSizing="content"`) is laid out by the
|
|
14720
|
+
* automatic algorithm, with no width stated on its columns. The spacer asks
|
|
14721
|
+
* for the whole row, so every other column gives up all it can: down to its
|
|
14722
|
+
* widest cell. What is left over is the spacer's.
|
|
14723
|
+
*
|
|
14724
|
+
* Its cells never wrap, Wrap lines or not. A cell that may break anywhere is
|
|
14725
|
+
* a column the automatic layout squeezes to a few letters a line, which is
|
|
14726
|
+
* what a name became the first time this was drawn; and with every column as
|
|
14727
|
+
* wide as its content there is nothing to truncate, so the toggle has nothing
|
|
14728
|
+
* to decide.
|
|
14729
|
+
*
|
|
14730
|
+
* After the gutter rule above and as specific, so a pinned column keeps its
|
|
14731
|
+
* gutter as the spacer's floor while the spacer still takes the rest of the
|
|
14732
|
+
* row. The panels that span the row wrap, as their content does at any width:
|
|
14733
|
+
* kept on one line, a sentence in one would be measured as the narrowest the
|
|
14734
|
+
* table may be.
|
|
14735
|
+
*/
|
|
14736
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content {
|
|
14737
|
+
table-layout: auto;
|
|
14738
|
+
}
|
|
14739
|
+
|
|
14740
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content td:not(.crewlet-data-table__expanded-cell):not(.crewlet-data-table__accessory-cell) {
|
|
14741
|
+
white-space: nowrap;
|
|
14742
|
+
overflow-wrap: normal;
|
|
14743
|
+
word-break: normal;
|
|
14744
|
+
}
|
|
14745
|
+
|
|
14746
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content .crewlet-data-table__th--spacer,
|
|
14747
|
+
.crewlet-data-table--compact .crewlet-data-table__table.crewlet-data-table__table--content .crewlet-data-table__td--spacer {
|
|
14748
|
+
width: 100%;
|
|
14749
|
+
}
|
|
14750
|
+
|
|
14751
|
+
.crewlet-data-table__table--content td.crewlet-data-table__expanded-cell,
|
|
14752
|
+
.crewlet-data-table__table--content td.crewlet-data-table__accessory-cell {
|
|
14753
|
+
white-space: normal;
|
|
14754
|
+
}
|
|
14755
|
+
|
|
14665
14756
|
/*
|
|
14666
14757
|
* Row actions column: pinned to the viewport's right edge with
|
|
14667
14758
|
* position: sticky so the kebab affordance stays visible during
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewlethq/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.80.0",
|
|
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.
|
|
46
|
-
"@crewlethq/tokens": "0.
|
|
45
|
+
"@crewlethq/icons": "0.80.0",
|
|
46
|
+
"@crewlethq/tokens": "0.80.0",
|
|
47
47
|
"prosemirror-commands": "1.7.2",
|
|
48
48
|
"prosemirror-gapcursor": "1.4.1",
|
|
49
49
|
"prosemirror-history": "1.5.1",
|