@vunk/plus 1.6.7 → 1.6.9

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 (162) hide show
  1. package/components/SendOutlined.mjs +8 -6
  2. package/components/SharedSystems.mjs +290 -72
  3. package/components/WebGLRenderer.mjs +32 -20
  4. package/components/WebGPURenderer.mjs +48 -10
  5. package/components/agent-chat-provider/index.d.ts +7 -0
  6. package/components/agent-chat-provider/index.mjs +7 -4
  7. package/components/agent-chat-provider/src/api.d.ts +3 -0
  8. package/components/agent-chat-provider/src/const-roles.d.ts +8 -0
  9. package/components/agent-chat-provider/src/const.d.ts +1 -0
  10. package/components/agent-chat-provider/src/index.vue.d.ts +22 -0
  11. package/components/agent-chat-provider/src/types.d.ts +50 -0
  12. package/components/agent-chat-provider/src/use.d.ts +5 -0
  13. package/components/avatar/index.d.ts +4 -0
  14. package/components/avatar/index.mjs +2 -2
  15. package/components/avatar/src/ctx.d.ts +6 -0
  16. package/components/avatar/src/index.vue.d.ts +180 -0
  17. package/components/avatar/src/types.d.ts +1 -0
  18. package/components/broadcasting-markdown/index.d.ts +7 -0
  19. package/components/broadcasting-markdown/index.mjs +78 -158
  20. package/components/broadcasting-markdown/src/const.d.ts +13 -0
  21. package/components/broadcasting-markdown/src/ctx.d.ts +129 -0
  22. package/components/broadcasting-markdown/src/howler-speech.vue.d.ts +104 -0
  23. package/components/broadcasting-markdown/src/index.vue.d.ts +439 -0
  24. package/components/broadcasting-markdown/src/paragraph.vue.d.ts +79 -0
  25. package/components/broadcasting-markdown/src/speech-error.vue.d.ts +67 -0
  26. package/components/broadcasting-markdown/src/types.d.ts +26 -0
  27. package/components/broadcasting-markdown/src/use.d.ts +21 -0
  28. package/components/browserAll.mjs +333 -562
  29. package/components/bubble-list/index.d.ts +5 -0
  30. package/components/bubble-list/index.mjs +91 -72
  31. package/components/bubble-list/src/ctx.d.ts +32 -0
  32. package/components/bubble-list/src/index.vue.d.ts +810 -0
  33. package/components/bubble-list/src/types.d.ts +4 -0
  34. package/components/bubble-templates/index.d.ts +4 -0
  35. package/components/bubble-templates/index.mjs +83 -68
  36. package/components/bubble-templates/src/index.vue.d.ts +595 -0
  37. package/components/bubble-templates/src/types.d.ts +40 -0
  38. package/components/chat-independent/index.d.ts +4 -0
  39. package/components/chat-independent/index.mjs +136 -115
  40. package/components/chat-independent/src/const.d.ts +13 -0
  41. package/components/chat-independent/src/ctx.d.ts +21 -0
  42. package/components/chat-independent/src/index.vue.d.ts +2429 -0
  43. package/components/chat-independent/src/types.d.ts +13 -0
  44. package/components/colorToUniform.mjs +2 -0
  45. package/components/index.d.ts +0 -0
  46. package/components/index2.mjs +11896 -8381
  47. package/components/init.mjs +1724 -998
  48. package/components/lottie-animation/index.d.ts +4 -0
  49. package/components/lottie-animation/index.mjs +2 -2
  50. package/components/lottie-animation/src/ctx.d.ts +10 -0
  51. package/components/lottie-animation/src/index.vue.d.ts +21 -0
  52. package/components/lottie-animation/src/types.d.ts +4 -0
  53. package/components/metahuman-broadcasting/index.d.ts +5 -0
  54. package/components/metahuman-broadcasting/index.mjs +57 -40
  55. package/components/metahuman-broadcasting/src/ctx.d.ts +57 -0
  56. package/components/metahuman-broadcasting/src/index.vue.d.ts +885 -0
  57. package/components/metahuman-broadcasting/src/types.d.ts +1 -0
  58. package/components/monaco-editor/index.d.ts +5 -0
  59. package/components/monaco-editor/index.mjs +2 -2
  60. package/components/monaco-editor/src/ctx.d.ts +23 -0
  61. package/components/monaco-editor/src/index.vue.d.ts +40 -0
  62. package/components/monaco-editor/src/types.d.ts +1 -0
  63. package/components/monaco-environment/index.d.ts +4 -0
  64. package/components/monaco-environment/index.mjs +1 -1
  65. package/components/monaco-environment/src/ctx.d.ts +8 -0
  66. package/components/monaco-environment/src/index.vue.d.ts +2 -0
  67. package/components/monaco-environment/src/types.d.ts +1 -0
  68. package/components/pixi-frame/index.d.ts +11 -0
  69. package/components/pixi-frame/index.mjs +2 -2
  70. package/components/pixi-frame/src/apng.vue.d.ts +161 -0
  71. package/components/pixi-frame/src/bitmap.vue.d.ts +158 -0
  72. package/components/pixi-frame/src/core.vue.d.ts +173 -0
  73. package/components/pixi-frame/src/ctx.d.ts +55 -0
  74. package/components/pixi-frame/src/index.vue.d.ts +591 -0
  75. package/components/pixi-frame/src/provider.vue.d.ts +2 -0
  76. package/components/pixi-frame/src/types.d.ts +17 -0
  77. package/components/pixi-frame/src/use.d.ts +16 -0
  78. package/components/pixi-frame/src/useSprite.d.ts +12 -0
  79. package/components/pixi-frame/src/video.vue.d.ts +159 -0
  80. package/components/pixi-frame/src/view.vue.d.ts +29 -0
  81. package/components/recorder-button/index.d.ts +4 -0
  82. package/components/recorder-button/index.mjs +2 -2
  83. package/components/recorder-button/src/ctx.d.ts +41 -0
  84. package/components/recorder-button/src/index.vue.d.ts +333 -0
  85. package/components/recorder-button/src/speech-to-text.d.ts +1 -0
  86. package/components/recorder-button/src/types.d.ts +7 -0
  87. package/components/routes-menu-content/index.d.ts +4 -0
  88. package/components/routes-menu-content/index.mjs +5 -5
  89. package/components/routes-menu-content/src/ctx.d.ts +17 -0
  90. package/components/routes-menu-content/src/index.vue.d.ts +350 -0
  91. package/components/routes-menu-content/src/item/core/ctx.d.ts +18 -0
  92. package/components/routes-menu-content/src/item/core/index.vue.d.ts +185 -0
  93. package/components/routes-menu-content/src/item/ctx.d.ts +14 -0
  94. package/components/routes-menu-content/src/item/index.vue.d.ts +316 -0
  95. package/components/routes-menu-content/src/types.d.ts +1 -0
  96. package/components/sender/index.css +0 -8
  97. package/components/sender/index.d.ts +4 -0
  98. package/components/sender/index.mjs +101 -69
  99. package/components/sender/src/SenderHeader.vue.d.ts +270 -0
  100. package/components/sender/src/ctx.d.ts +64 -0
  101. package/components/sender/src/index.vue.d.ts +779 -0
  102. package/components/sender/src/types.d.ts +1 -0
  103. package/components/speech-button/index.d.ts +4 -0
  104. package/components/speech-button/index.mjs +14 -7
  105. package/components/speech-button/src/LoadingIcon.vue.d.ts +2 -0
  106. package/components/speech-button/src/RecordingIcon.vue.d.ts +2 -0
  107. package/components/speech-button/src/ctx.d.ts +10 -0
  108. package/components/speech-button/src/index.vue.d.ts +22 -0
  109. package/components/speech-button/src/types.d.ts +1 -0
  110. package/components/table-columns/index.d.ts +5 -0
  111. package/components/table-columns/index.mjs +6 -3
  112. package/components/table-columns/src/ctx.d.ts +59 -0
  113. package/components/table-columns/src/el-ctx.d.ts +57 -0
  114. package/components/table-columns/src/index.vue.d.ts +266 -0
  115. package/components/table-columns/src/types.d.ts +21 -0
  116. package/components/tables-v1/index.d.ts +5 -0
  117. package/components/tables-v1/index.mjs +3 -3
  118. package/components/tables-v1/src/ctx.d.ts +280 -0
  119. package/components/tables-v1/src/el-ctx.d.ts +262 -0
  120. package/components/tables-v1/src/index.vue.d.ts +3054 -0
  121. package/components/tables-v1/src/types.d.ts +3 -0
  122. package/components/tables-v1-checkbox/index.d.ts +5 -0
  123. package/components/tables-v1-checkbox/index.mjs +33 -269
  124. package/components/tables-v1-checkbox/src/ctx.d.ts +313 -0
  125. package/components/tables-v1-checkbox/src/index.vue.d.ts +3831 -0
  126. package/components/tables-v1-checkbox/src/types.d.ts +1 -0
  127. package/components/text/index.d.ts +4 -0
  128. package/components/text/index.mjs +52 -42
  129. package/components/text/src/ctx.d.ts +341 -0
  130. package/components/text/src/index.vue.d.ts +4593 -0
  131. package/components/text/src/types.d.ts +1 -0
  132. package/components/typing-markdown/index.d.ts +4 -0
  133. package/components/typing-markdown/index.mjs +2 -2
  134. package/components/typing-markdown/src/core.d.ts +2 -0
  135. package/components/typing-markdown/src/ctx.d.ts +41 -0
  136. package/components/typing-markdown/src/index.vue.d.ts +75 -0
  137. package/components/typing-markdown/src/types.d.ts +1 -0
  138. package/components/vditor/index.d.ts +5 -0
  139. package/components/vditor/index.mjs +9 -5
  140. package/components/vditor/src/ctx.d.ts +38 -0
  141. package/components/vditor/src/handle-fullscreen.vue.d.ts +18 -0
  142. package/components/vditor/src/handle-value.vue.d.ts +18 -0
  143. package/components/vditor/src/index.vue.d.ts +143 -0
  144. package/components/vditor/src/types.d.ts +9 -0
  145. package/components/vditor/src/use.d.ts +4 -0
  146. package/components/webworkerAll.mjs +1 -1
  147. package/composables/el-breakpoints/index.d.ts +5 -5
  148. package/composables/recorder/index.mjs +191 -288
  149. package/icons/end/index.mjs +3 -3
  150. package/icons/end/src/avatar.d.ts +2 -11
  151. package/icons/end/src/icon.d.ts +2 -56
  152. package/icons/keyboard/index.mjs +3 -3
  153. package/icons/keyboard/src/avatar.d.ts +2 -11
  154. package/icons/keyboard/src/icon.d.ts +2 -56
  155. package/icons/start/index.mjs +3 -3
  156. package/icons/start/src/avatar.d.ts +2 -11
  157. package/icons/start/src/icon.d.ts +2 -56
  158. package/icons/voice/index.mjs +2 -2
  159. package/icons/voice/src/avatar.d.ts +2 -11
  160. package/icons/voice/src/icon.d.ts +2 -56
  161. package/index.css +0 -8
  162. package/package.json +1 -1
@@ -1,13 +1,13 @@
1
- import { E as ExtensionType, B as BufferUsage, w as warn, D as DOMAdapter, K as getAttributeInfoFromFormat, u as GlProgram, s as Shader, t as Texture, a3 as Geometry, j as TextureSource, S as STENCIL_MODES, O as Rectangle, i as CanvasSource, h as CLEAR, k as UniformGroup, q as getMaxTexturesPerBatch, M as Matrix, a4 as compileHighShaderGlProgram, a5 as colorBitGl, a6 as generateTextureBatchBitGl, a7 as roundPixelsBitGl, a8 as getBatchSamplersUniformGroup, A as AbstractRenderer, R as RendererType, e as extensions } from './index2.mjs';
1
+ import { E as ExtensionType, B as BufferUsage, w as warn, D as DOMAdapter, J as getAttributeInfoFromFormat, a2 as Geometry, t as GlProgram, q as Shader, s as Texture, j as TextureSource, a3 as checkMaxIfStatementsInShader, S as STENCIL_MODES, N as Rectangle, i as CanvasSource, h as CLEAR, k as UniformGroup, M as Matrix, a4 as compileHighShaderGlProgram, a5 as colorBitGl, a6 as generateTextureBatchBitGl, a7 as roundPixelsBitGl, a8 as getBatchSamplersUniformGroup, e as extensions, A as AbstractRenderer, R as RendererType } from './index2.mjs';
2
2
  import { S as State, b as localUniformBitGl } from './colorToUniform.mjs';
3
3
  import { e as ensureAttributes, G as GpuStencilModesToPixi, c as createUboSyncFunction, b as uboSyncFunctionsSTD40, U as UboSystem, R as RenderTargetSystem, B as BufferResource, d as uniformParsers, f as textureBitGl, S as SharedSystems, a as SharedRenderPipes } from './SharedSystems.mjs';
4
4
  import 'vue';
5
5
  import '@vunk/shared/enum';
6
6
  import '@vunk/shared/promise';
7
7
  import './_commonjsHelpers.mjs';
8
+ import './_plugin-vue_export-helper.mjs';
8
9
  import '@vunk/core/composables';
9
10
  import '@vunk/shared/object';
10
- import './_plugin-vue_export-helper.mjs';
11
11
 
12
12
  class GlBatchAdaptor {
13
13
  constructor() {
@@ -87,9 +87,7 @@ class GlBufferSystem {
87
87
  this._renderer = renderer;
88
88
  this._renderer.renderableGC.addManagedHash(this, "_gpuBuffers");
89
89
  }
90
- /**
91
- * @ignore
92
- */
90
+ /** @ignore */
93
91
  destroy() {
94
92
  this._renderer = null;
95
93
  this._gl = null;
@@ -98,9 +96,9 @@ class GlBufferSystem {
98
96
  }
99
97
  /** Sets up the renderer context and necessary buffers. */
100
98
  contextChange() {
101
- const gl = this._gl = this._renderer.gl;
99
+ this._gl = this._renderer.gl;
102
100
  this._gpuBuffers = /* @__PURE__ */ Object.create(null);
103
- this._maxBindings = gl.MAX_UNIFORM_BUFFER_BINDINGS ? gl.getParameter(gl.MAX_UNIFORM_BUFFER_BINDINGS) : 0;
101
+ this._maxBindings = this._renderer.limits.maxUniformBindings;
104
102
  }
105
103
  getGlBuffer(buffer) {
106
104
  return this._gpuBuffers[buffer.uid] || this.createGLBuffer(buffer);
@@ -1102,6 +1100,27 @@ GlEncoderSystem.extension = {
1102
1100
  name: "encoder"
1103
1101
  };
1104
1102
 
1103
+ class GlLimitsSystem {
1104
+ constructor(renderer) {
1105
+ this._renderer = renderer;
1106
+ }
1107
+ contextChange() {
1108
+ const gl = this._renderer.gl;
1109
+ this.maxTextures = gl.getParameter(gl.MAX_TEXTURE_IMAGE_UNITS);
1110
+ this.maxBatchableTextures = checkMaxIfStatementsInShader(this.maxTextures, gl);
1111
+ this.maxUniformBindings = gl.getParameter(gl.MAX_UNIFORM_BUFFER_BINDINGS);
1112
+ }
1113
+ destroy() {
1114
+ }
1115
+ }
1116
+ /** @ignore */
1117
+ GlLimitsSystem.extension = {
1118
+ type: [
1119
+ ExtensionType.WebGLSystem
1120
+ ],
1121
+ name: "limits"
1122
+ };
1123
+
1105
1124
  class GlRenderTarget {
1106
1125
  constructor() {
1107
1126
  this.width = -1;
@@ -1398,7 +1417,7 @@ class GlRenderTargetAdaptor {
1398
1417
  const gl = renderer.gl;
1399
1418
  const glRenderTarget = new GlRenderTarget();
1400
1419
  const colorTexture = renderTarget.colorTexture;
1401
- if (CanvasSource.test(colorTexture.resource)) {
1420
+ if (colorTexture instanceof CanvasSource) {
1402
1421
  this._renderer.context.ensureCanvasSize(renderTarget.colorTexture.resource);
1403
1422
  glRenderTarget.framebuffer = null;
1404
1423
  return glRenderTarget;
@@ -2021,10 +2040,7 @@ const defaultSyncData = {
2021
2040
  };
2022
2041
  class GlShaderSystem {
2023
2042
  constructor(renderer) {
2024
- /**
2025
- * @internal
2026
- * @private
2027
- */
2043
+ /** @internal */
2028
2044
  this._activeProgram = null;
2029
2045
  this._programDataHash = /* @__PURE__ */ Object.create(null);
2030
2046
  this._shaderSyncFunctions = /* @__PURE__ */ Object.create(null);
@@ -2036,7 +2052,6 @@ class GlShaderSystem {
2036
2052
  this._programDataHash = /* @__PURE__ */ Object.create(null);
2037
2053
  this._shaderSyncFunctions = /* @__PURE__ */ Object.create(null);
2038
2054
  this._activeProgram = null;
2039
- this.maxTextures = getMaxTexturesPerBatch();
2040
2055
  }
2041
2056
  /**
2042
2057
  * Changes the current shader to the one given in parameter.
@@ -2106,7 +2121,6 @@ class GlShaderSystem {
2106
2121
  /**
2107
2122
  * @param program - the program to get the data for
2108
2123
  * @internal
2109
- * @private
2110
2124
  */
2111
2125
  _getProgramData(program) {
2112
2126
  return this._programDataHash[program._key] || this._createProgramData(program);
@@ -2587,7 +2601,6 @@ const _GlStateSystem = class _GlStateSystem {
2587
2601
  setPolygonOffset(value, scale) {
2588
2602
  this.gl.polygonOffset(value, scale);
2589
2603
  }
2590
- // used
2591
2604
  /** Resets all the logic and disables the VAOs. */
2592
2605
  resetState() {
2593
2606
  this._glFrontFace = false;
@@ -2635,9 +2648,7 @@ const _GlStateSystem = class _GlStateSystem {
2635
2648
  static _checkPolygonOffset(system, state) {
2636
2649
  system.setPolygonOffset(1, state.polygonOffset);
2637
2650
  }
2638
- /**
2639
- * @ignore
2640
- */
2651
+ /** @ignore */
2641
2652
  destroy() {
2642
2653
  this.gl = null;
2643
2654
  this.checks.length = 0;
@@ -3463,13 +3474,13 @@ GlTextureSystem.extension = {
3463
3474
  };
3464
3475
 
3465
3476
  class GlGraphicsAdaptor {
3466
- init() {
3477
+ contextChange(renderer) {
3467
3478
  const uniforms = new UniformGroup({
3468
3479
  uColor: { value: new Float32Array([1, 1, 1, 1]), type: "vec4<f32>" },
3469
3480
  uTransformMatrix: { value: new Matrix(), type: "mat3x3<f32>" },
3470
3481
  uRound: { value: 0, type: "f32" }
3471
3482
  });
3472
- const maxTextures = getMaxTexturesPerBatch();
3483
+ const maxTextures = renderer.limits.maxBatchableTextures;
3473
3484
  const glProgram = compileHighShaderGlProgram({
3474
3485
  name: "graphics",
3475
3486
  bits: [
@@ -3583,6 +3594,7 @@ const DefaultWebGLSystems = [
3583
3594
  GlUboSystem,
3584
3595
  GlBackBufferSystem,
3585
3596
  GlContextSystem,
3597
+ GlLimitsSystem,
3586
3598
  GlBufferSystem,
3587
3599
  GlTextureSystem,
3588
3600
  GlRenderTargetSystem,
@@ -1,13 +1,13 @@
1
- import { g as getTextureBatchBindGroup, E as ExtensionType, f as fastCopy, D as DOMAdapter, S as STENCIL_MODES, B as BufferUsage, b as Buffer, c as BindGroup, d as createIdFromString, w as warn, h as CLEAR, i as CanvasSource, j as TextureSource, k as UniformGroup, l as CanvasPool, M as Matrix, m as compileHighShaderGpuProgram, n as colorBit, o as generateTextureBatchBit, p as roundPixelsBit, q as getMaxTexturesPerBatch, s as Shader, t as Texture, A as AbstractRenderer, R as RendererType, e as extensions } from './index2.mjs';
1
+ import { g as getTextureBatchBindGroup, E as ExtensionType, f as fastCopy, D as DOMAdapter, S as STENCIL_MODES, B as BufferUsage, b as Buffer, c as BindGroup, d as createIdFromString, w as warn, h as CLEAR, i as CanvasSource, j as TextureSource, k as UniformGroup, l as CanvasPool, M as Matrix, m as compileHighShaderGpuProgram, n as colorBit, o as generateTextureBatchBit, p as roundPixelsBit, q as Shader, s as Texture, e as extensions, A as AbstractRenderer, R as RendererType } from './index2.mjs';
2
2
  import { S as State, l as localUniformBitGroup2, a as localUniformBit } from './colorToUniform.mjs';
3
3
  import { c as createUboSyncFunction, u as uboSyncFunctionsWGSL, U as UboSystem, B as BufferResource, G as GpuStencilModesToPixi, e as ensureAttributes, R as RenderTargetSystem, t as textureBit, S as SharedSystems, a as SharedRenderPipes } from './SharedSystems.mjs';
4
4
  import 'vue';
5
5
  import '@vunk/shared/enum';
6
6
  import '@vunk/shared/promise';
7
7
  import './_commonjsHelpers.mjs';
8
+ import './_plugin-vue_export-helper.mjs';
8
9
  import '@vunk/core/composables';
9
10
  import '@vunk/shared/object';
10
- import './_plugin-vue_export-helper.mjs';
11
11
 
12
12
  const tempState = State.for2d();
13
13
  class GpuBatchAdaptor {
@@ -34,7 +34,11 @@ class GpuBatchAdaptor {
34
34
  const encoder = renderer.encoder;
35
35
  if (!batch.bindGroup) {
36
36
  const textureBatch = batch.textures;
37
- batch.bindGroup = getTextureBatchBindGroup(textureBatch.textures, textureBatch.count);
37
+ batch.bindGroup = getTextureBatchBindGroup(
38
+ textureBatch.textures,
39
+ textureBatch.count,
40
+ renderer.limits.maxBatchableTextures
41
+ );
38
42
  }
39
43
  tempState.blendMode = batch.blendMode;
40
44
  const gpuBindGroup = renderer.bindGroup.getBindGroup(
@@ -166,7 +170,7 @@ class GpuBufferSystem {
166
170
  data.buffer,
167
171
  0,
168
172
  // round to the nearest 4 bytes
169
- (buffer._updateSize || data.byteLength) + 3 & -4
173
+ (buffer._updateSize || data.byteLength) + 3 & ~3
170
174
  );
171
175
  }
172
176
  return gpuBuffer;
@@ -526,6 +530,25 @@ GpuEncoderSystem.extension = {
526
530
  priority: 1
527
531
  };
528
532
 
533
+ class GpuLimitsSystem {
534
+ constructor(renderer) {
535
+ this._renderer = renderer;
536
+ }
537
+ contextChange() {
538
+ this.maxTextures = this._renderer.device.gpu.device.limits.maxSampledTexturesPerShaderStage;
539
+ this.maxBatchableTextures = this.maxTextures;
540
+ }
541
+ destroy() {
542
+ }
543
+ }
544
+ /** @ignore */
545
+ GpuLimitsSystem.extension = {
546
+ type: [
547
+ ExtensionType.WebGPUSystem
548
+ ],
549
+ name: "limits"
550
+ };
551
+
529
552
  class GpuStencilSystem {
530
553
  constructor(renderer) {
531
554
  this._renderTargetStencilState = /* @__PURE__ */ Object.create(null);
@@ -1182,7 +1205,7 @@ class GpuRenderTargetAdaptor {
1182
1205
  renderTarget.isRoot = true;
1183
1206
  const gpuRenderTarget = new GpuRenderTarget();
1184
1207
  renderTarget.colorTextures.forEach((colorTexture, i) => {
1185
- if (CanvasSource.test(colorTexture.resource)) {
1208
+ if (colorTexture instanceof CanvasSource) {
1186
1209
  const context = colorTexture.resource.getContext(
1187
1210
  "webgpu"
1188
1211
  );
@@ -1269,7 +1292,6 @@ class GpuShaderSystem {
1269
1292
  }
1270
1293
  contextChange(gpu) {
1271
1294
  this._gpu = gpu;
1272
- this.maxTextures = gpu.device.limits.maxSampledTexturesPerShaderStage;
1273
1295
  }
1274
1296
  getProgramData(program) {
1275
1297
  return this._gpuProgramData[program._layoutKey] || this._createGPUProgramData(program);
@@ -1547,6 +1569,13 @@ const gpuUploadImageResource = {
1547
1569
  const resource = source.resource;
1548
1570
  if (!resource)
1549
1571
  return;
1572
+ if (globalThis.HTMLImageElement && resource instanceof HTMLImageElement) {
1573
+ const canvas = DOMAdapter.get().createCanvas(resource.width, resource.height);
1574
+ const context = canvas.getContext("2d");
1575
+ context.drawImage(resource, 0, 0, resource.width, resource.height);
1576
+ source.resource = canvas;
1577
+ warn("ImageSource: Image element passed, converting to canvas and replacing resource.");
1578
+ }
1550
1579
  const width = Math.min(gpuTexture.width, source.resourceWidth || source.pixelWidth);
1551
1580
  const height = Math.min(gpuTexture.height, source.resourceHeight || source.pixelHeight);
1552
1581
  const premultipliedAlpha = source.alphaMode === "premultiply-alpha-on-upload";
@@ -1753,7 +1782,7 @@ class GpuTextureSystem {
1753
1782
  usage |= GPUTextureUsage.RENDER_ATTACHMENT;
1754
1783
  usage |= GPUTextureUsage.COPY_SRC;
1755
1784
  }
1756
- const blockData = blockDataMap[source.format] || { blockWidth: 1, blockHeight: 1 };
1785
+ const blockData = blockDataMap[source.format] || { blockBytes: 4, blockWidth: 1, blockHeight: 1 };
1757
1786
  const width = Math.ceil(source.pixelWidth / blockData.blockWidth) * blockData.blockWidth;
1758
1787
  const height = Math.ceil(source.pixelHeight / blockData.blockHeight) * blockData.blockHeight;
1759
1788
  const textureDescriptor = {
@@ -1929,17 +1958,21 @@ GpuTextureSystem.extension = {
1929
1958
  };
1930
1959
 
1931
1960
  class GpuGraphicsAdaptor {
1932
- init() {
1961
+ constructor() {
1962
+ this._maxTextures = 0;
1963
+ }
1964
+ contextChange(renderer) {
1933
1965
  const localUniforms = new UniformGroup({
1934
1966
  uTransformMatrix: { value: new Matrix(), type: "mat3x3<f32>" },
1935
1967
  uColor: { value: new Float32Array([1, 1, 1, 1]), type: "vec4<f32>" },
1936
1968
  uRound: { value: 0, type: "f32" }
1937
1969
  });
1970
+ this._maxTextures = renderer.limits.maxBatchableTextures;
1938
1971
  const gpuProgram = compileHighShaderGpuProgram({
1939
1972
  name: "graphics",
1940
1973
  bits: [
1941
1974
  colorBit,
1942
- generateTextureBatchBit(getMaxTexturesPerBatch()),
1975
+ generateTextureBatchBit(this._maxTextures),
1943
1976
  localUniformBitGroup2,
1944
1977
  roundPixelsBit
1945
1978
  ]
@@ -1983,7 +2016,11 @@ class GpuGraphicsAdaptor {
1983
2016
  shader.groups[1] = batch.bindGroup;
1984
2017
  if (!batch.gpuBindGroup) {
1985
2018
  const textureBatch = batch.textures;
1986
- batch.bindGroup = getTextureBatchBindGroup(textureBatch.textures, textureBatch.count);
2019
+ batch.bindGroup = getTextureBatchBindGroup(
2020
+ textureBatch.textures,
2021
+ textureBatch.count,
2022
+ this._maxTextures
2023
+ );
1987
2024
  batch.gpuBindGroup = renderer.bindGroup.getBindGroup(
1988
2025
  batch.bindGroup,
1989
2026
  shader.gpuProgram,
@@ -2070,6 +2107,7 @@ const DefaultWebGPUSystems = [
2070
2107
  GpuUboSystem,
2071
2108
  GpuEncoderSystem,
2072
2109
  GpuDeviceSystem,
2110
+ GpuLimitsSystem,
2073
2111
  GpuBufferSystem,
2074
2112
  GpuTextureSystem,
2075
2113
  GpuRenderTargetSystem,
@@ -0,0 +1,7 @@
1
+ import VkAgentChatProvider from './src/index.vue';
2
+ export * from './src/const';
3
+ export * from './src/const-roles';
4
+ export * as __VkAgentChatProvider from './src/types';
5
+ export { useAgentChat } from './src/use';
6
+ export { VkAgentChatProvider, };
7
+ export default VkAgentChatProvider;
@@ -1,6 +1,7 @@
1
1
  import { computed, provide, inject, defineComponent } from 'vue';
2
2
  import { restFetch } from '@vunk/shared/fetch';
3
3
  import { useXChat, useXAgent } from 'ant-design-x-vue';
4
+ import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
4
5
 
5
6
  async function agentRequest(onmessage, data) {
6
7
  return restFetch.reader({
@@ -108,7 +109,7 @@ var _sfc_main = defineComponent({
108
109
  }
109
110
  },
110
111
  emits: {
111
- load: (e) => e
112
+ load: null
112
113
  },
113
114
  setup(props, { slots, emit }) {
114
115
  const request = (info, event) => {
@@ -201,12 +202,14 @@ var _sfc_main = defineComponent({
201
202
  }
202
203
  });
203
204
 
205
+ var VkAgentChatProvider = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/agent-chat-provider/src/index.vue"]]);
206
+
204
207
  var types = /*#__PURE__*/Object.freeze({
205
208
  __proto__: null
206
209
  });
207
210
 
208
- _sfc_main.install = (app) => {
209
- app.component(_sfc_main.name || "VkAgentChatProvider", _sfc_main);
211
+ VkAgentChatProvider.install = (app) => {
212
+ app.component(VkAgentChatProvider.name || "VkAgentChatProvider", VkAgentChatProvider);
210
213
  };
211
214
 
212
- export { ChatAgentInjectKey, Role, _sfc_main as VkAgentChatProvider, types as __VkAgentChatProvider, _sfc_main as default, roleMap, roleOptions, useAgentChat };
215
+ export { ChatAgentInjectKey, Role, VkAgentChatProvider, types as __VkAgentChatProvider, VkAgentChatProvider as default, roleMap, roleOptions, useAgentChat };
@@ -0,0 +1,3 @@
1
+ import type { NormalObject } from '@vunk/shared';
2
+ import type { RestFetchReaderOnmessage } from '@vunk/shared/fetch';
3
+ export declare function agentRequest(onmessage: RestFetchReaderOnmessage, data: NormalObject): Promise<void>;
@@ -0,0 +1,8 @@
1
+ import type { RoleMedia } from './types';
2
+ export declare enum Role {
3
+ User = "user",
4
+ Assistant = "assistant",
5
+ Broadcasting = "broadcasting"
6
+ }
7
+ export declare const roleOptions: RoleMedia[];
8
+ export declare const roleMap: Record<Role, RoleMedia>;
@@ -0,0 +1 @@
1
+ export declare const ChatAgentInjectKey = "vk_agent_chat_inject_key";
@@ -0,0 +1,22 @@
1
+ import type { AnyFunc } from '@vunk/shared';
2
+ import type { PropType } from 'vue';
3
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ request: {
5
+ type: PropType<AnyFunc>;
6
+ };
7
+ parser: {
8
+ type: PropType<AnyFunc>;
9
+ };
10
+ }>, import("vue").Slot<any> | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
11
+ load: null;
12
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
13
+ request: {
14
+ type: PropType<AnyFunc>;
15
+ };
16
+ parser: {
17
+ type: PropType<AnyFunc>;
18
+ };
19
+ }>> & Readonly<{
20
+ onLoad?: ((...args: any[]) => any) | undefined;
21
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
22
+ export default _default;
@@ -0,0 +1,50 @@
1
+ import type { __VkBubbleTemplates } from '@vunk/plus/components/bubble-templates';
2
+ import type { Media, NormalObject } from '@vunk/shared';
3
+ import type { RequestFn, useXChat, XAgent } from 'ant-design-x-vue';
4
+ import type { MaybeArray } from 'naive-ui/es/_utils';
5
+ import type { ComputedRef } from 'vue';
6
+ import type { BubbleListItemProps } from 'vue-element-plus-x/types/components/BubbleList/types';
7
+ export interface AgentChatContext {
8
+ agent: ComputedRef<XAgent<AgentMessage>>;
9
+ chat: ReturnType<typeof useXChat<AgentMessage, BubbleMessage>>;
10
+ simplicity: {
11
+ onRequest: (message: string) => void;
12
+ items: ComputedRef<BubbleItem[]>;
13
+ };
14
+ }
15
+ export type Request = RequestFn<AgentMessage>;
16
+ export type Parser = (message: AgentMessage) => MaybeArray<BubbleMessage>;
17
+ /**
18
+ * @description useXAgent request onSuccess 发送的数据
19
+ */
20
+ export type AgentMessage = BubbleMessage & {
21
+ seviceLoading?: boolean;
22
+ seviceEnd?: boolean;
23
+ };
24
+ /**
25
+ * @description useXChat parser 解析数据
26
+ */
27
+ export type BubbleMessage = Partial<BubbleListItemProps> & {
28
+ role: string;
29
+ content: string;
30
+ /**
31
+ * @description 服务端请求是否完成
32
+ */
33
+ seviceEnd?: boolean;
34
+ thinkingStatus?: 'start' | 'thinking' | 'end' | 'error';
35
+ thinkingContent?: string;
36
+ meta?: NormalObject;
37
+ abortController?: AbortController;
38
+ templateType?: string;
39
+ [key: string]: any;
40
+ };
41
+ export type BubbleItem = BubbleItemBasic & __VkBubbleTemplates.RenderItem;
42
+ export type RoleMedia = RoleMediaBasic & __VkBubbleTemplates.RenderItem;
43
+ export type BubbleItemModule = 'Thinking';
44
+ export interface BubbleItemBasic extends BubbleMessage {
45
+ key: string;
46
+ modules?: BubbleItemModule[];
47
+ }
48
+ export interface RoleMediaBasic extends Partial<BubbleItemBasic>, Media {
49
+ value: string;
50
+ }
@@ -0,0 +1,5 @@
1
+ import type { RequestFn } from 'ant-design-x-vue';
2
+ import type { AgentChatContext, AgentMessage, Parser } from './types';
3
+ export declare function useAgent(request: RequestFn<AgentMessage>): import("vue").ComputedRef<import("ant-design-x-vue").XAgent<AgentMessage>>[];
4
+ export declare function initAgentChat(request: RequestFn<AgentMessage>, parser: Parser): AgentChatContext;
5
+ export declare function useAgentChat(): AgentChatContext;
@@ -0,0 +1,4 @@
1
+ import VkAvatar from './src/index.vue';
2
+ export * as __VkAvatar from './src/types';
3
+ export { VkAvatar, };
4
+ export default VkAvatar;
@@ -1,5 +1,5 @@
1
1
  import { ElAvatar } from 'element-plus';
2
- import { defineComponent, resolveComponent, createBlock, openBlock, normalizeStyle, withCtx, renderSlot } from 'vue';
2
+ import { defineComponent, resolveComponent, openBlock, createBlock, normalizeStyle, withCtx, renderSlot } from 'vue';
3
3
  import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
4
4
 
5
5
  const props = {
@@ -36,7 +36,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
36
36
  /* FORWARDED */
37
37
  }, 8, ["style"]);
38
38
  }
39
- var VkAvatar = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
39
+ var VkAvatar = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/avatar/src/index.vue"]]);
40
40
 
41
41
  var types = /*#__PURE__*/Object.freeze({
42
42
  __proto__: null
@@ -0,0 +1,6 @@
1
+ import type { avatarProps } from 'element-plus';
2
+ export declare const props: typeof avatarProps & {
3
+ background: never;
4
+ color: never;
5
+ };
6
+ export declare const emits: {};
@@ -0,0 +1,180 @@
1
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
3
+ readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
4
+ readonly icon: {
5
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
6
+ readonly required: false;
7
+ readonly validator: ((val: unknown) => boolean) | undefined;
8
+ __epPropKey: true;
9
+ };
10
+ readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
11
+ readonly alt: StringConstructor;
12
+ readonly srcSet: StringConstructor;
13
+ readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => ObjectFitProperty & {}) | (() => ObjectFitProperty) | ((new (...args: any[]) => ObjectFitProperty & {}) | (() => ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
14
+ } & {
15
+ background: never;
16
+ color: never;
17
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
18
+ readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
19
+ readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
20
+ readonly icon: {
21
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
22
+ readonly required: false;
23
+ readonly validator: ((val: unknown) => boolean) | undefined;
24
+ __epPropKey: true;
25
+ };
26
+ readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
27
+ readonly alt: StringConstructor;
28
+ readonly srcSet: StringConstructor;
29
+ readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => ObjectFitProperty & {}) | (() => ObjectFitProperty) | ((new (...args: any[]) => ObjectFitProperty & {}) | (() => ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
30
+ } & {
31
+ background: never;
32
+ color: never;
33
+ }>> & Readonly<{}>, {
34
+ readonly size: import("element-plus/es/utils").EpPropMergeType<readonly [NumberConstructor, StringConstructor], "" | "small" | "default" | "large", number>;
35
+ readonly shape: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "circle" | "square", unknown>;
36
+ readonly src: string;
37
+ readonly fit: any;
38
+ }, {}, {
39
+ ElAvatar: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
40
+ readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
41
+ readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
42
+ readonly icon: {
43
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
44
+ readonly required: false;
45
+ readonly validator: ((val: unknown) => boolean) | undefined;
46
+ __epPropKey: true;
47
+ };
48
+ readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
49
+ readonly alt: StringConstructor;
50
+ readonly srcSet: StringConstructor;
51
+ readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty) | ((new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
52
+ }, {
53
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
54
+ readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
55
+ readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
56
+ readonly icon: {
57
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
58
+ readonly required: false;
59
+ readonly validator: ((val: unknown) => boolean) | undefined;
60
+ __epPropKey: true;
61
+ };
62
+ readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
63
+ readonly alt: StringConstructor;
64
+ readonly srcSet: StringConstructor;
65
+ readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty) | ((new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
66
+ }>> & {
67
+ onError?: ((evt: Event) => any) | undefined;
68
+ }>>;
69
+ emit: (event: "error", evt: Event) => void;
70
+ ns: {
71
+ namespace: import("vue").ComputedRef<string>;
72
+ b: (blockSuffix?: string) => string;
73
+ e: (element?: string | undefined) => string;
74
+ m: (modifier?: string | undefined) => string;
75
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
76
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
77
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
78
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
79
+ is: {
80
+ (name: string, state: boolean | undefined): string;
81
+ (name: string): string;
82
+ };
83
+ cssVar: (object: Record<string, string>) => Record<string, string>;
84
+ cssVarName: (name: string) => string;
85
+ cssVarBlock: (object: Record<string, string>) => Record<string, string>;
86
+ cssVarBlockName: (name: string) => string;
87
+ };
88
+ hasLoadError: import("vue").Ref<boolean>;
89
+ avatarClass: import("vue").ComputedRef<string[]>;
90
+ sizeStyle: import("vue").ComputedRef<import("vue").CSSProperties | undefined>;
91
+ fitStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
92
+ handleError: (e: Event) => void;
93
+ ElIcon: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
94
+ readonly size: {
95
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
96
+ readonly required: false;
97
+ readonly validator: ((val: unknown) => boolean) | undefined;
98
+ __epPropKey: true;
99
+ };
100
+ readonly color: {
101
+ readonly type: import("vue").PropType<string>;
102
+ readonly required: false;
103
+ readonly validator: ((val: unknown) => boolean) | undefined;
104
+ __epPropKey: true;
105
+ };
106
+ }, {
107
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
108
+ readonly size: {
109
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
110
+ readonly required: false;
111
+ readonly validator: ((val: unknown) => boolean) | undefined;
112
+ __epPropKey: true;
113
+ };
114
+ readonly color: {
115
+ readonly type: import("vue").PropType<string>;
116
+ readonly required: false;
117
+ readonly validator: ((val: unknown) => boolean) | undefined;
118
+ __epPropKey: true;
119
+ };
120
+ }>> & {
121
+ [x: string & `on${string}`]: ((...args: any[]) => any) | ((...args: unknown[]) => any) | undefined;
122
+ }>>;
123
+ ns: {
124
+ namespace: import("vue").ComputedRef<string>;
125
+ b: (blockSuffix?: string) => string;
126
+ e: (element?: string | undefined) => string;
127
+ m: (modifier?: string | undefined) => string;
128
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
129
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
130
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
131
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
132
+ is: {
133
+ (name: string, state: boolean | undefined): string;
134
+ (name: string): string;
135
+ };
136
+ cssVar: (object: Record<string, string>) => Record<string, string>;
137
+ cssVarName: (name: string) => string;
138
+ cssVarBlock: (object: Record<string, string>) => Record<string, string>;
139
+ cssVarBlockName: (name: string) => string;
140
+ };
141
+ style: import("vue").ComputedRef<import("vue").CSSProperties>;
142
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
143
+ readonly size: {
144
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | number) & {}) | (() => string | number) | ((new (...args: any[]) => (string | number) & {}) | (() => string | number))[], unknown, unknown>>;
145
+ readonly required: false;
146
+ readonly validator: ((val: unknown) => boolean) | undefined;
147
+ __epPropKey: true;
148
+ };
149
+ readonly color: {
150
+ readonly type: import("vue").PropType<string>;
151
+ readonly required: false;
152
+ readonly validator: ((val: unknown) => boolean) | undefined;
153
+ __epPropKey: true;
154
+ };
155
+ }>>, {}>> & Record<string, any>;
156
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
157
+ error: (evt: Event) => boolean;
158
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
159
+ readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
160
+ readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
161
+ readonly icon: {
162
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
163
+ readonly required: false;
164
+ readonly validator: ((val: unknown) => boolean) | undefined;
165
+ __epPropKey: true;
166
+ };
167
+ readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
168
+ readonly alt: StringConstructor;
169
+ readonly srcSet: StringConstructor;
170
+ readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty) | ((new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
171
+ }>> & {
172
+ onError?: ((evt: Event) => any) | undefined;
173
+ }, {
174
+ readonly size: import("element-plus/es/utils").EpPropMergeType<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number>;
175
+ readonly shape: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "circle" | "square", unknown>;
176
+ readonly src: string;
177
+ readonly fit: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty) | ((new (...args: any[]) => import("csstype").ObjectFitProperty & {}) | (() => import("csstype").ObjectFitProperty))[], unknown, unknown>;
178
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>> & Record<string, any>;
179
+ }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
180
+ export default _default;