@vunk/plus 1.11.5 → 1.11.7

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,6 +1339,7 @@ var _sfc_main$6 = /* @__PURE__ */ defineComponent({
1339
1339
  });
1340
1340
  sprite.texture = texture;
1341
1341
  function updateTextureFromBitmap(bitmap) {
1342
+ texture.source.resource?.close();
1342
1343
  texture.source.destroy();
1343
1344
  const source = new ImageSource({
1344
1345
  resource: bitmap
@@ -1391,12 +1392,12 @@ var _sfc_main$6 = /* @__PURE__ */ defineComponent({
1391
1392
  }
1392
1393
  });
1393
1394
 
1394
- function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
1395
+ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
1395
1396
  return renderSlot(_ctx.$slots, "default");
1396
1397
  }
1397
- 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"]]);
1398
+ 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"]]);
1398
1399
 
1399
- var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1400
+ var _sfc_main$6 = /* @__PURE__ */ defineComponent({
1400
1401
  __name: "bitmap",
1401
1402
  props: {
1402
1403
  ...pickObject(props, {
@@ -1426,6 +1427,7 @@ var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1426
1427
  });
1427
1428
  sprite.texture = texture;
1428
1429
  function updateTextureFromBitmap(bitmap) {
1430
+ texture.source?.resource?.close();
1429
1431
  texture.source?.destroy();
1430
1432
  const source = new ImageSource({
1431
1433
  resource: bitmap
@@ -1447,7 +1449,7 @@ var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1447
1449
  if (frameIndex <= lastScheduledClearIndex.value)
1448
1450
  return;
1449
1451
  lastScheduledClearIndex.value = frameIndex;
1450
- Promise.resolve(sleep(500)).then(() => {
1452
+ sleep(0).then(() => {
1451
1453
  emit("setData", {
1452
1454
  k: frameIndex,
1453
1455
  v: null
@@ -1564,10 +1566,202 @@ var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1564
1566
  }
1565
1567
  });
1566
1568
 
1569
+ function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
1570
+ return renderSlot(_ctx.$slots, "default");
1571
+ }
1572
+ 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"]]);
1573
+
1574
+ var _sfc_main$5 = /* @__PURE__ */ defineComponent({
1575
+ __name: "buffer-image",
1576
+ props: {
1577
+ ...pickObject(props, {
1578
+ excludes: ["loop"]
1579
+ }),
1580
+ data: {
1581
+ type: Array,
1582
+ required: true
1583
+ },
1584
+ /**
1585
+ * Pixel format for BufferImageSource.
1586
+ * Default to rgba8unorm for broadest compatibility (WebGL often ignores format hints).
1587
+ */
1588
+ format: {
1589
+ type: String,
1590
+ default: "rgba8unorm"
1591
+ },
1592
+ frameIndex: {
1593
+ type: Number
1594
+ },
1595
+ height: {
1596
+ type: Number,
1597
+ required: true
1598
+ },
1599
+ width: {
1600
+ type: Number,
1601
+ required: true
1602
+ }
1603
+ },
1604
+ emits: {
1605
+ ...emits,
1606
+ "load": (e) => e,
1607
+ "update:frameIndex": null,
1608
+ "notFound": (_index) => true
1609
+ },
1610
+ setup(__props, { expose: __expose, emit: __emit }) {
1611
+ __expose();
1612
+ const props = __props;
1613
+ const emit = __emit;
1614
+ const { sprite, resizeSprite, application } = useSprite(props);
1615
+ const texture = new Texture({
1616
+ dynamic: true
1617
+ });
1618
+ sprite.texture = texture;
1619
+ function updateTexture(resource) {
1620
+ texture.source?.destroy();
1621
+ const source = new BufferImageSource({
1622
+ resource,
1623
+ height: props.height,
1624
+ width: props.width,
1625
+ format: props.format
1626
+ });
1627
+ texture.source = source;
1628
+ texture.update();
1629
+ resizeSprite();
1630
+ }
1631
+ emit("load", {
1632
+ application,
1633
+ sprite
1634
+ });
1635
+ const index = useModelComputed({
1636
+ default: 0,
1637
+ key: "frameIndex"
1638
+ }, props, emit);
1639
+ const lastScheduledClearIndex = ref(-1);
1640
+ function scheduleClearFrame(frameIndex) {
1641
+ if (frameIndex <= lastScheduledClearIndex.value)
1642
+ return;
1643
+ lastScheduledClearIndex.value = frameIndex;
1644
+ sleep(0).then(() => {
1645
+ emit("setData", {
1646
+ k: frameIndex,
1647
+ v: null
1648
+ });
1649
+ });
1650
+ }
1651
+ let animationId = null;
1652
+ let lastFrameTime = 0;
1653
+ let frameCount = 0;
1654
+ let lastFpsUpdateTime = 0;
1655
+ function startFrameLoop() {
1656
+ if (animationId !== null)
1657
+ return;
1658
+ lastFrameTime = performance.now();
1659
+ lastFpsUpdateTime = lastFrameTime;
1660
+ frameCount = 0;
1661
+ function renderFrame() {
1662
+ const now = performance.now();
1663
+ const frameDuration = 1e3 / props.frameRate;
1664
+ const delta = now - lastFrameTime;
1665
+ if (delta >= frameDuration) {
1666
+ lastFrameTime = now - delta % frameDuration;
1667
+ drawFrame();
1668
+ frameCount++;
1669
+ const elapsed = now - lastFpsUpdateTime;
1670
+ if (elapsed >= 1e3) {
1671
+ const currentFps = Math.round(frameCount * 1e3 / elapsed);
1672
+ console.log(`[Bitmap] FPS: ${currentFps}`);
1673
+ frameCount = 0;
1674
+ lastFpsUpdateTime = now;
1675
+ }
1676
+ }
1677
+ if (props.status === TickerStatus.playing) {
1678
+ animationId = requestAnimationFrame(renderFrame);
1679
+ } else {
1680
+ animationId = null;
1681
+ }
1682
+ }
1683
+ function drawFrame() {
1684
+ if (props.data.length === 0 || props.status !== TickerStatus.playing) {
1685
+ return;
1686
+ }
1687
+ const bitmap = props.data[index.value];
1688
+ if (bitmap) {
1689
+ const originIndex = index.value - 1;
1690
+ if (originIndex >= 0) {
1691
+ scheduleClearFrame(originIndex);
1692
+ }
1693
+ updateTexture(bitmap);
1694
+ index.value = index.value + 1;
1695
+ } else {
1696
+ console.warn(
1697
+ `Bitmap for index ${index.value} not found. Ensure the data is loaded.`
1698
+ );
1699
+ emit("notFound", index.value);
1700
+ }
1701
+ }
1702
+ animationId = requestAnimationFrame(renderFrame);
1703
+ }
1704
+ watchEffect(() => {
1705
+ if (props.prerender && index.value === 0 && props.data.length > 0 && props.data[0]) {
1706
+ updateTexture(props.data[0]);
1707
+ }
1708
+ });
1709
+ watch(() => props.status, (newStatus) => {
1710
+ newStatus === TickerStatus.play && play();
1711
+ newStatus === TickerStatus.pause && pause();
1712
+ newStatus === TickerStatus.stop && stop();
1713
+ }, { immediate: true });
1714
+ function play() {
1715
+ if (props.data.length > 0) {
1716
+ emit("update:status", TickerStatus.playing);
1717
+ startFrameLoop();
1718
+ } else {
1719
+ emit("update:status", TickerStatus.stopped);
1720
+ }
1721
+ }
1722
+ function pause() {
1723
+ emit("update:status", TickerStatus.paused);
1724
+ }
1725
+ function stop() {
1726
+ emit("update:status", TickerStatus.stopped);
1727
+ if (animationId !== null) {
1728
+ cancelAnimationFrame(animationId);
1729
+ animationId = null;
1730
+ }
1731
+ emit("update:data", []);
1732
+ index.value = 0;
1733
+ lastScheduledClearIndex.value = -1;
1734
+ }
1735
+ onBeforeUnmount(() => {
1736
+ stop();
1737
+ texture.destroy();
1738
+ });
1739
+ const __returned__ = { props, emit, sprite, resizeSprite, application, texture, updateTexture, index, lastScheduledClearIndex, scheduleClearFrame, get animationId() {
1740
+ return animationId;
1741
+ }, set animationId(v) {
1742
+ animationId = v;
1743
+ }, get lastFrameTime() {
1744
+ return lastFrameTime;
1745
+ }, set lastFrameTime(v) {
1746
+ lastFrameTime = v;
1747
+ }, get frameCount() {
1748
+ return frameCount;
1749
+ }, set frameCount(v) {
1750
+ frameCount = v;
1751
+ }, get lastFpsUpdateTime() {
1752
+ return lastFpsUpdateTime;
1753
+ }, set lastFpsUpdateTime(v) {
1754
+ lastFpsUpdateTime = v;
1755
+ }, startFrameLoop, play, pause, stop };
1756
+ Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
1757
+ return __returned__;
1758
+ }
1759
+ });
1760
+
1567
1761
  function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
1568
1762
  return renderSlot(_ctx.$slots, "default");
1569
1763
  }
1570
- 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"]]);
1764
+ 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"]]);
1571
1765
 
1572
1766
  var _sfc_main$4 = /* @__PURE__ */ defineComponent({
1573
1767
  __name: "core",
@@ -2036,4 +2230,4 @@ VkPixiFrame.install = (app) => {
2036
2230
  app.component(VkPixiFrame.name || "VkPixiFrame", VkPixiFrame);
2037
2231
  };
2038
2232
 
2039
- 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 };
2233
+ 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.5",
3
+ "version": "1.11.7",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "ISC",