@antv/s2-vue 2.0.0-next.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (221) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +7 -8
  3. package/dist/s2-vue.min.css +1 -0
  4. package/dist/s2-vue.min.js +28 -0
  5. package/dist/s2-vue.min.js.map +1 -0
  6. package/esm/common/constant/index.d.ts +1 -0
  7. package/esm/common/constant/index.js +2 -0
  8. package/esm/common/constant/index.js.map +1 -0
  9. package/esm/common/constant/options.d.ts +2 -0
  10. package/esm/common/constant/options.js +7 -0
  11. package/esm/common/constant/options.js.map +1 -0
  12. package/esm/components/drill-down/index.vue.d.ts +126 -0
  13. package/esm/components/drill-down/index.vue.js +206 -0
  14. package/esm/components/drill-down/index.vue.js.map +1 -0
  15. package/esm/components/index.d.ts +6 -0
  16. package/esm/components/index.js +8 -0
  17. package/esm/components/index.js.map +1 -0
  18. package/esm/components/pagination/index.vue.d.ts +44 -0
  19. package/esm/components/pagination/index.vue.js +91 -0
  20. package/esm/components/pagination/index.vue.js.map +1 -0
  21. package/esm/components/sheets/base-sheet.vue.d.ts +391 -0
  22. package/esm/components/sheets/base-sheet.vue.js +119 -0
  23. package/esm/components/sheets/base-sheet.vue.js.map +1 -0
  24. package/esm/components/sheets/editable-sheet.vue.d.ts +2 -0
  25. package/esm/components/sheets/editable-sheet.vue.js +181 -0
  26. package/esm/components/sheets/editable-sheet.vue.js.map +1 -0
  27. package/esm/components/sheets/index.vue.d.ts +251 -0
  28. package/esm/components/sheets/index.vue.js +77 -0
  29. package/esm/components/sheets/index.vue.js.map +1 -0
  30. package/esm/components/sheets/pivot-sheet.vue.d.ts +322 -0
  31. package/esm/components/sheets/pivot-sheet.vue.js +117 -0
  32. package/esm/components/sheets/pivot-sheet.vue.js.map +1 -0
  33. package/esm/components/sheets/table-sheet.vue.d.ts +250 -0
  34. package/esm/components/sheets/table-sheet.vue.js +61 -0
  35. package/esm/components/sheets/table-sheet.vue.js.map +1 -0
  36. package/esm/components/tooltip/components/detail.vue.d.ts +6 -0
  37. package/esm/components/tooltip/components/detail.vue.js +53 -0
  38. package/esm/components/tooltip/components/detail.vue.js.map +1 -0
  39. package/esm/components/tooltip/components/head-info.vue.d.ts +6 -0
  40. package/esm/components/tooltip/components/head-info.vue.js +61 -0
  41. package/esm/components/tooltip/components/head-info.vue.js.map +1 -0
  42. package/esm/components/tooltip/components/infos.vue.d.ts +6 -0
  43. package/esm/components/tooltip/components/infos.vue.js +49 -0
  44. package/esm/components/tooltip/components/infos.vue.js.map +1 -0
  45. package/esm/components/tooltip/components/operator/index.d.ts +3 -0
  46. package/esm/components/tooltip/components/operator/index.js +4 -0
  47. package/esm/components/tooltip/components/operator/index.js.map +1 -0
  48. package/esm/components/tooltip/components/operator/index.vue.d.ts +14 -0
  49. package/esm/components/tooltip/components/operator/index.vue.js +149 -0
  50. package/esm/components/tooltip/components/operator/index.vue.js.map +1 -0
  51. package/esm/components/tooltip/components/operator/menu.vue.d.ts +21 -0
  52. package/esm/components/tooltip/components/operator/menu.vue.js +146 -0
  53. package/esm/components/tooltip/components/operator/menu.vue.js.map +1 -0
  54. package/esm/components/tooltip/components/operator/title.vue.d.ts +10 -0
  55. package/esm/components/tooltip/components/operator/title.vue.js +54 -0
  56. package/esm/components/tooltip/components/operator/title.vue.js.map +1 -0
  57. package/esm/components/tooltip/components/simple-tips.vue.d.ts +6 -0
  58. package/esm/components/tooltip/components/simple-tips.vue.js +55 -0
  59. package/esm/components/tooltip/components/simple-tips.vue.js.map +1 -0
  60. package/esm/components/tooltip/components/summary.vue.d.ts +11 -0
  61. package/esm/components/tooltip/components/summary.vue.js +71 -0
  62. package/esm/components/tooltip/components/summary.vue.js.map +1 -0
  63. package/esm/components/tooltip/custom-tooltip.d.ts +6 -0
  64. package/esm/components/tooltip/custom-tooltip.js +36 -0
  65. package/esm/components/tooltip/custom-tooltip.js.map +1 -0
  66. package/esm/components/tooltip/index.vue.d.ts +13 -0
  67. package/esm/components/tooltip/index.vue.js +124 -0
  68. package/esm/components/tooltip/index.vue.js.map +1 -0
  69. package/esm/components/tooltip/interface.d.ts +8 -0
  70. package/esm/components/tooltip/interface.js +2 -0
  71. package/esm/components/tooltip/interface.js.map +1 -0
  72. package/esm/hooks/useEvents.d.ts +4 -0
  73. package/esm/hooks/useEvents.js +125 -0
  74. package/esm/hooks/useEvents.js.map +1 -0
  75. package/esm/hooks/useExpose.d.ts +5 -0
  76. package/esm/hooks/useExpose.js +11 -0
  77. package/esm/hooks/useExpose.js.map +1 -0
  78. package/esm/hooks/useLoading.d.ts +6 -0
  79. package/esm/hooks/useLoading.js +18 -0
  80. package/esm/hooks/useLoading.js.map +1 -0
  81. package/esm/hooks/usePagination.d.ts +70 -0
  82. package/esm/hooks/usePagination.js +68 -0
  83. package/esm/hooks/usePagination.js.map +1 -0
  84. package/esm/hooks/useResize.d.ts +7 -0
  85. package/esm/hooks/useResize.js +20 -0
  86. package/esm/hooks/useResize.js.map +1 -0
  87. package/esm/hooks/useSheetUpdate.d.ts +13 -0
  88. package/esm/hooks/useSheetUpdate.js +56 -0
  89. package/esm/hooks/useSheetUpdate.js.map +1 -0
  90. package/esm/hooks/useSpreadSheet.d.ts +75 -0
  91. package/esm/hooks/useSpreadSheet.js +60 -0
  92. package/esm/hooks/useSpreadSheet.js.map +1 -0
  93. package/esm/index.d.ts +4 -6184
  94. package/esm/index.js +5 -3363
  95. package/esm/index.js.map +1 -1
  96. package/esm/interface.d.ts +47 -0
  97. package/esm/interface.js +2 -0
  98. package/esm/interface.js.map +1 -0
  99. package/esm/svg/calendar-icon.svg +13 -0
  100. package/esm/svg/location-icon.svg +13 -0
  101. package/esm/svg/text-icon.svg +13 -0
  102. package/esm/utils/extendLocale.d.ts +1 -0
  103. package/esm/utils/extendLocale.js +3 -0
  104. package/esm/utils/extendLocale.js.map +1 -0
  105. package/esm/utils/initPropAndEmits.d.ts +204 -0
  106. package/esm/utils/initPropAndEmits.js +158 -0
  107. package/esm/utils/initPropAndEmits.js.map +1 -0
  108. package/esm/utils/options.d.ts +2 -0
  109. package/esm/utils/options.js +4 -0
  110. package/esm/utils/options.js.map +1 -0
  111. package/lib/common/constant/index.d.ts +1 -0
  112. package/lib/common/constant/index.js +5 -0
  113. package/lib/common/constant/index.js.map +1 -0
  114. package/lib/common/constant/options.d.ts +2 -0
  115. package/lib/common/constant/options.js +10 -0
  116. package/lib/common/constant/options.js.map +1 -0
  117. package/lib/components/drill-down/index.vue.d.ts +126 -0
  118. package/lib/components/drill-down/index.vue.js +209 -0
  119. package/lib/components/drill-down/index.vue.js.map +1 -0
  120. package/lib/components/index.d.ts +6 -0
  121. package/lib/components/index.js +20 -0
  122. package/lib/components/index.js.map +1 -0
  123. package/lib/components/pagination/index.vue.d.ts +44 -0
  124. package/lib/components/pagination/index.vue.js +93 -0
  125. package/lib/components/pagination/index.vue.js.map +1 -0
  126. package/lib/components/sheets/base-sheet.vue.d.ts +391 -0
  127. package/lib/components/sheets/base-sheet.vue.js +122 -0
  128. package/lib/components/sheets/base-sheet.vue.js.map +1 -0
  129. package/lib/components/sheets/editable-sheet.vue.d.ts +2 -0
  130. package/lib/components/sheets/editable-sheet.vue.js +184 -0
  131. package/lib/components/sheets/editable-sheet.vue.js.map +1 -0
  132. package/lib/components/sheets/index.vue.d.ts +251 -0
  133. package/lib/components/sheets/index.vue.js +80 -0
  134. package/lib/components/sheets/index.vue.js.map +1 -0
  135. package/lib/components/sheets/pivot-sheet.vue.d.ts +322 -0
  136. package/lib/components/sheets/pivot-sheet.vue.js +120 -0
  137. package/lib/components/sheets/pivot-sheet.vue.js.map +1 -0
  138. package/lib/components/sheets/table-sheet.vue.d.ts +250 -0
  139. package/lib/components/sheets/table-sheet.vue.js +64 -0
  140. package/lib/components/sheets/table-sheet.vue.js.map +1 -0
  141. package/lib/components/tooltip/components/detail.vue.d.ts +6 -0
  142. package/lib/components/tooltip/components/detail.vue.js +55 -0
  143. package/lib/components/tooltip/components/detail.vue.js.map +1 -0
  144. package/lib/components/tooltip/components/head-info.vue.d.ts +6 -0
  145. package/lib/components/tooltip/components/head-info.vue.js +63 -0
  146. package/lib/components/tooltip/components/head-info.vue.js.map +1 -0
  147. package/lib/components/tooltip/components/infos.vue.d.ts +6 -0
  148. package/lib/components/tooltip/components/infos.vue.js +51 -0
  149. package/lib/components/tooltip/components/infos.vue.js.map +1 -0
  150. package/lib/components/tooltip/components/operator/index.d.ts +3 -0
  151. package/lib/components/tooltip/components/operator/index.js +13 -0
  152. package/lib/components/tooltip/components/operator/index.js.map +1 -0
  153. package/lib/components/tooltip/components/operator/index.vue.d.ts +14 -0
  154. package/lib/components/tooltip/components/operator/index.vue.js +152 -0
  155. package/lib/components/tooltip/components/operator/index.vue.js.map +1 -0
  156. package/lib/components/tooltip/components/operator/menu.vue.d.ts +21 -0
  157. package/lib/components/tooltip/components/operator/menu.vue.js +149 -0
  158. package/lib/components/tooltip/components/operator/menu.vue.js.map +1 -0
  159. package/lib/components/tooltip/components/operator/title.vue.d.ts +10 -0
  160. package/lib/components/tooltip/components/operator/title.vue.js +56 -0
  161. package/lib/components/tooltip/components/operator/title.vue.js.map +1 -0
  162. package/lib/components/tooltip/components/simple-tips.vue.d.ts +6 -0
  163. package/lib/components/tooltip/components/simple-tips.vue.js +57 -0
  164. package/lib/components/tooltip/components/simple-tips.vue.js.map +1 -0
  165. package/lib/components/tooltip/components/summary.vue.d.ts +11 -0
  166. package/lib/components/tooltip/components/summary.vue.js +73 -0
  167. package/lib/components/tooltip/components/summary.vue.js.map +1 -0
  168. package/lib/components/tooltip/custom-tooltip.d.ts +6 -0
  169. package/lib/components/tooltip/custom-tooltip.js +41 -0
  170. package/lib/components/tooltip/custom-tooltip.js.map +1 -0
  171. package/lib/components/tooltip/index.vue.d.ts +13 -0
  172. package/lib/components/tooltip/index.vue.js +127 -0
  173. package/lib/components/tooltip/index.vue.js.map +1 -0
  174. package/lib/components/tooltip/interface.d.ts +8 -0
  175. package/lib/components/tooltip/interface.js +3 -0
  176. package/lib/components/tooltip/interface.js.map +1 -0
  177. package/lib/hooks/useEvents.d.ts +4 -0
  178. package/lib/hooks/useEvents.js +129 -0
  179. package/lib/hooks/useEvents.js.map +1 -0
  180. package/lib/hooks/useExpose.d.ts +5 -0
  181. package/lib/hooks/useExpose.js +15 -0
  182. package/lib/hooks/useExpose.js.map +1 -0
  183. package/lib/hooks/useLoading.d.ts +6 -0
  184. package/lib/hooks/useLoading.js +22 -0
  185. package/lib/hooks/useLoading.js.map +1 -0
  186. package/lib/hooks/usePagination.d.ts +70 -0
  187. package/lib/hooks/usePagination.js +72 -0
  188. package/lib/hooks/usePagination.js.map +1 -0
  189. package/lib/hooks/useResize.d.ts +7 -0
  190. package/lib/hooks/useResize.js +24 -0
  191. package/lib/hooks/useResize.js.map +1 -0
  192. package/lib/hooks/useSheetUpdate.d.ts +13 -0
  193. package/lib/hooks/useSheetUpdate.js +60 -0
  194. package/lib/hooks/useSheetUpdate.js.map +1 -0
  195. package/lib/hooks/useSpreadSheet.d.ts +75 -0
  196. package/lib/hooks/useSpreadSheet.js +64 -0
  197. package/lib/hooks/useSpreadSheet.js.map +1 -0
  198. package/lib/index.d.ts +4 -0
  199. package/lib/index.js +8 -3362
  200. package/lib/index.js.map +1 -1
  201. package/lib/interface.d.ts +47 -0
  202. package/lib/interface.js +3 -0
  203. package/lib/interface.js.map +1 -0
  204. package/lib/svg/calendar-icon.svg +13 -0
  205. package/lib/svg/location-icon.svg +13 -0
  206. package/lib/svg/text-icon.svg +13 -0
  207. package/lib/utils/extendLocale.d.ts +1 -0
  208. package/lib/utils/extendLocale.js +5 -0
  209. package/lib/utils/extendLocale.js.map +1 -0
  210. package/lib/utils/initPropAndEmits.d.ts +204 -0
  211. package/lib/utils/initPropAndEmits.js +165 -0
  212. package/lib/utils/initPropAndEmits.js.map +1 -0
  213. package/lib/utils/options.d.ts +2 -0
  214. package/lib/utils/options.js +8 -0
  215. package/lib/utils/options.js.map +1 -0
  216. package/package.json +63 -58
  217. package/dist/index.min.js +0 -2
  218. package/dist/index.min.js.map +0 -1
  219. package/dist/style.min.css +0 -1
  220. package/esm/style.css +0 -393
  221. package/lib/style.css +0 -393
@@ -0,0 +1,75 @@
1
+ import { type SpreadSheet } from '@antv/s2';
2
+ import type { BaseSheetInitEmits, EmitFn } from '../interface';
3
+ import type { BaseSheetProps } from '../utils/initPropAndEmits';
4
+ export declare function useSpreadSheet(props: BaseSheetProps, emit: EmitFn<BaseSheetInitEmits>): {
5
+ wrapperRef: import("vue").Ref<HTMLDivElement>;
6
+ containerRef: import("vue").Ref<HTMLDivElement>;
7
+ s2Ref: import("vue").ShallowRef<SpreadSheet>;
8
+ loading: import("vue").Ref<boolean>;
9
+ setLoading: (updated: boolean) => void;
10
+ pagination: {
11
+ customOptions: import("lodash").Omit<import("@antv/s2").Pagination & Partial<import("vue").ExtractPropTypes<{
12
+ total: NumberConstructor;
13
+ defaultCurrent: NumberConstructor;
14
+ disabled: {
15
+ type: BooleanConstructor;
16
+ default: any;
17
+ };
18
+ current: NumberConstructor;
19
+ defaultPageSize: NumberConstructor;
20
+ pageSize: NumberConstructor;
21
+ hideOnSinglePage: {
22
+ type: BooleanConstructor;
23
+ default: any;
24
+ };
25
+ showSizeChanger: {
26
+ type: BooleanConstructor;
27
+ default: any;
28
+ };
29
+ pageSizeOptions: import("vue").PropType<(string | number)[]>;
30
+ buildOptionText: import("vue").PropType<(opt: {
31
+ value: any;
32
+ }) => any>;
33
+ showQuickJumper: {
34
+ type: import("vue").PropType<boolean | {
35
+ goButton?: any;
36
+ }>;
37
+ default: boolean | {
38
+ goButton?: any;
39
+ };
40
+ };
41
+ showTotal: import("vue").PropType<(total: number, range: [number, number]) => any>;
42
+ size: import("vue").PropType<"small" | "default">;
43
+ simple: {
44
+ type: BooleanConstructor;
45
+ default: any;
46
+ };
47
+ locale: ObjectConstructor;
48
+ prefixCls: StringConstructor;
49
+ selectPrefixCls: StringConstructor;
50
+ totalBoundaryShowSizeChanger: NumberConstructor;
51
+ selectComponentClass: StringConstructor;
52
+ itemRender: import("vue").PropType<(opt: {
53
+ page: number;
54
+ type: "page" | "prev" | "next" | "jump-prev" | "jump-next";
55
+ originalElement: any;
56
+ }) => any>;
57
+ role: StringConstructor;
58
+ responsive: BooleanConstructor;
59
+ showLessItems: {
60
+ type: BooleanConstructor;
61
+ default: any;
62
+ };
63
+ onChange: import("vue").PropType<(page: number, pageSize: number) => void>;
64
+ onShowSizeChange: import("vue").PropType<(current: number, size: number) => void>;
65
+ 'onUpdate:current': import("vue").PropType<(current: number) => void>;
66
+ 'onUpdate:pageSize': import("vue").PropType<(size: number) => void>;
67
+ }>>, "total" | "current" | "pageSize">;
68
+ visible: import("vue").ComputedRef<boolean>;
69
+ current: import("vue").Ref<number>;
70
+ pageSize: import("vue").Ref<number>;
71
+ total: import("vue").Ref<number>;
72
+ change: (nextCurrent: number) => void;
73
+ showSizeChange: (nextPageSize: number) => void;
74
+ };
75
+ };
@@ -0,0 +1,60 @@
1
+ import { PivotSheet, TableSheet, } from '@antv/s2';
2
+ import { onBeforeUnmount, onMounted, ref, shallowRef, toRaw } from 'vue';
3
+ import { getSheetComponentOptions } from '../utils/options';
4
+ import { useEvents } from './useEvents';
5
+ import { useLoading } from './useLoading';
6
+ import { usePagination } from './usePagination';
7
+ import { useResize } from './useResize';
8
+ import { useSheetUpdate } from './useSheetUpdate';
9
+ export function useSpreadSheet(props, emit) {
10
+ const { dataCfg, options, themeCfg, loading: loadingProps, sheetType, spreadsheet: customSpreadSheet, onMounted: onS2Mounted, } = props;
11
+ const wrapperRef = ref();
12
+ const containerRef = ref();
13
+ const s2Ref = shallowRef();
14
+ const { loading, setLoading } = useLoading(s2Ref, loadingProps);
15
+ const pagination = usePagination(s2Ref, props);
16
+ const renderSpreadSheet = (container) => {
17
+ const rawDataCfg = toRaw(dataCfg);
18
+ const rawOptions = toRaw(options);
19
+ const s2Options = getSheetComponentOptions(rawOptions);
20
+ if (customSpreadSheet) {
21
+ return customSpreadSheet(container, rawDataCfg, s2Options);
22
+ }
23
+ if (sheetType === 'table' || sheetType === 'editable') {
24
+ return new TableSheet(container, rawDataCfg, s2Options);
25
+ }
26
+ return new PivotSheet(container, rawDataCfg, s2Options);
27
+ };
28
+ const buildSpreadSheet = async () => {
29
+ setLoading(true);
30
+ s2Ref.value = renderSpreadSheet(containerRef.value);
31
+ s2Ref.value.setThemeCfg(toRaw(themeCfg));
32
+ await s2Ref.value.render();
33
+ setLoading(false);
34
+ onS2Mounted?.(s2Ref.value);
35
+ };
36
+ onMounted(buildSpreadSheet);
37
+ useEvents(s2Ref, emit);
38
+ useSheetUpdate(s2Ref, props, {
39
+ before() {
40
+ setLoading(true);
41
+ },
42
+ after() {
43
+ setLoading(false);
44
+ },
45
+ });
46
+ useResize(s2Ref, props, { wrapperRef, containerRef });
47
+ onBeforeUnmount(() => {
48
+ setLoading(false);
49
+ s2Ref.value?.destroy();
50
+ });
51
+ return {
52
+ wrapperRef,
53
+ containerRef,
54
+ s2Ref,
55
+ loading,
56
+ setLoading,
57
+ pagination,
58
+ };
59
+ }
60
+ //# sourceMappingURL=useSpreadSheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSpreadSheet.js","sourceRoot":"","sources":["../../src/hooks/useSpreadSheet.ts"],"names":[],"mappings":"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"}