@king-design/vue 3.7.0 → 3.8.0-beta.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 (227) hide show
  1. package/__tests__/__snapshots__/Vue Next Demos.md +399 -0
  2. package/components/bubble/bubble.d.ts +61 -0
  3. package/components/bubble/bubble.js +81 -0
  4. package/components/bubble/bubble.vdt.js +85 -0
  5. package/components/bubble/index.d.ts +1 -0
  6. package/components/bubble/index.js +1 -0
  7. package/components/bubble/index.spec.d.ts +1 -0
  8. package/components/bubble/index.spec.js +771 -0
  9. package/components/bubble/styles.d.ts +5 -0
  10. package/components/bubble/styles.js +53 -0
  11. package/components/bubble/useBubbleDisplay.d.ts +18 -0
  12. package/components/bubble/useBubbleDisplay.js +300 -0
  13. package/components/bubbleList/bubbleList.d.ts +87 -0
  14. package/components/bubbleList/bubbleList.js +75 -0
  15. package/components/bubbleList/bubbleList.vdt.js +143 -0
  16. package/components/bubbleList/index.d.ts +1 -0
  17. package/components/bubbleList/index.js +1 -0
  18. package/components/bubbleList/index.spec.d.ts +1 -0
  19. package/components/bubbleList/index.spec.js +1268 -0
  20. package/components/bubbleList/item.d.ts +16 -0
  21. package/components/bubbleList/item.js +27 -0
  22. package/components/bubbleList/item.vdt.js +36 -0
  23. package/components/bubbleList/styles.d.ts +5 -0
  24. package/components/bubbleList/styles.js +33 -0
  25. package/components/bubbleList/useBubbleList.d.ts +28 -0
  26. package/components/bubbleList/useBubbleList.js +455 -0
  27. package/components/checkbox/index.d.ts +3 -3
  28. package/components/fileCard/fileCard.d.ts +65 -0
  29. package/components/fileCard/fileCard.js +72 -0
  30. package/components/fileCard/fileCard.vdt.js +161 -0
  31. package/components/fileCard/fileCardAssets.d.ts +1 -0
  32. package/components/fileCard/fileCardAssets.js +54 -0
  33. package/components/fileCard/fileCardUtils.d.ts +14 -0
  34. package/components/fileCard/fileCardUtils.js +94 -0
  35. package/components/fileCard/index.d.ts +2 -0
  36. package/components/fileCard/index.js +2 -0
  37. package/components/fileCard/index.spec.d.ts +1 -0
  38. package/components/fileCard/index.spec.js +1096 -0
  39. package/components/fileCard/list.d.ts +29 -0
  40. package/components/fileCard/list.js +46 -0
  41. package/components/fileCard/list.vdt.js +71 -0
  42. package/components/fileCard/styles.d.ts +5 -0
  43. package/components/fileCard/styles.js +83 -0
  44. package/components/fileCard/useFileCard.d.ts +45 -0
  45. package/components/fileCard/useFileCard.js +330 -0
  46. package/components/fileCard/useFileCardList.d.ts +14 -0
  47. package/components/fileCard/useFileCardList.js +49 -0
  48. package/components/form/form.js +2 -1
  49. package/components/media/context.d.ts +6 -0
  50. package/components/media/context.js +2 -0
  51. package/components/media/group.d.ts +12 -0
  52. package/components/media/group.js +32 -0
  53. package/components/media/group.vdt.js +50 -0
  54. package/components/media/index.d.ts +2 -0
  55. package/components/media/index.js +2 -0
  56. package/components/media/index.spec.d.ts +1 -0
  57. package/components/media/index.spec.js +1691 -0
  58. package/components/media/media.d.ts +37 -0
  59. package/components/media/media.js +67 -0
  60. package/components/media/media.vdt.js +202 -0
  61. package/components/media/mediaAssets.d.ts +4 -0
  62. package/components/media/mediaAssets.js +9 -0
  63. package/components/media/mediaUtils.d.ts +6 -0
  64. package/components/media/mediaUtils.js +66 -0
  65. package/components/media/styles.d.ts +13 -0
  66. package/components/media/styles.js +52 -0
  67. package/components/media/types.d.ts +37 -0
  68. package/components/media/types.js +1 -0
  69. package/components/media/useMedia.d.ts +70 -0
  70. package/components/media/useMedia.js +471 -0
  71. package/components/media/useMediaGroup.d.ts +15 -0
  72. package/components/media/useMediaGroup.js +136 -0
  73. package/components/media/useMediaViewer.d.ts +14 -0
  74. package/components/media/useMediaViewer.js +129 -0
  75. package/components/media/viewer.d.ts +24 -0
  76. package/components/media/viewer.js +54 -0
  77. package/components/media/viewer.vdt.js +100 -0
  78. package/components/radio/index.d.ts +3 -3
  79. package/components/sender/icons.d.ts +3 -0
  80. package/components/sender/icons.js +17 -0
  81. package/components/sender/index.d.ts +1 -0
  82. package/components/sender/index.js +1 -0
  83. package/components/sender/index.spec.d.ts +1 -0
  84. package/components/sender/index.spec.js +1597 -0
  85. package/components/sender/sender.d.ts +104 -0
  86. package/components/sender/sender.js +111 -0
  87. package/components/sender/sender.vdt.js +230 -0
  88. package/components/sender/styles.d.ts +5 -0
  89. package/components/sender/styles.js +56 -0
  90. package/components/sender/useAutoResize.d.ts +4 -0
  91. package/components/sender/useAutoResize.js +99 -0
  92. package/components/sender/useSenderDrag.d.ts +6 -0
  93. package/components/sender/useSenderDrag.js +320 -0
  94. package/components/sender/useSenderInput.d.ts +16 -0
  95. package/components/sender/useSenderInput.js +101 -0
  96. package/components/sender/useSenderPaste.d.ts +5 -0
  97. package/components/sender/useSenderPaste.js +36 -0
  98. package/components/sender/useSenderUpload.d.ts +11 -0
  99. package/components/sender/useSenderUpload.js +395 -0
  100. package/components/skeleton/skeleton.d.ts +2 -1
  101. package/components/skeleton/skeleton.js +1 -1
  102. package/components/think/index.d.ts +1 -0
  103. package/components/think/index.js +1 -0
  104. package/components/think/index.spec.d.ts +1 -0
  105. package/components/think/index.spec.js +345 -0
  106. package/components/think/index.vdt.js +82 -0
  107. package/components/think/styles.d.ts +5 -0
  108. package/components/think/styles.js +25 -0
  109. package/components/think/think.d.ts +28 -0
  110. package/components/think/think.js +48 -0
  111. package/components/think/useThinkExpand.d.ts +10 -0
  112. package/components/think/useThinkExpand.js +56 -0
  113. package/components/types.d.ts +4 -2
  114. package/components/upload/ajaxUploader.d.ts +1 -0
  115. package/components/upload/ajaxUploader.js +6 -0
  116. package/components/xmarkdown/index.d.ts +2 -0
  117. package/components/xmarkdown/index.js +1 -0
  118. package/components/xmarkdown/index.spec.d.ts +1 -0
  119. package/components/xmarkdown/index.spec.js +1666 -0
  120. package/components/xmarkdown/markdown/codeBlockRenderer.d.ts +8 -0
  121. package/components/xmarkdown/markdown/codeBlockRenderer.js +52 -0
  122. package/components/xmarkdown/markdown/codeblock.d.ts +8 -0
  123. package/components/xmarkdown/markdown/codeblock.js +74 -0
  124. package/components/xmarkdown/markdown/highlight.d.ts +17 -0
  125. package/components/xmarkdown/markdown/highlight.js +83 -0
  126. package/components/xmarkdown/markdown/index.d.ts +14 -0
  127. package/components/xmarkdown/markdown/index.js +14 -0
  128. package/components/xmarkdown/markdown/mermaid.d.ts +8 -0
  129. package/components/xmarkdown/markdown/mermaid.js +104 -0
  130. package/components/xmarkdown/markdown/renderTree.d.ts +54 -0
  131. package/components/xmarkdown/markdown/renderTree.js +386 -0
  132. package/components/xmarkdown/markdown/renderer.d.ts +18 -0
  133. package/components/xmarkdown/markdown/renderer.js +461 -0
  134. package/components/xmarkdown/markdown/streaming.d.ts +24 -0
  135. package/components/xmarkdown/markdown/streaming.js +513 -0
  136. package/components/xmarkdown/markdown/types.d.ts +124 -0
  137. package/components/xmarkdown/markdown/types.js +6 -0
  138. package/components/xmarkdown/markdown/utils.d.ts +7 -0
  139. package/components/xmarkdown/markdown/utils.js +9 -0
  140. package/components/xmarkdown/markdown.d.ts +1 -0
  141. package/components/xmarkdown/markdown.js +1 -0
  142. package/components/xmarkdown/styles.d.ts +5 -0
  143. package/components/xmarkdown/styles.js +50 -0
  144. package/components/xmarkdown/useMermaid.d.ts +27 -0
  145. package/components/xmarkdown/useMermaid.js +745 -0
  146. package/components/xmarkdown/useXMarkdownContent.d.ts +14 -0
  147. package/components/xmarkdown/useXMarkdownContent.js +218 -0
  148. package/components/xmarkdown/useXMarkdownDisplay.d.ts +26 -0
  149. package/components/xmarkdown/useXMarkdownDisplay.js +569 -0
  150. package/components/xmarkdown/xmarkdown.d.ts +61 -0
  151. package/components/xmarkdown/xmarkdown.js +109 -0
  152. package/components/xmarkdown/xmarkdown.vdt.js +43 -0
  153. package/dist/fonts/KaTeX_AMS-Regular.ttf +0 -0
  154. package/dist/fonts/KaTeX_AMS-Regular.woff +0 -0
  155. package/dist/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  156. package/dist/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  157. package/dist/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  158. package/dist/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  159. package/dist/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  160. package/dist/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  161. package/dist/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  162. package/dist/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  163. package/dist/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  164. package/dist/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  165. package/dist/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  166. package/dist/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  167. package/dist/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  168. package/dist/fonts/KaTeX_Main-Bold.ttf +0 -0
  169. package/dist/fonts/KaTeX_Main-Bold.woff +0 -0
  170. package/dist/fonts/KaTeX_Main-Bold.woff2 +0 -0
  171. package/dist/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  172. package/dist/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  173. package/dist/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  174. package/dist/fonts/KaTeX_Main-Italic.ttf +0 -0
  175. package/dist/fonts/KaTeX_Main-Italic.woff +0 -0
  176. package/dist/fonts/KaTeX_Main-Italic.woff2 +0 -0
  177. package/dist/fonts/KaTeX_Main-Regular.ttf +0 -0
  178. package/dist/fonts/KaTeX_Main-Regular.woff +0 -0
  179. package/dist/fonts/KaTeX_Main-Regular.woff2 +0 -0
  180. package/dist/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  181. package/dist/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  182. package/dist/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  183. package/dist/fonts/KaTeX_Math-Italic.ttf +0 -0
  184. package/dist/fonts/KaTeX_Math-Italic.woff +0 -0
  185. package/dist/fonts/KaTeX_Math-Italic.woff2 +0 -0
  186. package/dist/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  187. package/dist/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  188. package/dist/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  189. package/dist/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  190. package/dist/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  191. package/dist/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  192. package/dist/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  193. package/dist/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  194. package/dist/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  195. package/dist/fonts/KaTeX_Script-Regular.ttf +0 -0
  196. package/dist/fonts/KaTeX_Script-Regular.woff +0 -0
  197. package/dist/fonts/KaTeX_Script-Regular.woff2 +0 -0
  198. package/dist/fonts/KaTeX_Size1-Regular.ttf +0 -0
  199. package/dist/fonts/KaTeX_Size1-Regular.woff +0 -0
  200. package/dist/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  201. package/dist/fonts/KaTeX_Size2-Regular.ttf +0 -0
  202. package/dist/fonts/KaTeX_Size2-Regular.woff +0 -0
  203. package/dist/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  204. package/dist/fonts/KaTeX_Size3-Regular.ttf +0 -0
  205. package/dist/fonts/KaTeX_Size3-Regular.woff +0 -0
  206. package/dist/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  207. package/dist/fonts/KaTeX_Size4-Regular.ttf +0 -0
  208. package/dist/fonts/KaTeX_Size4-Regular.woff +0 -0
  209. package/dist/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  210. package/dist/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  211. package/dist/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  212. package/dist/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  213. package/dist/i18n/en-US.js +29 -1
  214. package/dist/i18n/en-US.js.map +1 -1
  215. package/dist/i18n/en-US.min.js +1 -1
  216. package/dist/index.js +100506 -37457
  217. package/dist/index.js.map +1 -1
  218. package/dist/index.min.js +1569 -1
  219. package/dist/kpc.css +4 -0
  220. package/dist/ksyun.css +4 -0
  221. package/i18n/en-US.d.ts +27 -0
  222. package/i18n/en-US.js +29 -1
  223. package/index.d.ts +9 -2
  224. package/index.js +9 -2
  225. package/package.json +8 -2
  226. package/styles/global.js +12 -6
  227. package/yarn-error.log +0 -1012
@@ -0,0 +1,129 @@
1
+ import { onMounted, onUnmounted, useInstance } from 'intact-vue-next';
2
+ import { useFixBody } from '../../hooks/useFixBody';
3
+ import { mediaAudioCardUrl } from './mediaAssets';
4
+ export function useMediaViewer() {
5
+ var instance = useInstance();
6
+ var fixBody = useFixBody();
7
+ var isListening = false;
8
+ function close() {
9
+ var onClose = instance.get('onClose');
10
+ if (onClose) onClose();
11
+ }
12
+ function prev() {
13
+ var onPrev = instance.get('onPrev');
14
+ if (onPrev && instance.get('hasPrev')) onPrev();
15
+ }
16
+ function next() {
17
+ var onNext = instance.get('onNext');
18
+ if (onNext && instance.get('hasNext')) onNext();
19
+ }
20
+ // 预览层支持 Esc 关闭和左右方向键切换。
21
+ function onKeydown(e) {
22
+ switch (e.keyCode) {
23
+ case 27:
24
+ close();
25
+ break;
26
+ case 37:
27
+ prev();
28
+ break;
29
+ case 39:
30
+ next();
31
+ break;
32
+ }
33
+ }
34
+ // 避免重复绑定全局键盘事件。
35
+ function addKeydownListener() {
36
+ if (isListening) return;
37
+ document.addEventListener('keydown', onKeydown);
38
+ isListening = true;
39
+ }
40
+ // Viewer 不可见或卸载时及时移除全局监听。
41
+ function removeKeydownListener() {
42
+ if (!isListening) return;
43
+ document.removeEventListener('keydown', onKeydown);
44
+ isListening = false;
45
+ }
46
+ onMounted(function () {
47
+ if (instance.get('value')) {
48
+ fixBody.onOpen();
49
+ addKeydownListener();
50
+ }
51
+ });
52
+ onUnmounted(function () {
53
+ removeKeydownListener();
54
+ fixBody.onClose();
55
+ });
56
+ instance.watch('value', function (value) {
57
+ if (value) {
58
+ fixBody.onOpen();
59
+ addKeydownListener();
60
+ } else {
61
+ removeKeydownListener();
62
+ }
63
+ });
64
+ // 点击遮罩关闭,内容区域在模板中会阻止冒泡。
65
+ function onMaskClick() {
66
+ close();
67
+ }
68
+ function onCloseClick(e) {
69
+ e.stopPropagation();
70
+ close();
71
+ }
72
+ function onPrevClick(e) {
73
+ e.stopPropagation();
74
+ prev();
75
+ }
76
+ function onNextClick(e) {
77
+ e.stopPropagation();
78
+ next();
79
+ }
80
+ function isImage() {
81
+ var _instance$get;
82
+ return ((_instance$get = instance.get('item')) == null ? void 0 : _instance$get.resolvedType) === 'image';
83
+ }
84
+ function isVideo() {
85
+ var _instance$get2;
86
+ return ((_instance$get2 = instance.get('item')) == null ? void 0 : _instance$get2.resolvedType) === 'video';
87
+ }
88
+ function isAudio() {
89
+ var _instance$get3;
90
+ return ((_instance$get3 = instance.get('item')) == null ? void 0 : _instance$get3.resolvedType) === 'audio';
91
+ }
92
+ function getTitle() {
93
+ var _instance$get4;
94
+ return ((_instance$get4 = instance.get('item')) == null ? void 0 : _instance$get4.name) || '';
95
+ }
96
+ function getCounterText() {
97
+ var total = instance.get('total') || 0;
98
+ if (total <= 1) return '';
99
+ return (instance.get('index') || 0) + 1 + " / " + total;
100
+ }
101
+ function shouldShowNavigation() {
102
+ return (instance.get('total') || 0) > 1;
103
+ }
104
+ function getAudioCardAssetSrc() {
105
+ return mediaAudioCardUrl;
106
+ }
107
+ // 离场动画完成后释放滚动锁并通知外层卸载。
108
+ function onAfterLeave() {
109
+ if (!instance.get('value')) {
110
+ fixBody.onClose();
111
+ }
112
+ var onAfterClose = instance.get('onAfterClose');
113
+ if (onAfterClose) onAfterClose();
114
+ }
115
+ return {
116
+ onMaskClick: onMaskClick,
117
+ onCloseClick: onCloseClick,
118
+ onPrevClick: onPrevClick,
119
+ onNextClick: onNextClick,
120
+ onAfterLeave: onAfterLeave,
121
+ isImage: isImage,
122
+ isVideo: isVideo,
123
+ isAudio: isAudio,
124
+ getTitle: getTitle,
125
+ getCounterText: getCounterText,
126
+ shouldShowNavigation: shouldShowNavigation,
127
+ getAudioCardAssetSrc: getAudioCardAssetSrc
128
+ };
129
+ }
@@ -0,0 +1,24 @@
1
+ import { Component, TypeDefs } from 'intact-vue-next';
2
+ import type { Container } from '../portal';
3
+ import type { MediaViewerItem } from './types';
4
+ export interface MediaViewerProps {
5
+ className?: string;
6
+ value?: boolean;
7
+ item?: MediaViewerItem | null;
8
+ index?: number;
9
+ total?: number;
10
+ hasPrev?: boolean;
11
+ hasNext?: boolean;
12
+ container?: Container;
13
+ onClose?: () => void;
14
+ onAfterClose?: () => void;
15
+ onPrev?: () => void;
16
+ onNext?: () => void;
17
+ }
18
+ export declare class MediaViewer extends Component<MediaViewerProps> {
19
+ static template: string | import('intact-vue-next').Template<any>;
20
+ static typeDefs: Required<TypeDefs<MediaViewerProps>>;
21
+ static defaults: () => Partial<MediaViewerProps>;
22
+ private config;
23
+ private viewer;
24
+ }
@@ -0,0 +1,54 @@
1
+ import _inheritsLoose from "@babel/runtime-corejs3/helpers/inheritsLoose";
2
+ import _concatInstanceProperty from "@babel/runtime-corejs3/core-js/instance/concat";
3
+ import { Component } from 'intact-vue-next';
4
+ import template from './viewer.vdt';
5
+ import { useConfigContext } from '../config';
6
+ import { useMediaViewer } from './useMediaViewer';
7
+ var typeDefs = {
8
+ className: String,
9
+ value: Boolean,
10
+ item: Object,
11
+ index: Number,
12
+ total: Number,
13
+ hasPrev: Boolean,
14
+ hasNext: Boolean,
15
+ container: [String, Function],
16
+ onClose: Function,
17
+ onAfterClose: Function,
18
+ onPrev: Function,
19
+ onNext: Function
20
+ };
21
+ var defaults = function defaults() {
22
+ return {
23
+ className: undefined,
24
+ value: false,
25
+ item: null,
26
+ index: 0,
27
+ total: 0,
28
+ hasPrev: false,
29
+ hasNext: false,
30
+ container: undefined,
31
+ onClose: undefined,
32
+ onAfterClose: undefined,
33
+ onPrev: undefined,
34
+ onNext: undefined
35
+ };
36
+ };
37
+ export var MediaViewer = /*#__PURE__*/function (_Component) {
38
+ _inheritsLoose(MediaViewer, _Component);
39
+ function MediaViewer() {
40
+ var _context;
41
+ var _this;
42
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
43
+ args[_key] = arguments[_key];
44
+ }
45
+ _this = _Component.call.apply(_Component, _concatInstanceProperty(_context = [this]).call(_context, args)) || this;
46
+ _this.config = useConfigContext();
47
+ _this.viewer = useMediaViewer();
48
+ return _this;
49
+ }
50
+ return MediaViewer;
51
+ }(Component);
52
+ MediaViewer.template = template;
53
+ MediaViewer.typeDefs = typeDefs;
54
+ MediaViewer.defaults = defaults;
@@ -0,0 +1,100 @@
1
+ import { createUnknownComponentVNode as _$cc, createElementVNode as _$ce, className as _$cn } from 'intact-vue-next';
2
+ import { Portal } from '../portal';
3
+ import { Icon } from '../icon';
4
+ import { Transition } from 'intact-vue-next';
5
+ import { stopPropagation } from '../utils';
6
+ export default function ($props, $blocks, $__proto__) {
7
+ var _$cn2;
8
+ $blocks || ($blocks = {});
9
+ $props || ($props = {});
10
+ var $this = this;
11
+ var _this$viewer = this.viewer,
12
+ onMaskClick = _this$viewer.onMaskClick,
13
+ onCloseClick = _this$viewer.onCloseClick,
14
+ onPrevClick = _this$viewer.onPrevClick,
15
+ onNextClick = _this$viewer.onNextClick,
16
+ onAfterLeave = _this$viewer.onAfterLeave,
17
+ isImage = _this$viewer.isImage,
18
+ isVideo = _this$viewer.isVideo,
19
+ isAudio = _this$viewer.isAudio,
20
+ getTitle = _this$viewer.getTitle,
21
+ getCounterText = _this$viewer.getCounterText,
22
+ shouldShowNavigation = _this$viewer.shouldShowNavigation,
23
+ getAudioCardAssetSrc = _this$viewer.getAudioCardAssetSrc;
24
+ var _this$get = this.get(),
25
+ item = _this$get.item,
26
+ hasPrev = _this$get.hasPrev,
27
+ hasNext = _this$get.hasNext,
28
+ container = _this$get.container,
29
+ value = _this$get.value;
30
+ var k = this.config.k;
31
+ var currentItem = item || {
32
+ name: '',
33
+ src: '',
34
+ poster: ''
35
+ };
36
+ return _$cc(Portal, {
37
+ 'container': container,
38
+ 'children': _$cc(Transition, {
39
+ 'show': value,
40
+ 'appear': value,
41
+ 'name': 'k-fade',
42
+ 'onAfterLeave': onAfterLeave,
43
+ 'children': value ? _$ce(2, 'div', [_$ce(2, 'div', [_$ce(2, 'div', [_$ce(2, 'div', getTitle(), 0, _$cn(k + "-media-viewer-title"), {
44
+ 'title': getTitle()
45
+ }), getCounterText() ? _$ce(2, 'div', getCounterText(), 0, _$cn(k + "-media-viewer-counter")) : undefined], 0, _$cn(k + "-media-viewer-heading")), _$ce(2, 'button', _$cc(Icon, {
46
+ 'className': _$cn(k + "-icon-close-bold")
47
+ }), 2, _$cn(k + "-media-viewer-close"), {
48
+ 'type': 'button',
49
+ 'title': '关闭预览',
50
+ 'aria-label': '关闭预览',
51
+ 'ev-click': onCloseClick
52
+ })], 4, _$cn(k + "-media-viewer-header"), {
53
+ 'ev-click': stopPropagation
54
+ }), shouldShowNavigation() ? _$ce(2, 'button', _$cc(Icon, {
55
+ 'className': _$cn(k + "-icon-left")
56
+ }), 2, _$cn(k + "-media-viewer-prev"), {
57
+ 'type': 'button',
58
+ 'title': '上一个',
59
+ 'aria-label': '上一个',
60
+ 'disabled': !hasPrev,
61
+ 'ev-click': onPrevClick
62
+ }) : undefined, shouldShowNavigation() ? _$ce(2, 'button', _$cc(Icon, {
63
+ 'className': _$cn(k + "-icon-right")
64
+ }), 2, _$cn(k + "-media-viewer-next"), {
65
+ 'type': 'button',
66
+ 'title': '下一个',
67
+ 'aria-label': '下一个',
68
+ 'disabled': !hasNext,
69
+ 'ev-click': onNextClick
70
+ }) : undefined, _$ce(2, 'div', isImage() ? _$ce(2, 'img', null, 1, _$cn(k + "-media-viewer-image"), {
71
+ 'src': currentItem.src,
72
+ 'alt': currentItem.name,
73
+ 'draggable': false,
74
+ 'ev-click': stopPropagation
75
+ }) : isVideo() ? _$ce(2, 'video', null, 1, _$cn(k + "-media-viewer-video"), {
76
+ 'src': currentItem.src,
77
+ 'poster': currentItem.poster || undefined,
78
+ 'controls': true,
79
+ 'autoplay': true,
80
+ 'preload': 'metadata',
81
+ 'playsinline': true,
82
+ 'ev-click': stopPropagation
83
+ }) : isAudio() ? _$ce(2, 'div', [_$ce(2, 'div', _$ce(2, 'img', null, 1, _$cn(k + "-media-viewer-audio-cover-image"), {
84
+ 'src': getAudioCardAssetSrc(),
85
+ 'alt': '',
86
+ 'draggable': false
87
+ }), 2, _$cn(k + "-media-viewer-audio-cover")), _$ce(2, 'div', currentItem.name, 0, _$cn(k + "-media-viewer-audio-title")), _$ce(2, 'audio', null, 1, _$cn(k + "-media-viewer-audio-player"), {
88
+ 'src': currentItem.src,
89
+ 'controls': true,
90
+ 'autoplay': true,
91
+ 'preload': 'metadata'
92
+ })], 4, _$cn(k + "-media-viewer-audio"), {
93
+ 'ev-click': stopPropagation
94
+ }) : undefined, 0, _$cn(k + "-media-viewer-stage"))], 0, _$cn((_$cn2 = {}, _$cn2[k + "-media-viewer"] = true, _$cn2[this.get('className')] = this.get('className'), _$cn2)), {
95
+ 'ev-click': onMaskClick
96
+ }) : undefined
97
+ })
98
+ });
99
+ }
100
+ ;
@@ -1,6 +1,6 @@
1
1
  import { Component, TypeDefs } from 'intact-vue-next';
2
- import type { CommonInputHTMLAttributes, Events } from '../types';
3
- export interface RadioProps<Value = false, True = true> extends CommonInputHTMLAttributes {
2
+ import type { CommonFormElementAttributes, Events } from '../types';
3
+ export interface RadioProps<Value = false, True = true> extends CommonFormElementAttributes {
4
4
  disabled?: boolean;
5
5
  value?: Value | True;
6
6
  trueValue?: True;
@@ -11,7 +11,7 @@ export interface RadioEvents<True = true> {
11
11
  }
12
12
  export declare class Radio<Value = false, True = true> extends Component<RadioProps<Value, True>, RadioEvents<True>> {
13
13
  static template: string | import('intact-vue-next').Template<any>;
14
- static typeDefs: Required<TypeDefs<Omit<RadioProps<false, true>, keyof CommonInputHTMLAttributes>>>;
14
+ static typeDefs: Required<TypeDefs<Omit<RadioProps<false, true>, keyof CommonFormElementAttributes>>>;
15
15
  static defaults: () => Partial<RadioProps<false, true>>;
16
16
  static events: Events<RadioEvents<true>>;
17
17
  private elementRef;
@@ -0,0 +1,3 @@
1
+ export declare const senderSendIcon: string;
2
+ export declare const senderStopIcon: string;
3
+ export declare const senderAttachSvg: string;
@@ -0,0 +1,17 @@
1
+ // 内联 SVG 资源:data URL 形式,与 fileCard 中的占位图保持一致策略,避免下游打包额外处理 SVG 资源。
2
+ // 三个发送态共用同一张图,hover/disabled 通过 CSS opacity 切换;附件用 currentColor,hover 时由 CSS 改色。
3
+ // 设计为 32×32 可点击主形(与 sendButtonSize 一致);原先 48×48 导出版本中间才是 32px 圆,用 img 外溢对齐容易「撑不满 / 对不齐」。
4
+ // 将图形坐标归一到 viewBox 0 0 32 32,阴影用组件侧 CSS filter,与原有 SVG feDropShadow 观感接近且不占画布。
5
+ var SEND_SVG = ['<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32" fill="none">', '<rect width="32" height="32" rx="16" fill="url(#b)"/>',
6
+ // 路径由原 48 稿中 path 平移 (-8, -4) 到 0..32 坐标系
7
+ '<path d="M22.3337 9.6666L17.9003 22.3333L16.0003 16L9.667 14.1L22.3337 9.6666Z" fill="white" stroke="white" stroke-linejoin="round"/>', '<defs>', '<linearGradient id="b" x1="0" y1="0" x2="32" y2="32" gradientUnits="userSpaceOnUse">', '<stop stop-color="#00DDDD"/>', '<stop offset="0.538462" stop-color="#5370FF"/>', '<stop offset="1" stop-color="#712FFF"/>', '</linearGradient>', '</defs>', '</svg>'].join('');
8
+ var STOP_SVG = ['<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32" fill="none">', '<rect width="32" height="32" rx="16" fill="url(#b)"/>', '<rect x="10" y="10" width="12" height="12" rx="2" fill="white"/>', '<defs>', '<linearGradient id="b" x1="0" y1="0" x2="32" y2="32" gradientUnits="userSpaceOnUse">', '<stop stop-color="#00DDDD"/>', '<stop offset="0.538462" stop-color="#5370FF"/>', '<stop offset="1" stop-color="#712FFF"/>', '</linearGradient>', '</defs>', '</svg>'].join('');
9
+ // 附件回形针 16x16,stroke 用 currentColor,方便用 CSS color 控制颜色变化。
10
+ var ATTACH_SVG = ['<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">', '<path d="M8.23567 3.18836L3.28591 8.13812C2.11433 9.30969 2.11433 11.2092 3.28591 12.3808C4.45747 13.5523 6.35697 13.5523 7.52854 12.3808L13.4211 6.48819C14.2021 5.70716 14.2021 4.44082 13.4211 3.65975C12.6401 2.87871 11.3737 2.87871 10.5927 3.65975L4.70014 9.55232C4.3096 9.94286 4.3096 10.576 4.70014 10.9665C5.09064 11.3571 5.7238 11.3571 6.11434 10.9665L11.0641 6.01679" stroke="currentColor" stroke-linecap="square" stroke-linejoin="round"/>', '</svg>'].join('');
11
+ function toDataUrl(svg) {
12
+ return "data:image/svg+xml;charset=UTF-8," + encodeURIComponent(svg);
13
+ }
14
+ export var senderSendIcon = toDataUrl(SEND_SVG);
15
+ export var senderStopIcon = toDataUrl(STOP_SVG);
16
+ // 附件用 innerHTML 注入,因为 currentColor 在 <img src> 形式下无法继承 color。
17
+ export var senderAttachSvg = ATTACH_SVG;
@@ -0,0 +1 @@
1
+ export * from './sender';
@@ -0,0 +1 @@
1
+ export * from './sender';
@@ -0,0 +1 @@
1
+ export {};