@robot-admin/naive-ui-components 0.21.1 → 0.22.1

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 (157) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +5 -1
  3. package/README_EN.md +5 -1
  4. package/SECURITY.md +10 -0
  5. package/THIRD_PARTY_NOTICES.md +10 -0
  6. package/dist/C_AntV2.cjs +1 -1
  7. package/dist/C_Barcode2.cjs +1 -1
  8. package/dist/C_Captcha.d.ts +2 -0
  9. package/dist/C_Editor.css +18 -18
  10. package/dist/C_Editor2.cjs +1 -1
  11. package/dist/C_Editor2.js +1 -1
  12. package/dist/C_FilePreview2.cjs +1 -1
  13. package/dist/C_FilePreview2.js +1 -1
  14. package/dist/C_Form.base.css +58 -58
  15. package/dist/C_Form.cjs +1 -1
  16. package/dist/C_Form.css +76 -76
  17. package/dist/C_Form.d.cts +3 -1
  18. package/dist/C_Form.d.ts +3 -2
  19. package/dist/C_Form.js +1 -1
  20. package/dist/C_FormModal.css +10 -10
  21. package/dist/C_FormModal.d.ts +1 -0
  22. package/dist/C_FormModal2.cjs +1 -1
  23. package/dist/C_FormModal2.js +1 -1
  24. package/dist/C_FormSearch.css +56 -56
  25. package/dist/C_FormSearch.d.ts +2 -1
  26. package/dist/C_FormSearch2.cjs +1 -1
  27. package/dist/C_FormSearch2.js +1 -1
  28. package/dist/C_FullCalendar2.cjs +1 -1
  29. package/dist/C_Login.d.ts +3 -0
  30. package/dist/C_Markdown.css +37 -37
  31. package/dist/C_Markdown2.cjs +1 -1
  32. package/dist/C_Markdown2.js +1 -1
  33. package/dist/C_QRCode2.cjs +1 -1
  34. package/dist/C_Table.base.css +58 -58
  35. package/dist/C_Table.css +76 -76
  36. package/dist/C_Table.d.cts +1 -1
  37. package/dist/C_Table.d.ts +5 -2
  38. package/dist/C_Tree.d.cts +1 -1
  39. package/dist/C_Tree.d.ts +5 -2
  40. package/dist/C_Upload2.cjs +1 -1
  41. package/dist/C_WaterFall.css +49 -31
  42. package/dist/C_WaterFall2.cjs +1 -1
  43. package/dist/C_WaterFall2.js +1 -1
  44. package/dist/chunk.cjs +1 -1
  45. package/dist/config.cjs +1 -1
  46. package/dist/config.d.cts +4 -1
  47. package/dist/config.d.ts +4 -2
  48. package/dist/config.js +1 -1
  49. package/dist/config2.d.ts +14 -0
  50. package/dist/constants.d.cts +1 -1
  51. package/dist/constants.d.ts +1 -1
  52. package/dist/constants2.d.cts +1 -1
  53. package/dist/constants2.d.ts +1 -1
  54. package/dist/constants3.d.cts +2 -2
  55. package/dist/constants3.d.ts +2 -2
  56. package/dist/constants4.d.cts +5 -5
  57. package/dist/constants4.d.ts +5 -5
  58. package/dist/data.cjs +1 -1
  59. package/dist/data.d.cts +7 -7
  60. package/dist/data.d.ts +7 -7
  61. package/dist/data.js +1 -1
  62. package/dist/dateRange.d.ts +1 -2
  63. package/dist/density.cjs +1 -1
  64. package/dist/density.js +1 -1
  65. package/dist/graphics.d.cts +17 -11
  66. package/dist/graphics.d.ts +17 -11
  67. package/dist/helpers.cjs +1 -1
  68. package/dist/helpers.js +1 -1
  69. package/dist/html.cjs +1 -1
  70. package/dist/index.cjs +1 -1
  71. package/dist/index.d.cts +4 -3
  72. package/dist/index.d.ts +7 -5
  73. package/dist/index.js +1 -1
  74. package/dist/index.vue.d.cts +5 -5
  75. package/dist/index.vue.d.ts +5 -5
  76. package/dist/index10.vue.d.cts +2 -2
  77. package/dist/index10.vue.d.ts +5 -5
  78. package/dist/index11.vue.d.cts +5 -5
  79. package/dist/index11.vue.d.ts +1 -1
  80. package/dist/index12.vue.d.cts +1 -1
  81. package/dist/index12.vue.d.ts +4 -4
  82. package/dist/index13.vue.d.cts +4 -4
  83. package/dist/index13.vue.d.ts +9 -9
  84. package/dist/index14.vue.d.cts +9 -9
  85. package/dist/index17.vue.d.ts +2 -2
  86. package/dist/index18.vue.d.cts +2 -2
  87. package/dist/index18.vue.d.ts +2 -2
  88. package/dist/index19.vue.d.cts +2 -2
  89. package/dist/index19.vue.d.ts +2 -2
  90. package/dist/index2.vue.d.cts +2 -2
  91. package/dist/index2.vue.d.ts +2 -2
  92. package/dist/index20.vue.d.cts +1 -1
  93. package/dist/index20.vue.d.ts +1 -1
  94. package/dist/index21.vue.d.cts +1 -1
  95. package/dist/index21.vue.d.ts +1 -1
  96. package/dist/index22.vue.d.cts +1 -1
  97. package/dist/index22.vue.d.ts +1 -1
  98. package/dist/index25.vue.d.cts +2 -2
  99. package/dist/index25.vue.d.ts +2 -2
  100. package/dist/index3.vue.d.cts +6 -6
  101. package/dist/index3.vue.d.ts +6 -6
  102. package/dist/index4.vue.d.cts +2 -2
  103. package/dist/index8.vue.d.ts +3 -3
  104. package/dist/index9.vue.d.cts +3 -3
  105. package/dist/index9.vue.d.ts +2 -2
  106. package/dist/mapUtils.d.cts +2 -2
  107. package/dist/mapUtils.d.ts +2 -2
  108. package/dist/style.css +228 -210
  109. package/dist/types.d.ts +5 -0
  110. package/dist/types2.d.cts +5 -0
  111. package/dist/useCalendarEvents.d.cts +1 -1
  112. package/dist/useCalendarEvents.d.ts +1 -1
  113. package/dist/useCollapsePanel.d.cts +5 -5
  114. package/dist/useCollapsePanel.d.ts +5 -5
  115. package/dist/useCropperCore.d.cts +10 -10
  116. package/dist/useCropperCore.d.ts +10 -10
  117. package/dist/useDynamicFormState.d.cts +6 -579
  118. package/dist/useDynamicFormState.d.ts +6 -579
  119. package/dist/useEdgeInteraction.d.cts +2 -2
  120. package/dist/useEdgeInteraction.d.ts +2 -2
  121. package/dist/useFormConfig.cjs +1 -0
  122. package/dist/useFormConfig.d.cts +576 -0
  123. package/dist/useFormConfig.d.ts +611 -0
  124. package/dist/useFormConfig.js +1 -0
  125. package/dist/useGlobalSearch.d.cts +1 -1
  126. package/dist/useGlobalSearch.d.ts +1 -1
  127. package/dist/useInfiniteScroll.d.cts +16 -17
  128. package/dist/useInfiniteScroll.d.ts +16 -17
  129. package/dist/useQRCode.d.cts +5 -5
  130. package/dist/useQRCode.d.ts +5 -5
  131. package/dist/useSignatureHistory.d.cts +4 -4
  132. package/dist/useSignatureHistory.d.ts +4 -4
  133. package/dist/useSplitResize.d.cts +10 -10
  134. package/dist/useSplitResize.d.ts +10 -10
  135. package/dist/useTableQuery.cjs +1 -1
  136. package/dist/useTableQuery.d.cts +15 -13
  137. package/dist/useTableQuery.d.ts +17 -26
  138. package/dist/useTableQuery.js +1 -1
  139. package/dist/useWorkflowValidation.d.cts +2 -2
  140. package/dist/useWorkflowValidation.d.ts +2 -2
  141. package/dist/verification.d.cts +5 -5
  142. package/dist/verification.d.ts +6 -6
  143. package/dist/xlsx.js +143 -0
  144. package/dist/xlsx2.cjs +143 -0
  145. package/docs/architecture.en.md +1 -0
  146. package/docs/architecture.md +1 -0
  147. package/docs/guides/api-migration.md +111 -0
  148. package/docs/guides/form-density.en.md +17 -3
  149. package/docs/guides/form-density.md +17 -3
  150. package/docs/guides/runtime-performance.md +16 -1
  151. package/docs/guides/usage.en.md +1 -1
  152. package/docs/guides/waterfall.md +113 -0
  153. package/docs/runtime-review-20261019.md +2 -0
  154. package/licenses/SheetJS.txt +201 -0
  155. package/package.json +13 -9
  156. package/dist/contracts.d.ts +0 -24
  157. package/dist/density.d.ts +0 -15
@@ -1,19 +1,19 @@
1
1
  :root{--c-primary: var(--primary-color, #2080f0);--c-primary-hover: var(--primary-color-hover, #4098fc);--c-primary-pressed: var(--primary-color-pressed, #1060c9);--c-success: var(--success-color, #18a058);--c-warning: var(--warning-color, #f0a020);--c-error: var(--error-color, #d03050);--c-info: var(--info-color, #2080f0);--c-bg-body: var(--body-color, #ffffff);--c-bg-card: var(--card-color, #ffffff);--c-bg-surface: var(--popover-color, #ffffff);--c-text-1: var(--text-color-1, #262626);--c-text-2: var(--text-color-2, #525252);--c-text-3: var(--text-color-3, #a3a3a3);--c-text-4: var(--text-color-4, #c0c0c0);--c-border: var(--border-color, #e5e7eb);--c-radius-sm: var(--border-radius-small, 4px);--c-radius: var(--border-radius, 6px);--c-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);--c-transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);--c-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);--c-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);--c-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1)}
2
2
 
3
- .c-waterfall[data-v-b89d8e04] {
3
+ .c-waterfall[data-v-f6a44501] {
4
4
  width: 100%;
5
5
  }
6
- .waterfall__body[data-v-b89d8e04] {
6
+ .waterfall__body[data-v-f6a44501] {
7
7
  overflow: hidden;
8
8
  }
9
- .waterfall__item[data-v-b89d8e04] {
9
+ .waterfall__item[data-v-f6a44501] {
10
10
  cursor: pointer;
11
11
  }
12
- .waterfall__item[data-v-b89d8e04]:focus-visible {
12
+ .waterfall__item[data-v-f6a44501]:focus-visible {
13
13
  outline: 2px solid var(--primary-color, #2080f0);
14
14
  outline-offset: 2px;
15
15
  }
16
- .waterfall__card[data-v-b89d8e04] {
16
+ .waterfall__card[data-v-f6a44501] {
17
17
  overflow: hidden;
18
18
  border-radius: 8px;
19
19
  border: 1px solid var(--border-color);
@@ -21,36 +21,36 @@
21
21
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
22
22
  transition: box-shadow 0.2s ease, transform 0.2s ease;
23
23
  }
24
- .waterfall__card[data-v-b89d8e04]:hover {
24
+ .waterfall__card[data-v-f6a44501]:hover {
25
25
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
26
26
  transform: translateY(-2px);
27
27
  }
28
- .waterfall__image[data-v-b89d8e04] {
28
+ .waterfall__image[data-v-f6a44501] {
29
29
  display: block;
30
30
  width: 100%;
31
31
  object-fit: cover;
32
32
  background: var(--body-color);
33
33
  }
34
- .waterfall__title[data-v-b89d8e04] {
34
+ .waterfall__title[data-v-f6a44501] {
35
35
  padding: 10px 12px;
36
36
  font-size: 13px;
37
37
  line-height: 1.5;
38
38
  color: var(--text-color-1);
39
39
  word-break: break-all;
40
40
  }
41
- .waterfall__skeleton[data-v-b89d8e04] {
41
+ .waterfall__skeleton[data-v-f6a44501] {
42
42
  overflow: hidden;
43
43
  border-radius: 8px;
44
44
  }
45
- .waterfall__skeleton-inner[data-v-b89d8e04] {
45
+ .waterfall__skeleton-inner[data-v-f6a44501] {
46
46
  width: 100%;
47
47
  height: 100%;
48
48
  border-radius: 8px;
49
49
  background: linear-gradient(90deg, var(--body-color) 25%, color-mix(in srgb, var(--body-color) 80%, var(--border-color)) 37%, var(--body-color) 63%);
50
50
  background-size: 400% 100%;
51
- animation: shimmer-b89d8e04 1.4s ease infinite;
51
+ animation: shimmer-f6a44501 1.4s ease infinite;
52
52
  }
53
- @keyframes shimmer-b89d8e04 {
53
+ @keyframes shimmer-f6a44501 {
54
54
  0% {
55
55
  background-position: 100% 50%;
56
56
  }
@@ -58,37 +58,55 @@
58
58
  background-position: 0 50%;
59
59
  }
60
60
  }
61
- .waterfall__footer[data-v-b89d8e04] {
61
+ .waterfall__footer[data-v-f6a44501] {
62
62
  padding: 24px 0;
63
63
  text-align: center;
64
64
  }
65
- .waterfall__sentinel[data-v-b89d8e04] {
65
+ .waterfall__sentinel[data-v-f6a44501] {
66
66
  height: 1px;
67
67
  }
68
- .waterfall__status[data-v-b89d8e04] {
68
+ .waterfall__status[data-v-f6a44501] {
69
69
  display: inline-flex;
70
70
  gap: 8px;
71
71
  align-items: center;
72
72
  font-size: 13px;
73
73
  color: var(--text-color-3);
74
74
  }
75
- .waterfall__status--done[data-v-b89d8e04] {
75
+ .waterfall__status--done[data-v-f6a44501] {
76
76
  color: var(--text-color-4);
77
77
  }
78
78
 
79
+ /* layer: shortcuts */
80
+ .container[data-v-f6a44501]{width:100%;}
81
+ @media (min-width: 640px){
82
+ .container[data-v-f6a44501]{max-width:640px;}
83
+ }
84
+ @media (min-width: 768px){
85
+ .container[data-v-f6a44501]{max-width:768px;}
86
+ }
87
+ @media (min-width: 1024px){
88
+ .container[data-v-f6a44501]{max-width:1024px;}
89
+ }
90
+ @media (min-width: 1280px){
91
+ .container[data-v-f6a44501]{max-width:1280px;}
92
+ }
93
+ @media (min-width: 1536px){
94
+ .container[data-v-f6a44501]{max-width:1536px;}
95
+ }
79
96
  /* layer: default */
80
- .\!visible[data-v-b89d8e04]{visibility:visible !important;}
81
- .visible[data-v-b89d8e04]{visibility:visible;}
82
- .absolute[data-v-b89d8e04]{position:absolute;}
83
- .relative[data-v-b89d8e04]{position:relative;}
84
- .ms[data-v-b89d8e04]{margin-inline-start:1rem;}
85
- .block[data-v-b89d8e04]{display:block;}
86
- .hidden[data-v-b89d8e04]{display:none;}
87
- .inline-flex[data-v-b89d8e04]{display:inline-flex;}
88
- .transform[data-v-b89d8e04]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
89
- .break-all[data-v-b89d8e04]{word-break:break-all;}
90
- .border[data-v-b89d8e04]{border-width:1px;}
91
- .px[data-v-b89d8e04]{padding-left:1rem;padding-right:1rem;}
92
- .outline[data-v-b89d8e04]{outline-style:solid;}
93
- .transition[data-v-b89d8e04]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
94
- .ease[data-v-b89d8e04]{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
97
+ .\!visible[data-v-f6a44501]{visibility:visible !important;}
98
+ .visible[data-v-f6a44501]{visibility:visible;}
99
+ .absolute[data-v-f6a44501]{position:absolute;}
100
+ .relative[data-v-f6a44501]{position:relative;}
101
+ .ms[data-v-f6a44501]{margin-inline-start:1rem;}
102
+ .block[data-v-f6a44501]{display:block;}
103
+ .hidden[data-v-f6a44501]{display:none;}
104
+ .inline-flex[data-v-f6a44501]{display:inline-flex;}
105
+ .transform[data-v-f6a44501]{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
106
+ .resize[data-v-f6a44501]{resize:both;}
107
+ .break-all[data-v-f6a44501]{word-break:break-all;}
108
+ .border[data-v-f6a44501]{border-width:1px;}
109
+ .px[data-v-f6a44501]{padding-left:1rem;padding-right:1rem;}
110
+ .outline[data-v-f6a44501]{outline-style:solid;}
111
+ .transition[data-v-f6a44501]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
112
+ .ease[data-v-f6a44501]{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
@@ -1 +1 @@
1
- require(`./chunk.cjs`);const e=require(`./export-helper.cjs`);let t=require(`vue`),n=require(`naive-ui`);const r=[{minWidth:1600,columns:6},{minWidth:1200,columns:5},{minWidth:992,columns:4},{minWidth:768,columns:3},{minWidth:480,columns:2},{minWidth:0,columns:1}],i=[180,360];function a(e,n,i){let a=(0,t.ref)(4),o=(0,t.ref)(0);function s(e){if(n?.value&&n.value>0)return n.value;let t=[...i?.value?.length?i.value:r].sort((e,t)=>t.minWidth-e.minWidth);for(let n of t)if(e>=n.minWidth)return n.columns;return 1}let c=null;function l(){let t=e.value;if(!t)return;c=new ResizeObserver(e=>{for(let t of e){let{width:e}=t.contentRect;o.value=e,a.value=s(e)}}),c.observe(t);let n=t.getBoundingClientRect();o.value=n.width,a.value=s(n.width)}function u(){c?.disconnect(),c=null}return(0,t.onMounted)(l),(0,t.onBeforeUnmount)(u),(0,t.watch)(e,()=>{u(),l()}),(0,t.watch)([()=>n?.value,()=>i?.value],()=>{o.value>0&&(a.value=s(o.value))}),{columns:(0,t.readonly)(a),containerWidth:(0,t.readonly)(o)}}function o(e,n,r,i,a={}){let o=(0,t.ref)([]),s=(0,t.ref)(0),c=new Map,l=new Map,u=(0,t.computed)(()=>new Map(e.value.map(e=>[e.id,e.src]))),d,f=!1,p=()=>{d!==void 0&&cancelAnimationFrame(d),d=void 0};(0,t.getCurrentScope)()&&(0,t.onScopeDispose)(()=>{f=!0,p(),l.clear(),c.clear()});let m=()=>{if(!f){if(!a.batchImageLoads||typeof requestAnimationFrame>`u`){C();return}d===void 0&&(d=requestAnimationFrame(()=>{d=void 0,C()}))}};function h(e,t,n){let r=e/t;return Number.isFinite(r)&&r>0?r*n:n}function g(e,t){let n=l.get(e.id),r=n?.src&&n.src!==e.src?void 0:n;return r&&!r.basisWidth?r.height:r?.basisWidth?h(r.height,r.basisWidth,t):h(e.height,e.width,t)}function _(){o.value=[],s.value=0,e.value.length===0&&(l.clear(),c.clear())}function v(t,n,r){return Number.isFinite(t)&&Number.isFinite(n)&&Number.isFinite(r)&&n>0&&e.value.length>0}function y(e,t,n,r){if(f||r!==void 0&&u.value.get(e)!==r||!b(t,n))return;let i=l.get(e);i?.height===t&&i.basisWidth===n&&i.src===r||(l.set(e,{height:t,basisWidth:n,src:r}),m())}function b(e,t){return Number.isFinite(e)&&e>0&&(t===void 0||Number.isFinite(t)&&t>0)}function x(e,t){f||!u.value.has(e)||!Number.isFinite(t)||Math.abs((c.get(e)??0)-t)<.5||(c.set(e,t),m())}function S(e){for(let t of[l,c])for(let n of t.keys())e.has(n)||t.delete(n)}function C(){if(p(),f)return;let t=Math.min(24,Math.max(1,Math.floor(n.value))),a=r.value,l=Math.max(0,i.value??16);if(!v(t,a,l)){_();return}let u=(a-(t-1)*l)/t;if(u<=0){_();return}let d=Array.from({length:t},(e,t)=>({index:t,height:0})),m=[],h=new Set;for(let t of e.value){h.add(t.id);let e=d.reduce((e,t)=>t.height<e.height?t:e),n=g(t,u),r=e.index*(u+l),i=e.height;m.push({item:t,columnIndex:e.index,x:r,y:i,width:u,height:n}),e.height=i+n+(c.get(t.id)??0)+l}S(h),o.value=m,s.value=Math.max(...d.map(e=>e.height))-l}return(0,t.watch)([e,()=>e.value.length,n,r,i],C,{immediate:!0}),{layoutItems:(0,t.readonly)(o),containerHeight:(0,t.readonly)(s),cacheImageHeight:y,cacheItemExtraHeight:x,relayout:C}}function s(e,n,r,i,a){let o=(0,t.ref)(`idle`),s=(0,t.ref)(!1),c=null,l=!1,u=!1,d=0,f=!1,p=0;function m(){f||!u||!n.value||r.value||i.value||l||d>=5||(l=!0,d+=1,s.value=d>=5,o.value=`loading`,a())}function h(){let t=e.value;if(!t||!n.value||typeof IntersectionObserver>`u`)return;let r=++p;c=new IntersectionObserver(e=>{if(!(f||r!==p)){if(u=!!e[0]?.isIntersecting,!u){l=!1,d=0,s.value=!1;return}m()}},{rootMargin:`200px 0px`}),c.observe(t)}function g(){p+=1,c?.disconnect(),c=null,l=!1,u=!1,d=0,s.value=!1}return(0,t.watch)([r,i],([e,n],[r])=>{o.value=n?`no-more`:e?`loading`:`idle`,!e&&!n&&(l=!1,r&&(0,t.nextTick)(m))}),(0,t.onMounted)(h),(0,t.onBeforeUnmount)(()=>{f=!0,g()}),(0,t.watch)([e,n],()=>{g(),h()}),{status:(0,t.readonly)(o),paused:(0,t.readonly)(s),resume:()=>{r.value||i.value||f||(d=0,l=!1,s.value=!1,m())}}}const c=[`aria-label`,`onClick`,`onKeydown`],l={class:`waterfall__card`},u=[`src`,`alt`,`loading`,`onLoad`,`onError`],d={key:0,class:`waterfall__title`},f={key:0,class:`waterfall__footer`},p={key:0,class:`waterfall__status`},m={key:1,class:`waterfall__status waterfall__status--done`},h=(0,t.defineComponent)({name:`C_WaterFall`,__name:`index`,props:{items:{},columns:{default:void 0},gap:{default:16},lazy:{type:Boolean,default:!0},infinite:{type:Boolean,default:!1},skeleton:{type:Boolean,default:!0},skeletonCount:{default:8},animationDuration:{default:300},breakpoints:{default:void 0},loading:{type:Boolean,default:!1},noMore:{type:Boolean,default:!1}},emits:[`load-more`,`item-click`,`image-loaded`,`image-error`],setup(e,{expose:r,emit:h}){let g=e,_=h,v=(0,t.ref)(),y=(0,t.ref)(),{columns:b,containerWidth:x}=a(v,(0,t.computed)(()=>g.columns),(0,t.computed)(()=>g.breakpoints)),{layoutItems:S,containerHeight:C,cacheImageHeight:w,cacheItemExtraHeight:T,relayout:E}=o((0,t.computed)(()=>g.items),b,x,(0,t.computed)(()=>g.gap),{batchImageLoads:!0}),D=new Map,O=new Map,k=(0,t.computed)(()=>new Map(S.value.map(e=>[e.item.id,e]))),A=typeof ResizeObserver>`u`?null:new ResizeObserver(e=>{for(let t of e){let e=D.get(t.target),n=e===void 0?void 0:k.value.get(e);n&&T(n.item.id,t.target.getBoundingClientRect().height-n.height)}});function j(e,t){let n=O.get(t);n!==e&&(n&&(A?.unobserve(n),D.delete(n),O.delete(t)),e instanceof HTMLElement&&(O.set(t,e),D.set(e,t),A?.observe(e)))}(0,t.onUnmounted)(()=>{A?.disconnect(),D.clear(),O.clear()});let M=(0,t.computed)(()=>g.skeleton&&g.loading&&S.value.length===0),N=(0,t.computed)(()=>{let e=Math.min(24,Math.max(1,Math.floor(b.value))),t=x.value,n=Math.max(0,g.gap);if(!Number.isFinite(e)||t<=0)return[];let r=(t-(e-1)*n)/e;if(r<=0)return[];let a=Math.min(100,Math.max(0,Math.floor(g.skeletonCount??8))),o=Array(e).fill(0),s=[];for(let e=0;e<a;e++){let t=o.indexOf(Math.min(...o)),a=i[0]+e*73%(i[1]-i[0]);s.push({x:t*(r+n),y:o[t],width:r,height:a}),o[t]+=a+n}return s}),P=(0,t.computed)(()=>N.value.length===0?0:Math.max(...N.value.map(e=>e.y+e.height))),F=(0,t.computed)(()=>M.value?P.value:C.value),{status:I,paused:L,resume:R}=s(y,(0,t.computed)(()=>g.infinite),(0,t.computed)(()=>g.loading),(0,t.computed)(()=>g.noMore),()=>_(`load-more`));function z(e,t){let n=t.target;if(n.getAttribute(`src`)===e.item.src){if(n.naturalHeight&&n.naturalWidth){let t=n.naturalHeight/n.naturalWidth*e.width;w(e.item.id,t,e.width,e.item.src)}_(`image-loaded`,e.item)}}function B(e){_(`image-error`,e.item)}function V(){v.value?.scrollIntoView({behavior:`smooth`,block:`start`})}return r({relayout:E,scrollToTop:V,getColumns:()=>b.value,getContainerHeight:()=>C.value}),(e,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`containerRef`,ref:v,class:`c-waterfall`},[(0,t.createElementVNode)(`div`,{class:`waterfall__body`,style:(0,t.normalizeStyle)({height:`${F.value}px`,position:`relative`})},[M.value?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:0},(0,t.renderList)(N.value,(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:`sk-${i}`,class:`waterfall__skeleton`,style:(0,t.normalizeStyle)({position:`absolute`,left:`${n.x}px`,top:`${n.y}px`,width:`${n.width}px`,height:`${n.height}px`,transition:`all ${g.animationDuration??(0,t.unref)(300)}ms ease`})},[(0,t.renderSlot)(e.$slots,`skeleton`,{},()=>[r[0]||=(0,t.createElementVNode)(`div`,{class:`waterfall__skeleton-inner`},null,-1)],!0)],4))),128)):(0,t.createCommentVNode)(`v-if`,!0),((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(S),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n.item.id,ref_for:!0,ref:e=>j(e,n.item.id),class:`waterfall__item`,role:`button`,tabindex:`0`,"aria-label":n.item.title||`瀑布流项目 ${r+1}`,style:(0,t.normalizeStyle)({position:`absolute`,left:`${n.x}px`,top:`${n.y}px`,width:`${n.width}px`,transition:`all ${g.animationDuration??(0,t.unref)(300)}ms ease`}),onClick:e=>_(`item-click`,n.item,r),onKeydown:[(0,t.withKeys)(e=>_(`item-click`,n.item,r),[`enter`]),(0,t.withKeys)((0,t.withModifiers)(e=>_(`item-click`,n.item,r),[`prevent`]),[`space`])]},[(0,t.renderSlot)(e.$slots,`item`,{item:n.item,index:r,width:n.width,height:n.height},()=>[(0,t.createElementVNode)(`div`,l,[(0,t.createElementVNode)(`img`,{src:n.item.src,alt:n.item.title||``,loading:g.lazy?`lazy`:`eager`,class:`waterfall__image`,style:(0,t.normalizeStyle)({height:`${n.height}px`}),onLoad:e=>z(n,e),onError:e=>B(n)},null,44,u),n.item.title?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,d,(0,t.toDisplayString)(n.item.title),1)):(0,t.createCommentVNode)(`v-if`,!0)])],!0)],44,c))),128))],4),g.infinite?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,f,[(0,t.createElementVNode)(`div`,{ref_key:`sentinelRef`,ref:y,class:`waterfall__sentinel`},null,512),(0,t.renderSlot)(e.$slots,`footer`,{status:(0,t.unref)(I),paused:(0,t.unref)(L),loadMore:(0,t.unref)(R)},()=>[g.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,p,[(0,t.createVNode)((0,t.unref)(n.NSpin),{size:`small`}),r[1]||=(0,t.createElementVNode)(`span`,null,`加载中…`,-1)])):g.noMore?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,m,` 没有更多了 `)):(0,t.unref)(L)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.NButton),{key:2,size:`small`,onClick:(0,t.unref)(R)},{default:(0,t.withCtx)(()=>[...r[2]||=[(0,t.createTextVNode)(`继续加载`,-1)]]),_:1},8,[`onClick`])):(0,t.createCommentVNode)(`v-if`,!0)],!0)])):(0,t.createCommentVNode)(`v-if`,!0)],512))}});var g=e.t(h,[[`__scopeId`,`data-v-b89d8e04`]]);Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return 300}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return 200}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return 16}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return i}});
1
+ require(`./chunk.cjs`);const e=require(`./export-helper.cjs`);let t=require(`vue`),n=require(`naive-ui`);const r=[{minWidth:1600,columns:6},{minWidth:1200,columns:5},{minWidth:992,columns:4},{minWidth:768,columns:3},{minWidth:480,columns:2},{minWidth:0,columns:1}],i=[180,360];function a(e,n,i){let a=(0,t.ref)(4),o=(0,t.ref)(0);function s(e){if(n?.value&&n.value>0)return n.value;let t=[...i?.value?.length?i.value:r].sort((e,t)=>t.minWidth-e.minWidth);for(let n of t)if(e>=n.minWidth)return n.columns;return 1}let c=null,l=!1;function u(){let t=e.value;if(!l||!t)return;let{width:n}=t.getBoundingClientRect();o.value=n,a.value=s(n)}function d(){f();let t=e.value;t&&(l=!0,typeof ResizeObserver<`u`&&(c=new ResizeObserver(u),c.observe(t)),window.addEventListener(`resize`,u,{passive:!0}),u())}function f(){c?.disconnect(),c=null,window.removeEventListener(`resize`,u),l=!1}return(0,t.onMounted)(d),(0,t.onActivated)(d),(0,t.onDeactivated)(f),(0,t.onBeforeUnmount)(f),(0,t.watch)(e,()=>{l&&d()}),(0,t.watch)([()=>n?.value,()=>i?.value],()=>{o.value>0&&(a.value=s(o.value))}),{columns:(0,t.readonly)(a),containerWidth:(0,t.readonly)(o)}}function o(e,n,r,i,a={}){let o=(0,t.ref)([]),s=(0,t.ref)(0),c=new Map,l=new Map,u=(0,t.computed)(()=>new Map(e.value.map(e=>[e.id,e.src]))),d,f=!1,p=!1,m=()=>{d!==void 0&&cancelAnimationFrame(d),d=void 0};(0,t.getCurrentScope)()&&(0,t.onScopeDispose)(()=>{f=!0,m(),l.clear(),c.clear()});let h=()=>{if(!(f||p)){if(!a.batchImageLoads||typeof requestAnimationFrame>`u`){E();return}d===void 0&&(d=requestAnimationFrame(()=>{d=void 0,E()}))}};function g(e,t,n){let r=e/t;return Number.isFinite(r)&&r>0?r*n:n}function _(e,t){let n=l.get(e.id),r=n?.src&&n.src!==e.src?void 0:n;return r&&!r.basisWidth?r.height:r?.basisWidth?g(r.height,r.basisWidth,t):g(e.height,e.width,t)}function v(){o.value=[],s.value=0,e.value.length===0&&(l.clear(),c.clear())}function y(t,n,r){return Number.isFinite(t)&&Number.isFinite(n)&&Number.isFinite(r)&&n>0&&e.value.length>0}function b(e,t,n,r){if(!x(e,r)||!S(t,n))return;let i=l.get(e);i?.height===t&&i.basisWidth===n&&i.src===r||(l.set(e,{height:t,basisWidth:n,src:r}),h())}function x(e,t){return!f&&!p&&u.value.has(e)&&(t===void 0||u.value.get(e)===t)}function S(e,t){return Number.isFinite(e)&&e>0&&(t===void 0||Number.isFinite(t)&&t>0)}function C(e,t,n,r){if(!x(e,r)||!Number.isFinite(t))return;let i=c.get(e);Math.abs((i?.height??0)-t)<.5&&i?.basisWidth===n&&i?.src===r||(c.set(e,{height:t,basisWidth:n,src:r}),h())}function w(e){for(let t of[l,c])for(let n of t.keys())e.has(n)||t.delete(n)}function T(e,t){let n=c.get(e.id);return!n||n.basisWidth!==void 0&&n.basisWidth!==t||n.src!==void 0&&n.src!==e.src?0:n.height}function E(){if(m(),f||p)return;w(new Set(u.value.keys()));let t=Math.min(24,Math.max(1,Math.floor(n.value))),a=r.value,c=Math.max(0,i.value??16);if(!y(t,a,c)){v();return}let l=(a-(t-1)*c)/t;if(l<=0){v();return}let d=Array.from({length:t},(e,t)=>({index:t,height:0})),h=[];for(let t of e.value){let e=d.reduce((e,t)=>t.height<e.height?t:e),n=_(t,l),r=T(t,l),i=Math.max(1,n+r),a=e.index*(l+c),o=e.height;h.push({item:t,columnIndex:e.index,x:a,y:o,width:l,height:n,totalHeight:i}),e.height=o+i+c}o.value=h,s.value=Math.max(...d.map(e=>e.height))-c}return(0,t.watch)([()=>e.value.map(e=>[e,e.id,e.src,e.width,e.height]),n,r,i],E,{immediate:!0}),(0,t.getCurrentInstance)()&&((0,t.onDeactivated)(()=>{p=!0,m()}),(0,t.onActivated)(()=>{p=!1,E()})),{layoutItems:(0,t.readonly)(o),containerHeight:(0,t.readonly)(s),cacheImageHeight:b,cacheItemExtraHeight:C,relayout:E}}function s(e,n,r,i,a){let o=(0,t.ref)(`idle`),s=(0,t.ref)(!1),c=null,l=!1,u=!1,d=0,f=!1,p=!1,m=0;function h(){f||p||!u||!n.value||r.value||i.value||l||d>=5||(l=!0,d+=1,s.value=d>=5,o.value=`loading`,a())}function g(){let t=e.value;if(p||!t||!n.value||typeof IntersectionObserver>`u`)return;c?.disconnect();let r=++m;c=new IntersectionObserver(e=>{if(!(f||r!==m)){if(u=!!e[0]?.isIntersecting,!u){l=!1,d=0,s.value=!1;return}h()}},{rootMargin:`200px 0px`}),c.observe(t)}function _(){m+=1,c?.disconnect(),c=null,l=!1,u=!1,d=0,s.value=!1}return(0,t.watch)([r,i],([e,n],[r])=>{o.value=n?`no-more`:e?`loading`:`idle`,!e&&!n&&(l=!1,r&&(0,t.nextTick)(h))}),(0,t.onMounted)(g),(0,t.onActivated)(()=>{p=!1,_(),g()}),(0,t.onDeactivated)(()=>{p=!0,_()}),(0,t.onBeforeUnmount)(()=>{f=!0,_()}),(0,t.watch)([e,n],()=>{_(),g()}),{status:(0,t.readonly)(o),paused:(0,t.readonly)(s),resume:()=>{r.value||i.value||f||(d=0,l=!1,s.value=!1,h())}}}function c(e){let t=[],n=new Map;return{columns:t,byId:n,entries:e.map((e,r)=>{let i={layout:e,index:r,bottom:e.y+(e.totalHeight??e.height)};return(t[e.columnIndex]??=[]).push(i),n.set(e.item.id,i),i})}}function l(e,t,n){let r=[];for(let i of e){if(!i)continue;let e=0,a=i.length;for(;e<a;){let n=e+a>>>1;i[n].bottom<t?e=n+1:a=n}for(let t=e;t<i.length;t++){let e=i[t];if(e.layout.y>n)break;r.push(e)}}return r.sort((e,t)=>e.index-t.index)}function u(e){let t=[];for(let n=e.parentElement;n;n=n.parentElement){let e=getComputedStyle(n);/(auto|scroll|overlay|hidden|clip)/.test(e.overflowY||e.overflow)&&t.push(n)}return t}function d(e,n,r){let i=(0,t.computed)(()=>c(n.value)),a=(0,t.shallowRef)(),o=(0,t.shallowRef)({top:0,bottom:600}),s=(0,t.computed)(()=>r.value&&n.value.length>=100),d=[],f,p,m=!1,h=(0,t.computed)(()=>{if(!s.value)return i.value.entries;let{top:e,bottom:t}=o.value,n=Math.max(300,(t-e)*.75),r=l(i.value.columns,e-n,t+n),c=a.value===void 0?void 0:i.value.byId.get(a.value);return c&&!r.includes(c)&&(r.push(c),r.sort((e,t)=>e.index-t.index)),r});function g(){if(!m||!e.value)return;let t=e.value.getBoundingClientRect().top,n=0,r=window.innerHeight;for(let e of d){let t=e.getBoundingClientRect().top+e.clientTop;n=Math.max(n,t),r=Math.min(r,t+e.clientHeight)}let i=n-t,a=Math.max(n,r)-t;(o.value.top!==i||o.value.bottom!==a)&&(o.value={top:i,bottom:a})}function _(){!m||p!==void 0||(p=requestAnimationFrame(()=>{p=void 0,g()}))}function v(){m=!1,p!==void 0&&cancelAnimationFrame(p),p=void 0,f?.disconnect(),f=void 0,window.removeEventListener(`scroll`,_),window.removeEventListener(`resize`,_);for(let e of d)e.removeEventListener(`scroll`,_);d=[]}function y(){if(v(),e.value){m=!0,d=u(e.value),window.addEventListener(`scroll`,_,{passive:!0}),window.addEventListener(`resize`,_,{passive:!0});for(let e of d)e.addEventListener(`scroll`,_,{passive:!0});typeof ResizeObserver<`u`&&(f=new ResizeObserver(_),f.observe(e.value),d.forEach(e=>f?.observe(e))),g()}}function b(){let t=e.value;if(!m||!t)return;let n=d.find(e=>e.scrollHeight>e.clientHeight&&/(auto|scroll|overlay)/.test(getComputedStyle(e).overflowY||getComputedStyle(e).overflow)),{top:r}=t.getBoundingClientRect();n?n.scrollTo({top:n.scrollTop+r-n.getBoundingClientRect().top-n.clientTop,behavior:`smooth`}):window.scrollTo({top:window.scrollY+r,behavior:`smooth`})}function x(e){a.value!==e&&(a.value=e)}function S(t){(!(t.relatedTarget instanceof Node)||!e.value?.contains(t.relatedTarget))&&(a.value=void 0)}return(0,t.watch)(e,()=>{m&&y()},{flush:`post`}),(0,t.watch)(i,()=>{a.value!==void 0&&!i.value.byId.has(a.value)&&(a.value=void 0),(0,t.nextTick)(_)}),(0,t.onMounted)(y),(0,t.onActivated)(y),(0,t.onDeactivated)(v),(0,t.onBeforeUnmount)(v),{visibleItems:h,index:i,virtual:s,pinItem:x,releaseItem:S,scrollToTop:b}}const f=[`data-waterfall-index`,`aria-label`,`onClick`,`onKeydown`,`onFocusin`],p={class:`waterfall__card`},m=[`src`,`alt`,`loading`,`onLoad`,`onError`],h={key:0,class:`waterfall__title`},g={key:0,class:`waterfall__footer`},_={key:0,class:`waterfall__status`},v={key:1,class:`waterfall__status waterfall__status--done`},y=(0,t.defineComponent)({name:`C_WaterFall`,__name:`index`,props:{items:{},columns:{default:void 0},gap:{default:16},lazy:{type:Boolean,default:!0},virtualScroll:{type:Boolean,default:!0},infinite:{type:Boolean,default:!1},skeleton:{type:Boolean,default:!0},skeletonCount:{default:8},animationDuration:{default:300},breakpoints:{default:void 0},loading:{type:Boolean,default:!1},noMore:{type:Boolean,default:!1}},emits:[`load-more`,`item-click`,`image-loaded`,`image-error`],setup(e,{expose:r,emit:c}){let l=e,u=c,y=(0,t.ref)(),b=(0,t.ref)(),{columns:x,containerWidth:S}=a(y,(0,t.computed)(()=>l.columns),(0,t.computed)(()=>l.breakpoints)),{layoutItems:C,containerHeight:w,cacheImageHeight:T,cacheItemExtraHeight:E,relayout:D}=o((0,t.computed)(()=>l.items),x,S,(0,t.computed)(()=>l.gap),{batchImageLoads:!0}),O=new Map,k=new Map,{visibleItems:A,index:j,virtual:M,pinItem:N,releaseItem:P,scrollToTop:F}=d(y,C,(0,t.computed)(()=>l.virtualScroll)),I=!0,L=typeof ResizeObserver>`u`?null:new ResizeObserver(e=>{if(I)for(let t of e){let e=O.get(t.target),n=e===void 0?void 0:j.value.byId.get(e)?.layout;n&&E(n.item.id,t.target.getBoundingClientRect().height-n.height,n.width,n.item.src)}});function R(e,t){let n=k.get(t);n!==e&&(n&&(L?.unobserve(n),O.delete(n),k.delete(t)),e instanceof HTMLElement&&(k.set(t,e),O.set(e,t),I&&L?.observe(e)))}(0,t.onDeactivated)(()=>{I=!1,L?.disconnect()}),(0,t.onActivated)(()=>{I=!0,k.forEach(e=>L?.observe(e))}),(0,t.onUnmounted)(()=>{I=!1,L?.disconnect(),O.clear(),k.clear()});let z=(0,t.computed)(()=>l.skeleton&&l.loading&&C.value.length===0),B=(0,t.computed)(()=>{let e=Math.min(24,Math.max(1,Math.floor(x.value))),t=S.value,n=Math.max(0,l.gap);if(!Number.isFinite(e)||t<=0)return[];let r=(t-(e-1)*n)/e;if(r<=0)return[];let a=Math.min(100,Math.max(0,Math.floor(l.skeletonCount??8))),o=Array(e).fill(0),s=[];for(let e=0;e<a;e++){let t=o.indexOf(Math.min(...o)),a=i[0]+e*73%(i[1]-i[0]);s.push({x:t*(r+n),y:o[t],width:r,height:a}),o[t]+=a+n}return s}),V=(0,t.computed)(()=>B.value.length===0?0:Math.max(...B.value.map(e=>e.y+e.height))),H=(0,t.computed)(()=>z.value?V.value:w.value),{status:U,paused:W,resume:G}=s(b,(0,t.computed)(()=>l.infinite),(0,t.computed)(()=>l.loading),(0,t.computed)(()=>l.noMore),()=>u(`load-more`));function K(e,t){let n=t.target;if(n.getAttribute(`src`)===e.item.src){if(n.naturalHeight&&n.naturalWidth){let t=n.naturalHeight/n.naturalWidth*e.width;T(e.item.id,t,e.width,e.item.src)}u(`image-loaded`,e.item)}}function q(e){u(`image-error`,e.item)}function J(e,t){if(e.tabIndex<0||e.matches(`:disabled, input[type="hidden"]`))return!1;for(let n=e;n&&n!==t.parentElement;n=n.parentElement){if(n.hidden||n.hasAttribute(`inert`))return!1;let{display:e,visibility:t}=getComputedStyle(n);if(e===`none`||t===`hidden`||t===`collapse`)return!1}return!0}function Y(e){return Array.from(e.querySelectorAll(`a[href],button,input,select,textarea,[tabindex],[contenteditable="true"]`)).filter(t=>J(t,e))}function X(e,n=!1){let r=j.value.entries[e];r&&(N(r.layout.item.id),(0,t.nextTick)(()=>{let e=k.get(r.layout.item.id);if(!e||!I)return;let t=n?Y(e):[],i=t[t.length-1]??e;i.focus({preventScroll:!0}),i.scrollIntoView?.({block:`nearest`})}))}function Z(e,t){if(!M.value)return;let n=e.currentTarget,r=Y(n);if(e.shiftKey?e.target!==n:r.length>0&&e.target!==r[r.length-1])return;let i=t+(e.shiftKey?-1:1);j.value.entries[i]&&(e.preventDefault(),X(i,e.shiftKey))}function Q(e,t,n){if(e.key===`Tab`)return Z(e,n);if(e.target!==e.currentTarget)return;if(e.key===`Enter`||e.key===` `){e.preventDefault(),u(`item-click`,t.item,n);return}let r={ArrowRight:n+1,ArrowDown:n+1,ArrowLeft:n-1,ArrowUp:n-1,Home:0,End:l.items.length-1}[e.key];r===void 0||!j.value.entries[r]||(e.preventDefault(),X(r))}return r({relayout:D,scrollToTop:F,getColumns:()=>x.value,getContainerHeight:()=>w.value}),(e,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`containerRef`,ref:y,class:`c-waterfall`},[(0,t.createElementVNode)(`div`,{class:`waterfall__body`,style:(0,t.normalizeStyle)({height:`${H.value}px`,position:`relative`})},[z.value?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:0},(0,t.renderList)(B.value,(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:`sk-${i}`,class:`waterfall__skeleton`,style:(0,t.normalizeStyle)({position:`absolute`,left:`${n.x}px`,top:`${n.y}px`,width:`${n.width}px`,height:`${n.height}px`,transition:`all ${l.animationDuration??(0,t.unref)(300)}ms ease`})},[(0,t.renderSlot)(e.$slots,`skeleton`,{},()=>[r[1]||=(0,t.createElementVNode)(`div`,{class:`waterfall__skeleton-inner`},null,-1)],!0)],4))),128)):(0,t.createCommentVNode)(`v-if`,!0),((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(A),({layout:n,index:i})=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n.item.id,ref_for:!0,ref:e=>R(e,n.item.id),class:`waterfall__item`,role:`button`,tabindex:`0`,"data-waterfall-index":i,"aria-label":n.item.title||`瀑布流项目 ${i+1}`,style:(0,t.normalizeStyle)({position:`absolute`,left:`${n.x}px`,top:`${n.y}px`,width:`${n.width}px`,transition:`all ${l.animationDuration??(0,t.unref)(300)}ms ease`}),onClick:e=>u(`item-click`,n.item,i),onKeydown:e=>Q(e,n,i),onFocusin:e=>(0,t.unref)(N)(n.item.id),onFocusout:r[0]||=(...e)=>(0,t.unref)(P)&&(0,t.unref)(P)(...e)},[(0,t.renderSlot)(e.$slots,`item`,{item:n.item,index:i,width:n.width,height:n.height},()=>[(0,t.createElementVNode)(`div`,p,[(0,t.createElementVNode)(`img`,{src:n.item.src,alt:n.item.title||``,loading:l.lazy?`lazy`:`eager`,class:`waterfall__image`,style:(0,t.normalizeStyle)({height:`${n.height}px`}),onLoad:e=>K(n,e),onError:e=>q(n)},null,44,m),n.item.title?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,h,(0,t.toDisplayString)(n.item.title),1)):(0,t.createCommentVNode)(`v-if`,!0)])],!0)],44,f))),128))],4),l.infinite?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,g,[(0,t.createElementVNode)(`div`,{ref_key:`sentinelRef`,ref:b,class:`waterfall__sentinel`},null,512),(0,t.renderSlot)(e.$slots,`footer`,{status:(0,t.unref)(U),paused:(0,t.unref)(W),loadMore:(0,t.unref)(G)},()=>[l.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,_,[(0,t.createVNode)((0,t.unref)(n.NSpin),{size:`small`}),r[2]||=(0,t.createElementVNode)(`span`,null,`加载中…`,-1)])):l.noMore?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,v,` 没有更多了 `)):(0,t.unref)(W)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.NButton),{key:2,size:`small`,onClick:(0,t.unref)(G)},{default:(0,t.withCtx)(()=>[...r[3]||=[(0,t.createTextVNode)(`继续加载`,-1)]]),_:1},8,[`onClick`])):(0,t.createCommentVNode)(`v-if`,!0)],!0)])):(0,t.createCommentVNode)(`v-if`,!0)],512))}});var b=e.t(y,[[`__scopeId`,`data-v-f6a44501`]]);Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return 300}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return 200}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return 16}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return i}});
@@ -1 +1 @@
1
- import{t as e}from"./export-helper.js";import{Fragment as t,computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,createTextVNode as s,createVNode as c,defineComponent as l,getCurrentScope as u,nextTick as d,normalizeStyle as f,onBeforeUnmount as p,onMounted as m,onScopeDispose as h,onUnmounted as g,openBlock as _,readonly as v,ref as y,renderList as b,renderSlot as x,toDisplayString as S,unref as C,watch as w,withCtx as T,withKeys as E,withModifiers as D}from"vue";import{NButton as O,NSpin as k}from"naive-ui";const A=16,j=300,M=8,N=200,P=[{minWidth:1600,columns:6},{minWidth:1200,columns:5},{minWidth:992,columns:4},{minWidth:768,columns:3},{minWidth:480,columns:2},{minWidth:0,columns:1}],F=[180,360];function I(e,t,n){let r=y(4),i=y(0);function a(e){if(t?.value&&t.value>0)return t.value;let r=[...n?.value?.length?n.value:P].sort((e,t)=>t.minWidth-e.minWidth);for(let t of r)if(e>=t.minWidth)return t.columns;return 1}let o=null;function s(){let t=e.value;if(!t)return;o=new ResizeObserver(e=>{for(let t of e){let{width:e}=t.contentRect;i.value=e,r.value=a(e)}}),o.observe(t);let n=t.getBoundingClientRect();i.value=n.width,r.value=a(n.width)}function c(){o?.disconnect(),o=null}return m(s),p(c),w(e,()=>{c(),s()}),w([()=>t?.value,()=>n?.value],()=>{i.value>0&&(r.value=a(i.value))}),{columns:v(r),containerWidth:v(i)}}function L(e,t,r,i,a={}){let o=y([]),s=y(0),c=new Map,l=new Map,d=n(()=>new Map(e.value.map(e=>[e.id,e.src]))),f,p=!1,m=()=>{f!==void 0&&cancelAnimationFrame(f),f=void 0};u()&&h(()=>{p=!0,m(),l.clear(),c.clear()});let g=()=>{if(!p){if(!a.batchImageLoads||typeof requestAnimationFrame>`u`){O();return}f===void 0&&(f=requestAnimationFrame(()=>{f=void 0,O()}))}};function _(e,t,n){let r=e/t;return Number.isFinite(r)&&r>0?r*n:n}function b(e,t){let n=l.get(e.id),r=n?.src&&n.src!==e.src?void 0:n;return r&&!r.basisWidth?r.height:r?.basisWidth?_(r.height,r.basisWidth,t):_(e.height,e.width,t)}function x(){o.value=[],s.value=0,e.value.length===0&&(l.clear(),c.clear())}function S(t,n,r){return Number.isFinite(t)&&Number.isFinite(n)&&Number.isFinite(r)&&n>0&&e.value.length>0}function C(e,t,n,r){if(p||r!==void 0&&d.value.get(e)!==r||!T(t,n))return;let i=l.get(e);i?.height===t&&i.basisWidth===n&&i.src===r||(l.set(e,{height:t,basisWidth:n,src:r}),g())}function T(e,t){return Number.isFinite(e)&&e>0&&(t===void 0||Number.isFinite(t)&&t>0)}function E(e,t){p||!d.value.has(e)||!Number.isFinite(t)||Math.abs((c.get(e)??0)-t)<.5||(c.set(e,t),g())}function D(e){for(let t of[l,c])for(let n of t.keys())e.has(n)||t.delete(n)}function O(){if(m(),p)return;let n=Math.min(24,Math.max(1,Math.floor(t.value))),a=r.value,l=Math.max(0,i.value??16);if(!S(n,a,l)){x();return}let u=(a-(n-1)*l)/n;if(u<=0){x();return}let d=Array.from({length:n},(e,t)=>({index:t,height:0})),f=[],h=new Set;for(let t of e.value){h.add(t.id);let e=d.reduce((e,t)=>t.height<e.height?t:e),n=b(t,u),r=e.index*(u+l),i=e.height;f.push({item:t,columnIndex:e.index,x:r,y:i,width:u,height:n}),e.height=i+n+(c.get(t.id)??0)+l}D(h),o.value=f,s.value=Math.max(...d.map(e=>e.height))-l}return w([e,()=>e.value.length,t,r,i],O,{immediate:!0}),{layoutItems:v(o),containerHeight:v(s),cacheImageHeight:C,cacheItemExtraHeight:E,relayout:O}}function R(e,t,n,r,i){let a=y(`idle`),o=y(!1),s=null,c=!1,l=!1,u=0,f=!1,h=0;function g(){f||!l||!t.value||n.value||r.value||c||u>=5||(c=!0,u+=1,o.value=u>=5,a.value=`loading`,i())}function _(){let n=e.value;if(!n||!t.value||typeof IntersectionObserver>`u`)return;let r=++h;s=new IntersectionObserver(e=>{if(!(f||r!==h)){if(l=!!e[0]?.isIntersecting,!l){c=!1,u=0,o.value=!1;return}g()}},{rootMargin:`200px 0px`}),s.observe(n)}function b(){h+=1,s?.disconnect(),s=null,c=!1,l=!1,u=0,o.value=!1}return w([n,r],([e,t],[n])=>{a.value=t?`no-more`:e?`loading`:`idle`,!e&&!t&&(c=!1,n&&d(g))}),m(_),p(()=>{f=!0,b()}),w([e,t],()=>{b(),_()}),{status:v(a),paused:v(o),resume:()=>{n.value||r.value||f||(u=0,c=!1,o.value=!1,g())}}}const z=[`aria-label`,`onClick`,`onKeydown`],B={class:`waterfall__card`},V=[`src`,`alt`,`loading`,`onLoad`,`onError`],H={key:0,class:`waterfall__title`},U={key:0,class:`waterfall__footer`},W={key:0,class:`waterfall__status`},G={key:1,class:`waterfall__status waterfall__status--done`};var K=e(l({name:`C_WaterFall`,__name:`index`,props:{items:{},columns:{default:void 0},gap:{default:16},lazy:{type:Boolean,default:!0},infinite:{type:Boolean,default:!1},skeleton:{type:Boolean,default:!0},skeletonCount:{default:8},animationDuration:{default:300},breakpoints:{default:void 0},loading:{type:Boolean,default:!1},noMore:{type:Boolean,default:!1}},emits:[`load-more`,`item-click`,`image-loaded`,`image-error`],setup(e,{expose:l,emit:u}){let d=e,p=u,m=y(),h=y(),{columns:v,containerWidth:w}=I(m,n(()=>d.columns),n(()=>d.breakpoints)),{layoutItems:A,containerHeight:j,cacheImageHeight:M,cacheItemExtraHeight:N,relayout:P}=L(n(()=>d.items),v,w,n(()=>d.gap),{batchImageLoads:!0}),K=new Map,q=new Map,J=n(()=>new Map(A.value.map(e=>[e.item.id,e]))),Y=typeof ResizeObserver>`u`?null:new ResizeObserver(e=>{for(let t of e){let e=K.get(t.target),n=e===void 0?void 0:J.value.get(e);n&&N(n.item.id,t.target.getBoundingClientRect().height-n.height)}});function ee(e,t){let n=q.get(t);n!==e&&(n&&(Y?.unobserve(n),K.delete(n),q.delete(t)),e instanceof HTMLElement&&(q.set(t,e),K.set(e,t),Y?.observe(e)))}g(()=>{Y?.disconnect(),K.clear(),q.clear()});let X=n(()=>d.skeleton&&d.loading&&A.value.length===0),Z=n(()=>{let e=Math.min(24,Math.max(1,Math.floor(v.value))),t=w.value,n=Math.max(0,d.gap);if(!Number.isFinite(e)||t<=0)return[];let r=(t-(e-1)*n)/e;if(r<=0)return[];let i=Math.min(100,Math.max(0,Math.floor(d.skeletonCount??8))),a=Array(e).fill(0),o=[];for(let e=0;e<i;e++){let t=a.indexOf(Math.min(...a)),i=F[0]+e*73%(F[1]-F[0]);o.push({x:t*(r+n),y:a[t],width:r,height:i}),a[t]+=i+n}return o}),te=n(()=>Z.value.length===0?0:Math.max(...Z.value.map(e=>e.y+e.height))),ne=n(()=>X.value?te.value:j.value),{status:re,paused:Q,resume:$}=R(h,n(()=>d.infinite),n(()=>d.loading),n(()=>d.noMore),()=>p(`load-more`));function ie(e,t){let n=t.target;if(n.getAttribute(`src`)===e.item.src){if(n.naturalHeight&&n.naturalWidth){let t=n.naturalHeight/n.naturalWidth*e.width;M(e.item.id,t,e.width,e.item.src)}p(`image-loaded`,e.item)}}function ae(e){p(`image-error`,e.item)}function oe(){m.value?.scrollIntoView({behavior:`smooth`,block:`start`})}return l({relayout:P,scrollToTop:oe,getColumns:()=>v.value,getContainerHeight:()=>j.value}),(e,n)=>(_(),a(`div`,{ref_key:`containerRef`,ref:m,class:`c-waterfall`},[o(`div`,{class:`waterfall__body`,style:f({height:`${ne.value}px`,position:`relative`})},[X.value?(_(!0),a(t,{key:0},b(Z.value,(t,r)=>(_(),a(`div`,{key:`sk-${r}`,class:`waterfall__skeleton`,style:f({position:`absolute`,left:`${t.x}px`,top:`${t.y}px`,width:`${t.width}px`,height:`${t.height}px`,transition:`all ${d.animationDuration??C(300)}ms ease`})},[x(e.$slots,`skeleton`,{},()=>[n[0]||=o(`div`,{class:`waterfall__skeleton-inner`},null,-1)],!0)],4))),128)):i(`v-if`,!0),(_(!0),a(t,null,b(C(A),(t,n)=>(_(),a(`div`,{key:t.item.id,ref_for:!0,ref:e=>ee(e,t.item.id),class:`waterfall__item`,role:`button`,tabindex:`0`,"aria-label":t.item.title||`瀑布流项目 ${n+1}`,style:f({position:`absolute`,left:`${t.x}px`,top:`${t.y}px`,width:`${t.width}px`,transition:`all ${d.animationDuration??C(300)}ms ease`}),onClick:e=>p(`item-click`,t.item,n),onKeydown:[E(e=>p(`item-click`,t.item,n),[`enter`]),E(D(e=>p(`item-click`,t.item,n),[`prevent`]),[`space`])]},[x(e.$slots,`item`,{item:t.item,index:n,width:t.width,height:t.height},()=>[o(`div`,B,[o(`img`,{src:t.item.src,alt:t.item.title||``,loading:d.lazy?`lazy`:`eager`,class:`waterfall__image`,style:f({height:`${t.height}px`}),onLoad:e=>ie(t,e),onError:e=>ae(t)},null,44,V),t.item.title?(_(),a(`div`,H,S(t.item.title),1)):i(`v-if`,!0)])],!0)],44,z))),128))],4),d.infinite?(_(),a(`div`,U,[o(`div`,{ref_key:`sentinelRef`,ref:h,class:`waterfall__sentinel`},null,512),x(e.$slots,`footer`,{status:C(re),paused:C(Q),loadMore:C($)},()=>[d.loading?(_(),a(`div`,W,[c(C(k),{size:`small`}),n[1]||=o(`span`,null,`加载中…`,-1)])):d.noMore?(_(),a(`div`,G,` 没有更多了 `)):C(Q)?(_(),r(C(O),{key:2,size:`small`,onClick:C($)},{default:T(()=>[...n[2]||=[s(`继续加载`,-1)]]),_:1},8,[`onClick`])):i(`v-if`,!0)],!0)])):i(`v-if`,!0)],512))}}),[[`__scopeId`,`data-v-b89d8e04`]]);export{j as a,M as c,I as i,N as l,R as n,P as o,L as r,A as s,K as t,F as u};
1
+ import{t as e}from"./export-helper.js";import{Fragment as t,computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,createTextVNode as s,createVNode as c,defineComponent as l,getCurrentInstance as u,getCurrentScope as d,nextTick as f,normalizeStyle as p,onActivated as m,onBeforeUnmount as h,onDeactivated as g,onMounted as _,onScopeDispose as v,onUnmounted as y,openBlock as b,readonly as x,ref as S,renderList as C,renderSlot as w,shallowRef as T,toDisplayString as E,unref as D,watch as O,withCtx as k}from"vue";import{NButton as A,NSpin as ee}from"naive-ui";const j=16,M=300,N=8,P=200,F=[{minWidth:1600,columns:6},{minWidth:1200,columns:5},{minWidth:992,columns:4},{minWidth:768,columns:3},{minWidth:480,columns:2},{minWidth:0,columns:1}],I=[180,360];function L(e,t,n){let r=S(4),i=S(0);function a(e){if(t?.value&&t.value>0)return t.value;let r=[...n?.value?.length?n.value:F].sort((e,t)=>t.minWidth-e.minWidth);for(let t of r)if(e>=t.minWidth)return t.columns;return 1}let o=null,s=!1;function c(){let t=e.value;if(!s||!t)return;let{width:n}=t.getBoundingClientRect();i.value=n,r.value=a(n)}function l(){u();let t=e.value;t&&(s=!0,typeof ResizeObserver<`u`&&(o=new ResizeObserver(c),o.observe(t)),window.addEventListener(`resize`,c,{passive:!0}),c())}function u(){o?.disconnect(),o=null,window.removeEventListener(`resize`,c),s=!1}return _(l),m(l),g(u),h(u),O(e,()=>{s&&l()}),O([()=>t?.value,()=>n?.value],()=>{i.value>0&&(r.value=a(i.value))}),{columns:x(r),containerWidth:x(i)}}function R(e,t,r,i,a={}){let o=S([]),s=S(0),c=new Map,l=new Map,f=n(()=>new Map(e.value.map(e=>[e.id,e.src]))),p,h=!1,_=!1,y=()=>{p!==void 0&&cancelAnimationFrame(p),p=void 0};d()&&v(()=>{h=!0,y(),l.clear(),c.clear()});let b=()=>{if(!(h||_)){if(!a.batchImageLoads||typeof requestAnimationFrame>`u`){N();return}p===void 0&&(p=requestAnimationFrame(()=>{p=void 0,N()}))}};function C(e,t,n){let r=e/t;return Number.isFinite(r)&&r>0?r*n:n}function w(e,t){let n=l.get(e.id),r=n?.src&&n.src!==e.src?void 0:n;return r&&!r.basisWidth?r.height:r?.basisWidth?C(r.height,r.basisWidth,t):C(e.height,e.width,t)}function T(){o.value=[],s.value=0,e.value.length===0&&(l.clear(),c.clear())}function E(t,n,r){return Number.isFinite(t)&&Number.isFinite(n)&&Number.isFinite(r)&&n>0&&e.value.length>0}function D(e,t,n,r){if(!k(e,r)||!A(t,n))return;let i=l.get(e);i?.height===t&&i.basisWidth===n&&i.src===r||(l.set(e,{height:t,basisWidth:n,src:r}),b())}function k(e,t){return!h&&!_&&f.value.has(e)&&(t===void 0||f.value.get(e)===t)}function A(e,t){return Number.isFinite(e)&&e>0&&(t===void 0||Number.isFinite(t)&&t>0)}function ee(e,t,n,r){if(!k(e,r)||!Number.isFinite(t))return;let i=c.get(e);Math.abs((i?.height??0)-t)<.5&&i?.basisWidth===n&&i?.src===r||(c.set(e,{height:t,basisWidth:n,src:r}),b())}function j(e){for(let t of[l,c])for(let n of t.keys())e.has(n)||t.delete(n)}function M(e,t){let n=c.get(e.id);return!n||n.basisWidth!==void 0&&n.basisWidth!==t||n.src!==void 0&&n.src!==e.src?0:n.height}function N(){if(y(),h||_)return;j(new Set(f.value.keys()));let n=Math.min(24,Math.max(1,Math.floor(t.value))),a=r.value,c=Math.max(0,i.value??16);if(!E(n,a,c)){T();return}let l=(a-(n-1)*c)/n;if(l<=0){T();return}let u=Array.from({length:n},(e,t)=>({index:t,height:0})),d=[];for(let t of e.value){let e=u.reduce((e,t)=>t.height<e.height?t:e),n=w(t,l),r=M(t,l),i=Math.max(1,n+r),a=e.index*(l+c),o=e.height;d.push({item:t,columnIndex:e.index,x:a,y:o,width:l,height:n,totalHeight:i}),e.height=o+i+c}o.value=d,s.value=Math.max(...u.map(e=>e.height))-c}return O([()=>e.value.map(e=>[e,e.id,e.src,e.width,e.height]),t,r,i],N,{immediate:!0}),u()&&(g(()=>{_=!0,y()}),m(()=>{_=!1,N()})),{layoutItems:x(o),containerHeight:x(s),cacheImageHeight:D,cacheItemExtraHeight:ee,relayout:N}}function z(e,t,n,r,i){let a=S(`idle`),o=S(!1),s=null,c=!1,l=!1,u=0,d=!1,p=!1,v=0;function y(){d||p||!l||!t.value||n.value||r.value||c||u>=5||(c=!0,u+=1,o.value=u>=5,a.value=`loading`,i())}function b(){let n=e.value;if(p||!n||!t.value||typeof IntersectionObserver>`u`)return;s?.disconnect();let r=++v;s=new IntersectionObserver(e=>{if(!(d||r!==v)){if(l=!!e[0]?.isIntersecting,!l){c=!1,u=0,o.value=!1;return}y()}},{rootMargin:`200px 0px`}),s.observe(n)}function C(){v+=1,s?.disconnect(),s=null,c=!1,l=!1,u=0,o.value=!1}return O([n,r],([e,t],[n])=>{a.value=t?`no-more`:e?`loading`:`idle`,!e&&!t&&(c=!1,n&&f(y))}),_(b),m(()=>{p=!1,C(),b()}),g(()=>{p=!0,C()}),h(()=>{d=!0,C()}),O([e,t],()=>{C(),b()}),{status:x(a),paused:x(o),resume:()=>{n.value||r.value||d||(u=0,c=!1,o.value=!1,y())}}}function B(e){let t=[],n=new Map;return{columns:t,byId:n,entries:e.map((e,r)=>{let i={layout:e,index:r,bottom:e.y+(e.totalHeight??e.height)};return(t[e.columnIndex]??=[]).push(i),n.set(e.item.id,i),i})}}function V(e,t,n){let r=[];for(let i of e){if(!i)continue;let e=0,a=i.length;for(;e<a;){let n=e+a>>>1;i[n].bottom<t?e=n+1:a=n}for(let t=e;t<i.length;t++){let e=i[t];if(e.layout.y>n)break;r.push(e)}}return r.sort((e,t)=>e.index-t.index)}function H(e){let t=[];for(let n=e.parentElement;n;n=n.parentElement){let e=getComputedStyle(n);/(auto|scroll|overlay|hidden|clip)/.test(e.overflowY||e.overflow)&&t.push(n)}return t}function te(e,t,r){let i=n(()=>B(t.value)),a=T(),o=T({top:0,bottom:600}),s=n(()=>r.value&&t.value.length>=100),c=[],l,u,d=!1,p=n(()=>{if(!s.value)return i.value.entries;let{top:e,bottom:t}=o.value,n=Math.max(300,(t-e)*.75),r=V(i.value.columns,e-n,t+n),c=a.value===void 0?void 0:i.value.byId.get(a.value);return c&&!r.includes(c)&&(r.push(c),r.sort((e,t)=>e.index-t.index)),r});function v(){if(!d||!e.value)return;let t=e.value.getBoundingClientRect().top,n=0,r=window.innerHeight;for(let e of c){let t=e.getBoundingClientRect().top+e.clientTop;n=Math.max(n,t),r=Math.min(r,t+e.clientHeight)}let i=n-t,a=Math.max(n,r)-t;(o.value.top!==i||o.value.bottom!==a)&&(o.value={top:i,bottom:a})}function y(){!d||u!==void 0||(u=requestAnimationFrame(()=>{u=void 0,v()}))}function b(){d=!1,u!==void 0&&cancelAnimationFrame(u),u=void 0,l?.disconnect(),l=void 0,window.removeEventListener(`scroll`,y),window.removeEventListener(`resize`,y);for(let e of c)e.removeEventListener(`scroll`,y);c=[]}function x(){if(b(),e.value){d=!0,c=H(e.value),window.addEventListener(`scroll`,y,{passive:!0}),window.addEventListener(`resize`,y,{passive:!0});for(let e of c)e.addEventListener(`scroll`,y,{passive:!0});typeof ResizeObserver<`u`&&(l=new ResizeObserver(y),l.observe(e.value),c.forEach(e=>l?.observe(e))),v()}}function S(){let t=e.value;if(!d||!t)return;let n=c.find(e=>e.scrollHeight>e.clientHeight&&/(auto|scroll|overlay)/.test(getComputedStyle(e).overflowY||getComputedStyle(e).overflow)),{top:r}=t.getBoundingClientRect();n?n.scrollTo({top:n.scrollTop+r-n.getBoundingClientRect().top-n.clientTop,behavior:`smooth`}):window.scrollTo({top:window.scrollY+r,behavior:`smooth`})}function C(e){a.value!==e&&(a.value=e)}function w(t){(!(t.relatedTarget instanceof Node)||!e.value?.contains(t.relatedTarget))&&(a.value=void 0)}return O(e,()=>{d&&x()},{flush:`post`}),O(i,()=>{a.value!==void 0&&!i.value.byId.has(a.value)&&(a.value=void 0),f(y)}),_(x),m(x),g(b),h(b),{visibleItems:p,index:i,virtual:s,pinItem:C,releaseItem:w,scrollToTop:S}}const ne=[`data-waterfall-index`,`aria-label`,`onClick`,`onKeydown`,`onFocusin`],re={class:`waterfall__card`},ie=[`src`,`alt`,`loading`,`onLoad`,`onError`],ae={key:0,class:`waterfall__title`},oe={key:0,class:`waterfall__footer`},se={key:0,class:`waterfall__status`},ce={key:1,class:`waterfall__status waterfall__status--done`};var U=e(l({name:`C_WaterFall`,__name:`index`,props:{items:{},columns:{default:void 0},gap:{default:16},lazy:{type:Boolean,default:!0},virtualScroll:{type:Boolean,default:!0},infinite:{type:Boolean,default:!1},skeleton:{type:Boolean,default:!0},skeletonCount:{default:8},animationDuration:{default:300},breakpoints:{default:void 0},loading:{type:Boolean,default:!1},noMore:{type:Boolean,default:!1}},emits:[`load-more`,`item-click`,`image-loaded`,`image-error`],setup(e,{expose:l,emit:u}){let d=e,h=u,_=S(),v=S(),{columns:x,containerWidth:T}=L(_,n(()=>d.columns),n(()=>d.breakpoints)),{layoutItems:O,containerHeight:j,cacheImageHeight:M,cacheItemExtraHeight:N,relayout:P}=R(n(()=>d.items),x,T,n(()=>d.gap),{batchImageLoads:!0}),F=new Map,B=new Map,{visibleItems:V,index:H,virtual:U,pinItem:W,releaseItem:G,scrollToTop:le}=te(_,O,n(()=>d.virtualScroll)),K=!0,q=typeof ResizeObserver>`u`?null:new ResizeObserver(e=>{if(K)for(let t of e){let e=F.get(t.target),n=e===void 0?void 0:H.value.byId.get(e)?.layout;n&&N(n.item.id,t.target.getBoundingClientRect().height-n.height,n.width,n.item.src)}});function ue(e,t){let n=B.get(t);n!==e&&(n&&(q?.unobserve(n),F.delete(n),B.delete(t)),e instanceof HTMLElement&&(B.set(t,e),F.set(e,t),K&&q?.observe(e)))}g(()=>{K=!1,q?.disconnect()}),m(()=>{K=!0,B.forEach(e=>q?.observe(e))}),y(()=>{K=!1,q?.disconnect(),F.clear(),B.clear()});let J=n(()=>d.skeleton&&d.loading&&O.value.length===0),Y=n(()=>{let e=Math.min(24,Math.max(1,Math.floor(x.value))),t=T.value,n=Math.max(0,d.gap);if(!Number.isFinite(e)||t<=0)return[];let r=(t-(e-1)*n)/e;if(r<=0)return[];let i=Math.min(100,Math.max(0,Math.floor(d.skeletonCount??8))),a=Array(e).fill(0),o=[];for(let e=0;e<i;e++){let t=a.indexOf(Math.min(...a)),i=I[0]+e*73%(I[1]-I[0]);o.push({x:t*(r+n),y:a[t],width:r,height:i}),a[t]+=i+n}return o}),de=n(()=>Y.value.length===0?0:Math.max(...Y.value.map(e=>e.y+e.height))),fe=n(()=>J.value?de.value:j.value),{status:pe,paused:X,resume:Z}=z(v,n(()=>d.infinite),n(()=>d.loading),n(()=>d.noMore),()=>h(`load-more`));function me(e,t){let n=t.target;if(n.getAttribute(`src`)===e.item.src){if(n.naturalHeight&&n.naturalWidth){let t=n.naturalHeight/n.naturalWidth*e.width;M(e.item.id,t,e.width,e.item.src)}h(`image-loaded`,e.item)}}function he(e){h(`image-error`,e.item)}function ge(e,t){if(e.tabIndex<0||e.matches(`:disabled, input[type="hidden"]`))return!1;for(let n=e;n&&n!==t.parentElement;n=n.parentElement){if(n.hidden||n.hasAttribute(`inert`))return!1;let{display:e,visibility:t}=getComputedStyle(n);if(e===`none`||t===`hidden`||t===`collapse`)return!1}return!0}function Q(e){return Array.from(e.querySelectorAll(`a[href],button,input,select,textarea,[tabindex],[contenteditable="true"]`)).filter(t=>ge(t,e))}function $(e,t=!1){let n=H.value.entries[e];n&&(W(n.layout.item.id),f(()=>{let e=B.get(n.layout.item.id);if(!e||!K)return;let r=t?Q(e):[],i=r[r.length-1]??e;i.focus({preventScroll:!0}),i.scrollIntoView?.({block:`nearest`})}))}function _e(e,t){if(!U.value)return;let n=e.currentTarget,r=Q(n);if(e.shiftKey?e.target!==n:r.length>0&&e.target!==r[r.length-1])return;let i=t+(e.shiftKey?-1:1);H.value.entries[i]&&(e.preventDefault(),$(i,e.shiftKey))}function ve(e,t,n){if(e.key===`Tab`)return _e(e,n);if(e.target!==e.currentTarget)return;if(e.key===`Enter`||e.key===` `){e.preventDefault(),h(`item-click`,t.item,n);return}let r={ArrowRight:n+1,ArrowDown:n+1,ArrowLeft:n-1,ArrowUp:n-1,Home:0,End:d.items.length-1}[e.key];r===void 0||!H.value.entries[r]||(e.preventDefault(),$(r))}return l({relayout:P,scrollToTop:le,getColumns:()=>x.value,getContainerHeight:()=>j.value}),(e,n)=>(b(),a(`div`,{ref_key:`containerRef`,ref:_,class:`c-waterfall`},[o(`div`,{class:`waterfall__body`,style:p({height:`${fe.value}px`,position:`relative`})},[J.value?(b(!0),a(t,{key:0},C(Y.value,(t,r)=>(b(),a(`div`,{key:`sk-${r}`,class:`waterfall__skeleton`,style:p({position:`absolute`,left:`${t.x}px`,top:`${t.y}px`,width:`${t.width}px`,height:`${t.height}px`,transition:`all ${d.animationDuration??D(300)}ms ease`})},[w(e.$slots,`skeleton`,{},()=>[n[1]||=o(`div`,{class:`waterfall__skeleton-inner`},null,-1)],!0)],4))),128)):i(`v-if`,!0),(b(!0),a(t,null,C(D(V),({layout:t,index:r})=>(b(),a(`div`,{key:t.item.id,ref_for:!0,ref:e=>ue(e,t.item.id),class:`waterfall__item`,role:`button`,tabindex:`0`,"data-waterfall-index":r,"aria-label":t.item.title||`瀑布流项目 ${r+1}`,style:p({position:`absolute`,left:`${t.x}px`,top:`${t.y}px`,width:`${t.width}px`,transition:`all ${d.animationDuration??D(300)}ms ease`}),onClick:e=>h(`item-click`,t.item,r),onKeydown:e=>ve(e,t,r),onFocusin:e=>D(W)(t.item.id),onFocusout:n[0]||=(...e)=>D(G)&&D(G)(...e)},[w(e.$slots,`item`,{item:t.item,index:r,width:t.width,height:t.height},()=>[o(`div`,re,[o(`img`,{src:t.item.src,alt:t.item.title||``,loading:d.lazy?`lazy`:`eager`,class:`waterfall__image`,style:p({height:`${t.height}px`}),onLoad:e=>me(t,e),onError:e=>he(t)},null,44,ie),t.item.title?(b(),a(`div`,ae,E(t.item.title),1)):i(`v-if`,!0)])],!0)],44,ne))),128))],4),d.infinite?(b(),a(`div`,oe,[o(`div`,{ref_key:`sentinelRef`,ref:v,class:`waterfall__sentinel`},null,512),w(e.$slots,`footer`,{status:D(pe),paused:D(X),loadMore:D(Z)},()=>[d.loading?(b(),a(`div`,se,[c(D(ee),{size:`small`}),n[2]||=o(`span`,null,`加载中…`,-1)])):d.noMore?(b(),a(`div`,ce,` 没有更多了 `)):D(X)?(b(),r(D(A),{key:2,size:`small`,onClick:D(Z)},{default:k(()=>[...n[3]||=[s(`继续加载`,-1)]]),_:1},8,[`onClick`])):i(`v-if`,!0)],!0)])):i(`v-if`,!0)],512))}}),[[`__scopeId`,`data-v-f6a44501`]]);export{M as a,N as c,L as i,P as l,z as n,F as o,R as r,j as s,U as t,I as u};
package/dist/chunk.cjs CHANGED
@@ -1 +1 @@
1
- var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return o}});
package/dist/config.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=Symbol(`robot-component-feedback`),t=Symbol(`robot-component-locale`);exports.COMPONENT_FEEDBACK_KEY=e,exports.COMPONENT_LOCALE_KEY=t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=Symbol(`robot-component-feedback`),t=Symbol(`robot-component-locale`),n=Symbol(`c-form-global-config`);exports.COMPONENT_FEEDBACK_KEY=e,exports.COMPONENT_LOCALE_KEY=t,exports.FORM_GLOBAL_CONFIG_KEY=n;
package/dist/config.d.cts CHANGED
@@ -1,8 +1,11 @@
1
1
  import { i as ConfirmOptions, n as ComponentLocale, r as ComponentLocaleName, t as ComponentFeedback } from "./contracts.cjs";
2
+ import { n as FormConfig } from "./useFormConfig.cjs";
2
3
  import { InjectionKey } from "vue";
3
4
 
4
5
  //#region src/context.d.ts
5
6
  declare const COMPONENT_FEEDBACK_KEY: InjectionKey<ComponentFeedback>;
6
7
  declare const COMPONENT_LOCALE_KEY: InjectionKey<ComponentLocale>;
8
+ /** 按需接入与全量安装共享同一个表单默认配置,不引入表单渲染依赖。 */
9
+ declare const FORM_GLOBAL_CONFIG_KEY: InjectionKey<FormConfig>;
7
10
  //#endregion
8
- export { COMPONENT_FEEDBACK_KEY, COMPONENT_LOCALE_KEY, type ComponentFeedback, type ComponentLocale, type ComponentLocaleName, type ConfirmOptions };
11
+ export { COMPONENT_FEEDBACK_KEY, COMPONENT_LOCALE_KEY, type ComponentFeedback, type ComponentLocale, type ComponentLocaleName, type ConfirmOptions, FORM_GLOBAL_CONFIG_KEY, type FormConfig };
package/dist/config.d.ts CHANGED
@@ -1,8 +1,10 @@
1
- import { i as ConfirmOptions, n as ComponentLocale, r as ComponentLocaleName, t as ComponentFeedback } from "./contracts.js";
1
+ import { Q as ConfirmOptions, X as ComponentLocale, Y as ComponentFeedback, Z as ComponentLocaleName, n as FormConfig } from "./useFormConfig.js";
2
2
  import { InjectionKey } from "vue";
3
3
 
4
4
  //#region src/context.d.ts
5
5
  declare const COMPONENT_FEEDBACK_KEY: InjectionKey<ComponentFeedback>;
6
6
  declare const COMPONENT_LOCALE_KEY: InjectionKey<ComponentLocale>;
7
+ /** 按需接入与全量安装共享同一个表单默认配置,不引入表单渲染依赖。 */
8
+ declare const FORM_GLOBAL_CONFIG_KEY: InjectionKey<FormConfig>;
7
9
  //#endregion
8
- export { COMPONENT_FEEDBACK_KEY, COMPONENT_LOCALE_KEY, type ComponentFeedback, type ComponentLocale, type ComponentLocaleName, type ConfirmOptions };
10
+ export { COMPONENT_FEEDBACK_KEY, COMPONENT_LOCALE_KEY, type ComponentFeedback, type ComponentLocale, type ComponentLocaleName, type ConfirmOptions, FORM_GLOBAL_CONFIG_KEY, type FormConfig };
package/dist/config.js CHANGED
@@ -1 +1 @@
1
- const e=Symbol(`robot-component-feedback`),t=Symbol(`robot-component-locale`);export{e as COMPONENT_FEEDBACK_KEY,t as COMPONENT_LOCALE_KEY};
1
+ const e=Symbol(`robot-component-feedback`),t=Symbol(`robot-component-locale`),n=Symbol(`c-form-global-config`);export{e as COMPONENT_FEEDBACK_KEY,t as COMPONENT_LOCALE_KEY,n as FORM_GLOBAL_CONFIG_KEY};
@@ -0,0 +1,14 @@
1
+ import { X as ComponentLocale, Y as ComponentFeedback } from "./useFormConfig.js";
2
+ import { MaybeRefOrGetter } from "vue";
3
+
4
+ //#region src/composables/useComponentLocale.d.ts
5
+ /** Bind the UI-independent translator to this Vue application and local configuration. */
6
+ declare function useComponentLocale(local?: MaybeRefOrGetter<ComponentLocale | undefined>): {
7
+ t: (key: string, params?: Record<string, string | number>) => string;
8
+ };
9
+ //#endregion
10
+ //#region src/adapters/naive/feedback.d.ts
11
+ /** Reuse Naive providers when present and safely degrade to injected/no-op feedback. */
12
+ declare function useComponentFeedback(local?: MaybeRefOrGetter<ComponentFeedback | undefined>): Required<ComponentFeedback>;
13
+ //#endregion
14
+ export { useComponentLocale as n, useComponentFeedback as t };
@@ -116,9 +116,9 @@ declare const __VLS_export: vue.DefineComponent<CronProps, CronExpose, {}, {}, {
116
116
  onChange?: ((value: string) => any) | undefined;
117
117
  "onValidation-change"?: ((result: CronValidation) => any) | undefined;
118
118
  }>, {
119
- showPreview: boolean;
120
119
  disabled: boolean;
121
120
  showTemplates: boolean;
121
+ showPreview: boolean;
122
122
  showSecond: boolean;
123
123
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
124
124
  declare const _default: typeof __VLS_export;
@@ -116,9 +116,9 @@ declare const __VLS_export: vue.DefineComponent<CronProps, CronExpose, {}, {}, {
116
116
  onChange?: ((value: string) => any) | undefined;
117
117
  "onValidation-change"?: ((result: CronValidation) => any) | undefined;
118
118
  }>, {
119
- showPreview: boolean;
120
119
  disabled: boolean;
121
120
  showTemplates: boolean;
121
+ showPreview: boolean;
122
122
  showSecond: boolean;
123
123
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
124
124
  declare const _default: typeof __VLS_export;
@@ -133,8 +133,8 @@ declare const __VLS_export: vue.DefineComponent<FormulaEditorProps, FormulaEdito
133
133
  onChange?: ((value: string) => any) | undefined;
134
134
  "onValidation-change"?: ((result: FormulaValidation) => any) | undefined;
135
135
  }>, {
136
- showPreview: boolean;
137
136
  disabled: boolean;
137
+ showPreview: boolean;
138
138
  showKeyboard: boolean;
139
139
  showVariablePanel: boolean;
140
140
  editableSampleData: boolean;
@@ -133,8 +133,8 @@ declare const __VLS_export: vue.DefineComponent<FormulaEditorProps, FormulaEdito
133
133
  onChange?: ((value: string) => any) | undefined;
134
134
  "onValidation-change"?: ((result: FormulaValidation) => any) | undefined;
135
135
  }>, {
136
- showPreview: boolean;
137
136
  disabled: boolean;
137
+ showPreview: boolean;
138
138
  showKeyboard: boolean;
139
139
  showVariablePanel: boolean;
140
140
  editableSampleData: boolean;
@@ -230,9 +230,9 @@ interface NotificationCenterExpose {
230
230
  //#region src/components/C_NotificationCenter/index.vue.d.ts
231
231
  type __VLS_Slots = NotificationCenterSlots;
232
232
  declare const __VLS_base: vue.DefineComponent<NotificationCenterProps, NotificationCenterExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
233
- itemClick: (message: NotificationMessage) => any;
234
233
  delete: (ids: string[]) => any;
235
234
  read: (ids: string[]) => any;
235
+ itemClick: (message: NotificationMessage) => any;
236
236
  allRead: (category?: NotificationCategory | undefined) => any;
237
237
  unreadChange: (count: number) => any;
238
238
  wsStatusChange: (status: WSConnectionStatus) => any;
@@ -240,9 +240,9 @@ declare const __VLS_base: vue.DefineComponent<NotificationCenterProps, Notificat
240
240
  navigate: (url: string) => any;
241
241
  viewAll: () => any;
242
242
  }, string, vue.PublicProps, Readonly<NotificationCenterProps> & Readonly<{
243
- onItemClick?: ((message: NotificationMessage) => any) | undefined;
244
243
  onDelete?: ((ids: string[]) => any) | undefined;
245
244
  onRead?: ((ids: string[]) => any) | undefined;
245
+ onItemClick?: ((message: NotificationMessage) => any) | undefined;
246
246
  onAllRead?: ((category?: NotificationCategory | undefined) => any) | undefined;
247
247
  onUnreadChange?: ((count: number) => any) | undefined;
248
248
  onWsStatusChange?: ((status: WSConnectionStatus) => any) | undefined;
@@ -230,9 +230,9 @@ interface NotificationCenterExpose {
230
230
  //#region src/components/C_NotificationCenter/index.vue.d.ts
231
231
  type __VLS_Slots = NotificationCenterSlots;
232
232
  declare const __VLS_base: vue.DefineComponent<NotificationCenterProps, NotificationCenterExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
233
- itemClick: (message: NotificationMessage) => any;
234
233
  delete: (ids: string[]) => any;
235
234
  read: (ids: string[]) => any;
235
+ itemClick: (message: NotificationMessage) => any;
236
236
  allRead: (category?: NotificationCategory | undefined) => any;
237
237
  unreadChange: (count: number) => any;
238
238
  wsStatusChange: (status: WSConnectionStatus) => any;
@@ -240,9 +240,9 @@ declare const __VLS_base: vue.DefineComponent<NotificationCenterProps, Notificat
240
240
  navigate: (url: string) => any;
241
241
  viewAll: () => any;
242
242
  }, string, vue.PublicProps, Readonly<NotificationCenterProps> & Readonly<{
243
- onItemClick?: ((message: NotificationMessage) => any) | undefined;
244
243
  onDelete?: ((ids: string[]) => any) | undefined;
245
244
  onRead?: ((ids: string[]) => any) | undefined;
245
+ onItemClick?: ((message: NotificationMessage) => any) | undefined;
246
246
  onAllRead?: ((category?: NotificationCategory | undefined) => any) | undefined;
247
247
  onUnreadChange?: ((count: number) => any) | undefined;
248
248
  onWsStatusChange?: ((status: WSConnectionStatus) => any) | undefined;
@@ -196,32 +196,32 @@ type __VLS_Slots = {} & {
196
196
  area?: (props: typeof __VLS_11) => any;
197
197
  };
198
198
  declare const __VLS_base: vue.DefineComponent<UploadProps, UploadExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
199
+ change: (fileList: UploadFileItem[]) => any;
199
200
  success: (file: UploadFileItem, response: unknown) => any;
200
201
  error: (file: UploadFileItem, error: Error) => any;
201
- change: (fileList: UploadFileItem[]) => any;
202
202
  progress: (file: UploadFileItem, percent: number) => any;
203
203
  remove: (file: UploadFileItem) => any;
204
204
  finish: (fileList: UploadFileItem[]) => any;
205
205
  exceed: (files: File[], fileList: UploadFileItem[]) => any;
206
206
  }, string, vue.PublicProps, Readonly<UploadProps> & Readonly<{
207
+ onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
207
208
  onSuccess?: ((file: UploadFileItem, response: unknown) => any) | undefined;
208
209
  onError?: ((file: UploadFileItem, error: Error) => any) | undefined;
209
- onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
210
210
  onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
211
211
  onRemove?: ((file: UploadFileItem) => any) | undefined;
212
212
  onFinish?: ((fileList: UploadFileItem[]) => any) | undefined;
213
213
  onExceed?: ((files: File[], fileList: UploadFileItem[]) => any) | undefined;
214
214
  }>, {
215
215
  disabled: boolean;
216
- data: Record<string, unknown>;
217
- draggable: boolean;
218
216
  action: string;
219
- multiple: boolean;
220
217
  headers: Record<string, string>;
218
+ data: Record<string, unknown>;
219
+ multiple: boolean;
221
220
  directory: boolean;
222
221
  accept: string;
223
222
  maxSize: number;
224
223
  maxCount: number;
224
+ draggable: boolean;
225
225
  pasteable: boolean;
226
226
  chunked: boolean;
227
227
  chunkSize: number;
@@ -196,32 +196,32 @@ type __VLS_Slots = {} & {
196
196
  area?: (props: typeof __VLS_11) => any;
197
197
  };
198
198
  declare const __VLS_base: vue.DefineComponent<UploadProps, UploadExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
199
+ change: (fileList: UploadFileItem[]) => any;
199
200
  success: (file: UploadFileItem, response: unknown) => any;
200
201
  error: (file: UploadFileItem, error: Error) => any;
201
- change: (fileList: UploadFileItem[]) => any;
202
202
  progress: (file: UploadFileItem, percent: number) => any;
203
203
  remove: (file: UploadFileItem) => any;
204
204
  finish: (fileList: UploadFileItem[]) => any;
205
205
  exceed: (files: File[], fileList: UploadFileItem[]) => any;
206
206
  }, string, vue.PublicProps, Readonly<UploadProps> & Readonly<{
207
+ onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
207
208
  onSuccess?: ((file: UploadFileItem, response: unknown) => any) | undefined;
208
209
  onError?: ((file: UploadFileItem, error: Error) => any) | undefined;
209
- onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
210
210
  onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
211
211
  onRemove?: ((file: UploadFileItem) => any) | undefined;
212
212
  onFinish?: ((fileList: UploadFileItem[]) => any) | undefined;
213
213
  onExceed?: ((files: File[], fileList: UploadFileItem[]) => any) | undefined;
214
214
  }>, {
215
215
  disabled: boolean;
216
- data: Record<string, unknown>;
217
- draggable: boolean;
218
216
  action: string;
219
- multiple: boolean;
220
217
  headers: Record<string, string>;
218
+ data: Record<string, unknown>;
219
+ multiple: boolean;
221
220
  directory: boolean;
222
221
  accept: string;
223
222
  maxSize: number;
224
223
  maxCount: number;
224
+ draggable: boolean;
225
225
  pasteable: boolean;
226
226
  chunked: boolean;
227
227
  chunkSize: number;
package/dist/data.cjs CHANGED
@@ -1 +1 @@
1
- require(`./chunk.cjs`);let e=require(`vue`);const t=new Set([`__proto__`,`prototype`,`constructor`]);function n(e){let n=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(n.length===0)throw TypeError(`Data path cannot be empty`);if(n.some(e=>t.has(e)))throw TypeError(`Unsafe data path: ${e}`);return n}function r(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let r=e;for(let e of n(t)){if(typeof r!=`object`||!r||!Object.prototype.hasOwnProperty.call(r,e))return!1;r=r[e]}return!0}function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:n(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function a(e,t,r){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=r;return}let i=n(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=r;return}let n=a[e];(typeof n!=`object`||!n)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function o(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let r=n(t),i=r.pop();if(!i)return;let a=r.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function s(t){return(0,e.isProxy)(t)?(0,e.toRaw)(t):t}function c(e,t){let n=s(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(c(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(c(r,t),c(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(c(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=c(n[e],t))}),i}function l(e){let t=s(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return c(t,new WeakMap)}function u(e,t,n){if(n.get(e)===t)return!0;if(n.set(e,t),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>d(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)||e.size!==t.size?!1:[...e.entries()].every(([e,r])=>t.has(e)?d(r,t.get(e),n):!1);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)||e.size!==t.size?!1:[...e].every(e=>t.has(e));let r=Object.keys(e),i=Object.keys(t);return r.length===i.length?r.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&d(e[r],t[r],n)):!1}function d(e,t,n){let r=s(e),i=s(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:u(r,i,n)}function f(e,t){return d(e,t,new WeakMap)}function p(e,t){let n=l(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
1
+ require(`./chunk.cjs`);let e=require(`vue`);const t=new Set([`__proto__`,`prototype`,`constructor`]);function n(e){let n=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(n.length===0)throw TypeError(`Data path cannot be empty`);if(n.some(e=>t.has(e)))throw TypeError(`Unsafe data path: ${e}`);return n}function r(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let r=e;for(let e of n(t)){if(typeof r!=`object`||!r||!Object.prototype.hasOwnProperty.call(r,e))return!1;r=r[e]}return!0}function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:n(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function a(e,t,r){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=r;return}let i=n(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=r;return}let n=a[e];(typeof n!=`object`||!n)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function o(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let r=n(t),i=r.pop();if(!i)return;let a=r.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function s(t){return(0,e.isProxy)(t)?(0,e.toRaw)(t):t}function c(e,t){let n=s(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(c(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(c(r,t),c(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(c(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=c(n[e],t))}),i}function l(e){let t=s(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return c(t,new WeakMap)}const u=e=>typeof e==`object`&&!!e;function d(e,t){let n=e.additions.length;if(t())return!0;for(;e.additions.length>n;){let[t,n]=e.additions.pop();e.pairs.get(t)?.delete(n)}return!1}function f(e,t,n,r){return n.has(e)&&g(t,n.get(e),r)}function p(e,t,n){if(e.size!==t.size)return!1;let r=new Set,i;for(let[a,o]of e){if(!u(a)){if(!f(a,o,t,n))return!1;continue}if(!r.has(a)&&d(n,()=>f(a,o,t,n))){r.add(a);continue}i??=[...t].filter(e=>u(e[0]));let e=i.find(([e,t])=>e!==a&&!r.has(e)&&d(n,()=>g(a,e,n)&&g(o,t,n)));if(!e)return!1;r.add(e[0])}return!0}function m(e,t,n){if(e.size!==t.size)return!1;let r=new Set,i;for(let a of e){if(!u(a)){if(!t.has(a))return!1;continue}if(!r.has(a)&&t.has(a)){r.add(a);continue}i??=[...t].filter(u);let e=i.find(e=>!r.has(e)&&d(n,()=>g(a,e,n)));if(!e)return!1;r.add(e)}return!0}function h(e,t,n){let r=n.pairs.get(e);if(r?.has(t))return!0;if(r||(r=new WeakSet,n.pairs.set(e,r)),r.add(t),n.additions.push([e,t]),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>g(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)?!1:p(e,t,n);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)?!1:m(e,t,n);let i=Object.keys(e),a=Object.keys(t);return i.length===a.length?i.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&g(e[r],t[r],n)):!1}function g(e,t,n){let r=s(e),i=s(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:h(r,i,n)}function _(e,t){return g(e,t,{pairs:new WeakMap,additions:[]})}function v(e,t){let n=l(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
package/dist/data.d.cts CHANGED
@@ -65,28 +65,28 @@ type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_37>]?: (props: typeof _
65
65
  declare const __VLS_base: vue.DefineComponent<CTabsProps, {
66
66
  activeValue: vue.WritableComputedRef<TabsValue | null, TabsValue | null>;
67
67
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
68
- close: (value: TabsValue) => any;
69
68
  "update:modelValue": (value: TabsValue) => any;
70
69
  change: (value: TabsValue, item: TabsItem | undefined) => any;
70
+ close: (value: TabsValue) => any;
71
71
  add: () => any;
72
72
  }, string, vue.PublicProps, Readonly<CTabsProps> & Readonly<{
73
- onClose?: ((value: TabsValue) => any) | undefined;
74
73
  "onUpdate:modelValue"?: ((value: TabsValue) => any) | undefined;
75
74
  onChange?: ((value: TabsValue, item: TabsItem | undefined) => any) | undefined;
75
+ onClose?: ((value: TabsValue) => any) | undefined;
76
76
  onAdd?: (() => any) | undefined;
77
77
  }>, {
78
+ modelValue: TabsValue | null;
78
79
  type: TabsType;
80
+ defaultValue: TabsValue | null;
79
81
  items: readonly TabsItem[];
80
82
  size: TabsSize;
81
- modelValue: TabsValue | null;
83
+ placement: TabsPlacement;
82
84
  justifyContent: TabsJustifyContent;
83
- closable: boolean;
84
- displayDirective: TabsDisplayDirective;
85
85
  animated: boolean;
86
- defaultValue: TabsValue | null;
87
- placement: TabsPlacement;
86
+ closable: boolean;
88
87
  addable: boolean;
89
88
  tabsOnly: boolean;
89
+ displayDirective: TabsDisplayDirective;
90
90
  paneClass: string;
91
91
  paneStyle: string | vue.CSSProperties;
92
92
  beforeChange: (target: TabsValue, current: TabsValue | null) => boolean | Promise<boolean>;
package/dist/data.d.ts CHANGED
@@ -65,28 +65,28 @@ type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_37>]?: (props: typeof _
65
65
  declare const __VLS_base: vue.DefineComponent<CTabsProps, {
66
66
  activeValue: vue.WritableComputedRef<TabsValue | null, TabsValue | null>;
67
67
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
68
- close: (value: TabsValue) => any;
69
68
  "update:modelValue": (value: TabsValue) => any;
70
69
  change: (value: TabsValue, item: TabsItem | undefined) => any;
70
+ close: (value: TabsValue) => any;
71
71
  add: () => any;
72
72
  }, string, vue.PublicProps, Readonly<CTabsProps> & Readonly<{
73
- onClose?: ((value: TabsValue) => any) | undefined;
74
73
  "onUpdate:modelValue"?: ((value: TabsValue) => any) | undefined;
75
74
  onChange?: ((value: TabsValue, item: TabsItem | undefined) => any) | undefined;
75
+ onClose?: ((value: TabsValue) => any) | undefined;
76
76
  onAdd?: (() => any) | undefined;
77
77
  }>, {
78
+ modelValue: TabsValue | null;
78
79
  type: TabsType;
80
+ defaultValue: TabsValue | null;
79
81
  items: readonly TabsItem[];
80
82
  size: TabsSize;
81
- modelValue: TabsValue | null;
83
+ placement: TabsPlacement;
82
84
  justifyContent: TabsJustifyContent;
83
- closable: boolean;
84
- displayDirective: TabsDisplayDirective;
85
85
  animated: boolean;
86
- defaultValue: TabsValue | null;
87
- placement: TabsPlacement;
86
+ closable: boolean;
88
87
  addable: boolean;
89
88
  tabsOnly: boolean;
89
+ displayDirective: TabsDisplayDirective;
90
90
  paneClass: string;
91
91
  paneStyle: string | vue.CSSProperties;
92
92
  beforeChange: (target: TabsValue, current: TabsValue | null) => boolean | Promise<boolean>;
package/dist/data.js CHANGED
@@ -1 +1 @@
1
- import{isProxy as e,toRaw as t}from"vue";const n=new Set([`__proto__`,`prototype`,`constructor`]);function r(e){let t=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(t.length===0)throw TypeError(`Data path cannot be empty`);if(t.some(e=>n.has(e)))throw TypeError(`Unsafe data path: ${e}`);return t}function i(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let n=e;for(let e of r(t)){if(typeof n!=`object`||!n||!Object.prototype.hasOwnProperty.call(n,e))return!1;n=n[e]}return!0}function a(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:r(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function o(e,t,n){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=n;return}let i=r(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=n;return}let r=a[e];(typeof r!=`object`||!r)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function s(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let n=r(t),i=n.pop();if(!i)return;let a=n.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function c(n){return e(n)?t(n):n}function l(e,t){let n=c(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(l(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(l(r,t),l(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(l(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=l(n[e],t))}),i}function u(e){let t=c(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return l(t,new WeakMap)}function d(e,t,n){if(n.get(e)===t)return!0;if(n.set(e,t),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>f(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)||e.size!==t.size?!1:[...e.entries()].every(([e,r])=>t.has(e)?f(r,t.get(e),n):!1);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)||e.size!==t.size?!1:[...e].every(e=>t.has(e));let r=Object.keys(e),i=Object.keys(t);return r.length===i.length?r.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&f(e[r],t[r],n)):!1}function f(e,t,n){let r=c(e),i=c(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:d(r,i,n)}function p(e,t){return f(e,t,new WeakMap)}function m(e,t){let n=u(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}export{p as a,o as c,i,s as n,r as o,a as r,m as s,u as t};
1
+ import{isProxy as e,toRaw as t}from"vue";const n=new Set([`__proto__`,`prototype`,`constructor`]);function r(e){let t=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(t.length===0)throw TypeError(`Data path cannot be empty`);if(t.some(e=>n.has(e)))throw TypeError(`Unsafe data path: ${e}`);return t}function i(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let n=e;for(let e of r(t)){if(typeof n!=`object`||!n||!Object.prototype.hasOwnProperty.call(n,e))return!1;n=n[e]}return!0}function a(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:r(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function o(e,t,n){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=n;return}let i=r(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=n;return}let r=a[e];(typeof r!=`object`||!r)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function s(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let n=r(t),i=n.pop();if(!i)return;let a=n.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function c(n){return e(n)?t(n):n}function l(e,t){let n=c(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(l(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(l(r,t),l(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(l(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=l(n[e],t))}),i}function u(e){let t=c(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return l(t,new WeakMap)}const d=e=>typeof e==`object`&&!!e;function f(e,t){let n=e.additions.length;if(t())return!0;for(;e.additions.length>n;){let[t,n]=e.additions.pop();e.pairs.get(t)?.delete(n)}return!1}function p(e,t,n,r){return n.has(e)&&_(t,n.get(e),r)}function m(e,t,n){if(e.size!==t.size)return!1;let r=new Set,i;for(let[a,o]of e){if(!d(a)){if(!p(a,o,t,n))return!1;continue}if(!r.has(a)&&f(n,()=>p(a,o,t,n))){r.add(a);continue}i??=[...t].filter(e=>d(e[0]));let e=i.find(([e,t])=>e!==a&&!r.has(e)&&f(n,()=>_(a,e,n)&&_(o,t,n)));if(!e)return!1;r.add(e[0])}return!0}function h(e,t,n){if(e.size!==t.size)return!1;let r=new Set,i;for(let a of e){if(!d(a)){if(!t.has(a))return!1;continue}if(!r.has(a)&&t.has(a)){r.add(a);continue}i??=[...t].filter(d);let e=i.find(e=>!r.has(e)&&f(n,()=>_(a,e,n)));if(!e)return!1;r.add(e)}return!0}function g(e,t,n){let r=n.pairs.get(e);if(r?.has(t))return!0;if(r||(r=new WeakSet,n.pairs.set(e,r)),r.add(t),n.additions.push([e,t]),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>_(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)?!1:m(e,t,n);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)?!1:h(e,t,n);let i=Object.keys(e),a=Object.keys(t);return i.length===a.length?i.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&_(e[r],t[r],n)):!1}function _(e,t,n){let r=c(e),i=c(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:g(r,i,n)}function v(e,t){return _(e,t,{pairs:new WeakMap,additions:[]})}function y(e,t){let n=u(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}export{v as a,o as c,i,s as n,r as o,a as r,y as s,u as t};
@@ -1,5 +1,4 @@
1
- import { n as ComponentLocale, t as ComponentFeedback } from "./contracts.js";
2
- import { t as ComponentDensity } from "./density.js";
1
+ import { X as ComponentLocale, Y as ComponentFeedback, u as ComponentDensity } from "./useFormConfig.js";
3
2
  import * as vue from "vue";
4
3
  import { MaybeRefOrGetter, Ref } from "vue";
5
4
  import { FormInst, FormItemRule } from "naive-ui";