@moubing/bing-ui 0.5.2 → 0.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.
Files changed (69) hide show
  1. package/README.md +131 -52
  2. package/dist/bing-ui.css +1 -1
  3. package/dist/bing-ui.es.js +12933 -10167
  4. package/dist/bing-ui.umd.js +47 -42
  5. package/dist/components/BingAppSwitcherTransition/BingAppSwitcherTransition.vue.d.ts +2 -2
  6. package/dist/components/BingButton/BingButton.types.d.ts +1 -0
  7. package/dist/components/BingButton/BingButton.vue.d.ts +2 -2
  8. package/dist/components/BingCarouselTransition/BingCarouselTransition.vue.d.ts +2 -2
  9. package/dist/components/BingCheckbox/BingCheckbox.vue.d.ts +7 -7
  10. package/dist/components/BingCheckboxGroup/BingCheckboxGroup.vue.d.ts +6 -6
  11. package/dist/components/BingColorPicker/BingColorPicker.vue.d.ts +4 -4
  12. package/dist/components/BingCursor/BingCursor.controller.d.ts +13 -0
  13. package/dist/components/BingCursor/BingCursor.morph.d.ts +9 -0
  14. package/dist/components/BingCursor/BingCursor.presets.d.ts +5 -0
  15. package/dist/components/BingCursor/BingCursor.shapes.d.ts +11 -0
  16. package/dist/components/BingCursor/BingCursor.styleSource.d.ts +5 -0
  17. package/dist/components/BingCursor/BingCursor.types.d.ts +39 -0
  18. package/dist/components/BingCursor/BingCursor.vue.d.ts +26 -0
  19. package/dist/components/BingCursor/BingCursorMorph.vue.d.ts +11 -0
  20. package/dist/components/BingCursor/BingCursorTransition.vue.d.ts +28 -0
  21. package/dist/components/BingCursor/index.d.ts +2 -0
  22. package/dist/components/BingDatePicker/BingDatePicker.types.d.ts +1 -0
  23. package/dist/components/BingDatePicker/BingDatePicker.vue.d.ts +4 -4
  24. package/dist/components/BingDeckTransition/BingDeckTransition.vue.d.ts +2 -2
  25. package/dist/components/BingDialog/BingDialog.vue.d.ts +3 -3
  26. package/dist/components/BingDropDown/BingDropDown.context.d.ts +1 -0
  27. package/dist/components/BingDropDown/BingDropDown.vue.d.ts +2 -2
  28. package/dist/components/BingDropDown/BingDropDownItem.vue.d.ts +1 -1
  29. package/dist/components/BingFilePreview/BingFilePreview.vue.d.ts +6 -6
  30. package/dist/components/BingForm/BingForm.context.d.ts +19 -2
  31. package/dist/components/BingForm/BingForm.types.d.ts +6 -1
  32. package/dist/components/BingForm/BingForm.vue.d.ts +4 -2
  33. package/dist/components/BingForm/formFocus.d.ts +3 -0
  34. package/dist/components/BingForm/formTabOrder.d.ts +2 -0
  35. package/dist/components/BingForm/useFormControl.d.ts +21 -0
  36. package/dist/components/BingForm/useFormNextHint.d.ts +16 -0
  37. package/dist/components/BingFormItem/BingFormItem.vue.d.ts +1 -1
  38. package/dist/components/BingImagePreview/BingImagePreview.vue.d.ts +3 -3
  39. package/dist/components/BingInput/BingInput.types.d.ts +11 -3
  40. package/dist/components/BingInput/BingInput.vue.d.ts +9 -7
  41. package/dist/components/BingInput/useInputCaret.d.ts +3 -0
  42. package/dist/components/BingRadio/BingRadio.vue.d.ts +7 -7
  43. package/dist/components/BingRadioGroup/BingRadioGroup.vue.d.ts +6 -6
  44. package/dist/components/BingResizable/BingResizable.vue.d.ts +1 -1
  45. package/dist/components/BingScrollbar/BingScrollbar.types.d.ts +17 -0
  46. package/dist/components/BingScrollbar/BingScrollbar.vue.d.ts +6 -9
  47. package/dist/components/BingScrollbar/index.d.ts +1 -1
  48. package/dist/components/BingSelect/BingSelect.vue.d.ts +8 -8
  49. package/dist/components/BingSortableList/BingSortableList.types.d.ts +2 -0
  50. package/dist/components/BingSortableList/BingSortableList.vue.d.ts +1 -0
  51. package/dist/components/BingTable/BingTable.vue.d.ts +10 -10
  52. package/dist/components/BingTable/BingTableCellValue.vue.d.ts +20 -0
  53. package/dist/components/BingTable/BingTableHeaderContent.vue.d.ts +39 -0
  54. package/dist/components/BingTabs/BingTabs.vue.d.ts +6 -6
  55. package/dist/components/BingTextarea/BingTextarea.types.d.ts +1 -0
  56. package/dist/components/BingTextarea/BingTextarea.vue.d.ts +7 -6
  57. package/dist/components/BingTooltip/BingTooltip.shared.d.ts +1 -0
  58. package/dist/components/BingTooltip/BingTooltip.vue.d.ts +4 -4
  59. package/dist/components/BingTreeSelect/BingTreeSelect.vue.d.ts +8 -8
  60. package/dist/components/index.d.ts +1 -0
  61. package/dist/motion/clickParticles.d.ts +4 -0
  62. package/dist/motion/liquidHover.d.ts +4 -0
  63. package/dist/motion/panelMotion.d.ts +14 -0
  64. package/dist/motion/selectPanelMotion.d.ts +16 -0
  65. package/dist/motion/useClickFeedback.d.ts +6 -0
  66. package/dist/utils/controlAttrs.d.ts +8 -0
  67. package/dist/utils/overlay.d.ts +28 -0
  68. package/dist/utils/scrollLock.d.ts +5 -0
  69. package/package.json +15 -16
@@ -0,0 +1,4 @@
1
+ export declare function enterLiquidHover(liquid: HTMLElement): gsap.core.Tween;
2
+ export declare function leaveLiquidHover(liquid: HTMLElement): gsap.core.Tween;
3
+ export declare function resetLiquidHover(liquid: HTMLElement): void;
4
+ export declare function setLiquidHoverOrigin(surface: HTMLElement, liquid: HTMLElement, event: MouseEvent | PointerEvent): void;
@@ -0,0 +1,14 @@
1
+ export declare const panelEnterMotion: {
2
+ readonly duration: 0.18;
3
+ readonly ease: "power3.out";
4
+ };
5
+ export declare const panelLeaveMotion: {
6
+ readonly duration: 0.16;
7
+ readonly ease: "power2.in";
8
+ };
9
+ export declare function getPanelHiddenTransform(placement: 'top' | 'bottom' | 'left' | 'right'): {
10
+ x: number;
11
+ y: number;
12
+ scale: number;
13
+ transformOrigin: string;
14
+ };
@@ -0,0 +1,16 @@
1
+ type PanelPlacement = 'top' | 'bottom' | 'left' | 'right';
2
+ type PanelAlign = 'start' | 'middle' | 'end';
3
+ interface SelectPanelMotionOptions {
4
+ panel: HTMLElement;
5
+ items: HTMLElement[];
6
+ actionRail: HTMLElement | null;
7
+ actionButtons: HTMLElement[];
8
+ placement: PanelPlacement;
9
+ align: PanelAlign;
10
+ /** 密集的文字面板可关闭缩放,仅使用平移和淡入淡出。 */
11
+ scale?: boolean;
12
+ onComplete: () => void;
13
+ }
14
+ export declare function createSelectPanelEnter({ panel, items, actionRail, actionButtons, placement, align, scale, onComplete, }: SelectPanelMotionOptions): gsap.core.Timeline;
15
+ export declare function createSelectPanelLeave({ panel, items, actionRail, actionButtons, placement, scale, onComplete, }: SelectPanelMotionOptions): gsap.core.Timeline;
16
+ export {};
@@ -0,0 +1,6 @@
1
+ import { ObjectDirective } from 'vue';
2
+ /** 碎屑属于应用的短时反馈层,清空键或菜单项卸载不会截断已经接受的点击。 */
3
+ export declare function useClickFeedback(): {
4
+ playClickFeedback: (event: Event, surface?: HTMLElement | null) => void;
5
+ vClickFeedback: ObjectDirective<HTMLElement, boolean | undefined, string, any>;
6
+ };
@@ -0,0 +1,8 @@
1
+ export declare function useControlAttrs(): {
2
+ rootAttrs: () => {
3
+ [k: string]: unknown;
4
+ };
5
+ controlAttrs: () => {
6
+ [k: string]: unknown;
7
+ };
8
+ };
@@ -0,0 +1,28 @@
1
+ import { Ref } from 'vue';
2
+ interface OverlayEntry {
3
+ parent: OverlayEntry | null;
4
+ elements: () => Array<HTMLElement | null | undefined>;
5
+ modal: boolean;
6
+ minimumZIndex: () => number;
7
+ zIndex: Ref<number>;
8
+ onEscape?: (event: KeyboardEvent) => void;
9
+ closeOnEscape: () => boolean;
10
+ previousFocus: HTMLElement | null;
11
+ }
12
+ /** 只订阅浮层作用域变化,不接管焦点或键盘。 */
13
+ export declare function onOverlayScopeChange(doc: Document, listener: () => void): () => void;
14
+ /** 字段导航等非浮层行为不能越过当前最上层浮层抢夺焦点。 */
15
+ export declare function isInActiveOverlayScope(element: HTMLElement): boolean;
16
+ export declare function useOverlay(options: {
17
+ open: () => boolean;
18
+ elements: OverlayEntry['elements'];
19
+ zIndex: () => number;
20
+ modal?: boolean;
21
+ closeOnEscape?: () => boolean;
22
+ onEscape?: (event: KeyboardEvent) => void;
23
+ }): {
24
+ zIndex: import('vue').ComputedRef<number>;
25
+ isTop: (event?: KeyboardEvent) => boolean;
26
+ contains: (target: Node | null) => boolean;
27
+ };
28
+ export {};
@@ -0,0 +1,5 @@
1
+ /** 同一个文档的所有弹层共享锁,最后一个持有者负责恢复原样式。 */
2
+ export declare function createScrollLock(): {
3
+ lock: (doc?: Document) => void;
4
+ unlock: () => void;
5
+ };
package/package.json CHANGED
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "name": "@moubing/bing-ui",
3
- "version": "0.5.2",
3
+ "version": "0.6.0",
4
4
  "type": "module",
5
- "packageManager": "pnpm@11.7.0",
6
5
  "publishConfig": {
7
6
  "access": "public",
8
7
  "registry": "https://registry.npmjs.org/"
@@ -28,19 +27,6 @@
28
27
  "gsap": "^3.15.0",
29
28
  "vue": "^3.5.0"
30
29
  },
31
- "scripts": {
32
- "dev": "vite",
33
- "build": "vue-tsc -b && vite build",
34
- "preview": "vite preview",
35
- "test": "vitest",
36
- "test:run": "vitest run",
37
- "test:browser": "vitest run --config vitest.browser.config.ts --passWithNoTests",
38
- "test:visual": "playwright test",
39
- "storybook": "node scripts/storybook-dev.mjs",
40
- "build-storybook": "cross-env STORYBOOK=true storybook build",
41
- "changeset": "changeset",
42
- "version-packages": "changeset version"
43
- },
44
30
  "devDependencies": {
45
31
  "@changesets/cli": "^2.31.0",
46
32
  "@playwright/test": "^1.60.0",
@@ -71,5 +57,18 @@
71
57
  "lucide-vue-next": "^1.0.0",
72
58
  "shiki": "^4.2.0",
73
59
  "zod": "^4.4.3"
60
+ },
61
+ "scripts": {
62
+ "dev": "vite",
63
+ "build": "vue-tsc -b && vite build",
64
+ "preview": "vite preview",
65
+ "test": "vitest",
66
+ "test:run": "vitest run",
67
+ "test:browser": "vitest run --config vitest.browser.config.ts --passWithNoTests",
68
+ "test:visual": "playwright test",
69
+ "storybook": "node scripts/storybook-dev.mjs",
70
+ "build-storybook": "cross-env STORYBOOK=true storybook build",
71
+ "changeset": "changeset",
72
+ "version-packages": "changeset version"
74
73
  }
75
- }
74
+ }