@shtabapp/ui-kit 1.63.0 → 1.64.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/CHANGELOG.md +14 -2
- package/dist/SColorPicker-BRSi0Xhm.cjs +1 -0
- package/dist/{SColorPicker-BL-zrskU.js → SColorPicker-Djr-R81h.js} +2 -1
- package/dist/SDropdownMenu-2koPU6IG.js +38 -0
- package/dist/SDropdownMenu-k9SxaFVH.cjs +1 -0
- package/dist/SList-D0PDc8VN.cjs +1 -0
- package/dist/SList-D2K9dNsj.js +465 -0
- package/dist/SSelect-CRlkCLik.cjs +1 -0
- package/dist/SSelect-D6taevzT.js +650 -0
- package/dist/STable-NbCfen0n.cjs +1 -0
- package/dist/STable-aS1eGuVB.js +3445 -0
- package/dist/components/SList/SList.vue.d.ts.map +1 -1
- package/dist/components/SList/utils/resolveListItemFields.d.ts +1 -1
- package/dist/components/SList/utils/resolveListItemFields.d.ts.map +1 -1
- package/dist/components/STable/STable.types.d.ts +317 -0
- package/dist/components/STable/STable.types.d.ts.map +1 -0
- package/dist/components/STable/STable.vue.d.ts +154 -0
- package/dist/components/STable/STable.vue.d.ts.map +1 -0
- package/dist/components/STable/constants/tableSizes.d.ts +76 -0
- package/dist/components/STable/constants/tableSizes.d.ts.map +1 -0
- package/dist/components/STable/index.d.ts +4 -0
- package/dist/components/STable/index.d.ts.map +1 -0
- package/dist/components/STable/parts/STableCellText.vue.d.ts +23 -0
- package/dist/components/STable/parts/STableCellText.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STableCheckbox.vue.d.ts +17 -0
- package/dist/components/STable/parts/STableCheckbox.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STableContentRow.vue.d.ts +41 -0
- package/dist/components/STable/parts/STableContentRow.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STableGroupRow.vue.d.ts +55 -0
- package/dist/components/STable/parts/STableGroupRow.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STableHeaderCell.vue.d.ts +36 -0
- package/dist/components/STable/parts/STableHeaderCell.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STableHint.vue.d.ts +7 -0
- package/dist/components/STable/parts/STableHint.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STablePlaceholderRow.vue.d.ts +25 -0
- package/dist/components/STable/parts/STablePlaceholderRow.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STableRow.vue.d.ts +67 -0
- package/dist/components/STable/parts/STableRow.vue.d.ts.map +1 -0
- package/dist/components/STable/parts/STableSkeletonRow.vue.d.ts +27 -0
- package/dist/components/STable/parts/STableSkeletonRow.vue.d.ts.map +1 -0
- package/dist/components/STable/utils/tableDndShared.d.ts +17 -0
- package/dist/components/STable/utils/tableDndShared.d.ts.map +1 -0
- package/dist/components/STable/utils/useFlatTableRows.d.ts +62 -0
- package/dist/components/STable/utils/useFlatTableRows.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableCellPlans.d.ts +48 -0
- package/dist/components/STable/utils/useTableCellPlans.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableColumnDnd.d.ts +28 -0
- package/dist/components/STable/utils/useTableColumnDnd.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableColumnResize.d.ts +24 -0
- package/dist/components/STable/utils/useTableColumnResize.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableColumns.d.ts +86 -0
- package/dist/components/STable/utils/useTableColumns.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableGridFocus.d.ts +79 -0
- package/dist/components/STable/utils/useTableGridFocus.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableGridKeyboard.d.ts +36 -0
- package/dist/components/STable/utils/useTableGridKeyboard.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableRenderEntries.d.ts +56 -0
- package/dist/components/STable/utils/useTableRenderEntries.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableRowDnd.d.ts +37 -0
- package/dist/components/STable/utils/useTableRowDnd.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableRowHydration.d.ts +29 -0
- package/dist/components/STable/utils/useTableRowHydration.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableScrollScale.d.ts +34 -0
- package/dist/components/STable/utils/useTableScrollScale.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableSelection.d.ts +27 -0
- package/dist/components/STable/utils/useTableSelection.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableServiceRows.d.ts +57 -0
- package/dist/components/STable/utils/useTableServiceRows.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableSorting.d.ts +21 -0
- package/dist/components/STable/utils/useTableSorting.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableStickyRows.d.ts +38 -0
- package/dist/components/STable/utils/useTableStickyRows.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableStyleVars.d.ts +22 -0
- package/dist/components/STable/utils/useTableStyleVars.d.ts.map +1 -0
- package/dist/components/STable/utils/useTableVirtualRows.d.ts +56 -0
- package/dist/components/STable/utils/useTableVirtualRows.d.ts.map +1 -0
- package/dist/composables/treeKeyboardNavigation.d.ts +26 -0
- package/dist/composables/treeKeyboardNavigation.d.ts.map +1 -0
- package/dist/composables/useFlatTreeList.d.ts +1 -0
- package/dist/composables/useFlatTreeList.d.ts.map +1 -1
- package/dist/entries/color-picker.cjs +1 -1
- package/dist/entries/color-picker.js +1 -1
- package/dist/entries/list.cjs +1 -1
- package/dist/entries/list.js +1 -1
- package/dist/entries/select.cjs +1 -1
- package/dist/entries/select.js +1 -1
- package/dist/entries/table.cjs +1 -0
- package/dist/entries/table.d.ts +3 -0
- package/dist/entries/table.d.ts.map +1 -0
- package/dist/entries/table.js +2 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +111 -108
- package/dist/treeKeyboardNavigation-BOz2SVus.cjs +1 -0
- package/dist/treeKeyboardNavigation-SmxTdnDz.js +131 -0
- package/dist/uikit-components.css +1 -1
- package/package.json +14 -3
- package/dist/SColorPicker-CvhpJEj1.cjs +0 -1
- package/dist/SList-C39LrsoS.js +0 -590
- package/dist/SList-Du0gqyFs.cjs +0 -1
- package/dist/SSelect-BkX3VuCr.js +0 -682
- package/dist/SSelect-CHWKMbB_.cjs +0 -1
- package/dist/components/SList/utils/treeKeyboardNavigation.d.ts +0 -16
- package/dist/components/SList/utils/treeKeyboardNavigation.d.ts.map +0 -1
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Единственный источник размеров STable (Figma SHTAB DS 2.0.0, canvas «✅ Table»).
|
|
3
|
+
* CSS-переменные блока инжектятся из этих констант в rootStyle — дублей в CSS нет.
|
|
4
|
+
*/
|
|
5
|
+
export declare const TABLE_HEADER_HEIGHT = 40;
|
|
6
|
+
export declare const TABLE_ROW_MIN_HEIGHT = 52;
|
|
7
|
+
export declare const TABLE_INDICATOR_COLUMN_WIDTH = 2;
|
|
8
|
+
export declare const TABLE_CHECKBOX_COLUMN_WIDTH = 24;
|
|
9
|
+
export declare const TABLE_RIGHT_EDGE_COLUMN_WIDTH = 40;
|
|
10
|
+
/** Колонка кнопки управления колонками (Figma Header Cells type=buttonIcon, w 32). */
|
|
11
|
+
export declare const TABLE_COLUMNS_MANAGER_COLUMN_WIDTH = 32;
|
|
12
|
+
/** Шаг вложенности (Figma listLevel: база 14, каждый уровень +18). */
|
|
13
|
+
export declare const TABLE_TREE_INDENT = 18;
|
|
14
|
+
/** Агрегатный футер tfoot. */
|
|
15
|
+
export declare const TABLE_FOOTER_BAR_HEIGHT = 40;
|
|
16
|
+
/** Строка создания — обычная строка таблицы (Figma TableRowBasedList h=52). */
|
|
17
|
+
export declare const TABLE_CREATE_ROW_HEIGHT = 52;
|
|
18
|
+
export declare const TABLE_PRIMARY_COLUMN_DEFAULT_WIDTH = 430;
|
|
19
|
+
export declare const TABLE_COLUMN_DEFAULT_WIDTH = 160;
|
|
20
|
+
export declare const TABLE_COLUMN_DEFAULT_MIN_WIDTH = 60;
|
|
21
|
+
/** Figma: компонент scrollBar — 12px и по вертикали, и по горизонтали. */
|
|
22
|
+
export declare const TABLE_SCROLLBAR_SIZE = 12;
|
|
23
|
+
export declare const TABLE_ESTIMATE_ROW_SIZE = 52;
|
|
24
|
+
export declare const TABLE_OVERSCAN = 8;
|
|
25
|
+
/**
|
|
26
|
+
* Запас окна по направлению прокрутки (строк, по скорости за кадр): композитор уводит
|
|
27
|
+
* вьюпорт на кадр раньше, чем рендер перекладывает окно, — дешёвые плашки за окном
|
|
28
|
+
* закрывают этот зазор при быстрой прокрутке и драге ползунка.
|
|
29
|
+
*/
|
|
30
|
+
export declare const TABLE_SCROLL_LOOKAHEAD_MAX_ROWS = 24;
|
|
31
|
+
/**
|
|
32
|
+
* Запас прижатия sticky-футеров поддеревьев: следующие футеры прижимаются под уходящим,
|
|
33
|
+
* пока их строки лежат ближе стольких px под кромкой (и не больше MAX_PINNED штук).
|
|
34
|
+
* JS переключает роли на кадр позже композитора, а за кадр быстрой прокрутки уходит
|
|
35
|
+
* несколько футеров подряд — запас в две строки этого не покрывал, плашка моргала.
|
|
36
|
+
*/
|
|
37
|
+
export declare const TABLE_DEPTH_FOOTER_LOOKAHEAD_PX = 1200;
|
|
38
|
+
export declare const TABLE_DEPTH_FOOTER_MAX_PINNED = 6;
|
|
39
|
+
export declare const TABLE_SKELETON_ROW_COUNT = 8;
|
|
40
|
+
/**
|
|
41
|
+
* Сжатие прокрутки. Браузер ограничивает высоту элемента (Blink LayoutUnit ≈ 33,5 млн px,
|
|
42
|
+
* Firefox ≈ 17,9 млн): выше tbody не растёт, и хвост таблицы недостижим. Ниже SAFE сжатие
|
|
43
|
+
* не включается и проба лимита не запускается; HEADROOM — запас под шапку, tfoot и выступ
|
|
44
|
+
* последней строки окна; PROBE — высота пробного div, заведомо больше любого лимита.
|
|
45
|
+
*/
|
|
46
|
+
export declare const TABLE_SCROLL_UI_HEIGHT_SAFE = 16000000;
|
|
47
|
+
export declare const TABLE_SCROLL_UI_HEIGHT_HEADROOM = 100000;
|
|
48
|
+
export declare const TABLE_SCROLL_PROBE_HEIGHT = 1000000000;
|
|
49
|
+
/**
|
|
50
|
+
* Тождественные зоны карты сжатия по краям (UI-px, не меньше вьюпорта): в них модельный
|
|
51
|
+
* офсет равен scrollTop, и окно строк с overscan никогда не выходит за UI-высоту tbody —
|
|
52
|
+
* иначе спейсеры клампились бы и строки у начала/конца таблицы ехали на высоту строки.
|
|
53
|
+
*/
|
|
54
|
+
export declare const TABLE_SCROLL_IDENTITY_EDGE = 2000;
|
|
55
|
+
/**
|
|
56
|
+
* Прогрессивная гидрация строк окна: за кадр полный рендер получают не больше бюджета
|
|
57
|
+
* новых строк, остальные ждут плашками. Бюджет адаптивный (AIMD по времени кадра):
|
|
58
|
+
* медленный кадр делит его пополам, быстрый — прибавляет шаг.
|
|
59
|
+
*/
|
|
60
|
+
export declare const TABLE_HYDRATION_BUDGET_INITIAL = 12;
|
|
61
|
+
export declare const TABLE_HYDRATION_BUDGET_MIN = 2;
|
|
62
|
+
export declare const TABLE_HYDRATION_BUDGET_MAX = 64;
|
|
63
|
+
export declare const TABLE_HYDRATION_BUDGET_STEP = 2;
|
|
64
|
+
export declare const TABLE_HYDRATION_FRAME_SLOW_MS = 34;
|
|
65
|
+
export declare const TABLE_HYDRATION_FRAME_FAST_MS = 20;
|
|
66
|
+
export declare const TABLE_RESIZE_KEYBOARD_STEP = 8;
|
|
67
|
+
export declare const TABLE_RESIZE_KEYBOARD_STEP_FINE = 1;
|
|
68
|
+
export declare const TABLE_AUTOFIT_MAX_WIDTH = 640;
|
|
69
|
+
/** Отступ карточки драг-превью строки от курсора (курсор снаружи карточки). */
|
|
70
|
+
export declare const TABLE_DRAG_PREVIEW_OFFSET_PX = 8;
|
|
71
|
+
export declare const TABLE_DROP_INSIDE_RATIO = 0.3;
|
|
72
|
+
export declare const TABLE_DROP_INSIDE_DELAY_MS = 1300;
|
|
73
|
+
export declare const TABLE_DRAG_EXPAND_DELAY_MS = 500;
|
|
74
|
+
/** Ключ филлер-ячейки: колонка-заполнитель между зонами sticky-колонок. */
|
|
75
|
+
export declare const TABLE_FILLER_COLUMN_KEY = "__s-ui-table-filler__";
|
|
76
|
+
//# sourceMappingURL=tableSizes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableSizes.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/constants/tableSizes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,mBAAmB,KAAK,CAAA;AACrC,eAAO,MAAM,oBAAoB,KAAK,CAAA;AACtC,eAAO,MAAM,4BAA4B,IAAI,CAAA;AAC7C,eAAO,MAAM,2BAA2B,KAAK,CAAA;AAC7C,eAAO,MAAM,6BAA6B,KAAK,CAAA;AAC/C,sFAAsF;AACtF,eAAO,MAAM,kCAAkC,KAAK,CAAA;AACpD,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,KAAK,CAAA;AACnC,8BAA8B;AAC9B,eAAO,MAAM,uBAAuB,KAAK,CAAA;AACzC,+EAA+E;AAC/E,eAAO,MAAM,uBAAuB,KAAuB,CAAA;AAC3D,eAAO,MAAM,kCAAkC,MAAM,CAAA;AACrD,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAC7C,eAAO,MAAM,8BAA8B,KAAK,CAAA;AAChD,0EAA0E;AAC1E,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC,eAAO,MAAM,uBAAuB,KAAK,CAAA;AACzC,eAAO,MAAM,cAAc,IAAI,CAAA;AAC/B;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,KAAK,CAAA;AACjD;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,OAAO,CAAA;AACnD,eAAO,MAAM,6BAA6B,IAAI,CAAA;AAC9C,eAAO,MAAM,wBAAwB,IAAI,CAAA;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,WAAa,CAAA;AACrD,eAAO,MAAM,+BAA+B,SAAU,CAAA;AACtD,eAAO,MAAM,yBAAyB,aAAgB,CAAA;AACtD;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,OAAQ,CAAA;AAE/C;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,KAAK,CAAA;AAChD,eAAO,MAAM,0BAA0B,IAAI,CAAA;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAA;AAC5C,eAAO,MAAM,2BAA2B,IAAI,CAAA;AAC5C,eAAO,MAAM,6BAA6B,KAAK,CAAA;AAC/C,eAAO,MAAM,6BAA6B,KAAK,CAAA;AAE/C,eAAO,MAAM,0BAA0B,IAAI,CAAA;AAC3C,eAAO,MAAM,+BAA+B,IAAI,CAAA;AAChD,eAAO,MAAM,uBAAuB,MAAM,CAAA;AAE1C,+EAA+E;AAC/E,eAAO,MAAM,4BAA4B,IAAI,CAAA;AAC7C,eAAO,MAAM,uBAAuB,MAAM,CAAA;AAC1C,eAAO,MAAM,0BAA0B,OAAO,CAAA;AAC9C,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAE7C,2EAA2E;AAC3E,eAAO,MAAM,uBAAuB,0BAA0B,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default as STable } from './STable.vue';
|
|
2
|
+
export { ESTableCellState, ESTableCheckState, ESTableColumnAlign, ESTableColumnSticky, ESTableDropAction, ESTableFooterTone, ESTableRowHeightMode, ESTableRowKind, ESTableRowsDragMode, ESTableRowState, ESTableSortDirection, } from './STable.types';
|
|
3
|
+
export type { ISTableColumn, ISTableDepthFooterConfig, ISTableExpose, ISTableFooterValue, ISTableProps, ISTableRowsDropPayload, ISTableRowsReorderPayload, TSTableCellSlotScope, TSTableDepthFooterSlotScope, TSTableFieldResolver, TSTableFlatRow, TSTableGroupSlotScope, TSTableHeaderSlotScope, TSTableInstance, TSTableLoadMoreSlotScope, TSTableRowSlotScope, TSTableScrollAlign, TSTableSortEntry, } from './STable.types';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/STable/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,oBAAoB,GACrB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EACV,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ISTableColumn } from '../STable.types';
|
|
2
|
+
declare const __VLS_export: <TItem extends Record<string, unknown>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
3
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<{
|
|
4
|
+
column: ISTableColumn<TItem>;
|
|
5
|
+
item: TItem;
|
|
6
|
+
}> & (typeof globalThis extends {
|
|
7
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
8
|
+
} ? P : {});
|
|
9
|
+
expose: (exposed: {}) => void;
|
|
10
|
+
attrs: any;
|
|
11
|
+
slots: {};
|
|
12
|
+
emit: {};
|
|
13
|
+
}>) => import("vue").VNode & {
|
|
14
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
15
|
+
};
|
|
16
|
+
declare const _default: typeof __VLS_export;
|
|
17
|
+
export default _default;
|
|
18
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
19
|
+
[K in keyof T]: T[K];
|
|
20
|
+
} : {
|
|
21
|
+
[K in keyof T as K]: T[K];
|
|
22
|
+
}) & {};
|
|
23
|
+
//# sourceMappingURL=STableCellText.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableCellText.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableCellText.vue"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAGpD,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WAqDO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB;gBAnD7C,aAAa,CAAC,KAAK,CAAC;cACtB,KAAK;MAkD6D,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC1I,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;WACH,EAAE;UACH,EAAE;EAEL,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAI,CAAC;wBACvD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
/** Подпись для скринридера: ставится на нативный input, а не на корневой label. */
|
|
3
|
+
screenReaderLabel: string;
|
|
4
|
+
indeterminate?: boolean;
|
|
5
|
+
};
|
|
6
|
+
type __VLS_ModelProps = {
|
|
7
|
+
modelValue?: boolean;
|
|
8
|
+
};
|
|
9
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
10
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
11
|
+
"update:modelValue": (value: boolean) => any;
|
|
12
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
13
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
14
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
//# sourceMappingURL=STableCheckbox.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableCheckbox.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableCheckbox.vue"],"names":[],"mappings":"AAqDA,KAAK,WAAW,GAAG;IACjB,mFAAmF;IACnF,iBAAiB,EAAE,MAAM,CAAA;IACzB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAC;AAkCF,KAAK,gBAAgB,GAAG;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAKF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AA8CxD,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { CSSProperties } from 'vue';
|
|
2
|
+
import type { TSTableRowCellEntry } from '../utils/useTableColumns';
|
|
3
|
+
import type { ESTableGridSection } from '../utils/useTableGridFocus';
|
|
4
|
+
declare const __VLS_export: <TItem extends Record<string, unknown>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
5
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<{
|
|
6
|
+
/** Ячейки строки одним списком: запись без плана — колонка-филлер. */
|
|
7
|
+
cells: readonly TSTableRowCellEntry<TItem>[];
|
|
8
|
+
/** Колонка, в которой рендерится контент строки; дефолт задаёт вызывающий. */
|
|
9
|
+
contentColumnKey?: string;
|
|
10
|
+
/** Класс на ВСЕ ячейки строки, включая филлер — иначе в полосе появится дырка. */
|
|
11
|
+
cellClass?: string;
|
|
12
|
+
contentClass?: string;
|
|
13
|
+
contentStyle?: CSSProperties;
|
|
14
|
+
/** Секция грида для клавиатурной навигации. */
|
|
15
|
+
section: ESTableGridSection;
|
|
16
|
+
/** Ключ строки тела; у полос tfoot отсутствует. */
|
|
17
|
+
rowKey?: string;
|
|
18
|
+
/** Префикс id ячеек грида. */
|
|
19
|
+
cellIdPrefix: string;
|
|
20
|
+
/** Колонка roving-фокуса, если он сейчас в этой строке. */
|
|
21
|
+
focusColumnKey?: string;
|
|
22
|
+
}> & (typeof globalThis extends {
|
|
23
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
24
|
+
} ? P : {});
|
|
25
|
+
expose: (exposed: {}) => void;
|
|
26
|
+
attrs: any;
|
|
27
|
+
slots: {
|
|
28
|
+
default?: () => unknown;
|
|
29
|
+
};
|
|
30
|
+
emit: {};
|
|
31
|
+
}>) => import("vue").VNode & {
|
|
32
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
33
|
+
};
|
|
34
|
+
declare const _default: typeof __VLS_export;
|
|
35
|
+
export default _default;
|
|
36
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
37
|
+
[K in keyof T]: T[K];
|
|
38
|
+
} : {
|
|
39
|
+
[K in keyof T as K]: T[K];
|
|
40
|
+
}) & {};
|
|
41
|
+
//# sourceMappingURL=STableContentRow.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableContentRow.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableContentRow.vue"],"names":[],"mappings":"AA0EA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAExC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAEpE,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WAwFO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB;QAtFrD,sEAAsE;eAC/D,SAAS,mBAAmB,CAAC,KAAK,CAAC,EAAE;QAC5C,8EAA8E;2BAC3D,MAAM;QACzB,kFAAkF;oBACtE,MAAM;uBACH,MAAM;uBACN,aAAa;QAC5B,+CAA+C;iBACtC,kBAAkB;QAC3B,mDAAmD;iBAC1C,MAAM;QACf,8BAA8B;sBAChB,MAAM;QACpB,2DAA2D;yBAC1C,MAAM;MAuEiD,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC1I,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;;kBAzDC,MAAM,OAAO;;UA2DlB,EAAE;EAEL,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAI,CAAC;wBACvD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { type ComponentPublicInstance } from 'vue';
|
|
2
|
+
import type { TSTableFlatRow } from '../STable.types';
|
|
3
|
+
import type { TSTableCellRenderPlan } from '../utils/useTableColumns';
|
|
4
|
+
declare const __VLS_export: <TItem extends Record<string, unknown>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
5
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<{
|
|
6
|
+
row: TSTableFlatRow<TItem>;
|
|
7
|
+
/** Индекс дублируется пропом: поля row мутируются нереактивно (реюз пула). */
|
|
8
|
+
rowIndex: number;
|
|
9
|
+
leadingPlans: readonly TSTableCellRenderPlan<TItem>[];
|
|
10
|
+
trailingPlans: readonly TSTableCellRenderPlan<TItem>[];
|
|
11
|
+
/** Колонка, в которой рендерится контент группы (Figma: главная колонка). */
|
|
12
|
+
groupColumnKey?: string;
|
|
13
|
+
treeIndent: number;
|
|
14
|
+
count: number;
|
|
15
|
+
total?: number;
|
|
16
|
+
expanded: boolean;
|
|
17
|
+
active: boolean;
|
|
18
|
+
title?: string;
|
|
19
|
+
/** Ячейки строки получают `position: sticky` (активный групп-хедер). */
|
|
20
|
+
stuck?: boolean;
|
|
21
|
+
/** Регистрация строки в DnD (ref-callback на tr). */
|
|
22
|
+
dndRef?: (rowElement: Element | ComponentPublicInstance | null) => void;
|
|
23
|
+
dragging?: boolean;
|
|
24
|
+
dropPosition?: "before" | "after" | "inside";
|
|
25
|
+
/** Префикс id ячеек грида: к нему достраиваются ключ строки и колонки. */
|
|
26
|
+
cellIdPrefix: string;
|
|
27
|
+
/** Колонка roving-фокуса, если он сейчас в этой строке. */
|
|
28
|
+
focusColumnKey?: string;
|
|
29
|
+
} & {
|
|
30
|
+
onToggle?: (() => any) | undefined;
|
|
31
|
+
onRowClick?: ((event: MouseEvent) => any) | undefined;
|
|
32
|
+
onMenuOpen?: (() => any) | undefined;
|
|
33
|
+
}> & (typeof globalThis extends {
|
|
34
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
35
|
+
} ? P : {});
|
|
36
|
+
expose: (exposed: {}) => void;
|
|
37
|
+
attrs: any;
|
|
38
|
+
slots: {
|
|
39
|
+
row?: () => unknown;
|
|
40
|
+
title?: () => unknown;
|
|
41
|
+
actions?: () => unknown;
|
|
42
|
+
menu?: () => unknown;
|
|
43
|
+
};
|
|
44
|
+
emit: ((evt: "toggle") => void) & ((evt: "rowClick", event: MouseEvent) => void) & ((evt: "menuOpen") => void);
|
|
45
|
+
}>) => import("vue").VNode & {
|
|
46
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
47
|
+
};
|
|
48
|
+
declare const _default: typeof __VLS_export;
|
|
49
|
+
export default _default;
|
|
50
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
51
|
+
[K in keyof T]: T[K];
|
|
52
|
+
} : {
|
|
53
|
+
[K in keyof T as K]: T[K];
|
|
54
|
+
}) & {};
|
|
55
|
+
//# sourceMappingURL=STableGroupRow.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableGroupRow.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableGroupRow.vue"],"names":[],"mappings":"AA4NA,OAAO,EAA2B,KAAK,uBAAuB,EAAE,MAAM,KAAK,CAAA;AAM3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAGrE,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WAyWO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB,CAAC;aAvWjD,cAAc,CAAC,KAAK,CAAC;QAC1B,8EAA8E;kBACpE,MAAM;sBACF,SAAS,qBAAqB,CAAC,KAAK,CAAC,EAAE;uBACtC,SAAS,qBAAqB,CAAC,KAAK,CAAC,EAAE;QACtD,6EAA6E;yBAC5D,MAAM;oBACX,MAAM;eACX,MAAM;gBACL,MAAM;kBACJ,OAAO;gBACT,OAAO;gBACP,MAAM;QACd,wEAAwE;gBAChE,OAAO;QACf,qDAAqD;iBAC5C,CAAC,UAAU,EAAE,OAAO,GAAG,uBAAuB,GAAG,IAAI,KAAK,IAAI;mBAC5D,OAAO;uBACH,QAAQ,GAAG,OAAO,GAAG,QAAQ;QAC5C,0EAA0E;sBAC5D,MAAM;QACpB,2DAA2D;yBAC1C,MAAM;;;;;KAiVkE,CAAC,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC5J,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;;cApTH,MAAM,OAAO;gBACX,MAAM,OAAO;kBACX,MAAM,OAAO;eAChB,MAAM,OAAO;;;EAqTlB,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAI,CAAC;wBACvD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ESTableSortDirection } from '../STable.types';
|
|
2
|
+
import type { TSTableColumnDescriptor } from '../utils/useTableColumns';
|
|
3
|
+
declare const __VLS_export: <TItem extends Record<string, unknown>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
4
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<{
|
|
5
|
+
descriptor: TSTableColumnDescriptor<TItem>;
|
|
6
|
+
sortDirection?: ESTableSortDirection;
|
|
7
|
+
/** Порядковый номер в мультисортировке; бейдж показывается и при одиночной («1»). */
|
|
8
|
+
sortIndex?: number;
|
|
9
|
+
/** Открытость kebab-меню; управляется таблицей (клик и клавиатура Alt+↓). */
|
|
10
|
+
menuOpen?: boolean;
|
|
11
|
+
} & {
|
|
12
|
+
onHide?: (() => any) | undefined;
|
|
13
|
+
"onUpdate:menuOpen"?: ((open: boolean) => any) | undefined;
|
|
14
|
+
onSortToggle?: ((append: boolean) => any) | undefined;
|
|
15
|
+
onSortSet?: ((direction: ESTableSortDirection | undefined) => any) | undefined;
|
|
16
|
+
}> & (typeof globalThis extends {
|
|
17
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
18
|
+
} ? P : {});
|
|
19
|
+
expose: (exposed: {}) => void;
|
|
20
|
+
attrs: any;
|
|
21
|
+
slots: {
|
|
22
|
+
default?: () => unknown;
|
|
23
|
+
menu?: () => unknown;
|
|
24
|
+
};
|
|
25
|
+
emit: ((evt: "hide") => void) & ((evt: "update:menuOpen", open: boolean) => void) & ((evt: "sortToggle", append: boolean) => void) & ((evt: "sortSet", direction: ESTableSortDirection | undefined) => void);
|
|
26
|
+
}>) => import("vue").VNode & {
|
|
27
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
28
|
+
};
|
|
29
|
+
declare const _default: typeof __VLS_export;
|
|
30
|
+
export default _default;
|
|
31
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
32
|
+
[K in keyof T]: T[K];
|
|
33
|
+
} : {
|
|
34
|
+
[K in keyof T as K]: T[K];
|
|
35
|
+
}) & {};
|
|
36
|
+
//# sourceMappingURL=STableHeaderCell.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableHeaderCell.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableHeaderCell.vue"],"names":[],"mappings":"AAgMA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAEvE,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WA4dO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB,CAAC;oBA1d1C,uBAAuB,CAAC,KAAK,CAAC;wBAC1B,oBAAoB;QACpC,qFAAqF;oBACzE,MAAM;QAClB,6EAA6E;mBAClE,OAAO;;;;;;KAqduE,CAAC,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC5J,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;;kBAjcC,MAAM,OAAO;eAChB,MAAM,OAAO;;;EAoclB,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAI,CAAC;wBACvD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
text: string;
|
|
3
|
+
};
|
|
4
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
5
|
+
declare const _default: typeof __VLS_export;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=STableHint.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableHint.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableHint.vue"],"names":[],"mappings":"AAgCA,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AA4EpC,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { TSTableRowCellEntry } from '../utils/useTableColumns';
|
|
2
|
+
declare const __VLS_export: <TItem extends Record<string, unknown>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
3
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<{
|
|
4
|
+
rowIndex: number;
|
|
5
|
+
rowKey: string;
|
|
6
|
+
cells: readonly TSTableRowCellEntry<TItem>[];
|
|
7
|
+
rowHeight?: number;
|
|
8
|
+
}> & (typeof globalThis extends {
|
|
9
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
10
|
+
} ? P : {});
|
|
11
|
+
expose: (exposed: {}) => void;
|
|
12
|
+
attrs: any;
|
|
13
|
+
slots: {};
|
|
14
|
+
emit: {};
|
|
15
|
+
}>) => import("vue").VNode & {
|
|
16
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
17
|
+
};
|
|
18
|
+
declare const _default: typeof __VLS_export;
|
|
19
|
+
export default _default;
|
|
20
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
21
|
+
[K in keyof T]: T[K];
|
|
22
|
+
} : {
|
|
23
|
+
[K in keyof T as K]: T[K];
|
|
24
|
+
}) & {};
|
|
25
|
+
//# sourceMappingURL=STablePlaceholderRow.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STablePlaceholderRow.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STablePlaceholderRow.vue"],"names":[],"mappings":"AAyDA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAEnE,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WAqFO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB;kBA5E3C,MAAM;gBACR,MAAM;eACP,SAAS,mBAAmB,CAAC,KAAK,CAAC,EAAE;oBAChC,MAAM;MAyEsD,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC1I,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;WACH,EAAE;UACH,EAAE;EAEL,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAI,CAAC;wBACvD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { type ComponentPublicInstance } from 'vue';
|
|
2
|
+
import { ESTableRowState, type TSTableCellSlotScope, type TSTableFlatRow, type TSTableRowSlotScope } from '../STable.types';
|
|
3
|
+
import { type TSTableCellRenderPlan } from '../utils/useTableColumns';
|
|
4
|
+
declare const __VLS_export: <TItem extends Record<string, unknown>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
5
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<{
|
|
6
|
+
row: TSTableFlatRow<TItem>;
|
|
7
|
+
/** Индекс и раскрытость дублируются пропсами: поля row мутируются нереактивно (реюз пула). */
|
|
8
|
+
rowIndex: number;
|
|
9
|
+
rowExpanded?: boolean;
|
|
10
|
+
leadingPlans: readonly TSTableCellRenderPlan<TItem>[];
|
|
11
|
+
trailingPlans: readonly TSTableCellRenderPlan<TItem>[];
|
|
12
|
+
domId: string;
|
|
13
|
+
selected?: boolean;
|
|
14
|
+
indeterminate?: boolean;
|
|
15
|
+
rowSelectable?: boolean;
|
|
16
|
+
active?: boolean;
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
treeIndent: number;
|
|
19
|
+
/** Состояние строки: кит рисует модификатор, признак приходит из приложения. */
|
|
20
|
+
rowState?: ESTableRowState;
|
|
21
|
+
extraRowClass?: string;
|
|
22
|
+
/** Регистрация строки в DnD (ref-callback на tr). */
|
|
23
|
+
dndRef?: (rowElement: Element | ComponentPublicInstance | null) => void;
|
|
24
|
+
/** Строка — источник текущего перетаскивания. */
|
|
25
|
+
dragging?: boolean;
|
|
26
|
+
/** Индикатор дропа на этой строке. */
|
|
27
|
+
dropPosition?: "before" | "after" | "inside";
|
|
28
|
+
/** Режим быстрой прокрутки: вместо контента — дешёвые плашки-заглушки. */
|
|
29
|
+
placeholder?: boolean;
|
|
30
|
+
/** Измеренная высота строки: плейсхолдер держит её, чтобы не «схлопнуть» скролл. */
|
|
31
|
+
placeholderHeight?: number;
|
|
32
|
+
/** Префикс id ячеек грида: к нему достраиваются ключ строки и колонки. */
|
|
33
|
+
cellIdPrefix: string;
|
|
34
|
+
/** Колонка roving-фокуса, если он сейчас в этой строке. */
|
|
35
|
+
focusColumnKey?: string;
|
|
36
|
+
} & {
|
|
37
|
+
onToggleExpand?: (() => any) | undefined;
|
|
38
|
+
onRowClick?: ((event: MouseEvent) => any) | undefined;
|
|
39
|
+
onRowContextMenu?: ((event: MouseEvent) => any) | undefined;
|
|
40
|
+
onCellClick?: ((columnKey: string, event: MouseEvent) => any) | undefined;
|
|
41
|
+
onToggleSelected?: (() => any) | undefined;
|
|
42
|
+
}> & (typeof globalThis extends {
|
|
43
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
44
|
+
} ? P : {});
|
|
45
|
+
expose: (exposed: {}) => void;
|
|
46
|
+
attrs: any;
|
|
47
|
+
slots: {
|
|
48
|
+
[x: `cell:${string}`]: ((scope: TSTableCellSlotScope<TItem>) => unknown) | undefined;
|
|
49
|
+
} & {
|
|
50
|
+
chevron?: (scope: TSTableRowSlotScope<TItem>) => unknown;
|
|
51
|
+
'cell-actions'?: (scope: TSTableCellSlotScope<TItem>) => unknown;
|
|
52
|
+
indicator?: (scope: TSTableRowSlotScope<TItem>) => unknown;
|
|
53
|
+
checkbox?: (scope: TSTableRowSlotScope<TItem>) => unknown;
|
|
54
|
+
'right-edge'?: (scope: TSTableRowSlotScope<TItem>) => unknown;
|
|
55
|
+
};
|
|
56
|
+
emit: ((evt: "toggleExpand") => void) & ((evt: "rowClick", event: MouseEvent) => void) & ((evt: "rowContextMenu", event: MouseEvent) => void) & ((evt: "cellClick", columnKey: string, event: MouseEvent) => void) & ((evt: "toggleSelected") => void);
|
|
57
|
+
}>) => import("vue").VNode & {
|
|
58
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
59
|
+
};
|
|
60
|
+
declare const _default: typeof __VLS_export;
|
|
61
|
+
export default _default;
|
|
62
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
63
|
+
[K in keyof T]: T[K];
|
|
64
|
+
} : {
|
|
65
|
+
[K in keyof T as K]: T[K];
|
|
66
|
+
}) & {};
|
|
67
|
+
//# sourceMappingURL=STableRow.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableRow.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableRow.vue"],"names":[],"mappings":"AAiYA,OAAO,EAAsB,KAAK,uBAAuB,EAAsB,MAAM,KAAK,CAAA;AAI1F,OAAO,EAGL,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EAAwB,KAAK,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAI3F,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WA4hBO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB,CAAC;aA1hBjD,cAAc,CAAC,KAAK,CAAC;QAC1B,8FAA8F;kBACpF,MAAM;sBACF,OAAO;sBACP,SAAS,qBAAqB,CAAC,KAAK,CAAC,EAAE;uBACtC,SAAS,qBAAqB,CAAC,KAAK,CAAC,EAAE;eAC/C,MAAM;mBACF,OAAO;wBACF,OAAO;wBACP,OAAO;iBACd,OAAO;mBACL,OAAO;oBACN,MAAM;QAClB,gFAAgF;mBACrE,eAAe;wBACV,MAAM;QACtB,qDAAqD;iBAC5C,CAAC,UAAU,EAAE,OAAO,GAAG,uBAAuB,GAAG,IAAI,KAAK,IAAI;QACvE,iDAAiD;mBACtC,OAAO;QAClB,sCAAsC;uBACvB,QAAQ,GAAG,OAAO,GAAG,QAAQ;QAC5C,0EAA0E;sBAC5D,OAAO;QACrB,oFAAoF;4BAChE,MAAM;QAC1B,0EAA0E;sBAC5D,MAAM;QACpB,2DAA2D;yBAC1C,MAAM;;;;;;;KA6fkE,CAAC,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC5J,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;;wCA1d2B,oBAAoB,CAAC,KAAK,CAAC,KAAK,OAAO;;kBAE/D,CAAC,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC,KAAK,OAAO;yBACvC,CAAC,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,KAAK,OAAO;oBACpD,CAAC,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC,KAAK,OAAO;mBAC/C,CAAC,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC,KAAK,OAAO;uBAC1C,CAAC,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC,KAAK,OAAO;;;EAwd7D,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAI,CAAC;wBACvD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { TSTableCellRenderPlan } from '../utils/useTableColumns';
|
|
2
|
+
declare const __VLS_export: <TItem extends Record<string, unknown>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
3
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<{
|
|
4
|
+
leadingPlans: readonly TSTableCellRenderPlan<TItem>[];
|
|
5
|
+
trailingPlans: readonly TSTableCellRenderPlan<TItem>[];
|
|
6
|
+
}> & (typeof globalThis extends {
|
|
7
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
8
|
+
} ? P : {});
|
|
9
|
+
expose: (exposed: {}) => void;
|
|
10
|
+
attrs: any;
|
|
11
|
+
slots: {
|
|
12
|
+
default?: (scope: {
|
|
13
|
+
descriptor: TSTableCellRenderPlan<TItem>["descriptor"];
|
|
14
|
+
}) => unknown;
|
|
15
|
+
};
|
|
16
|
+
emit: {};
|
|
17
|
+
}>) => import("vue").VNode & {
|
|
18
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
19
|
+
};
|
|
20
|
+
declare const _default: typeof __VLS_export;
|
|
21
|
+
export default _default;
|
|
22
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
23
|
+
[K in keyof T]: T[K];
|
|
24
|
+
} : {
|
|
25
|
+
[K in keyof T as K]: T[K];
|
|
26
|
+
}) & {};
|
|
27
|
+
//# sourceMappingURL=STableSkeletonRow.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STableSkeletonRow.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/parts/STableSkeletonRow.vue"],"names":[],"mappings":"AAmDA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAErE,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WA4FO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB;sBA1FvC,SAAS,qBAAqB,CAAC,KAAK,CAAC,EAAE;uBACtC,SAAS,qBAAqB,CAAC,KAAK,CAAC,EAAE;MAyFkB,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC1I,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;;kBArFC,CAAC,KAAK,EAAE;YAAE,UAAU,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAA;SAAE,KAAK,OAAO;;UAuFnF,EAAE;EAEL,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAI,CAAC;wBACvD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Общие типы payload'ов pragmatic-drag-and-drop; tableId разводит инстансы таблиц. */
|
|
2
|
+
export declare const TABLE_COLUMN_DRAG_TYPE = "s-ui-table-column";
|
|
3
|
+
export declare const TABLE_ROW_DRAG_TYPE = "s-ui-table-row";
|
|
4
|
+
export type TSTableColumnDragData = {
|
|
5
|
+
type: typeof TABLE_COLUMN_DRAG_TYPE;
|
|
6
|
+
tableId: string;
|
|
7
|
+
columnKey: string;
|
|
8
|
+
};
|
|
9
|
+
export type TSTableRowDragData = {
|
|
10
|
+
type: typeof TABLE_ROW_DRAG_TYPE;
|
|
11
|
+
tableId: string;
|
|
12
|
+
rowKey: string;
|
|
13
|
+
rowIndex: number;
|
|
14
|
+
};
|
|
15
|
+
export declare const isTableColumnDragData: (data: Record<string, unknown>, tableId: string) => data is TSTableColumnDragData;
|
|
16
|
+
export declare const isTableRowDragData: (data: Record<string, unknown>, tableId: string) => data is TSTableRowDragData;
|
|
17
|
+
//# sourceMappingURL=tableDndShared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableDndShared.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/utils/tableDndShared.ts"],"names":[],"mappings":"AAAA,uFAAuF;AAEvF,eAAO,MAAM,sBAAsB,sBAAsB,CAAA;AACzD,eAAO,MAAM,mBAAmB,mBAAmB,CAAA;AAEnD,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,OAAO,sBAAsB,CAAA;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,OAAO,mBAAmB,CAAA;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,qBAAqB,GAChC,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,MAAM,KACd,IAAI,IAAI,qBAEV,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,MAAM,KACd,IAAI,IAAI,kBAEV,CAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { type MaybeRefOrGetter, type Ref } from 'vue';
|
|
2
|
+
import { type TListItemKeyResolver } from '../../../composables/useFlatTreeList';
|
|
3
|
+
import { type ISTableDepthFooterConfig, type TSTableFieldResolver, type TSTableFlatRow } from '../STable.types';
|
|
4
|
+
export declare const resolveTableBooleanField: <TItem extends Record<string, unknown>>(item: TItem, resolver: TSTableFieldResolver<TItem, boolean> | undefined) => boolean;
|
|
5
|
+
/** Значение ячейки для фолбэк-рендера: только string/number, прочее — пустая ячейка. */
|
|
6
|
+
export declare const resolveTableCellValue: <TItem extends Record<string, unknown>>(item: TItem, resolver: ((item: TItem) => string | number | undefined) | string | undefined) => string | number | undefined;
|
|
7
|
+
export declare const resolveTableNumberField: <TItem extends Record<string, unknown>>(item: TItem, fieldKey: (keyof TItem & string) | undefined) => number | undefined;
|
|
8
|
+
/**
|
|
9
|
+
* Узел индекса дерева: всё, что нужно по ключу, — в одном объекте и одном Map.
|
|
10
|
+
* На 1,5 млн строк четыре Map'а по ключу стоили секунду маунта; теперь одна вставка
|
|
11
|
+
* на узел, а flatten ходит по узлам, не пересчитывая ключи и детей элементов.
|
|
12
|
+
*/
|
|
13
|
+
export type TSTableTreeNode<TItem extends Record<string, unknown>> = {
|
|
14
|
+
key: string;
|
|
15
|
+
item: TItem;
|
|
16
|
+
parentKey: string | undefined;
|
|
17
|
+
depth: number;
|
|
18
|
+
/** Число всех загруженных потомков узла (без самого узла). */
|
|
19
|
+
subtreeSize: number;
|
|
20
|
+
children: TSTableTreeNode<TItem>[] | undefined;
|
|
21
|
+
/** Кэш плоской строки узла: объект реюзается между flatten'ами (перф-ворота toggle). */
|
|
22
|
+
row: TSTableFlatRow<TItem> | undefined;
|
|
23
|
+
};
|
|
24
|
+
/** Индекс дерева, зависящий только от identity `items` (не от `expanded`). */
|
|
25
|
+
export type TSTableTreeIndex<TItem extends Record<string, unknown>> = {
|
|
26
|
+
nodeByKey: ReadonlyMap<string, TSTableTreeNode<TItem>>;
|
|
27
|
+
/** Корневые узлы в порядке `items`. */
|
|
28
|
+
roots: TSTableTreeNode<TItem>[];
|
|
29
|
+
/** Ключи узлов, которые можно разворачивать. */
|
|
30
|
+
expandableKeys: string[];
|
|
31
|
+
};
|
|
32
|
+
export interface IUseFlatTableRowsOptions<TItem extends Record<string, unknown>> {
|
|
33
|
+
items: MaybeRefOrGetter<readonly TItem[]>;
|
|
34
|
+
itemKey: MaybeRefOrGetter<TListItemKeyResolver<TItem>>;
|
|
35
|
+
childrenKey: MaybeRefOrGetter<keyof TItem & string>;
|
|
36
|
+
groupRow?: MaybeRefOrGetter<TSTableFieldResolver<TItem, boolean> | undefined>;
|
|
37
|
+
expanded: Ref<string[]>;
|
|
38
|
+
depthFooter?: MaybeRefOrGetter<ISTableDepthFooterConfig<TItem> | undefined>;
|
|
39
|
+
hasMoreChildrenKey?: MaybeRefOrGetter<(keyof TItem & string) | undefined>;
|
|
40
|
+
}
|
|
41
|
+
/** Плоский поток строк таблицы + индексы для sticky/навигации/каскада. */
|
|
42
|
+
export type TSTableFlatRowsSnapshot<TItem extends Record<string, unknown>> = {
|
|
43
|
+
flatRows: TSTableFlatRow<TItem>[];
|
|
44
|
+
/** Видимый индекс строки по ключу; undefined — строки нет в текущем потоке. */
|
|
45
|
+
getRowIndexByKey: (rowKey: string) => number | undefined;
|
|
46
|
+
/** Диапазон [индекс строки узла, конец видимого поддерева] включительно. */
|
|
47
|
+
getSubtreeRangeByKey: (rowKey: string) => [number, number] | undefined;
|
|
48
|
+
/** Отсортированные индексы групповых строк. */
|
|
49
|
+
groupRowIndexes: number[];
|
|
50
|
+
/** Индекс строки depth-футера по ключу родителя. */
|
|
51
|
+
depthFooterIndexByParentKey: Map<string, number>;
|
|
52
|
+
};
|
|
53
|
+
export declare const useFlatTableRows: <TItem extends Record<string, unknown>>({ items, itemKey, childrenKey, groupRow, expanded, depthFooter, hasMoreChildrenKey, }: IUseFlatTableRowsOptions<TItem>) => {
|
|
54
|
+
treeIndex: import("vue").ComputedRef<TSTableTreeIndex<TItem>>;
|
|
55
|
+
snapshot: import("vue").ComputedRef<TSTableFlatRowsSnapshot<TItem>>;
|
|
56
|
+
flatRows: import("vue").ComputedRef<TSTableFlatRow<TItem>[]>;
|
|
57
|
+
isExpanded: (rowKey: string) => boolean;
|
|
58
|
+
toggleExpanded: (rowKey: string) => void;
|
|
59
|
+
expandAll: () => void;
|
|
60
|
+
collapseAll: () => void;
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=useFlatTableRows.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFlatTableRows.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/utils/useFlatTableRows.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { type ComputedRef, type MaybeRefOrGetter } from 'vue';
|
|
2
|
+
import { type TSTableCellRenderPlan, type TSTableColumnDescriptor, type TSTableRowCellEntry } from './useTableColumns';
|
|
3
|
+
export interface IUseTableCellPlansOptions<TItem extends Record<string, unknown>> {
|
|
4
|
+
columnDescriptors: ComputedRef<TSTableColumnDescriptor<TItem>[]>;
|
|
5
|
+
/** В дереве шеврон живёт в одной колонке; без дерева его нет вовсе. */
|
|
6
|
+
hasTreeStructure: MaybeRefOrGetter<boolean>;
|
|
7
|
+
expandColumnKey: MaybeRefOrGetter<string | undefined>;
|
|
8
|
+
primaryColumnKey: MaybeRefOrGetter<string | undefined>;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Планы отрисовки ячеек: классы, sticky-офсеты и место шеврона считаются один раз
|
|
12
|
+
* на колонку, а не на каждую строку — при виртуализации это разница между сотней
|
|
13
|
+
* и тысячами вычислений на кадр.
|
|
14
|
+
*
|
|
15
|
+
* Шапка и тело делят одно разбиение на зоны: слева всё, что не прилипает вправо,
|
|
16
|
+
* затем филлер, затем правые sticky-колонки. Филлер — запись без дескриптора/плана,
|
|
17
|
+
* поэтому обе зоны рендерятся одним циклом с одинаковой разметкой.
|
|
18
|
+
*/
|
|
19
|
+
export declare const useTableCellPlans: <TItem extends Record<string, unknown>>({ columnDescriptors, hasTreeStructure, expandColumnKey, primaryColumnKey, }: IUseTableCellPlansOptions<TItem>) => {
|
|
20
|
+
leadingDescriptors: ComputedRef<TSTableColumnDescriptor<TItem>[]>;
|
|
21
|
+
trailingDescriptors: ComputedRef<TSTableColumnDescriptor<TItem>[]>;
|
|
22
|
+
headerCells: ComputedRef<({
|
|
23
|
+
key: string;
|
|
24
|
+
descriptor: TSTableColumnDescriptor<TItem>;
|
|
25
|
+
} | {
|
|
26
|
+
key: string;
|
|
27
|
+
descriptor: undefined;
|
|
28
|
+
})[]>;
|
|
29
|
+
getStickyCellStyle: (descriptor: TSTableColumnDescriptor<TItem>) => {
|
|
30
|
+
left: string;
|
|
31
|
+
right?: undefined;
|
|
32
|
+
} | {
|
|
33
|
+
right: string;
|
|
34
|
+
left?: undefined;
|
|
35
|
+
} | undefined;
|
|
36
|
+
getHeaderCellClasses: (descriptor: TSTableColumnDescriptor<TItem>) => {
|
|
37
|
+
[x: string]: boolean;
|
|
38
|
+
's-ui-table__cell--sticky-left': boolean;
|
|
39
|
+
's-ui-table__cell--sticky-right': boolean;
|
|
40
|
+
's-ui-table__cell--last-sticky-left': boolean;
|
|
41
|
+
's-ui-table__cell--first-sticky-right': boolean;
|
|
42
|
+
's-ui-table__cell--primary': boolean;
|
|
43
|
+
};
|
|
44
|
+
leadingCellPlans: ComputedRef<TSTableCellRenderPlan<TItem>[]>;
|
|
45
|
+
trailingCellPlans: ComputedRef<TSTableCellRenderPlan<TItem>[]>;
|
|
46
|
+
rowCellPlans: ComputedRef<TSTableRowCellEntry<TItem>[]>;
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=useTableCellPlans.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTableCellPlans.d.ts","sourceRoot":"","sources":["../../../../src/components/STable/utils/useTableCellPlans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,KAAK,CAAA;AAIhF,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACzB,MAAM,mBAAmB,CAAA;AAQ1B,MAAM,WAAW,yBAAyB,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC9E,iBAAiB,EAAE,WAAW,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAChE,uEAAuE;IACvE,gBAAgB,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAC3C,eAAe,EAAE,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IACrD,gBAAgB,EAAE,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CACvD;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,6EAKtE,yBAAyB,CAAC,KAAK,CAAC;;;;;;;;;;qCAyBO,uBAAuB,CAAC,KAAK,CAAC;;;;;;;uCAc5B,uBAAuB,CAAC,KAAK,CAAC;;;;;;;;;;;CA2EzE,CAAA"}
|