@keyfunc/keybricks-ds 2.5.0 → 2.6.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/DEPLOY.md +4 -4
- package/INTEGRATION.md +20 -1
- package/_adherence.oxlintrc.json +10 -4
- package/_ds_bundle.js +20559 -0
- package/_src/icon-index.js +1 -0
- package/_src/unicons-index.js +1 -0
- package/_src/usage-code.js +737 -0
- package/changelog.js +12 -0
- package/components/buttons/BUTTON_MIGRATION.md +111 -0
- package/components/buttons/Button.vue +59 -12
- package/components/buttons/Button.vue.d.ts +44 -0
- package/components/charts/BarList.jsx +1 -1
- package/components/charts/BarList.vue +8 -3
- package/components/charts/Ribbon3D.d.ts +2 -0
- package/components/charts/Scatter3D.d.ts +4 -0
- package/components/charts/SunburstChart.jsx +6 -1
- package/components/charts/SunburstChart.vue +7 -1
- package/components/charts/Surface3D.d.ts +2 -0
- package/components/charts/WorldMap.jsx +6 -1
- package/components/charts/WorldMap.vue +7 -1
- package/components/data/Table.jsx +1 -1
- package/components/data/Table.vue +1 -1
- package/components/display/ProgressBar.jsx +1 -1
- package/components/display/ProgressBar.vue +1 -1
- package/components/feedback/Accordion.jsx +1 -1
- package/components/feedback/Accordion.vue +1 -1
- package/components/feedback/ContextMenu.jsx +3 -3
- package/components/feedback/ContextMenu.vue +4 -4
- package/components/feedback/Drawer.jsx +3 -3
- package/components/feedback/Drawer.vue +3 -3
- package/components/feedback/MESSAGE_SERVICES.md +71 -0
- package/components/feedback/Toast.vue +5 -5
- package/components/feedback/_internal/MessageBoxView.vue +237 -0
- package/components/feedback/_internal/MessageView.vue +73 -0
- package/components/feedback/_internal/service-utils.js +46 -0
- package/components/feedback/message-box.d.ts +69 -0
- package/components/feedback/message-box.js +92 -0
- package/components/feedback/message.d.ts +37 -0
- package/components/feedback/message.js +68 -0
- package/components/forms/Checkbox.d.ts +2 -0
- package/components/forms/Checkbox.jsx +9 -4
- package/components/forms/Checkbox.vue +6 -2
- package/components/forms/DatePicker.jsx +3 -1
- package/components/forms/DatePicker.vue +2 -1
- package/components/forms/Dropzone.jsx +1 -1
- package/components/forms/Dropzone.vue +1 -1
- package/components/forms/MultiSelect.jsx +5 -3
- package/components/forms/MultiSelect.vue +4 -3
- package/components/forms/Slider.jsx +1 -1
- package/components/forms/Slider.vue +1 -1
- package/components/forms/Switch.jsx +4 -4
- package/components/forms/Switch.vue +4 -4
- package/components/navigation/Sidebar.jsx +2 -2
- package/components/navigation/Sidebar.vue +2 -2
- package/components/navigation/TopBar.jsx +1 -1
- package/components/navigation/TopBar.vue +1 -1
- package/components/navigation/Tree.jsx +2 -2
- package/components/navigation/Tree.vue +8 -5
- package/components/pipeline/DataPreview.jsx +1 -1
- package/components/pipeline/DataPreview.vue +1 -1
- package/components/pipeline/NodeCard.jsx +1 -1
- package/components/pipeline/NodeCard.vue +1 -1
- package/components/pipeline/PaletteItem.vue +1 -1
- package/components/pipeline/PalettePanel.jsx +3 -3
- package/components/pipeline/PalettePanel.vue +2 -2
- package/components/tabs/SegmentedControl.jsx +2 -2
- package/components/tabs/SegmentedControl.vue +2 -2
- package/index.html +1 -1
- package/package.json +12 -2
- package/tokens/dark.css +1 -1
- package/tokens/interaction.css +4 -0
- package/tokens/layout.css +3 -0
package/DEPLOY.md
CHANGED
|
@@ -55,11 +55,11 @@ deploys the documentation site. Watch it under *Build → Pipelines*.
|
|
|
55
55
|
**5. Cut the first release.**
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
git tag v2.
|
|
58
|
+
git tag v2.6.0 && git push --tags
|
|
59
59
|
```
|
|
60
60
|
|
|
61
61
|
That tag runs `generated:check` → `version:check` → `npm publish`. Confirm under *Deploy →
|
|
62
|
-
Package Registry*: `@keyfunc/keybricks-ds` 2.
|
|
62
|
+
Package Registry*: `@keyfunc/keybricks-ds` 2.6.0.
|
|
63
63
|
|
|
64
64
|
**6. Hand developers two things:** the Pages URL, and the `.npmrc` snippet in §4 below.
|
|
65
65
|
|
|
@@ -187,7 +187,7 @@ GitLab injects `CI_JOB_TOKEN` — use that instead and no secret is stored anywh
|
|
|
187
187
|
**Install — straight from git** (no registry, no publish; works today)
|
|
188
188
|
|
|
189
189
|
```json
|
|
190
|
-
"@keyfunc/keybricks-ds": "git+ssh://git@gitlab.epm2demo.cn/Felix/keybricks-ds.git#v2.
|
|
190
|
+
"@keyfunc/keybricks-ds": "git+ssh://git@gitlab.epm2demo.cn/Felix/keybricks-ds.git#v2.6.0"
|
|
191
191
|
```
|
|
192
192
|
|
|
193
193
|
Because the package has no build step, a git dependency needs no `prepare` script — npm
|
|
@@ -237,7 +237,7 @@ semantic layer. That is what makes dark mode cost nothing.
|
|
|
237
237
|
## Runtime checks
|
|
238
238
|
|
|
239
239
|
`_tests/` holds browser pages that exercise the real components: `react-runtime.html` (the compiled
|
|
240
|
-
bundle), `table-selection.html` (Table loaded from source: checkbox spacing at every width, code chips, two-line rows, sorting), `listrow.html` (ListRow static vs clickable rows, keyboard, alignment — React and Vue), `vue-table-cells.html` (Vue Table #cell-<key> slots and VNode renders), `menu-react.html` / `menu-vue.html` (Menu / ContextMenu coloured icons, item descriptions, side by alignment and flip), `addrow-react.html` / `addrow-vue.html` (the SmartTable add row in both frameworks, from source: colour, weight, hover hooks, keyboard, `stickyAddRow`), `smart-table-density.html` (SmartTable from source: default / compact rows, the Row height menu, controlled density), `relative-time-picker.html` (RelativeTimePicker from source: helpers, tiers, dialog, keyboard), `tree-reorder.html` (Tree from source: insert-between on leaves and folder edges, self/subtree rejection), `vue-runtime.html` (the `.vue` files, loaded with vue3-sfc-loader), `cards-interaction*.html`
|
|
240
|
+
bundle), `table-selection.html` (Table loaded from source: checkbox spacing at every width, code chips, two-line rows, sorting), `keyboard.html` (keyboard reach: Checkbox, MultiSelect, DatePicker, Accordion, Tree checkboxes, Dropzone, NodeCard, PalettePanel, BarList — React and Vue), `listrow.html` (ListRow static vs clickable rows, keyboard, alignment — React and Vue), `vue-table-cells.html` (Vue Table #cell-<key> slots and VNode renders), `menu-react.html` / `menu-vue.html` (Menu / ContextMenu coloured icons, item descriptions, side by alignment and flip), `addrow-react.html` / `addrow-vue.html` (the SmartTable add row in both frameworks, from source: colour, weight, hover hooks, keyboard, `stickyAddRow`), `smart-table-density.html` (SmartTable from source: default / compact rows, the Row height menu, controlled density), `relative-time-picker.html` (RelativeTimePicker from source: helpers, tiers, dialog, keyboard), `tree-reorder.html` (Tree from source: insert-between on leaves and folder edges, self/subtree rejection), `vue-runtime.html` (the `.vue` files, loaded with vue3-sfc-loader), `cards-interaction*.html`
|
|
241
241
|
(clicks through the documentation demos) and `icon-rules.html` (the Keybricks glyphs against the drawing rules). Serve the repo root (`npx serve .`), open a page and read the
|
|
242
242
|
console — every line starts with PASS or FAIL. Run them after changing a component in either framework.
|
|
243
243
|
`measure-cards.html` is a tool, not a test: it measures each documentation page at its card width so the
|
package/INTEGRATION.md
CHANGED
|
@@ -31,7 +31,7 @@ Not using a registry yet? A git dependency works with no publishing at all — t
|
|
|
31
31
|
has no build step, so npm can use the checkout as-is:
|
|
32
32
|
|
|
33
33
|
```json
|
|
34
|
-
"@keyfunc/keybricks-ds": "git+ssh://git@gitlab.epm2demo.cn/Felix/keybricks-ds.git#v2.
|
|
34
|
+
"@keyfunc/keybricks-ds": "git+ssh://git@gitlab.epm2demo.cn/Felix/keybricks-ds.git#v2.6.0"
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
**Source-only package.** `.jsx` and `.vue` files are published as authored, so your
|
|
@@ -522,6 +522,25 @@ Pin a minor range and update deliberately:
|
|
|
522
522
|
- **Tokens outside CSS.** `tokens.json` / `tokens.js` / `tokens.d.ts` gained the tier tokens
|
|
523
523
|
(`--control-*`, `--bar-h`, `--group-gap`, …) — 352 light tokens in all (2.0.2 adds `--danger-soft-hover`).
|
|
524
524
|
|
|
525
|
+
### 2.6.0(未发布)
|
|
526
|
+
|
|
527
|
+
- Vue Button 支持原生点击事件、组件 / VNode 图标、图标及加载插槽、独立尾部图标、后备文本和原生按钮类型;旧 actnplanBtn 的适配方式见 [按钮适配说明](components/buttons/BUTTON_MIGRATION.md)。Vue 专用声明位于 `Button.vue.d.ts`,React 接口保持原样。
|
|
528
|
+
- Vue 新增 `@keyfunc/keybricks-ds/vue/message` 和 `@keyfunc/keybricks-ds/vue/message-box` 命令式服务入口;提供消息堆叠与分组,以及 alert / confirm / prompt、输入校验、关闭拦截、应用上下文和可配置默认文案。
|
|
529
|
+
- 复用现有 DS 控件,补充 Toast 默认内容、图标插槽及可配置关闭按钮标签。
|
|
530
|
+
- 与 Element Plus 的 API 对照、接入示例和兼容边界见 [消息服务迁移说明](components/feedback/MESSAGE_SERVICES.md)。不承诺所有 Element Plus 功能及样式完全兼容。
|
|
531
|
+
- 本次仅修改源码及发布元数据;未执行测试、类型检查、构建、生成脚本或浏览器验证,发布前需同步生成产物中的版本元数据。
|
|
532
|
+
|
|
533
|
+
### 2.5.1
|
|
534
|
+
|
|
535
|
+
Fixes only — no API removed.
|
|
536
|
+
|
|
537
|
+
- **Keyboard:** `Checkbox` (Space; `role="checkbox"`, `aria-checked` incl. "mixed"; new `tabIndex` — pass -1 inside a row that owns focus), `DatePicker` / `MultiSelect` (field is a combobox: Enter / Space / ArrowDown open, Escape closes; options toggle with Enter / Space), `Accordion`, `Dropzone`, `NodeCard`, `PalettePanel`, `BarList` rows with `onSelect`. `SunburstChart` and `WorldMap` are one Tab stop: arrow keys walk segments / regions, Enter acts, Escape clears.
|
|
538
|
+
- **Vue parity:** `Tree` emits `context-menu(key, event)`; `BarList` emits `select(row)`.
|
|
539
|
+
- **Long text:** field boxes (Select, Combobox, DatePicker, MultiSelect) keep one line and truncate; menus cap at 320px and truncate items; `SegmentedControl` truncates a squeezed segment; `Tree`, Sidebar brand and TopBar user name truncate; `Drawer` titles wrap.
|
|
540
|
+
- **Tokens:** motion uses `--dur-*` / `--ease-out` everywhere; new shadows `--shadow-raised`, `--shadow-thumb`, `--shadow-drawer` (deeper in dark mode).
|
|
541
|
+
- Docs: `Ribbon3D`, `Scatter3D`, `Surface3D` props completed.
|
|
542
|
+
- **The documentation pages now open from the package.** `_ds_bundle.js` (the compiled copy the pages run on) and `_src/` (the Show code generator, icon search indexes) ship too, so `node_modules/@keyfunc/keybricks-ds/index.html` works offline. Apps still import from `@keyfunc/keybricks-ds` / `/vue` — nothing imports the bundle.
|
|
543
|
+
|
|
525
544
|
### 2.5.0
|
|
526
545
|
|
|
527
546
|
- **Show code under every example.** Each example on the documentation site has a Show code bar with the React and Vue 3 code that builds it — imports from `@keyfunc/keybricks-ds` / `@keyfunc/keybricks-ds/vue`, ready to paste. The label follows the site language. The site no longer shows components' own source (it ships in the package).
|
package/_adherence.oxlintrc.json
CHANGED
|
@@ -153,8 +153,8 @@
|
|
|
153
153
|
"message": "<LegendItem> doesn't accept that prop. Declared props: label, color."
|
|
154
154
|
},
|
|
155
155
|
{
|
|
156
|
-
"selector": "JSXOpeningElement[name.name='Checkbox'] > JSXAttribute > JSXIdentifier[name!=/^(?:checked|indeterminate|onChange|label|size|disabled|style|key|ref|className|style|children)$/]",
|
|
157
|
-
"message": "<Checkbox> doesn't accept that prop. Declared props: checked, indeterminate, onChange, label, size, disabled, style."
|
|
156
|
+
"selector": "JSXOpeningElement[name.name='Checkbox'] > JSXAttribute > JSXIdentifier[name!=/^(?:checked|indeterminate|onChange|label|size|disabled|tabIndex|style|key|ref|className|style|children)$/]",
|
|
157
|
+
"message": "<Checkbox> doesn't accept that prop. Declared props: checked, indeterminate, onChange, label, size, disabled, tabIndex, style."
|
|
158
158
|
},
|
|
159
159
|
{
|
|
160
160
|
"selector": "JSXOpeningElement[name.name='Checkbox'] > JSXAttribute[name.name='size'] > Literal[value!=/^(?:sm|md|lg)$/]",
|
|
@@ -521,8 +521,8 @@
|
|
|
521
521
|
"message": "<SunburstNode> doesn't accept that prop. Declared props: label, value, children."
|
|
522
522
|
},
|
|
523
523
|
{
|
|
524
|
-
"selector": "JSXOpeningElement[name.name='Surface3D'] > JSXAttribute > JSXIdentifier[name!=/^(?:values|width|height|yaw|pitch|zScale|wire|interactive|valueFormat|style|key|ref|className|style|children)$/]",
|
|
525
|
-
"message": "<Surface3D> doesn't accept that prop. Declared props: values, width, height, yaw, pitch, zScale, wire, interactive, valueFormat, style."
|
|
524
|
+
"selector": "JSXOpeningElement[name.name='Surface3D'] > JSXAttribute > JSXIdentifier[name!=/^(?:values|width|height|yaw|pitch|zScale|wire|interactive|valueFormat|xLabel|yLabel|style|key|ref|className|style|children)$/]",
|
|
525
|
+
"message": "<Surface3D> doesn't accept that prop. Declared props: values, width, height, yaw, pitch, zScale, wire, interactive, valueFormat, xLabel, yLabel, style."
|
|
526
526
|
},
|
|
527
527
|
{
|
|
528
528
|
"selector": "JSXOpeningElement[name.name='Switch'] > JSXAttribute > JSXIdentifier[name!=/^(?:checked|onChange|disabled|size|tone|onColor|offColor|knobIcon|knobText|insideOn|insideOff|inlinePrompt|label|labelOn|labelOff|loading|beforeChange|style|key|ref|className|style|children)$/]",
|
|
@@ -1172,10 +1172,13 @@
|
|
|
1172
1172
|
"--series-7",
|
|
1173
1173
|
"--series-8",
|
|
1174
1174
|
"--series-9",
|
|
1175
|
+
"--shadow-drawer",
|
|
1175
1176
|
"--shadow-menu",
|
|
1176
1177
|
"--shadow-modal",
|
|
1177
1178
|
"--shadow-node",
|
|
1179
|
+
"--shadow-raised",
|
|
1178
1180
|
"--shadow-selected",
|
|
1181
|
+
"--shadow-thumb",
|
|
1179
1182
|
"--sidebar-w",
|
|
1180
1183
|
"--skeleton",
|
|
1181
1184
|
"--soft-active",
|
|
@@ -1543,6 +1546,9 @@
|
|
|
1543
1546
|
"--shadow-selected": "shadow",
|
|
1544
1547
|
"--shadow-menu": "shadow",
|
|
1545
1548
|
"--shadow-modal": "shadow",
|
|
1549
|
+
"--shadow-raised": "shadow",
|
|
1550
|
+
"--shadow-thumb": "shadow",
|
|
1551
|
+
"--shadow-drawer": "shadow",
|
|
1546
1552
|
"--ring-surface": "color",
|
|
1547
1553
|
"--ring-focus": "color",
|
|
1548
1554
|
"--sidebar-w": "spacing",
|