dsh-plugin-core 0.13.0 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/explorer/FileBrowser.d.ts +5 -0
  2. package/dist/explorer/FileBrowser.d.ts.map +1 -1
  3. package/dist/explorer/FileBrowser.js +103 -31
  4. package/dist/explorer/FileBrowser.js.map +1 -1
  5. package/dist/explorer/open.d.ts.map +1 -1
  6. package/dist/explorer/open.js +20 -7
  7. package/dist/explorer/open.js.map +1 -1
  8. package/dist/explorer/preview/BytesPreview.d.ts.map +1 -1
  9. package/dist/explorer/preview/BytesPreview.js +11 -8
  10. package/dist/explorer/preview/BytesPreview.js.map +1 -1
  11. package/dist/explorer/preview/HtmlPreview.d.ts.map +1 -1
  12. package/dist/explorer/preview/HtmlPreview.js +9 -8
  13. package/dist/explorer/preview/HtmlPreview.js.map +1 -1
  14. package/dist/explorer/preview/OfficePreview.d.ts.map +1 -1
  15. package/dist/explorer/preview/OfficePreview.js +10 -8
  16. package/dist/explorer/preview/OfficePreview.js.map +1 -1
  17. package/dist/explorer/preview/TextPreview.d.ts.map +1 -1
  18. package/dist/explorer/preview/TextPreview.js +16 -3
  19. package/dist/explorer/preview/TextPreview.js.map +1 -1
  20. package/dist/explorer/types.d.ts +19 -2
  21. package/dist/explorer/types.d.ts.map +1 -1
  22. package/dist/explorer/types.js +37 -6
  23. package/dist/explorer/types.js.map +1 -1
  24. package/dist/ui/Table.d.ts.map +1 -1
  25. package/dist/ui/Table.js +7 -3
  26. package/dist/ui/Table.js.map +1 -1
  27. package/dist/ui/table-shared.d.ts +2 -1
  28. package/dist/ui/table-shared.d.ts.map +1 -1
  29. package/dist/ui/table-shared.js +22 -15
  30. package/dist/ui/table-shared.js.map +1 -1
  31. package/docs/help/ui.doc.ts +3 -3
  32. package/docs/help/ui.md +3 -3
  33. package/docs/requirements.md +2 -0
  34. package/package.json +1 -1
@@ -184,23 +184,30 @@ export function tableShell(skinClass, props, options = {}) {
184
184
  ]
185
185
  .filter((s) => s !== '')
186
186
  .join(' ');
187
+ // 分组模式下底部状态行 / 哨兵单独占一个 tbody,排在最后一组之后(不影响各组的表头归属)。
188
+ const groupFoot = footerRows.length > 0 || sentinelRow !== null
189
+ ? h('tbody', { key: 'group-foot', className: 'dshpc-table__body' }, ...footerRows, sentinelRow)
190
+ : null;
187
191
  const groups = props.groups ?? [];
188
192
  const body = groups.length > 0
189
- ? groups.map((group, groupIndex) => h('tbody', { key: group.key, className: 'dshpc-table__body dshpc-table__group-body' },
190
- // 通栏标题行:横跨所有列,充当这一组的「大标题」。
191
- h('tr', { className: 'dshpc-table__group-row' }, h('th', {
192
- className: 'dshpc-table__group-cell',
193
- scope: 'colgroup',
194
- colSpan: leaves.length > 0 ? leaves.length : undefined,
195
- },
196
- // 标题的固定标签(短竖线)与排版归 SectionHead —— Table 只负责把标题装进通栏。
197
- h(SectionHead, {
198
- title: group.title,
199
- accent: props.groupAccent ?? 'default',
200
- flush: true,
201
- }))),
202
- // 每组自带表头:分组模式不放在 <thead>(一个 table 只能有一个 thead)
203
- ...headRows.map((cells, level) => headRowOf(cells, `g${groupIndex}-${level}`)), ...dataRowsOf(group.rows, 0)))
193
+ ? [
194
+ ...groups.map((group, groupIndex) => h('tbody', { key: group.key, className: 'dshpc-table__body dshpc-table__group-body' },
195
+ // 通栏标题行:横跨所有列,充当这一组的「大标题」。
196
+ h('tr', { className: 'dshpc-table__group-row' }, h('th', {
197
+ className: 'dshpc-table__group-cell',
198
+ scope: 'colgroup',
199
+ colSpan: leaves.length > 0 ? leaves.length : undefined,
200
+ },
201
+ // 标题的固定标签(短竖线)与排版归 SectionHead —— Table 只负责把标题装进通栏。
202
+ h(SectionHead, {
203
+ title: group.title,
204
+ accent: props.groupAccent ?? 'default',
205
+ flush: true,
206
+ }))),
207
+ // 每组自带表头:分组模式不放在 <thead>(一个 table 只能有一个 thead)
208
+ ...headRows.map((cells, level) => headRowOf(cells, `g${groupIndex}-${level}`)), ...dataRowsOf(group.rows, 0))),
209
+ ...(groupFoot === null ? [] : [groupFoot]),
210
+ ]
204
211
  : [
205
212
  h('tbody', { key: 'body', className: 'dshpc-table__body' }, props.loading === true && (props.rows?.length ?? 0) === 0
206
213
  ? loadingRow
@@ -1 +1 @@
1
- {"version":3,"file":"table-shared.js","sourceRoot":"","sources":["../../src/ui/table-shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-shared.js","sourceRoot":"","sources":["../../src/ui/table-shared.ts"],"names":[],"mappings":"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"}
@@ -499,8 +499,8 @@ const doc: DocTopic = {
499
499
  en: 'Skins are separate components and separate files — no variant: Table imports only its own skin CSS; future TableGrid (grid lines) / TableZebra (zebra stripes) are sibling components importing their own skins. Importing one packs only that one — choosing a table never drags the other skin into the bundle.',
500
500
  },
501
501
  {
502
- zh: '边界:不负责取数 / 排序 / 虚拟滚动;横向滚动容器与圆角裁剪归调用方;表头不做吸顶(分组表头是多行,统一 top:0 会在滚动时互相盖住)。分页可选:给 `pagination` 就让表格自己切片并在表下摆页码(详见 Pagination 一节),不给就完全不分页。没有数据时显示内置空态(emptyText 可覆盖)。加载态两种,都只放图标、不显示文案:首屏一条数据都没有时用 `loading`(居中三块加载动画、最大号,较高占位,不遮挡已有数据),已有数据翻下一页时用 `loadingMore`(底部一行、中号三块动画;整行通栏,与上方数据行之间补一条实线,左右两条在 borders=all / x 时由表级外框兜住、y / none 本来就没有,且 y / none 时状态行下方那条表底线也一起去掉,只留上方一条实线);滚动加载由 `onLoadMore` 本身当开关 —— 传了就监听底部、滚到附近自动调一次,到底(`hasMore: false`)显示「没有更多数据」(`noMoreText` 换文案 / `false` 不渲染)。滚动加载与 `pagination` / `groups` 互斥。',
503
- en: 'Boundaries: no fetching / sorting / virtual scrolling; the horizontal scroll container and rounded clipping are the caller’s; headers do not stick (the grouped header spans multiple rows, and a single top:0 would overlap itself while scrolling). Paging is optional: pass `pagination` and the table slices rows itself and renders the pager underneath (see the Pagination section); omit it and nothing pages. With no rows, a built-in empty state shows (override with emptyText). Two loading states, icon only with no visible copy: `loading` for a first load with no rows at all (centred three-block loader at the largest size, a taller placeholder that never covers existing rows), and `loadingMore` when appending the next page (one full-width bottom row with the middle-size three-block loader; a solid rule is added above it, while the left/right edges come from the table frame when borders=all / x and are absent for y / none — and for y / none the bottom table rule under the status row is dropped too, so only the rule above it remains). Scroll loading uses `onLoadMore` itself as the switch: pass it and the table watches the bottom and calls it once when you get near; at the end (`hasMore: false`) it shows “No more data” (`noMoreText` to change the copy / `false` to render nothing). Scroll loading is mutually exclusive with `pagination` / `groups`.',
502
+ zh: '边界:不负责取数 / 排序 / 虚拟滚动;横向滚动容器与圆角裁剪归调用方;表头不做吸顶(分组表头是多行,统一 top:0 会在滚动时互相盖住)。分页可选:给 `pagination` 就让表格自己切片并在表下摆页码(详见 Pagination 一节),不给就完全不分页。没有数据时显示内置空态(emptyText 可覆盖)。加载态两种,都只放图标、不显示文案:首屏一条数据都没有时用 `loading`(居中三块加载动画、最大号,较高占位,不遮挡已有数据),已有数据翻下一页时用 `loadingMore`(底部一行、中号三块动画;整行通栏,与上方数据行之间补一条实线,左右两条在 borders=all / x 时由表级外框兜住、y / none 本来就没有,且 y / none 时状态行下方那条表底线也一起去掉,只留上方一条实线);滚动加载由 `onLoadMore` 本身当开关 —— 传了就监听底部、滚到附近自动调一次,到底(`hasMore: false`)显示「没有更多数据」(`noMoreText` 换文案 / `false` 不渲染)。滚动加载与 `pagination` 互斥;`groups` 模式可用,底部状态行与哨兵排在最后一组之后。',
503
+ en: 'Boundaries: no fetching / sorting / virtual scrolling; the horizontal scroll container and rounded clipping are the caller’s; headers do not stick (the grouped header spans multiple rows, and a single top:0 would overlap itself while scrolling). Paging is optional: pass `pagination` and the table slices rows itself and renders the pager underneath (see the Pagination section); omit it and nothing pages. With no rows, a built-in empty state shows (override with emptyText). Two loading states, icon only with no visible copy: `loading` for a first load with no rows at all (centred three-block loader at the largest size, a taller placeholder that never covers existing rows), and `loadingMore` when appending the next page (one full-width bottom row with the middle-size three-block loader; a solid rule is added above it, while the left/right edges come from the table frame when borders=all / x and are absent for y / none — and for y / none the bottom table rule under the status row is dropped too, so only the rule above it remains). Scroll loading uses `onLoadMore` itself as the switch: pass it and the table watches the bottom and calls it once when you get near; at the end (`hasMore: false`) it shows “No more data” (`noMoreText` to change the copy / `false` to render nothing). Scroll loading is mutually exclusive with `pagination`; it works in `groups` mode, with the status row and sentinel placed after the last group.',
504
504
  },
505
505
  ],
506
506
  api: [
@@ -523,7 +523,7 @@ const doc: DocTopic = {
523
523
  { name: 'loadingMore', type: 'boolean', def: 'false', desc: { zh: '底部「加载更多」中(已有数据、正在取下一页):数据行下方插一行中号三块加载动画(只有图标没有文案),整行通栏并在上方补一条实线;只在给了 onLoadMore 时生效', en: 'Bottom “loading more” (rows exist, fetching the next page): inserts one full-width row with the middle-size three-block loader (icon only) and a solid rule above it; only effective when onLoadMore is given' } },
524
524
  { name: 'hasMore', type: 'boolean', def: 'true', desc: { zh: '是否还有下一页;false 时底部显示「没有更多数据」(noMoreText 可换,false 整行不渲染)。只在给了 onLoadMore 时生效', en: 'Whether another page exists; false shows “No more data” (change with noMoreText, false renders nothing). Only effective when onLoadMore is given' } },
525
525
  { name: 'noMoreText', type: 'ReactNode', def: '内置字典', desc: { zh: '到底文案;不传走核心字典,传 false 则到底时整行不渲染', en: 'End-of-list copy; defaults to the core dictionary, false renders nothing at the end' } },
526
- { name: 'onLoadMore', type: '() => void', def: '—', desc: { zh: '滚动到底自动加载下一页:这个 props 本身就是开关 —— 传了就装底部哨兵并监听,不传完全不监听;加载中 / 到底不重复触发。与 pagination / groups 互斥', en: 'Auto-load the next page when scrolled near the bottom: this prop is the switch — pass it to install the sentinel and watch, omit it and nothing listens; guarded while loading or at the end. Mutually exclusive with pagination / groups' } },
526
+ { name: 'onLoadMore', type: '() => void', def: '—', desc: { zh: '滚动到底自动加载下一页:这个 props 本身就是开关 —— 传了就装底部哨兵并监听,不传完全不监听;加载中 / 到底不重复触发。与 pagination 互斥;groups 模式可用(状态行排在最后一组之后)', en: 'Auto-load the next page when scrolled near the bottom: this prop is the switch — pass it to install the sentinel and watch, omit it and nothing listens; guarded while loading or at the end. Mutually exclusive with pagination; works in groups mode (status row after the last group)' } },
527
527
  { name: 'ariaLabel', type: 'string', def: '—', desc: { zh: '表格无障碍名(没有可见标题时请务必给)', en: 'Accessible name for the table (give it when there is no visible caption)' } },
528
528
  { name: 'translate', type: 'Translate', def: '—', desc: { zh: '覆盖内置文案翻译(插件自带 i18n 时用)', en: 'Override built-in copy translation (for plugins with their own i18n)' } },
529
529
  { name: 'className / style', type: 'string / CSSProperties', def: '—', desc: { zh: '只允许补布局,不许覆盖皮肤', en: 'Layout only; never override the skin' } },
package/docs/help/ui.md CHANGED
@@ -324,9 +324,9 @@ h(StripCard, {
324
324
 
325
325
  > EN: Skins are separate components and separate files — no variant: Table imports only its own skin CSS; future TableGrid (grid lines) / TableZebra (zebra stripes) are sibling components importing their own skins. Importing one packs only that one — choosing a table never drags the other skin into the bundle.
326
326
 
327
- 边界:不负责取数 / 排序 / 虚拟滚动;横向滚动容器与圆角裁剪归调用方;表头不做吸顶(分组表头是多行,统一 top:0 会在滚动时互相盖住)。分页可选:给 `pagination` 就让表格自己切片并在表下摆页码(详见 Pagination 一节),不给就完全不分页。没有数据时显示内置空态(emptyText 可覆盖)。加载态两种,都只放图标、不显示文案:首屏一条数据都没有时用 `loading`(居中三块加载动画、最大号,较高占位,不遮挡已有数据),已有数据翻下一页时用 `loadingMore`(底部一行、中号三块动画;整行通栏,与上方数据行之间补一条实线,左右两条在 borders=all / x 时由表级外框兜住、y / none 本来就没有,且 y / none 时状态行下方那条表底线也一起去掉,只留上方一条实线);滚动加载由 `onLoadMore` 本身当开关 —— 传了就监听底部、滚到附近自动调一次,到底(`hasMore: false`)显示「没有更多数据」(`noMoreText` 换文案 / `false` 不渲染)。滚动加载与 `pagination` / `groups` 互斥。
327
+ 边界:不负责取数 / 排序 / 虚拟滚动;横向滚动容器与圆角裁剪归调用方;表头不做吸顶(分组表头是多行,统一 top:0 会在滚动时互相盖住)。分页可选:给 `pagination` 就让表格自己切片并在表下摆页码(详见 Pagination 一节),不给就完全不分页。没有数据时显示内置空态(emptyText 可覆盖)。加载态两种,都只放图标、不显示文案:首屏一条数据都没有时用 `loading`(居中三块加载动画、最大号,较高占位,不遮挡已有数据),已有数据翻下一页时用 `loadingMore`(底部一行、中号三块动画;整行通栏,与上方数据行之间补一条实线,左右两条在 borders=all / x 时由表级外框兜住、y / none 本来就没有,且 y / none 时状态行下方那条表底线也一起去掉,只留上方一条实线);滚动加载由 `onLoadMore` 本身当开关 —— 传了就监听底部、滚到附近自动调一次,到底(`hasMore: false`)显示「没有更多数据」(`noMoreText` 换文案 / `false` 不渲染)。滚动加载与 `pagination` 互斥;`groups` 模式可用,底部状态行与哨兵排在最后一组之后。
328
328
 
329
- > EN: Boundaries: no fetching / sorting / virtual scrolling; the horizontal scroll container and rounded clipping are the caller’s; headers do not stick (the grouped header spans multiple rows, and a single top:0 would overlap itself while scrolling). Paging is optional: pass `pagination` and the table slices rows itself and renders the pager underneath (see the Pagination section); omit it and nothing pages. With no rows, a built-in empty state shows (override with emptyText). Two loading states, icon only with no visible copy: `loading` for a first load with no rows at all (centred three-block loader at the largest size, a taller placeholder that never covers existing rows), and `loadingMore` when appending the next page (one full-width bottom row with the middle-size three-block loader; a solid rule is added above it, while the left/right edges come from the table frame when borders=all / x and are absent for y / none — and for y / none the bottom table rule under the status row is dropped too, so only the rule above it remains). Scroll loading uses `onLoadMore` itself as the switch: pass it and the table watches the bottom and calls it once when you get near; at the end (`hasMore: false`) it shows “No more data” (`noMoreText` to change the copy / `false` to render nothing). Scroll loading is mutually exclusive with `pagination` / `groups`.
329
+ > EN: Boundaries: no fetching / sorting / virtual scrolling; the horizontal scroll container and rounded clipping are the caller’s; headers do not stick (the grouped header spans multiple rows, and a single top:0 would overlap itself while scrolling). Paging is optional: pass `pagination` and the table slices rows itself and renders the pager underneath (see the Pagination section); omit it and nothing pages. With no rows, a built-in empty state shows (override with emptyText). Two loading states, icon only with no visible copy: `loading` for a first load with no rows at all (centred three-block loader at the largest size, a taller placeholder that never covers existing rows), and `loadingMore` when appending the next page (one full-width bottom row with the middle-size three-block loader; a solid rule is added above it, while the left/right edges come from the table frame when borders=all / x and are absent for y / none — and for y / none the bottom table rule under the status row is dropped too, so only the rule above it remains). Scroll loading uses `onLoadMore` itself as the switch: pass it and the table watches the bottom and calls it once when you get near; at the end (`hasMore: false`) it shows “No more data” (`noMoreText` to change the copy / `false` to render nothing). Scroll loading is mutually exclusive with `pagination`; it works in `groups` mode, with the status row and sentinel placed after the last group.
330
330
 
331
331
  | 参数 | 类型 | 必填 | 默认 | 说明(zh) | 说明(en) |
332
332
  |---|---|---|---|---|---|
@@ -346,7 +346,7 @@ h(StripCard, {
346
346
  | `loadingMore` | `boolean` | — | false | 底部「加载更多」中(已有数据、正在取下一页):数据行下方插一行中号三块加载动画(只有图标没有文案),整行通栏并在上方补一条实线;只在给了 onLoadMore 时生效 | Bottom “loading more” (rows exist, fetching the next page): inserts one full-width row with the middle-size three-block loader (icon only) and a solid rule above it; only effective when onLoadMore is given |
347
347
  | `hasMore` | `boolean` | — | true | 是否还有下一页;false 时底部显示「没有更多数据」(noMoreText 可换,false 整行不渲染)。只在给了 onLoadMore 时生效 | Whether another page exists; false shows “No more data” (change with noMoreText, false renders nothing). Only effective when onLoadMore is given |
348
348
  | `noMoreText` | `ReactNode` | — | 内置字典 | 到底文案;不传走核心字典,传 false 则到底时整行不渲染 | End-of-list copy; defaults to the core dictionary, false renders nothing at the end |
349
- | `onLoadMore` | `() => void` | — | — | 滚动到底自动加载下一页:这个 props 本身就是开关 —— 传了就装底部哨兵并监听,不传完全不监听;加载中 / 到底不重复触发。与 pagination / groups 互斥 | Auto-load the next page when scrolled near the bottom: this prop is the switch — pass it to install the sentinel and watch, omit it and nothing listens; guarded while loading or at the end. Mutually exclusive with pagination / groups |
349
+ | `onLoadMore` | `() => void` | — | — | 滚动到底自动加载下一页:这个 props 本身就是开关 —— 传了就装底部哨兵并监听,不传完全不监听;加载中 / 到底不重复触发。与 pagination 互斥;groups 模式可用(状态行排在最后一组之后) | Auto-load the next page when scrolled near the bottom: this prop is the switch — pass it to install the sentinel and watch, omit it and nothing listens; guarded while loading or at the end. Mutually exclusive with pagination; works in groups mode (status row after the last group) |
350
350
  | `ariaLabel` | `string` | — | — | 表格无障碍名(没有可见标题时请务必给) | Accessible name for the table (give it when there is no visible caption) |
351
351
  | `translate` | `Translate` | — | — | 覆盖内置文案翻译(插件自带 i18n 时用) | Override built-in copy translation (for plugins with their own i18n) |
352
352
  | `className / style` | `string / CSSProperties` | — | — | 只允许补布局,不许覆盖皮肤 | Layout only; never override the skin |
@@ -76,6 +76,8 @@ dsh-plugin-core/
76
76
  多组垂直连续排布、组间一条实线;通栏与组表头之间也有一条线(2026-10-30 用户要求「那之间也要有 border」)。
77
77
  用于「一个表格展示多个工作区 / 多个板块」。
78
78
  分组模式不渲染 `<thead>`(一个 table 只有一个),表头在每组自己的 `<tbody>` 里;
79
+ `groups` 可与滚动加载并用(2026-10-31 用户需要):底部状态行与哨兵单独一个 `<tbody>`,排在最后一组之后;
80
+ 分页仍与 `groups` 互斥(页码归属说不清);
79
81
  - 行态优先级(2026-10-30 真机事故钉死):斑马纹选择器只能到 3 个类级别,
80
82
  皮肤的 hover / 选中必须 4 级 —— 否则基础层后注入时偶数行永远被斑马纹盖住。
81
83
  hover 走 `--dshpc-table-row-hover`(中性灰),选中走 `business-soft` + 左侧 3px `business` 条,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-plugin-core",
3
- "version": "0.13.0",
3
+ "version": "0.14.1",
4
4
  "packageManager": "pnpm@12.3.4",
5
5
  "description": "Shared base for DSH plugins: design tokens, UI controls, utils, workspace explorer, session preview",
6
6
  "keywords": [