@vunk/plus 1.11.6 → 1.11.8

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.
@@ -1823,6 +1823,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
1823
1823
  type: ObjectConstructor;
1824
1824
  default: () => {};
1825
1825
  };
1826
+ attachmentsPlaceholder: {
1827
+ type: StringConstructor;
1828
+ default: string;
1829
+ };
1826
1830
  }>, {
1827
1831
  props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
1828
1832
  fileList: {
@@ -1887,6 +1891,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
1887
1891
  type: ObjectConstructor;
1888
1892
  default: () => {};
1889
1893
  };
1894
+ attachmentsPlaceholder: {
1895
+ type: StringConstructor;
1896
+ default: string;
1897
+ };
1890
1898
  }>> & Readonly<{
1891
1899
  onCancel?: ((...args: any[]) => any) | undefined;
1892
1900
  onSubmit?: ((_: string) => any) | undefined;
@@ -2382,6 +2390,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2382
2390
  type: ObjectConstructor;
2383
2391
  default: () => {};
2384
2392
  };
2393
+ attachmentsPlaceholder: {
2394
+ type: StringConstructor;
2395
+ default: string;
2396
+ };
2385
2397
  }>> & Readonly<{
2386
2398
  onCancel?: ((...args: any[]) => any) | undefined;
2387
2399
  onSubmit?: ((_: string) => any) | undefined;
@@ -2403,6 +2415,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2403
2415
  maxRows?: number;
2404
2416
  };
2405
2417
  attachmentsProps: Record<string, any>;
2418
+ attachmentsPlaceholder: string;
2406
2419
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2407
2420
  readonly VkKeyboardAvatar: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2408
2421
  readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "small" | "default" | "large", number, "", boolean>;
@@ -1,6 +1,7 @@
1
1
  import VkPixiFrameApng from './src/apng.vue';
2
2
  import VkPixiFrameBitmapGenerator from './src/bitmap-generator.vue';
3
3
  import VkPixiFrameBitmap from './src/bitmap.vue';
4
+ import VkPixiFrameBufferImage from './src/buffer-image.vue';
4
5
  import VkPixiFrameCore from './src/core.vue';
5
6
  import VkPixiFrame from './src/index.vue';
6
7
  import VkPixiFrameProvider from './src/provider.vue';
@@ -10,5 +11,5 @@ export * as __VkPixiFrame from './src/types';
10
11
  export { usePixiApp } from './src/use';
11
12
  export { useSprite } from './src/useSprite';
12
13
  export { TickerStatus } from '@vunk/shared/enum';
13
- export { VkPixiFrame, VkPixiFrameApng, VkPixiFrameBitmap, VkPixiFrameBitmapGenerator, VkPixiFrameCore, VkPixiFrameProvider, VkPixiFrameVideo, VkPixiFrameView, };
14
+ export { VkPixiFrame, VkPixiFrameApng, VkPixiFrameBitmap, VkPixiFrameBitmapGenerator, VkPixiFrameBufferImage, VkPixiFrameCore, VkPixiFrameProvider, VkPixiFrameVideo, VkPixiFrameView, };
14
15
  export default VkPixiFrame;
@@ -3,7 +3,7 @@ import { TickerStatus } from '@vunk/shared/enum';
3
3
  export { TickerStatus } from '@vunk/shared/enum';
4
4
  import { Deferred, sleep } from '@vunk/shared/promise';
5
5
  import { c as commonjsGlobal, g as getDefaultExportFromCjs } from '../_commonjsHelpers.mjs';
6
- import { Application, Sprite, Assets, Texture, ImageSource } from 'pixi.js';
6
+ import { Application, Sprite, Assets, Texture, ImageSource, BufferImageSource } from 'pixi.js';
7
7
  import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
8
8
  import { pickObject } from '@vunk/shared/object';
9
9
  import { useModelComputed, useDeferred } from '@vunk/core/composables';
@@ -1116,7 +1116,7 @@ function useSprite(props) {
1116
1116
  };
1117
1117
  }
1118
1118
 
1119
- var _sfc_main$7 = /* @__PURE__ */ defineComponent({
1119
+ var _sfc_main$8 = /* @__PURE__ */ defineComponent({
1120
1120
  __name: "apng",
1121
1121
  props: {
1122
1122
  ...props,
@@ -1309,12 +1309,12 @@ var _sfc_main$7 = /* @__PURE__ */ defineComponent({
1309
1309
  }
1310
1310
  });
1311
1311
 
1312
- function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
1312
+ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
1313
1313
  return renderSlot(_ctx.$slots, "default");
1314
1314
  }
1315
- var ApngComp = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$7], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/pixi-frame/src/apng.vue"]]);
1315
+ var ApngComp = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$8], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/pixi-frame/src/apng.vue"]]);
1316
1316
 
1317
- var _sfc_main$6 = /* @__PURE__ */ defineComponent({
1317
+ var _sfc_main$7 = /* @__PURE__ */ defineComponent({
1318
1318
  __name: "bitmap-generator",
1319
1319
  props: {
1320
1320
  ...pickObject(props, {
@@ -1339,7 +1339,6 @@ var _sfc_main$6 = /* @__PURE__ */ defineComponent({
1339
1339
  });
1340
1340
  sprite.texture = texture;
1341
1341
  function updateTextureFromBitmap(bitmap) {
1342
- texture.source.resource?.close();
1343
1342
  texture.source.destroy();
1344
1343
  const source = new ImageSource({
1345
1344
  resource: bitmap
@@ -1392,12 +1391,12 @@ var _sfc_main$6 = /* @__PURE__ */ defineComponent({
1392
1391
  }
1393
1392
  });
1394
1393
 
1395
- function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
1394
+ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
1396
1395
  return renderSlot(_ctx.$slots, "default");
1397
1396
  }
1398
- var bitmapGenerator = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$6], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/pixi-frame/src/bitmap-generator.vue"]]);
1397
+ var bitmapGenerator = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$7], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/pixi-frame/src/bitmap-generator.vue"]]);
1399
1398
 
1400
- var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1399
+ var _sfc_main$6 = /* @__PURE__ */ defineComponent({
1401
1400
  __name: "bitmap",
1402
1401
  props: {
1403
1402
  ...pickObject(props, {
@@ -1449,7 +1448,7 @@ var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1449
1448
  if (frameIndex <= lastScheduledClearIndex.value)
1450
1449
  return;
1451
1450
  lastScheduledClearIndex.value = frameIndex;
1452
- Promise.resolve(sleep(500)).then(() => {
1451
+ sleep(0).then(() => {
1453
1452
  emit("setData", {
1454
1453
  k: frameIndex,
1455
1454
  v: null
@@ -1566,10 +1565,202 @@ var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1566
1565
  }
1567
1566
  });
1568
1567
 
1568
+ function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
1569
+ return renderSlot(_ctx.$slots, "default");
1570
+ }
1571
+ var Bitmap = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$6], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/pixi-frame/src/bitmap.vue"]]);
1572
+
1573
+ var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1574
+ __name: "buffer-image",
1575
+ props: {
1576
+ ...pickObject(props, {
1577
+ excludes: ["loop"]
1578
+ }),
1579
+ data: {
1580
+ type: Array,
1581
+ required: true
1582
+ },
1583
+ /**
1584
+ * Pixel format for BufferImageSource.
1585
+ * Default to rgba8unorm for broadest compatibility (WebGL often ignores format hints).
1586
+ */
1587
+ format: {
1588
+ type: String,
1589
+ default: "rgba8unorm"
1590
+ },
1591
+ frameIndex: {
1592
+ type: Number
1593
+ },
1594
+ height: {
1595
+ type: Number,
1596
+ required: true
1597
+ },
1598
+ width: {
1599
+ type: Number,
1600
+ required: true
1601
+ }
1602
+ },
1603
+ emits: {
1604
+ ...emits,
1605
+ "load": (e) => e,
1606
+ "update:frameIndex": null,
1607
+ "notFound": (_index) => true
1608
+ },
1609
+ setup(__props, { expose: __expose, emit: __emit }) {
1610
+ __expose();
1611
+ const props = __props;
1612
+ const emit = __emit;
1613
+ const { sprite, resizeSprite, application } = useSprite(props);
1614
+ const texture = new Texture({
1615
+ dynamic: true
1616
+ });
1617
+ sprite.texture = texture;
1618
+ function updateTexture(resource) {
1619
+ texture.source?.destroy();
1620
+ const source = new BufferImageSource({
1621
+ resource,
1622
+ height: props.height,
1623
+ width: props.width,
1624
+ format: props.format
1625
+ });
1626
+ texture.source = source;
1627
+ texture.update();
1628
+ resizeSprite();
1629
+ }
1630
+ emit("load", {
1631
+ application,
1632
+ sprite
1633
+ });
1634
+ const index = useModelComputed({
1635
+ default: 0,
1636
+ key: "frameIndex"
1637
+ }, props, emit);
1638
+ const lastScheduledClearIndex = ref(-1);
1639
+ function scheduleClearFrame(frameIndex) {
1640
+ if (frameIndex <= lastScheduledClearIndex.value)
1641
+ return;
1642
+ lastScheduledClearIndex.value = frameIndex;
1643
+ sleep(0).then(() => {
1644
+ emit("setData", {
1645
+ k: frameIndex,
1646
+ v: null
1647
+ });
1648
+ });
1649
+ }
1650
+ let animationId = null;
1651
+ let lastFrameTime = 0;
1652
+ let frameCount = 0;
1653
+ let lastFpsUpdateTime = 0;
1654
+ function startFrameLoop() {
1655
+ if (animationId !== null)
1656
+ return;
1657
+ lastFrameTime = performance.now();
1658
+ lastFpsUpdateTime = lastFrameTime;
1659
+ frameCount = 0;
1660
+ function renderFrame() {
1661
+ const now = performance.now();
1662
+ const frameDuration = 1e3 / props.frameRate;
1663
+ const delta = now - lastFrameTime;
1664
+ if (delta >= frameDuration) {
1665
+ lastFrameTime = now - delta % frameDuration;
1666
+ drawFrame();
1667
+ frameCount++;
1668
+ const elapsed = now - lastFpsUpdateTime;
1669
+ if (elapsed >= 1e3) {
1670
+ const currentFps = Math.round(frameCount * 1e3 / elapsed);
1671
+ console.log(`[Bitmap] FPS: ${currentFps}`);
1672
+ frameCount = 0;
1673
+ lastFpsUpdateTime = now;
1674
+ }
1675
+ }
1676
+ if (props.status === TickerStatus.playing) {
1677
+ animationId = requestAnimationFrame(renderFrame);
1678
+ } else {
1679
+ animationId = null;
1680
+ }
1681
+ }
1682
+ function drawFrame() {
1683
+ if (props.data.length === 0 || props.status !== TickerStatus.playing) {
1684
+ return;
1685
+ }
1686
+ const bitmap = props.data[index.value];
1687
+ if (bitmap) {
1688
+ const originIndex = index.value - 1;
1689
+ if (originIndex >= 0) {
1690
+ scheduleClearFrame(originIndex);
1691
+ }
1692
+ updateTexture(bitmap);
1693
+ index.value = index.value + 1;
1694
+ } else {
1695
+ console.warn(
1696
+ `Bitmap for index ${index.value} not found. Ensure the data is loaded.`
1697
+ );
1698
+ emit("notFound", index.value);
1699
+ }
1700
+ }
1701
+ animationId = requestAnimationFrame(renderFrame);
1702
+ }
1703
+ watchEffect(() => {
1704
+ if (props.prerender && index.value === 0 && props.data.length > 0 && props.data[0]) {
1705
+ updateTexture(props.data[0]);
1706
+ }
1707
+ });
1708
+ watch(() => props.status, (newStatus) => {
1709
+ newStatus === TickerStatus.play && play();
1710
+ newStatus === TickerStatus.pause && pause();
1711
+ newStatus === TickerStatus.stop && stop();
1712
+ }, { immediate: true });
1713
+ function play() {
1714
+ if (props.data.length > 0) {
1715
+ emit("update:status", TickerStatus.playing);
1716
+ startFrameLoop();
1717
+ } else {
1718
+ emit("update:status", TickerStatus.stopped);
1719
+ }
1720
+ }
1721
+ function pause() {
1722
+ emit("update:status", TickerStatus.paused);
1723
+ }
1724
+ function stop() {
1725
+ emit("update:status", TickerStatus.stopped);
1726
+ if (animationId !== null) {
1727
+ cancelAnimationFrame(animationId);
1728
+ animationId = null;
1729
+ }
1730
+ emit("update:data", []);
1731
+ index.value = 0;
1732
+ lastScheduledClearIndex.value = -1;
1733
+ }
1734
+ onBeforeUnmount(() => {
1735
+ stop();
1736
+ texture.destroy();
1737
+ });
1738
+ const __returned__ = { props, emit, sprite, resizeSprite, application, texture, updateTexture, index, lastScheduledClearIndex, scheduleClearFrame, get animationId() {
1739
+ return animationId;
1740
+ }, set animationId(v) {
1741
+ animationId = v;
1742
+ }, get lastFrameTime() {
1743
+ return lastFrameTime;
1744
+ }, set lastFrameTime(v) {
1745
+ lastFrameTime = v;
1746
+ }, get frameCount() {
1747
+ return frameCount;
1748
+ }, set frameCount(v) {
1749
+ frameCount = v;
1750
+ }, get lastFpsUpdateTime() {
1751
+ return lastFpsUpdateTime;
1752
+ }, set lastFpsUpdateTime(v) {
1753
+ lastFpsUpdateTime = v;
1754
+ }, startFrameLoop, play, pause, stop };
1755
+ Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
1756
+ return __returned__;
1757
+ }
1758
+ });
1759
+
1569
1760
  function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
1570
1761
  return renderSlot(_ctx.$slots, "default");
1571
1762
  }
1572
- var Bitmap = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$5], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/pixi-frame/src/bitmap.vue"]]);
1763
+ var bufferImage = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$5], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/pixi-frame/src/buffer-image.vue"]]);
1573
1764
 
1574
1765
  var _sfc_main$4 = /* @__PURE__ */ defineComponent({
1575
1766
  __name: "core",
@@ -2038,4 +2229,4 @@ VkPixiFrame.install = (app) => {
2038
2229
  app.component(VkPixiFrame.name || "VkPixiFrame", VkPixiFrame);
2039
2230
  };
2040
2231
 
2041
- export { VkPixiFrame, ApngComp as VkPixiFrameApng, Bitmap as VkPixiFrameBitmap, bitmapGenerator as VkPixiFrameBitmapGenerator, core as VkPixiFrameCore, ProviderComp as VkPixiFrameProvider, VideoComp as VkPixiFrameVideo, ViewComp as VkPixiFrameView, types as __VkPixiFrame, VkPixiFrame as default, usePixiApp, useSprite };
2232
+ export { VkPixiFrame, ApngComp as VkPixiFrameApng, Bitmap as VkPixiFrameBitmap, bitmapGenerator as VkPixiFrameBitmapGenerator, bufferImage as VkPixiFrameBufferImage, core as VkPixiFrameCore, ProviderComp as VkPixiFrameProvider, VideoComp as VkPixiFrameVideo, ViewComp as VkPixiFrameView, types as __VkPixiFrame, VkPixiFrame as default, usePixiApp, useSprite };
@@ -0,0 +1,211 @@
1
+ import type { TEXTURE_FORMATS } from 'pixi.js';
2
+ import type { PropType } from 'vue';
3
+ import type { LoadEvent } from './types';
4
+ import { TickerStatus } from '@vunk/shared/enum';
5
+ import { Texture } from 'pixi.js';
6
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
7
+ data: {
8
+ type: ArrayConstructor;
9
+ required: true;
10
+ };
11
+ /**
12
+ * Pixel format for BufferImageSource.
13
+ * Default to rgba8unorm for broadest compatibility (WebGL often ignores format hints).
14
+ */
15
+ format: {
16
+ type: PropType<TEXTURE_FORMATS>;
17
+ default: TEXTURE_FORMATS;
18
+ };
19
+ frameIndex: {
20
+ type: NumberConstructor;
21
+ };
22
+ height: {
23
+ type: NumberConstructor;
24
+ required: true;
25
+ };
26
+ width: {
27
+ type: NumberConstructor;
28
+ required: true;
29
+ };
30
+ visible: {
31
+ type: BooleanConstructor;
32
+ default: boolean;
33
+ };
34
+ resize: {
35
+ type: PropType<import("./types").Resize>;
36
+ default: undefined;
37
+ };
38
+ label: {
39
+ type: StringConstructor;
40
+ default: string;
41
+ };
42
+ status: {
43
+ type: PropType<TickerStatus>;
44
+ default: TickerStatus;
45
+ };
46
+ url: {
47
+ type: StringConstructor;
48
+ requierd: false;
49
+ };
50
+ prerender: {
51
+ type: BooleanConstructor;
52
+ default: boolean;
53
+ };
54
+ frameRate: {
55
+ type: NumberConstructor;
56
+ default: number;
57
+ };
58
+ }>, {
59
+ props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
60
+ data: {
61
+ type: ArrayConstructor;
62
+ required: true;
63
+ };
64
+ /**
65
+ * Pixel format for BufferImageSource.
66
+ * Default to rgba8unorm for broadest compatibility (WebGL often ignores format hints).
67
+ */
68
+ format: {
69
+ type: PropType<TEXTURE_FORMATS>;
70
+ default: TEXTURE_FORMATS;
71
+ };
72
+ frameIndex: {
73
+ type: NumberConstructor;
74
+ };
75
+ height: {
76
+ type: NumberConstructor;
77
+ required: true;
78
+ };
79
+ width: {
80
+ type: NumberConstructor;
81
+ required: true;
82
+ };
83
+ visible: {
84
+ type: BooleanConstructor;
85
+ default: boolean;
86
+ };
87
+ resize: {
88
+ type: PropType<import("./types").Resize>;
89
+ default: undefined;
90
+ };
91
+ label: {
92
+ type: StringConstructor;
93
+ default: string;
94
+ };
95
+ status: {
96
+ type: PropType<TickerStatus>;
97
+ default: TickerStatus;
98
+ };
99
+ url: {
100
+ type: StringConstructor;
101
+ requierd: false;
102
+ };
103
+ prerender: {
104
+ type: BooleanConstructor;
105
+ default: boolean;
106
+ };
107
+ frameRate: {
108
+ type: NumberConstructor;
109
+ default: number;
110
+ };
111
+ }>> & Readonly<{
112
+ onLoad?: ((e: LoadEvent) => any) | undefined;
113
+ "onUpdate:status"?: ((...args: any[]) => any) | undefined;
114
+ onSetData?: ((...args: any[]) => any) | undefined;
115
+ "onUpdate:data"?: ((...args: any[]) => any) | undefined;
116
+ "onUpdate:frameIndex"?: ((...args: any[]) => any) | undefined;
117
+ onNotFound?: ((_index: number) => any) | undefined;
118
+ }> & {}>;
119
+ emit: ((event: "load", e: LoadEvent) => void) & ((event: "update:status", ...args: any[]) => void) & ((event: "setData", ...args: any[]) => void) & ((event: "update:data", ...args: any[]) => void) & ((event: "update:frameIndex", ...args: any[]) => void) & ((event: "notFound", _index: number) => void);
120
+ sprite: import("pixi.js").Sprite;
121
+ resizeSprite: () => void;
122
+ application: import("pixi.js").Application<import("pixi.js").Renderer>;
123
+ texture: Texture<import("pixi.js").TextureSource<any>>;
124
+ updateTexture: (resource: any) => void;
125
+ index: import("vue").WritableComputedRef<number, number>;
126
+ lastScheduledClearIndex: import("vue").Ref<number, number>;
127
+ scheduleClearFrame: (frameIndex: number) => void;
128
+ animationId: number | null;
129
+ lastFrameTime: number;
130
+ frameCount: number;
131
+ lastFpsUpdateTime: number;
132
+ startFrameLoop: () => void;
133
+ play: () => void;
134
+ pause: () => void;
135
+ stop: () => void;
136
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
137
+ load: (e: LoadEvent) => LoadEvent;
138
+ 'update:frameIndex': null;
139
+ notFound: (_index: number) => true;
140
+ 'update:status': null;
141
+ 'update:data': null;
142
+ setData: null;
143
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
144
+ data: {
145
+ type: ArrayConstructor;
146
+ required: true;
147
+ };
148
+ /**
149
+ * Pixel format for BufferImageSource.
150
+ * Default to rgba8unorm for broadest compatibility (WebGL often ignores format hints).
151
+ */
152
+ format: {
153
+ type: PropType<TEXTURE_FORMATS>;
154
+ default: TEXTURE_FORMATS;
155
+ };
156
+ frameIndex: {
157
+ type: NumberConstructor;
158
+ };
159
+ height: {
160
+ type: NumberConstructor;
161
+ required: true;
162
+ };
163
+ width: {
164
+ type: NumberConstructor;
165
+ required: true;
166
+ };
167
+ visible: {
168
+ type: BooleanConstructor;
169
+ default: boolean;
170
+ };
171
+ resize: {
172
+ type: PropType<import("./types").Resize>;
173
+ default: undefined;
174
+ };
175
+ label: {
176
+ type: StringConstructor;
177
+ default: string;
178
+ };
179
+ status: {
180
+ type: PropType<TickerStatus>;
181
+ default: TickerStatus;
182
+ };
183
+ url: {
184
+ type: StringConstructor;
185
+ requierd: false;
186
+ };
187
+ prerender: {
188
+ type: BooleanConstructor;
189
+ default: boolean;
190
+ };
191
+ frameRate: {
192
+ type: NumberConstructor;
193
+ default: number;
194
+ };
195
+ }>> & Readonly<{
196
+ onLoad?: ((e: LoadEvent) => any) | undefined;
197
+ "onUpdate:status"?: ((...args: any[]) => any) | undefined;
198
+ onSetData?: ((...args: any[]) => any) | undefined;
199
+ "onUpdate:data"?: ((...args: any[]) => any) | undefined;
200
+ "onUpdate:frameIndex"?: ((...args: any[]) => any) | undefined;
201
+ onNotFound?: ((_index: number) => any) | undefined;
202
+ }>, {
203
+ visible: boolean;
204
+ resize: import("./types").Resize;
205
+ label: string;
206
+ status: TickerStatus;
207
+ prerender: boolean;
208
+ frameRate: number;
209
+ format: TEXTURE_FORMATS;
210
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
211
+ export default _default;
@@ -84,6 +84,10 @@ const props = {
84
84
  attachmentsProps: {
85
85
  type: Object,
86
86
  default: () => ({})
87
+ },
88
+ attachmentsPlaceholder: {
89
+ type: String,
90
+ default: "\u70B9\u51FB\u4E0A\u4F20\u6216\u62D6\u62FD\u6587\u4EF6\u5230\u6B64\u5904"
87
91
  }
88
92
  };
89
93
  const emits = {
@@ -272,7 +276,7 @@ var _sfc_main = /* @__PURE__ */defineComponent({
272
276
  return {
273
277
  icon: createVNode(CloudUploadOutlined, null, null),
274
278
  title: "\u4E0A\u4F20\u6587\u4EF6",
275
- description: "\u70B9\u51FB\u4E0A\u4F20\u6216\u62D6\u62FD\u6587\u4EF6\u5230\u6B64\u5904"
279
+ description: props.attachmentsPlaceholder
276
280
  };
277
281
  }
278
282
  };
@@ -97,6 +97,10 @@ export declare const props: {
97
97
  type: ObjectConstructor;
98
98
  default: () => {};
99
99
  };
100
+ attachmentsPlaceholder: {
101
+ type: StringConstructor;
102
+ default: string;
103
+ };
100
104
  };
101
105
  export declare const emits: {
102
106
  'update:fileList': (_: UploadFile[]) => boolean;
@@ -65,6 +65,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
65
65
  type: ObjectConstructor;
66
66
  default: () => {};
67
67
  };
68
+ attachmentsPlaceholder: {
69
+ type: StringConstructor;
70
+ default: string;
71
+ };
68
72
  }>, {
69
73
  props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
70
74
  fileList: {
@@ -129,6 +133,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
129
133
  type: ObjectConstructor;
130
134
  default: () => {};
131
135
  };
136
+ attachmentsPlaceholder: {
137
+ type: StringConstructor;
138
+ default: string;
139
+ };
132
140
  }>> & Readonly<{
133
141
  onCancel?: ((...args: any[]) => any) | undefined;
134
142
  onSubmit?: ((_: string) => any) | undefined;
@@ -624,6 +632,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
624
632
  type: ObjectConstructor;
625
633
  default: () => {};
626
634
  };
635
+ attachmentsPlaceholder: {
636
+ type: StringConstructor;
637
+ default: string;
638
+ };
627
639
  }>> & Readonly<{
628
640
  onCancel?: ((...args: any[]) => any) | undefined;
629
641
  onSubmit?: ((_: string) => any) | undefined;
@@ -645,5 +657,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
645
657
  maxRows?: number;
646
658
  };
647
659
  attachmentsProps: Record<string, any>;
660
+ attachmentsPlaceholder: string;
648
661
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
649
662
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vunk/plus",
3
- "version": "1.11.6",
3
+ "version": "1.11.8",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "ISC",