giime 0.6.0-dev.9 → 0.6.2

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 (210) hide show
  1. package/dist/index.css +7 -7
  2. package/es/api/materialApi/cross/getAliOssConfigs.d.ts +14 -0
  3. package/es/api/materialApi/cross/getAliOssConfigs.mjs +8 -0
  4. package/es/api/materialApi/cross/getAliOssConfigs.mjs.map +1 -0
  5. package/es/api/materialApi/cross/index.d.ts +1 -1
  6. package/es/api/materialApi/cross/index.mjs +1 -1
  7. package/es/api/materialApi/index.mjs +1 -1
  8. package/es/components/src/base/checkbox/Checkbox.vue.d.ts +3 -3
  9. package/es/components/src/base/checkbox/index.d.ts +9 -9
  10. package/es/components/src/base/checkboxButton/CheckboxButton.vue.d.ts +3 -3
  11. package/es/components/src/base/checkboxButton/index.d.ts +9 -9
  12. package/es/components/src/base/radio/Radio.vue.d.ts +1 -1
  13. package/es/components/src/base/radio/index.d.ts +3 -3
  14. package/es/components/src/base/radioButton/RadioButton.vue.d.ts +1 -1
  15. package/es/components/src/base/radioButton/index.d.ts +3 -3
  16. package/es/components/src/base/tabPane/TabPane.vue.d.ts +3 -3
  17. package/es/components/src/base/tabPane/index.d.ts +9 -9
  18. package/es/components/src/base/tabs/Tabs.vue.d.ts +2 -2
  19. package/es/components/src/base/tabs/index.d.ts +6 -6
  20. package/es/components/src/base/tabs/tabs.d.ts +1 -1
  21. package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs +2 -2
  22. package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs.map +1 -1
  23. package/es/components/src/business/loginDialog/loginDialog.mjs +1 -1
  24. package/es/components/src/business/loginDialog/loginDialog.mjs.map +1 -1
  25. package/es/components/src/business/uploadMaterial/UploadMaterial.vue.d.ts +56 -52
  26. package/es/components/src/business/uploadMaterial/UploadMaterial.vue2.mjs +11 -6
  27. package/es/components/src/business/uploadMaterial/UploadMaterial.vue2.mjs.map +1 -1
  28. package/es/components/src/business/uploadMaterial/index.d.ts +8 -4
  29. package/es/components/src/composite/fileComponent/FileComponent.vue2.mjs +18 -16
  30. package/es/components/src/composite/fileComponent/FileComponent.vue2.mjs.map +1 -1
  31. package/es/components/src/composite/operateButton/OperateButton.vue.d.ts +1 -1
  32. package/es/components/src/composite/operateButton/index.d.ts +1 -1
  33. package/es/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue.d.ts +1 -1
  34. package/es/components/src/composite/searchForm/searchFormItems/select/index.d.ts +1 -1
  35. package/es/components/src/composite/tablePro/TablePro.vue.d.ts +1 -1
  36. package/es/components/src/composite/tablePro/index.d.ts +3 -3
  37. package/es/components/src/composite/uploadFile/UploadFile.vue.d.ts +11 -12
  38. package/es/components/src/composite/uploadFile/UploadFile.vue.mjs +1 -1
  39. package/es/components/src/composite/uploadFile/UploadFile.vue2.mjs +31 -23
  40. package/es/components/src/composite/uploadFile/UploadFile.vue2.mjs.map +1 -1
  41. package/es/components/src/composite/uploadFile/index.d.ts +22 -30
  42. package/es/components/src/composite/uploadFile/uploadFile.d.ts +30 -28
  43. package/es/components/src/composite/uploadFile/uploadFile.mjs.map +1 -1
  44. package/es/giime/index.mjs +4 -2
  45. package/es/giime/index.mjs.map +1 -1
  46. package/es/giime/version.d.ts +1 -1
  47. package/es/giime/version.mjs +1 -1
  48. package/es/giime/version.mjs.map +1 -1
  49. package/es/hooks/index.mjs +1 -1
  50. package/es/hooks/store/index.d.ts +1 -1
  51. package/es/hooks/store/index.mjs +1 -1
  52. package/es/hooks/store/useAliOssConfigs/index.d.ts +20 -0
  53. package/es/hooks/store/useAliOssConfigs/index.mjs +31 -0
  54. package/es/hooks/store/useAliOssConfigs/index.mjs.map +1 -0
  55. package/es/hooks/store/useLogin/index.d.ts +9 -9
  56. package/es/hooks/store/useLogin/index.mjs.map +1 -1
  57. package/es/hooks/store/useOrgUserList/index.d.ts +4 -3
  58. package/es/hooks/store/useOrgUserList/index.mjs +8 -6
  59. package/es/hooks/store/useOrgUserList/index.mjs.map +1 -1
  60. package/es/index.css +7 -7
  61. package/es/utils/index.d.ts +2 -1
  62. package/es/utils/index.mjs +4 -1
  63. package/es/utils/index.mjs.map +1 -1
  64. package/es/utils/src/alioss/aliossPutHook.mjs +5 -2
  65. package/es/utils/src/alioss/aliossPutHook.mjs.map +1 -1
  66. package/es/utils/src/alioss/aliossToken.d.ts +6 -6
  67. package/es/utils/src/alioss/aliossToken.mjs +1 -1
  68. package/es/utils/src/alioss/aliossToken.mjs.map +1 -1
  69. package/es/utils/src/number.d.ts +7 -0
  70. package/es/utils/src/number.mjs +11 -0
  71. package/es/utils/src/number.mjs.map +1 -0
  72. package/es/utils/src/tree/filterTreeByName.d.ts +14 -0
  73. package/es/utils/src/tree/filterTreeByName.mjs +18 -0
  74. package/es/utils/src/tree/filterTreeByName.mjs.map +1 -0
  75. package/es/utils/src/tree/findChildrenItem.d.ts +7 -0
  76. package/es/utils/src/tree/findChildrenItem.mjs +20 -0
  77. package/es/utils/src/tree/findChildrenItem.mjs.map +1 -0
  78. package/es/utils/src/tree/index.d.ts +2 -0
  79. package/es/utils/src/tree/index.mjs +3 -0
  80. package/es/utils/src/tree/index.mjs.map +1 -0
  81. package/lib/api/materialApi/cross/getAliOssConfigs.d.ts +14 -0
  82. package/lib/api/materialApi/cross/getAliOssConfigs.js +10 -0
  83. package/lib/api/materialApi/cross/getAliOssConfigs.js.map +1 -0
  84. package/lib/api/materialApi/cross/index.d.ts +1 -1
  85. package/lib/api/materialApi/cross/index.js +2 -2
  86. package/lib/api/materialApi/index.js +2 -2
  87. package/lib/components/src/base/checkbox/Checkbox.vue.d.ts +3 -3
  88. package/lib/components/src/base/checkbox/index.d.ts +9 -9
  89. package/lib/components/src/base/checkboxButton/CheckboxButton.vue.d.ts +3 -3
  90. package/lib/components/src/base/checkboxButton/index.d.ts +9 -9
  91. package/lib/components/src/base/radio/Radio.vue.d.ts +1 -1
  92. package/lib/components/src/base/radio/index.d.ts +3 -3
  93. package/lib/components/src/base/radioButton/RadioButton.vue.d.ts +1 -1
  94. package/lib/components/src/base/radioButton/index.d.ts +3 -3
  95. package/lib/components/src/base/tabPane/TabPane.vue.d.ts +3 -3
  96. package/lib/components/src/base/tabPane/index.d.ts +9 -9
  97. package/lib/components/src/base/tabs/Tabs.vue.d.ts +2 -2
  98. package/lib/components/src/base/tabs/index.d.ts +6 -6
  99. package/lib/components/src/base/tabs/tabs.d.ts +1 -1
  100. package/lib/components/src/business/loginDialog/LoginDialog.vue2.js +2 -2
  101. package/lib/components/src/business/loginDialog/LoginDialog.vue2.js.map +1 -1
  102. package/lib/components/src/business/loginDialog/loginDialog.js +1 -1
  103. package/lib/components/src/business/loginDialog/loginDialog.js.map +1 -1
  104. package/lib/components/src/business/uploadMaterial/UploadMaterial.vue.d.ts +56 -52
  105. package/lib/components/src/business/uploadMaterial/UploadMaterial.vue2.js +11 -6
  106. package/lib/components/src/business/uploadMaterial/UploadMaterial.vue2.js.map +1 -1
  107. package/lib/components/src/business/uploadMaterial/index.d.ts +8 -4
  108. package/lib/components/src/composite/fileComponent/FileComponent.vue2.js +18 -16
  109. package/lib/components/src/composite/fileComponent/FileComponent.vue2.js.map +1 -1
  110. package/lib/components/src/composite/operateButton/OperateButton.vue.d.ts +1 -1
  111. package/lib/components/src/composite/operateButton/index.d.ts +1 -1
  112. package/lib/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue.d.ts +1 -1
  113. package/lib/components/src/composite/searchForm/searchFormItems/select/index.d.ts +1 -1
  114. package/lib/components/src/composite/tablePro/TablePro.vue.d.ts +1 -1
  115. package/lib/components/src/composite/tablePro/index.d.ts +3 -3
  116. package/lib/components/src/composite/uploadFile/UploadFile.vue.d.ts +11 -12
  117. package/lib/components/src/composite/uploadFile/UploadFile.vue.js +1 -1
  118. package/lib/components/src/composite/uploadFile/UploadFile.vue2.js +31 -23
  119. package/lib/components/src/composite/uploadFile/UploadFile.vue2.js.map +1 -1
  120. package/lib/components/src/composite/uploadFile/index.d.ts +22 -30
  121. package/lib/components/src/composite/uploadFile/uploadFile.d.ts +30 -28
  122. package/lib/components/src/composite/uploadFile/uploadFile.js.map +1 -1
  123. package/lib/giime/index.js +12 -8
  124. package/lib/giime/index.js.map +1 -1
  125. package/lib/giime/version.d.ts +1 -1
  126. package/lib/giime/version.js +1 -1
  127. package/lib/giime/version.js.map +1 -1
  128. package/lib/hooks/index.js +2 -2
  129. package/lib/hooks/store/index.d.ts +1 -1
  130. package/lib/hooks/store/index.js +2 -2
  131. package/lib/hooks/store/useAliOssConfigs/index.d.ts +20 -0
  132. package/lib/hooks/store/useAliOssConfigs/index.js +33 -0
  133. package/lib/hooks/store/useAliOssConfigs/index.js.map +1 -0
  134. package/lib/hooks/store/useLogin/index.d.ts +9 -9
  135. package/lib/hooks/store/useLogin/index.js.map +1 -1
  136. package/lib/hooks/store/useOrgUserList/index.d.ts +4 -3
  137. package/lib/hooks/store/useOrgUserList/index.js +8 -6
  138. package/lib/hooks/store/useOrgUserList/index.js.map +1 -1
  139. package/lib/index.css +7 -7
  140. package/lib/utils/index.d.ts +2 -1
  141. package/lib/utils/index.js +7 -2
  142. package/lib/utils/index.js.map +1 -1
  143. package/lib/utils/src/alioss/aliossPutHook.js +5 -2
  144. package/lib/utils/src/alioss/aliossPutHook.js.map +1 -1
  145. package/lib/utils/src/alioss/aliossToken.d.ts +6 -6
  146. package/lib/utils/src/alioss/aliossToken.js +1 -1
  147. package/lib/utils/src/alioss/aliossToken.js.map +1 -1
  148. package/lib/utils/src/number.d.ts +7 -0
  149. package/lib/utils/src/number.js +13 -0
  150. package/lib/utils/src/number.js.map +1 -0
  151. package/lib/utils/src/tree/filterTreeByName.d.ts +14 -0
  152. package/lib/utils/src/tree/filterTreeByName.js +20 -0
  153. package/lib/utils/src/tree/filterTreeByName.js.map +1 -0
  154. package/lib/utils/src/tree/findChildrenItem.d.ts +7 -0
  155. package/lib/utils/src/tree/findChildrenItem.js +22 -0
  156. package/lib/utils/src/tree/findChildrenItem.js.map +1 -0
  157. package/lib/utils/src/tree/index.d.ts +2 -0
  158. package/lib/utils/src/tree/index.js +10 -0
  159. package/lib/utils/src/tree/index.js.map +1 -0
  160. package/package.json +1 -1
  161. package/es/api/materialApi/cross/getAliOssConfigIds.d.ts +0 -14
  162. package/es/api/materialApi/cross/getAliOssConfigIds.mjs +0 -8
  163. package/es/api/materialApi/cross/getAliOssConfigIds.mjs.map +0 -1
  164. package/es/components/src/composite/fileComponent/assets/image/excel.svg.mjs +0 -4
  165. package/es/components/src/composite/fileComponent/assets/image/excel.svg.mjs.map +0 -1
  166. package/es/components/src/composite/fileComponent/assets/image/pdf.svg.mjs +0 -4
  167. package/es/components/src/composite/fileComponent/assets/image/pdf.svg.mjs.map +0 -1
  168. package/es/components/src/composite/fileComponent/assets/image/ppt.svg.mjs +0 -4
  169. package/es/components/src/composite/fileComponent/assets/image/ppt.svg.mjs.map +0 -1
  170. package/es/components/src/composite/fileComponent/assets/image/psd.svg.mjs +0 -4
  171. package/es/components/src/composite/fileComponent/assets/image/psd.svg.mjs.map +0 -1
  172. package/es/components/src/composite/fileComponent/assets/image/text.svg.mjs +0 -4
  173. package/es/components/src/composite/fileComponent/assets/image/text.svg.mjs.map +0 -1
  174. package/es/components/src/composite/fileComponent/assets/image/unknown.svg.mjs +0 -4
  175. package/es/components/src/composite/fileComponent/assets/image/unknown.svg.mjs.map +0 -1
  176. package/es/components/src/composite/fileComponent/assets/image/word.svg.mjs +0 -4
  177. package/es/components/src/composite/fileComponent/assets/image/word.svg.mjs.map +0 -1
  178. package/es/components/src/composite/fileComponent/assets/image/zip.svg.mjs +0 -4
  179. package/es/components/src/composite/fileComponent/assets/image/zip.svg.mjs.map +0 -1
  180. package/es/hooks/store/useAliOssConfigIds/index.d.ts +0 -20
  181. package/es/hooks/store/useAliOssConfigIds/index.mjs +0 -31
  182. package/es/hooks/store/useAliOssConfigIds/index.mjs.map +0 -1
  183. package/es/utils/src/tree.d.ts +0 -12
  184. package/es/utils/src/tree.mjs +0 -19
  185. package/es/utils/src/tree.mjs.map +0 -1
  186. package/lib/api/materialApi/cross/getAliOssConfigIds.d.ts +0 -14
  187. package/lib/api/materialApi/cross/getAliOssConfigIds.js +0 -10
  188. package/lib/api/materialApi/cross/getAliOssConfigIds.js.map +0 -1
  189. package/lib/components/src/composite/fileComponent/assets/image/excel.svg.js +0 -8
  190. package/lib/components/src/composite/fileComponent/assets/image/excel.svg.js.map +0 -1
  191. package/lib/components/src/composite/fileComponent/assets/image/pdf.svg.js +0 -8
  192. package/lib/components/src/composite/fileComponent/assets/image/pdf.svg.js.map +0 -1
  193. package/lib/components/src/composite/fileComponent/assets/image/ppt.svg.js +0 -8
  194. package/lib/components/src/composite/fileComponent/assets/image/ppt.svg.js.map +0 -1
  195. package/lib/components/src/composite/fileComponent/assets/image/psd.svg.js +0 -8
  196. package/lib/components/src/composite/fileComponent/assets/image/psd.svg.js.map +0 -1
  197. package/lib/components/src/composite/fileComponent/assets/image/text.svg.js +0 -8
  198. package/lib/components/src/composite/fileComponent/assets/image/text.svg.js.map +0 -1
  199. package/lib/components/src/composite/fileComponent/assets/image/unknown.svg.js +0 -8
  200. package/lib/components/src/composite/fileComponent/assets/image/unknown.svg.js.map +0 -1
  201. package/lib/components/src/composite/fileComponent/assets/image/word.svg.js +0 -8
  202. package/lib/components/src/composite/fileComponent/assets/image/word.svg.js.map +0 -1
  203. package/lib/components/src/composite/fileComponent/assets/image/zip.svg.js +0 -8
  204. package/lib/components/src/composite/fileComponent/assets/image/zip.svg.js.map +0 -1
  205. package/lib/hooks/store/useAliOssConfigIds/index.d.ts +0 -20
  206. package/lib/hooks/store/useAliOssConfigIds/index.js +0 -33
  207. package/lib/hooks/store/useAliOssConfigIds/index.js.map +0 -1
  208. package/lib/utils/src/tree.d.ts +0 -12
  209. package/lib/utils/src/tree.js +0 -21
  210. package/lib/utils/src/tree.js.map +0 -1
@@ -0,0 +1,20 @@
1
+ /** 阿里云oss配置id */
2
+ export declare const useAliOssConfigsStore: import("pinia").StoreDefinition<"gmaliOssConfigs", import("pinia")._UnwrapAll<Pick<{
3
+ isLoading: import("vue").Ref<boolean>;
4
+ aliOssConfigs: import("vue").Ref<{
5
+ config_ids: string[];
6
+ } | null>;
7
+ getaliOssConfigsAsync: () => Promise<void>;
8
+ }, "isLoading" | "aliOssConfigs">>, Pick<{
9
+ isLoading: import("vue").Ref<boolean>;
10
+ aliOssConfigs: import("vue").Ref<{
11
+ config_ids: string[];
12
+ } | null>;
13
+ getaliOssConfigsAsync: () => Promise<void>;
14
+ }, never>, Pick<{
15
+ isLoading: import("vue").Ref<boolean>;
16
+ aliOssConfigs: import("vue").Ref<{
17
+ config_ids: string[];
18
+ } | null>;
19
+ getaliOssConfigsAsync: () => Promise<void>;
20
+ }, "getaliOssConfigsAsync">>;
@@ -0,0 +1,31 @@
1
+ import { ref, onMounted } from 'vue';
2
+ import { defineStore } from 'pinia';
3
+ import '../../../api/materialApi/index.mjs';
4
+ import { getAliOssConfigs } from '../../../api/materialApi/cross/getAliOssConfigs.mjs';
5
+
6
+ const useAliOssConfigsStore = defineStore("gmaliOssConfigs", () => {
7
+ const aliOssConfigs = ref(null);
8
+ const isLoading = ref(false);
9
+ const getaliOssConfigsAsync = async () => {
10
+ if (aliOssConfigs.value)
11
+ return;
12
+ isLoading.value = true;
13
+ try {
14
+ const { data } = await getAliOssConfigs();
15
+ aliOssConfigs.value = data.data;
16
+ } finally {
17
+ isLoading.value = false;
18
+ }
19
+ };
20
+ onMounted(() => {
21
+ getaliOssConfigsAsync();
22
+ });
23
+ return {
24
+ isLoading,
25
+ aliOssConfigs,
26
+ getaliOssConfigsAsync
27
+ };
28
+ });
29
+
30
+ export { useAliOssConfigsStore };
31
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useAliOssConfigs/index.ts"],"sourcesContent":["import { onMounted, ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type GetAliOssConfigsResponseData, getAliOssConfigs } from '@giime/api/materialApi';\r\n\r\n/** 阿里云oss配置id */\r\nexport const useAliOssConfigsStore = defineStore('gmaliOssConfigs', () => {\r\n const aliOssConfigs = ref<GetAliOssConfigsResponseData | null>(null);\r\n const isLoading = ref(false);\r\n\r\n const getaliOssConfigsAsync = async () => {\r\n if (aliOssConfigs.value) return;\r\n isLoading.value = true;\r\n try {\r\n const { data } = await getAliOssConfigs();\r\n aliOssConfigs.value = data.data;\r\n } finally {\r\n isLoading.value = false;\r\n }\r\n };\r\n\r\n onMounted(() => {\r\n getaliOssConfigsAsync();\r\n });\r\n\r\n return {\r\n isLoading,\r\n aliOssConfigs,\r\n getaliOssConfigsAsync,\r\n };\r\n});\r\n"],"names":[],"mappings":";;;;;AAKa,MAAA,qBAAA,GAAwB,WAAY,CAAA,iBAAA,EAAmB,MAAM;AACxE,EAAM,MAAA,aAAA,GAAgB,IAAyC,IAAI,CAAA,CAAA;AACnE,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAE3B,EAAA,MAAM,wBAAwB,YAAY;AACxC,IAAA,IAAI,aAAc,CAAA,KAAA;AAAO,MAAA,OAAA;AACzB,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,gBAAiB,EAAA,CAAA;AACxC,MAAA,aAAA,CAAc,QAAQ,IAAK,CAAA,IAAA,CAAA;AAAA,KAC3B,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AAEA,EAAA,SAAA,CAAU,MAAM;AACd,IAAsB,qBAAA,EAAA,CAAA;AAAA,GACvB,CAAA,CAAA;AAED,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,aAAA;AAAA,IACA,qBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
@@ -11,11 +11,11 @@ export declare const useLoginStore: import("pinia").StoreDefinition<"gmLoginStor
11
11
  showLogin: import("vue").Ref<boolean>;
12
12
  userToken: import("@vueuse/shared").RemovableRef<string | undefined>;
13
13
  userId: import("@vueuse/shared").RemovableRef<string | undefined>;
14
- triggerLoginResult: EventHookTrigger<LoggedResultData>;
14
+ triggerLoginResult: EventHookTrigger<any>;
15
15
  /** 监听登录成功*/
16
- onLoginResult: EventHookOn<LoggedResultData>;
16
+ onLoginResult: EventHookOn<any>;
17
17
  /** 监听登录成功 promise版 */
18
- onLoginResultPromise: () => Promise<LoggedResultData>;
18
+ onLoginResultPromise: () => Promise<unknown>;
19
19
  /**监听登录弹窗关闭 promise版 */
20
20
  onCloseLoginResultPromise: () => Promise<undefined>;
21
21
  }, "showLogin" | "userToken" | "userId">>, Pick<{
@@ -23,11 +23,11 @@ export declare const useLoginStore: import("pinia").StoreDefinition<"gmLoginStor
23
23
  showLogin: import("vue").Ref<boolean>;
24
24
  userToken: import("@vueuse/shared").RemovableRef<string | undefined>;
25
25
  userId: import("@vueuse/shared").RemovableRef<string | undefined>;
26
- triggerLoginResult: EventHookTrigger<LoggedResultData>;
26
+ triggerLoginResult: EventHookTrigger<any>;
27
27
  /** 监听登录成功*/
28
- onLoginResult: EventHookOn<LoggedResultData>;
28
+ onLoginResult: EventHookOn<any>;
29
29
  /** 监听登录成功 promise版 */
30
- onLoginResultPromise: () => Promise<LoggedResultData>;
30
+ onLoginResultPromise: () => Promise<unknown>;
31
31
  /**监听登录弹窗关闭 promise版 */
32
32
  onCloseLoginResultPromise: () => Promise<undefined>;
33
33
  }, never>, Pick<{
@@ -35,11 +35,11 @@ export declare const useLoginStore: import("pinia").StoreDefinition<"gmLoginStor
35
35
  showLogin: import("vue").Ref<boolean>;
36
36
  userToken: import("@vueuse/shared").RemovableRef<string | undefined>;
37
37
  userId: import("@vueuse/shared").RemovableRef<string | undefined>;
38
- triggerLoginResult: EventHookTrigger<LoggedResultData>;
38
+ triggerLoginResult: EventHookTrigger<any>;
39
39
  /** 监听登录成功*/
40
- onLoginResult: EventHookOn<LoggedResultData>;
40
+ onLoginResult: EventHookOn<any>;
41
41
  /** 监听登录成功 promise版 */
42
- onLoginResultPromise: () => Promise<LoggedResultData>;
42
+ onLoginResultPromise: () => Promise<unknown>;
43
43
  /**监听登录弹窗关闭 promise版 */
44
44
  onCloseLoginResultPromise: () => Promise<undefined>;
45
45
  }, "triggerLoginResult" | "onLoginResult" | "onLoginResultPromise" | "onCloseLoginResultPromise">>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useLogin/index.ts"],"sourcesContent":["import { ref, watch } from 'vue';\r\nimport { defineStore } from 'pinia';\r\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\r\nimport { type EventHookOn, type EventHookTrigger, createEventHook, useSessionStorage } from '@vueuse/core';\r\n/**监听登录成功响应的数据 */\r\nexport interface LoggedResultData {\r\n token: string;\r\n userId: string;\r\n}\r\n/**登录store */\r\nexport const useLoginStore = defineStore('gmLoginStore', () => {\r\n const showLogin = ref(false);\r\n const userToken = useSessionStorage<string | undefined>('gmUserToken', undefined);\r\n const userId = useSessionStorage<string | undefined>('gmUserId', undefined);\r\n const loginResult = createEventHook<LoggedResultData>();\r\n const triggerLoginResult = loginResult.trigger;\r\n /**监听登录成功 promise版 */\r\n const onLoginResultPromise = () =>\r\n new Promise<LoggedResultData>(resolve => {\r\n loginResult.on(resolve);\r\n });\r\n /**关闭登录弹窗事件 */\r\n const closeLoginResult = createEventHook();\r\n const triggerCloseLoginResult = closeLoginResult.trigger;\r\n /**监听登录弹窗关闭 promise版 */\r\n const onCloseLoginResultPromise = () =>\r\n new Promise<undefined>(resolve => {\r\n closeLoginResult.on(resolve);\r\n });\r\n watch(showLogin, newValue => {\r\n if (!newValue) {\r\n triggerCloseLoginResult();\r\n }\r\n });\r\n return {\r\n /**是否显示登录弹窗 */\r\n showLogin,\r\n userToken,\r\n userId,\r\n triggerLoginResult,\r\n /** 监听登录成功*/\r\n onLoginResult: loginResult.on,\r\n /** 监听登录成功 promise版 */\r\n onLoginResultPromise,\r\n /**监听登录弹窗关闭 promise版 */\r\n onCloseLoginResultPromise,\r\n };\r\n});\r\n"],"names":[],"mappings":";;;;AAUa,MAAA,aAAA,GAAgB,WAAY,CAAA,cAAA,EAAgB,MAAM;AAC7D,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAM,MAAA,SAAA,GAAY,iBAAsC,CAAA,aAAA,EAAe,KAAS,CAAA,CAAA,CAAA;AAChF,EAAM,MAAA,MAAA,GAAS,iBAAsC,CAAA,UAAA,EAAY,KAAS,CAAA,CAAA,CAAA;AAC1E,EAAA,MAAM,cAAc,eAAkC,EAAA,CAAA;AACtD,EAAA,MAAM,qBAAqB,WAAY,CAAA,OAAA,CAAA;AAEvC,EAAA,MAAM,oBAAuB,GAAA,MAC3B,IAAI,OAAA,CAA0B,CAAW,OAAA,KAAA;AACvC,IAAA,WAAA,CAAY,GAAG,OAAO,CAAA,CAAA;AAAA,GACvB,CAAA,CAAA;AAEH,EAAA,MAAM,mBAAmB,eAAgB,EAAA,CAAA;AACzC,EAAA,MAAM,0BAA0B,gBAAiB,CAAA,OAAA,CAAA;AAEjD,EAAA,MAAM,yBAA4B,GAAA,MAChC,IAAI,OAAA,CAAmB,CAAW,OAAA,KAAA;AAChC,IAAA,gBAAA,CAAiB,GAAG,OAAO,CAAA,CAAA;AAAA,GAC5B,CAAA,CAAA;AACH,EAAA,KAAA,CAAM,WAAW,CAAY,QAAA,KAAA;AAC3B,IAAA,IAAI,CAAC,QAAU,EAAA;AACb,MAAwB,uBAAA,EAAA,CAAA;AAAA,KAC1B;AAAA,GACD,CAAA,CAAA;AACD,EAAO,OAAA;AAAA;AAAA,IAEL,SAAA;AAAA,IACA,SAAA;AAAA,IACA,MAAA;AAAA,IACA,kBAAA;AAAA;AAAA,IAEA,eAAe,WAAY,CAAA,EAAA;AAAA;AAAA,IAE3B,oBAAA;AAAA;AAAA,IAEA,yBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useLogin/index.ts"],"sourcesContent":["import { ref, watch } from 'vue';\nimport { defineStore } from 'pinia';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { type EventHookOn, type EventHookTrigger, createEventHook, useSessionStorage } from '@vueuse/core';\n/**监听登录成功响应的数据 */\nexport interface LoggedResultData {\n token: string;\n userId: string;\n}\n/**登录store */\nexport const useLoginStore = defineStore('gmLoginStore', () => {\n const showLogin = ref(false);\n const userToken = useSessionStorage<string | undefined>('gmUserToken', undefined);\n const userId = useSessionStorage<string | undefined>('gmUserId', undefined);\n const loginResult = createEventHook();\n const triggerLoginResult = loginResult.trigger;\n /**监听登录成功 promise版 */\n const onLoginResultPromise = () =>\n new Promise(resolve => {\n loginResult.on(resolve);\n });\n /**关闭登录弹窗事件 */\n const closeLoginResult = createEventHook();\n const triggerCloseLoginResult = closeLoginResult.trigger;\n /**监听登录弹窗关闭 promise版 */\n const onCloseLoginResultPromise = () =>\n new Promise<undefined>(resolve => {\n closeLoginResult.on(resolve);\n });\n watch(showLogin, newValue => {\n if (!newValue) {\n triggerCloseLoginResult();\n }\n });\n return {\n /**是否显示登录弹窗 */\n showLogin,\n userToken,\n userId,\n triggerLoginResult,\n /** 监听登录成功*/\n onLoginResult: loginResult.on,\n /** 监听登录成功 promise版 */\n onLoginResultPromise,\n /**监听登录弹窗关闭 promise版 */\n onCloseLoginResultPromise,\n };\n});\n"],"names":[],"mappings":";;;;AAUa,MAAA,aAAA,GAAgB,WAAY,CAAA,cAAA,EAAgB,MAAM;AAC7D,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAM,MAAA,SAAA,GAAY,iBAAsC,CAAA,aAAA,EAAe,KAAS,CAAA,CAAA,CAAA;AAChF,EAAM,MAAA,MAAA,GAAS,iBAAsC,CAAA,UAAA,EAAY,KAAS,CAAA,CAAA,CAAA;AAC1E,EAAA,MAAM,cAAc,eAAgB,EAAA,CAAA;AACpC,EAAA,MAAM,qBAAqB,WAAY,CAAA,OAAA,CAAA;AAEvC,EAAA,MAAM,oBAAuB,GAAA,MAC3B,IAAI,OAAA,CAAQ,CAAW,OAAA,KAAA;AACrB,IAAA,WAAA,CAAY,GAAG,OAAO,CAAA,CAAA;AAAA,GACvB,CAAA,CAAA;AAEH,EAAA,MAAM,mBAAmB,eAAgB,EAAA,CAAA;AACzC,EAAA,MAAM,0BAA0B,gBAAiB,CAAA,OAAA,CAAA;AAEjD,EAAA,MAAM,yBAA4B,GAAA,MAChC,IAAI,OAAA,CAAmB,CAAW,OAAA,KAAA;AAChC,IAAA,gBAAA,CAAiB,GAAG,OAAO,CAAA,CAAA;AAAA,GAC5B,CAAA,CAAA;AACH,EAAA,KAAA,CAAM,WAAW,CAAY,QAAA,KAAA;AAC3B,IAAA,IAAI,CAAC,QAAU,EAAA;AACb,MAAwB,uBAAA,EAAA,CAAA;AAAA,KAC1B;AAAA,GACD,CAAA,CAAA;AACD,EAAO,OAAA;AAAA;AAAA,IAEL,SAAA;AAAA,IACA,SAAA;AAAA,IACA,MAAA;AAAA,IACA,kBAAA;AAAA;AAAA,IAEA,eAAe,WAAY,CAAA,EAAA;AAAA;AAAA,IAE3B,oBAAA;AAAA;AAAA,IAEA,yBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
@@ -1,3 +1,4 @@
1
+ import type { UserOrgReq } from '../../../api/guardBasic/interface';
1
2
  /**用户-家族列表 */
2
3
  export declare const useOrgUserListStore: import("pinia").StoreDefinition<"gmOrgUserList", import("pinia")._UnwrapAll<Pick<{
3
4
  userList: import("vue").ComputedRef<{
@@ -17,7 +18,7 @@ export declare const useOrgUserListStore: import("pinia").StoreDefinition<"gmOrg
17
18
  value: number;
18
19
  }[];
19
20
  }[]>;
20
- getOrgUserList: () => Promise<import("@vueuse/integrations/useAxios").StrictUseAxiosReturn<{
21
+ getOrgUserList: (input?: UserOrgReq) => Promise<import("@vueuse/integrations/useAxios").StrictUseAxiosReturn<{
21
22
  code: number;
22
23
  bizCode: number;
23
24
  data: {
@@ -60,7 +61,7 @@ export declare const useOrgUserListStore: import("pinia").StoreDefinition<"gmOrg
60
61
  value: number;
61
62
  }[];
62
63
  }[]>;
63
- getOrgUserList: () => Promise<import("@vueuse/integrations/useAxios").StrictUseAxiosReturn<{
64
+ getOrgUserList: (input?: UserOrgReq) => Promise<import("@vueuse/integrations/useAxios").StrictUseAxiosReturn<{
64
65
  code: number;
65
66
  bizCode: number;
66
67
  data: {
@@ -103,7 +104,7 @@ export declare const useOrgUserListStore: import("pinia").StoreDefinition<"gmOrg
103
104
  value: number;
104
105
  }[];
105
106
  }[]>;
106
- getOrgUserList: () => Promise<import("@vueuse/integrations/useAxios").StrictUseAxiosReturn<{
107
+ getOrgUserList: (input?: UserOrgReq) => Promise<import("@vueuse/integrations/useAxios").StrictUseAxiosReturn<{
107
108
  code: number;
108
109
  bizCode: number;
109
110
  data: {
@@ -4,7 +4,7 @@ import { groupBy } from 'lodash-es';
4
4
  import '../../../api/guardBasic/controller/index.mjs';
5
5
  import { usePostBasicV1UserListUserOrg } from '../../../api/guardBasic/controller/JiChuFuWu/YongHuGuanLi/usePostBasicV1UserListUserOrg.mjs';
6
6
 
7
- const useOrgUserListStore = defineStore("gmOrgUserList", () => {
7
+ const useOrgUserListStore = defineStore("gmOrgUserList", (options = { disabledInitList: false }) => {
8
8
  const { isLoading, exec, data: userListData } = usePostBasicV1UserListUserOrg();
9
9
  const userList = computed(() => userListData.value?.data || []);
10
10
  const orgUserList = computed(() => {
@@ -17,15 +17,17 @@ const useOrgUserListStore = defineStore("gmOrgUserList", () => {
17
17
  };
18
18
  });
19
19
  });
20
- const getOrgUserList = async () => {
20
+ const getOrgUserList = async (input) => {
21
21
  if (userList.value.length !== 0 || isLoading.value) {
22
22
  return;
23
23
  }
24
- return exec();
24
+ return exec(input);
25
25
  };
26
- onMounted(() => {
27
- getOrgUserList();
28
- });
26
+ if (!options.disabledInitList) {
27
+ onMounted(() => {
28
+ getOrgUserList({ user_status: 1 });
29
+ });
30
+ }
29
31
  return {
30
32
  userList,
31
33
  isLoading,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useOrgUserList/index.ts"],"sourcesContent":["import { computed, onMounted } from 'vue';\nimport { defineStore } from 'pinia';\nimport { groupBy } from 'lodash-es';\nimport { usePostBasicV1UserListUserOrg } from '@giime/api/guardBasic/controller';\n\n/**用户-家族列表 */\nexport const useOrgUserListStore = defineStore('gmOrgUserList', () => {\n const { isLoading, exec, data: userListData } = usePostBasicV1UserListUserOrg();\n const userList = computed(() => userListData.value?.data || []);\n const orgUserList = computed(() => {\n const familyGroup = groupBy(userList.value, 'family_code');\n return Object.keys(familyGroup).map(familyCode => {\n return {\n label: familyGroup[familyCode][0].family_name,\n value: familyCode,\n children: familyGroup[familyCode].map(it => ({ label: it.user_name, value: it.user_id })),\n };\n });\n });\n const getOrgUserList = async () => {\n if (userList.value.length !== 0 || isLoading.value) {\n return;\n }\n return exec();\n };\n onMounted(() => {\n getOrgUserList();\n });\n return {\n userList,\n isLoading,\n orgUserList,\n getOrgUserList,\n };\n});\n"],"names":[],"mappings":";;;;;;AAMa,MAAA,mBAAA,GAAsB,WAAY,CAAA,eAAA,EAAiB,MAAM;AACpE,EAAA,MAAM,EAAE,SAAW,EAAA,IAAA,EAAM,IAAM,EAAA,YAAA,KAAiB,6BAA8B,EAAA,CAAA;AAC9E,EAAA,MAAM,WAAW,QAAS,CAAA,MAAM,aAAa,KAAO,EAAA,IAAA,IAAQ,EAAE,CAAA,CAAA;AAC9D,EAAM,MAAA,WAAA,GAAc,SAAS,MAAM;AACjC,IAAA,MAAM,WAAc,GAAA,OAAA,CAAQ,QAAS,CAAA,KAAA,EAAO,aAAa,CAAA,CAAA;AACzD,IAAA,OAAO,MAAO,CAAA,IAAA,CAAK,WAAW,CAAA,CAAE,IAAI,CAAc,UAAA,KAAA;AAChD,MAAO,OAAA;AAAA,QACL,KAAO,EAAA,WAAA,CAAY,UAAU,CAAA,CAAE,CAAC,CAAE,CAAA,WAAA;AAAA,QAClC,KAAO,EAAA,UAAA;AAAA,QACP,QAAU,EAAA,WAAA,CAAY,UAAU,CAAA,CAAE,GAAI,CAAA,CAAA,EAAA,MAAO,EAAE,KAAA,EAAO,EAAG,CAAA,SAAA,EAAW,KAAO,EAAA,EAAA,CAAG,SAAU,CAAA,CAAA;AAAA,OAC1F,CAAA;AAAA,KACD,CAAA,CAAA;AAAA,GACF,CAAA,CAAA;AACD,EAAA,MAAM,iBAAiB,YAAY;AACjC,IAAA,IAAI,QAAS,CAAA,KAAA,CAAM,MAAW,KAAA,CAAA,IAAK,UAAU,KAAO,EAAA;AAClD,MAAA,OAAA;AAAA,KACF;AACA,IAAA,OAAO,IAAK,EAAA,CAAA;AAAA,GACd,CAAA;AACA,EAAA,SAAA,CAAU,MAAM;AACd,IAAe,cAAA,EAAA,CAAA;AAAA,GAChB,CAAA,CAAA;AACD,EAAO,OAAA;AAAA,IACL,QAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA;AAAA,IACA,cAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useOrgUserList/index.ts"],"sourcesContent":["import { computed, onMounted } from 'vue';\nimport { defineStore } from 'pinia';\nimport { groupBy } from 'lodash-es';\nimport { usePostBasicV1UserListUserOrg } from '@giime/api/guardBasic/controller';\nimport type { UserOrgReq } from '@giime/api/guardBasic/interface';\n\n/**用户-家族列表 */\nexport const useOrgUserListStore = defineStore('gmOrgUserList', (options = { disabledInitList: false }) => {\n const { isLoading, exec, data: userListData } = usePostBasicV1UserListUserOrg();\n const userList = computed(() => userListData.value?.data || []);\n const orgUserList = computed(() => {\n const familyGroup = groupBy(userList.value, 'family_code');\n return Object.keys(familyGroup).map(familyCode => {\n return {\n label: familyGroup[familyCode][0].family_name,\n value: familyCode,\n children: familyGroup[familyCode].map(it => ({ label: it.user_name, value: it.user_id })),\n };\n });\n });\n const getOrgUserList = async (input?: UserOrgReq) => {\n if (userList.value.length !== 0 || isLoading.value) {\n return;\n }\n return exec(input);\n };\n if (!options.disabledInitList) {\n onMounted(() => {\n getOrgUserList({ user_status: 1 });\n });\n }\n\n return {\n userList,\n isLoading,\n orgUserList,\n getOrgUserList,\n };\n});\n"],"names":[],"mappings":";;;;;;AAOa,MAAA,mBAAA,GAAsB,YAAY,eAAiB,EAAA,CAAC,UAAU,EAAE,gBAAA,EAAkB,OAAY,KAAA;AACzG,EAAA,MAAM,EAAE,SAAW,EAAA,IAAA,EAAM,IAAM,EAAA,YAAA,KAAiB,6BAA8B,EAAA,CAAA;AAC9E,EAAA,MAAM,WAAW,QAAS,CAAA,MAAM,aAAa,KAAO,EAAA,IAAA,IAAQ,EAAE,CAAA,CAAA;AAC9D,EAAM,MAAA,WAAA,GAAc,SAAS,MAAM;AACjC,IAAA,MAAM,WAAc,GAAA,OAAA,CAAQ,QAAS,CAAA,KAAA,EAAO,aAAa,CAAA,CAAA;AACzD,IAAA,OAAO,MAAO,CAAA,IAAA,CAAK,WAAW,CAAA,CAAE,IAAI,CAAc,UAAA,KAAA;AAChD,MAAO,OAAA;AAAA,QACL,KAAO,EAAA,WAAA,CAAY,UAAU,CAAA,CAAE,CAAC,CAAE,CAAA,WAAA;AAAA,QAClC,KAAO,EAAA,UAAA;AAAA,QACP,QAAU,EAAA,WAAA,CAAY,UAAU,CAAA,CAAE,GAAI,CAAA,CAAA,EAAA,MAAO,EAAE,KAAA,EAAO,EAAG,CAAA,SAAA,EAAW,KAAO,EAAA,EAAA,CAAG,SAAU,CAAA,CAAA;AAAA,OAC1F,CAAA;AAAA,KACD,CAAA,CAAA;AAAA,GACF,CAAA,CAAA;AACD,EAAM,MAAA,cAAA,GAAiB,OAAO,KAAuB,KAAA;AACnD,IAAA,IAAI,QAAS,CAAA,KAAA,CAAM,MAAW,KAAA,CAAA,IAAK,UAAU,KAAO,EAAA;AAClD,MAAA,OAAA;AAAA,KACF;AACA,IAAA,OAAO,KAAK,KAAK,CAAA,CAAA;AAAA,GACnB,CAAA;AACA,EAAI,IAAA,CAAC,QAAQ,gBAAkB,EAAA;AAC7B,IAAA,SAAA,CAAU,MAAM;AACd,MAAe,cAAA,CAAA,EAAE,WAAa,EAAA,CAAA,EAAG,CAAA,CAAA;AAAA,KAClC,CAAA,CAAA;AAAA,GACH;AAEA,EAAO,OAAA;AAAA,IACL,QAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA;AAAA,IACA,cAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
package/es/index.css CHANGED
@@ -862,17 +862,21 @@ video {
862
862
  .gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
863
863
  display: flex;
864
864
  }
865
- .gm-upload-preview-dialog[data-v-0c250aad] [data-v-0c250aad] .el-dialog__body {
865
+ .gm-upload-preview-dialog[data-v-142ef678] [data-v-142ef678] .el-dialog__body {
866
866
  padding: 0;
867
867
  }
868
868
 
869
- .gm-upload-file-picture-card[data-v-0c250aad] [data-v-0c250aad] .el-upload-list__item, .gm-upload-file-picture-card[data-v-0c250aad] [data-v-0c250aad] .el-upload--picture-card {
869
+ .gm-upload-file-picture-card[data-v-142ef678] [data-v-142ef678] .el-upload-list__item, .gm-upload-file-picture-card[data-v-142ef678] [data-v-142ef678] .el-upload--picture-card {
870
870
  width: 120px;
871
871
  height: 120px;
872
872
  display: flex;
873
873
  align-items: center;
874
874
  justify-content: center;
875
875
  }
876
+ [data-v-7b6755e2] .gmSearchForm .el-form-item {
877
+ margin-right: 0;
878
+ margin-bottom: 4px;
879
+ }
876
880
  [data-v-668dc408] .gmTableNoBorder .el-table__body .el-table__cell {
877
881
  border-right: none;
878
882
  }
@@ -896,10 +900,6 @@ video {
896
900
  [data-v-668dc408] .gmTableNoBorder .el-table__border-left-patch {
897
901
  height: 0;
898
902
  }
899
- [data-v-7b6755e2] .gmSearchForm .el-form-item {
900
- margin-right: 0;
901
- margin-bottom: 4px;
902
- }
903
903
  .gm-upload-file {
904
904
  line-height: normal;
905
905
  }
@@ -920,7 +920,7 @@ video {
920
920
  display: flex;
921
921
  }
922
922
 
923
- .gm-upload-file-disabled .is-disabled {
923
+ .gm-upload-file-disabled .el-upload--picture-card {
924
924
  display: none;
925
925
  }
926
926
  .gm-upload-file-disabled .el-upload-list__item-status-label {
@@ -8,4 +8,5 @@ export * from './src/date';
8
8
  export * from './src/file';
9
9
  export * from './src/general';
10
10
  export * from './src/crypto';
11
- export * from './src/tree';
11
+ export * from './src/number';
12
+ export * from './src/tree/index';
@@ -8,7 +8,8 @@ import './src/date/index.mjs';
8
8
  export { base64ToBlob, base64ToFile, blobToBase64, blobToFile, fileToBase64, fileToBlob, fileToUrl, urlToBlob, urlToFile } from './src/file.mjs';
9
9
  export { compareVersions, isVersionGreaterOrEqual, omitOnEvents, remove } from './src/general.mjs';
10
10
  import './src/crypto/index.mjs';
11
- export { findChildrenItem } from './src/tree.mjs';
11
+ export { formatNumberWithCommas } from './src/number.mjs';
12
+ import './src/tree/index.mjs';
12
13
  export { withInstall, withInstallDirective, withInstallFunction, withNoopInstall } from './src/vue/install.mjs';
13
14
  export { GiimeResolver, kebabCase } from './src/vue/resolver.mjs';
14
15
  export { getGmEvent } from './src/elementPlus/event.mjs';
@@ -21,4 +22,6 @@ export { getDomain } from './src/http/url.mjs';
21
22
  export { getDateShortcuts } from './src/date/dateShortcuts.mjs';
22
23
  export { b64_hmac_md5, b64_md5, hex_hmac_md5, hex_md5, str_hmac_md5, str_md5, ts_md5_file } from './src/crypto/md5.mjs';
23
24
  export { any_hmac_sha1, any_sha1, b64_hmac_sha1, b64_sha1, hex_hmac_sha1, hex_sha1 } from './src/crypto/sha1.mjs';
25
+ export { filterTreeByName } from './src/tree/filterTreeByName.mjs';
26
+ export { findChildrenItem } from './src/tree/findChildrenItem.mjs';
24
27
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -103,7 +103,10 @@ const useAliossHookStore = defineStore("aliossHook", () => {
103
103
  ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,
104
104
  ...options
105
105
  };
106
- const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({ config_id: null });
106
+ const bucketName = bucket || "giikin-material";
107
+ const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({
108
+ config_id: bucketName
109
+ });
107
110
  const client = new AliOss({
108
111
  // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
109
112
  region: "oss-cn-shenzhen",
@@ -114,7 +117,7 @@ const useAliossHookStore = defineStore("aliossHook", () => {
114
117
  // 刷新临时访问凭证的时间间隔,单位为毫秒。
115
118
  refreshSTSTokenInterval: 3e5,
116
119
  // 填写Bucket名称。
117
- bucket: bucket ?? "giikin-material"
120
+ bucket: bucketName
118
121
  });
119
122
  const upload = options.parallel === 1 ? "put" : "multipartUpload";
120
123
  const { res } = await client[upload](path, file, options);
@@ -1 +1 @@
1
- {"version":3,"file":"aliossPutHook.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossPutHook.ts"],"sourcesContent":["import { defineStore } from 'pinia';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport { md5 } from 'js-md5';\r\nimport AliOss from 'ali-oss';\r\nimport { type PostSaveFileResourcesData, getAdFileExist, postSaveFileResources } from '@giime/api/materialApi';\r\nimport useAliossTokenStore from './aliossToken';\r\n\r\nexport type PostSaveFileResponse = PostSaveFileResourcesData;\r\nexport type UploadAliOssFile = File & { uid: number };\r\n\r\n/** 上传文件到阿里云 */\r\nexport type AliOssParams = {\r\n /** 资源文件 */\r\n file: UploadAliOssFile;\r\n /** 文件名 */\r\n fileName?: string;\r\n /** 文件存储路径 */\r\n folder?: string;\r\n /** 文件存储位置 */\r\n seat?: string;\r\n /** 并行上传数量 */\r\n parallel?: number;\r\n /** 并行分片大小 */\r\n partSize?: number;\r\n /** 阿里上传配置 */\r\n options?: { [key: string]: any };\r\n /** 阿里服务器 Bucket 名称 */\r\n bucket?: string;\r\n /** cdn */\r\n cdn?: string;\r\n /** 文件是否保存入库 */\r\n saveStore?: boolean;\r\n};\r\n\r\n/** 返回数据 */\r\nexport type AliOssResponse = {\r\n /** 文件地址 */\r\n url: string;\r\n /** 文件名 */\r\n name: string;\r\n /** 文件唯一标识 */\r\n uid: number;\r\n /** 文件最后修改时间 */\r\n lastModified: number;\r\n /** 文件md5 */\r\n md5: string;\r\n /** 文件大小 */\r\n size: number;\r\n /** 文件后缀 */\r\n type: string;\r\n /** 文件库是否存在 */\r\n isExist: boolean;\r\n};\r\n\r\nexport const ts_md5_file = (file: File) => {\r\n return new Promise<string>(resolve => {\r\n const reader = new FileReader();\r\n reader.onload = async function (e) {\r\n const binary = (e.target as any).result;\r\n resolve(md5(binary));\r\n };\r\n reader.readAsArrayBuffer(file);\r\n });\r\n};\r\n\r\n/** 文件分片 */\r\nexport const getParallelPartSize = (size: number) => {\r\n const thresholds = [\r\n {\r\n max: 5,\r\n parallel: 1,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 10,\r\n parallel: 2,\r\n multiplier: 4,\r\n },\r\n {\r\n max: 30,\r\n parallel: 4,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 50,\r\n parallel: 6,\r\n multiplier: 6,\r\n },\r\n {\r\n max: Number.POSITIVE_INFINITY,\r\n parallel: 8,\r\n multiplier: 8,\r\n },\r\n ];\r\n const { parallel, multiplier } = thresholds.find(({ max }) => size <= max) || thresholds[thresholds.length - 1];\r\n\r\n return {\r\n parallel,\r\n partSize: multiplier * 1024 * 1024,\r\n };\r\n};\r\n\r\n/** 上传 Hook */\r\nexport const useAliossHookStore = defineStore('aliossHook', () => {\r\n const aliossResult = createEventHook<AliOssResponse>();\r\n const aliossError = createEventHook<any>();\r\n const saveFileResult = createEventHook<PostSaveFileResponse>();\r\n const saveFileError = createEventHook<any>();\r\n\r\n /** 检测广告素材是否已存在 */\r\n const getFileExist = async ({\r\n md5Code,\r\n ext,\r\n name,\r\n size,\r\n uid,\r\n lastModified,\r\n }: {\r\n md5Code: string;\r\n ext: string;\r\n name: string;\r\n size: number;\r\n uid: number;\r\n lastModified: number;\r\n }) => {\r\n // eslint-disable-next-line no-async-promise-executor\r\n return new Promise<AliOssResponse | false>(async resolve => {\r\n const { data } = await getAdFileExist({ md5Code, ext });\r\n if (data.code !== 0 || data.data.count === 0) {\r\n return resolve(false);\r\n }\r\n const result = {\r\n name,\r\n uid,\r\n lastModified,\r\n size,\r\n url: data.data.url,\r\n md5: md5Code,\r\n type: ext,\r\n isExist: true,\r\n };\r\n resolve(result);\r\n aliossResult.trigger(result);\r\n });\r\n };\r\n\r\n /** 上传文件 */\r\n const uploadFile = async ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => {\r\n let { name, uid, lastModified, size } = file;\r\n const ext = name.match(/\\.(\\w+)$/)?.[0] || '';\r\n name = (fileName || name).slice(0, name.lastIndexOf('.'));\r\n const md5Code = await ts_md5_file(file);\r\n const FileName = name + ext;\r\n const type = ext.replaceAll('.', '');\r\n\r\n try {\r\n let result = await getFileExist({ md5Code, ext: type, name: FileName, size, uid, lastModified });\r\n if (result) return result;\r\n\r\n // 文件存储路径\r\n const timestr = Date.now();\r\n const path = `${folder ?? 'material'}/${seat ?? 'default'}/file-${timestr}-${md5Code}${ext}`;\r\n\r\n const P = getParallelPartSize(size);\r\n options = {\r\n ...P,\r\n ...{ parallel, partSize },\r\n ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,\r\n ...options,\r\n };\r\n\r\n // 阿里云临时上传权限\r\n const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({ config_id: null });\r\n\r\n const client = new AliOss({\r\n // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。\r\n region: 'oss-cn-shenzhen',\r\n // 从STS服务获取的临时访问密钥(AccessKey ID、AccessKey Secret、StsToken)。\r\n accessKeyId: AccessKeyId,\r\n accessKeySecret: AccessKeySecret,\r\n stsToken: SecurityToken,\r\n // 刷新临时访问凭证的时间间隔,单位为毫秒。\r\n refreshSTSTokenInterval: 300000,\r\n // 填写Bucket名称。\r\n bucket: bucket ?? 'giikin-material',\r\n });\r\n\r\n const upload = options.parallel === 1 ? 'put' : 'multipartUpload';\r\n const { res } = await client[upload](path, file, options);\r\n if (res.status !== 200) {\r\n aliossError.trigger(res);\r\n return res;\r\n }\r\n cdn = cdn ?? 'https://sucai.giikin.cn/';\r\n const resultUrl = cdn + path;\r\n result = {\r\n url: resultUrl,\r\n name: name + ext,\r\n md5: md5Code,\r\n type: ext.replaceAll('.', ''),\r\n uid,\r\n lastModified,\r\n size,\r\n isExist: false,\r\n };\r\n if (saveStore) {\r\n postSaveFile({ url: resultUrl, md5_code: md5Code, file_size: size });\r\n }\r\n aliossResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n aliossError.trigger(error);\r\n return error;\r\n }\r\n };\r\n\r\n /** 文件入库 */\r\n const postSaveFile = async ({ url, md5_code, file_size }: PostSaveFileResourcesData) => {\r\n try {\r\n const { data } = await postSaveFileResources({ fileData: { url, md5_code, file_size } });\r\n if (data?.code !== 0) {\r\n saveFileError.trigger(data);\r\n return data;\r\n }\r\n const result = {\r\n url,\r\n md5_code,\r\n file_size,\r\n };\r\n saveFileResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n saveFileError.trigger(error);\r\n return error;\r\n }\r\n };\r\n return {\r\n aliossResult: aliossResult.on,\r\n aliossError: aliossError.on,\r\n saveFileResult: saveFileResult.on,\r\n saveFileError: saveFileError.on,\r\n uploadFile,\r\n postSaveFile,\r\n };\r\n});\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aliossPutHook.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossPutHook.ts"],"sourcesContent":["import { defineStore } from 'pinia';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport { md5 } from 'js-md5';\r\nimport AliOss from 'ali-oss';\r\nimport { type PostSaveFileResourcesData, getAdFileExist, postSaveFileResources } from '@giime/api/materialApi';\r\nimport useAliossTokenStore from './aliossToken';\r\n\r\nexport type PostSaveFileResponse = PostSaveFileResourcesData;\r\nexport type UploadAliOssFile = File & { uid: number };\r\n\r\n/** 上传文件到阿里云 */\r\nexport type AliOssParams = {\r\n /** 资源文件 */\r\n file: UploadAliOssFile;\r\n /** 文件名 */\r\n fileName?: string;\r\n /** 文件存储路径 */\r\n folder?: string;\r\n /** 文件存储位置 */\r\n seat?: string;\r\n /** 并行上传数量 */\r\n parallel?: number;\r\n /** 并行分片大小 */\r\n partSize?: number;\r\n /** 阿里上传配置 */\r\n options?: { [key: string]: any };\r\n /** 阿里服务器 Bucket 名称 */\r\n bucket?: string;\r\n /** cdn */\r\n cdn?: string;\r\n /** 文件是否保存入库 */\r\n saveStore?: boolean;\r\n};\r\n\r\n/** 返回数据 */\r\nexport type AliOssResponse = {\r\n /** 文件地址 */\r\n url: string;\r\n /** 文件名 */\r\n name: string;\r\n /** 文件唯一标识 */\r\n uid: number;\r\n /** 文件最后修改时间 */\r\n lastModified: number;\r\n /** 文件md5 */\r\n md5: string;\r\n /** 文件大小 */\r\n size: number;\r\n /** 文件后缀 */\r\n type: string;\r\n /** 文件库是否存在 */\r\n isExist: boolean;\r\n};\r\n\r\nexport const ts_md5_file = (file: File) => {\r\n return new Promise<string>(resolve => {\r\n const reader = new FileReader();\r\n reader.onload = async function (e) {\r\n const binary = (e.target as any).result;\r\n resolve(md5(binary));\r\n };\r\n reader.readAsArrayBuffer(file);\r\n });\r\n};\r\n\r\n/** 文件分片 */\r\nexport const getParallelPartSize = (size: number) => {\r\n const thresholds = [\r\n {\r\n max: 5,\r\n parallel: 1,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 10,\r\n parallel: 2,\r\n multiplier: 4,\r\n },\r\n {\r\n max: 30,\r\n parallel: 4,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 50,\r\n parallel: 6,\r\n multiplier: 6,\r\n },\r\n {\r\n max: Number.POSITIVE_INFINITY,\r\n parallel: 8,\r\n multiplier: 8,\r\n },\r\n ];\r\n const { parallel, multiplier } = thresholds.find(({ max }) => size <= max) || thresholds[thresholds.length - 1];\r\n\r\n return {\r\n parallel,\r\n partSize: multiplier * 1024 * 1024,\r\n };\r\n};\r\n\r\n/** 上传 Hook */\r\nexport const useAliossHookStore = defineStore('aliossHook', () => {\r\n const aliossResult = createEventHook<AliOssResponse>();\r\n const aliossError = createEventHook<any>();\r\n const saveFileResult = createEventHook<PostSaveFileResponse>();\r\n const saveFileError = createEventHook<any>();\r\n\r\n /** 检测广告素材是否已存在 */\r\n const getFileExist = async ({\r\n md5Code,\r\n ext,\r\n name,\r\n size,\r\n uid,\r\n lastModified,\r\n }: {\r\n md5Code: string;\r\n ext: string;\r\n name: string;\r\n size: number;\r\n uid: number;\r\n lastModified: number;\r\n }) => {\r\n // eslint-disable-next-line no-async-promise-executor\r\n return new Promise<AliOssResponse | false>(async resolve => {\r\n const { data } = await getAdFileExist({ md5Code, ext });\r\n if (data.code !== 0 || data.data.count === 0) {\r\n return resolve(false);\r\n }\r\n const result = {\r\n name,\r\n uid,\r\n lastModified,\r\n size,\r\n url: data.data.url,\r\n md5: md5Code,\r\n type: ext,\r\n isExist: true,\r\n };\r\n resolve(result);\r\n aliossResult.trigger(result);\r\n });\r\n };\r\n\r\n /** 上传文件 */\r\n const uploadFile = async ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => {\r\n let { name, uid, lastModified, size } = file;\r\n const ext = name.match(/\\.(\\w+)$/)?.[0] || '';\r\n name = (fileName || name).slice(0, name.lastIndexOf('.'));\r\n const md5Code = await ts_md5_file(file);\r\n const FileName = name + ext;\r\n const type = ext.replaceAll('.', '');\r\n\r\n try {\r\n let result = await getFileExist({ md5Code, ext: type, name: FileName, size, uid, lastModified });\r\n if (result) return result;\r\n\r\n // 文件存储路径\r\n const timestr = Date.now();\r\n const path = `${folder ?? 'material'}/${seat ?? 'default'}/file-${timestr}-${md5Code}${ext}`;\r\n\r\n const P = getParallelPartSize(size);\r\n options = {\r\n ...P,\r\n ...{ parallel, partSize },\r\n ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,\r\n ...options,\r\n };\r\n\r\n // 阿里云临时上传权限\r\n // 使用组件 props 的默认值\r\n const bucketName = bucket || 'giikin-material';\r\n const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({\r\n config_id: bucketName,\r\n });\r\n\r\n const client = new AliOss({\r\n // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。\r\n region: 'oss-cn-shenzhen',\r\n // 从STS服务获取的临时访问密钥(AccessKey ID、AccessKey Secret、StsToken)。\r\n accessKeyId: AccessKeyId,\r\n accessKeySecret: AccessKeySecret,\r\n stsToken: SecurityToken,\r\n // 刷新临时访问凭证的时间间隔,单位为毫秒。\r\n refreshSTSTokenInterval: 300000,\r\n // 填写Bucket名称。\r\n bucket: bucketName,\r\n });\r\n\r\n const upload = options.parallel === 1 ? 'put' : 'multipartUpload';\r\n const { res } = await client[upload](path, file, options);\r\n if (res.status !== 200) {\r\n aliossError.trigger(res);\r\n return res;\r\n }\r\n cdn = cdn ?? 'https://sucai.giikin.cn/';\r\n const resultUrl = cdn + path;\r\n result = {\r\n url: resultUrl,\r\n name: name + ext,\r\n md5: md5Code,\r\n type: ext.replaceAll('.', ''),\r\n uid,\r\n lastModified,\r\n size,\r\n isExist: false,\r\n };\r\n if (saveStore) {\r\n postSaveFile({ url: resultUrl, md5_code: md5Code, file_size: size });\r\n }\r\n aliossResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n aliossError.trigger(error);\r\n return error;\r\n }\r\n };\r\n\r\n /** 文件入库 */\r\n const postSaveFile = async ({ url, md5_code, file_size }: PostSaveFileResourcesData) => {\r\n try {\r\n const { data } = await postSaveFileResources({ fileData: { url, md5_code, file_size } });\r\n if (data?.code !== 0) {\r\n saveFileError.trigger(data);\r\n return data;\r\n }\r\n const result = {\r\n url,\r\n md5_code,\r\n file_size,\r\n };\r\n saveFileResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n saveFileError.trigger(error);\r\n return error;\r\n }\r\n };\r\n return {\r\n aliossResult: aliossResult.on,\r\n aliossError: aliossError.on,\r\n saveFileResult: saveFileResult.on,\r\n saveFileError: saveFileError.on,\r\n uploadFile,\r\n postSaveFile,\r\n };\r\n});\r\n"],"names":[],"mappings":"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"}
@@ -6,18 +6,18 @@ import { type GetOssAccessTokenResponseData } from '../../../api/materialApi';
6
6
  **/
7
7
  declare const useAliossTokenStore: import("pinia").StoreDefinition<"aliossToken", import("pinia")._UnwrapAll<Pick<{
8
8
  isLoading: import("vue").Ref<boolean>;
9
- getAliossTokenAsync: (params: {
10
- config_id: string | null;
9
+ getAliossTokenAsync: (params?: {
10
+ config_id?: string;
11
11
  }) => Promise<GetOssAccessTokenResponseData>;
12
12
  }, "isLoading">>, Pick<{
13
13
  isLoading: import("vue").Ref<boolean>;
14
- getAliossTokenAsync: (params: {
15
- config_id: string | null;
14
+ getAliossTokenAsync: (params?: {
15
+ config_id?: string;
16
16
  }) => Promise<GetOssAccessTokenResponseData>;
17
17
  }, never>, Pick<{
18
18
  isLoading: import("vue").Ref<boolean>;
19
- getAliossTokenAsync: (params: {
20
- config_id: string | null;
19
+ getAliossTokenAsync: (params?: {
20
+ config_id?: string;
21
21
  }) => Promise<GetOssAccessTokenResponseData>;
22
22
  }, "getAliossTokenAsync">>;
23
23
  export default useAliossTokenStore;
@@ -22,7 +22,7 @@ const useAliossTokenStore = defineStore("aliossToken", () => {
22
22
  }
23
23
  isLoading.value = true;
24
24
  try {
25
- const { data } = await getOssAccessToken(params);
25
+ const { data } = await getOssAccessToken({ config_id: params?.config_id || "giikin-material" });
26
26
  if (data.code === 0) {
27
27
  setCookie(data.data);
28
28
  aliossTokenResult.trigger(data.data);
@@ -1 +1 @@
1
- {"version":3,"file":"aliossToken.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossToken.ts"],"sourcesContent":["import { ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type GetOssAccessTokenResponseData, getOssAccessToken } from '@giime/api/materialApi';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport Cookies from 'js-cookie';\r\n\r\n/**\r\n * @description 素材上传权限\r\n * @param {*}\r\n * @return {*}\r\n **/\r\n\r\nconst useAliossTokenStore = defineStore('aliossToken', () => {\r\n const isLoading = ref(false);\r\n const aliossTokenResult = createEventHook<GetOssAccessTokenResponseData>();\r\n\r\n const setCookie = (data: GetOssAccessTokenResponseData) => {\r\n if (!data) return;\r\n const { Expiration } = data;\r\n const time = new Date(new Date(Expiration ?? 0).getTime() - 10000); //-10秒作为缓冲\r\n Cookies.set('aliossStsToken', JSON.stringify(data), { expires: time });\r\n };\r\n\r\n /* 请求临时上传权限 */\r\n const getAliossToken = async (params: { config_id: string | null }) => {\r\n const aliossStsToken = Cookies.get('aliossStsToken');\r\n if (aliossStsToken) {\r\n return JSON.parse(aliossStsToken) as GetOssAccessTokenResponseData;\r\n }\r\n isLoading.value = true;\r\n try {\r\n const { data } = await getOssAccessToken(params);\r\n if (data.code === 0) {\r\n setCookie(data.data);\r\n aliossTokenResult.trigger(data.data);\r\n }\r\n return data.data;\r\n } finally {\r\n isLoading.value = false;\r\n }\r\n };\r\n\r\n /* 获取 alioss 临时上传 token*/\r\n const getAliossTokenAsync = (params: { config_id: string | null }) => {\r\n /* 若正在请求请求临时token接口 则其他后进来的等待 */\r\n return new Promise<GetOssAccessTokenResponseData>(resolve => {\r\n if (isLoading.value) {\r\n aliossTokenResult.on(value => resolve(value));\r\n } else {\r\n resolve(getAliossToken(params));\r\n }\r\n });\r\n };\r\n\r\n return {\r\n isLoading,\r\n getAliossTokenAsync,\r\n };\r\n});\r\n\r\nexport default useAliossTokenStore;\r\n"],"names":[],"mappings":";;;;;;;AAYM,MAAA,mBAAA,GAAsB,WAAY,CAAA,aAAA,EAAe,MAAM;AAC3D,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAA,MAAM,oBAAoB,eAA+C,EAAA,CAAA;AAEzE,EAAM,MAAA,SAAA,GAAY,CAAC,IAAwC,KAAA;AACzD,IAAA,IAAI,CAAC,IAAA;AAAM,MAAA,OAAA;AACX,IAAM,MAAA,EAAE,YAAe,GAAA,IAAA,CAAA;AACvB,IAAM,MAAA,IAAA,GAAO,IAAI,IAAA,CAAK,IAAI,IAAA,CAAK,cAAc,CAAC,CAAA,CAAE,OAAQ,EAAA,GAAI,GAAK,CAAA,CAAA;AACjE,IAAQ,OAAA,CAAA,GAAA,CAAI,kBAAkB,IAAK,CAAA,SAAA,CAAU,IAAI,CAAG,EAAA,EAAE,OAAS,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,GACvE,CAAA;AAGA,EAAM,MAAA,cAAA,GAAiB,OAAO,MAAyC,KAAA;AACrE,IAAM,MAAA,cAAA,GAAiB,OAAQ,CAAA,GAAA,CAAI,gBAAgB,CAAA,CAAA;AACnD,IAAA,IAAI,cAAgB,EAAA;AAClB,MAAO,OAAA,IAAA,CAAK,MAAM,cAAc,CAAA,CAAA;AAAA,KAClC;AACA,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,kBAAkB,MAAM,CAAA,CAAA;AAC/C,MAAI,IAAA,IAAA,CAAK,SAAS,CAAG,EAAA;AACnB,QAAA,SAAA,CAAU,KAAK,IAAI,CAAA,CAAA;AACnB,QAAkB,iBAAA,CAAA,OAAA,CAAQ,KAAK,IAAI,CAAA,CAAA;AAAA,OACrC;AACA,MAAA,OAAO,IAAK,CAAA,IAAA,CAAA;AAAA,KACZ,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AAGA,EAAM,MAAA,mBAAA,GAAsB,CAAC,MAAyC,KAAA;AAEpE,IAAO,OAAA,IAAI,QAAuC,CAAW,OAAA,KAAA;AAC3D,MAAA,IAAI,UAAU,KAAO,EAAA;AACnB,QAAA,iBAAA,CAAkB,EAAG,CAAA,CAAA,KAAA,KAAS,OAAQ,CAAA,KAAK,CAAC,CAAA,CAAA;AAAA,OACvC,MAAA;AACL,QAAQ,OAAA,CAAA,cAAA,CAAe,MAAM,CAAC,CAAA,CAAA;AAAA,OAChC;AAAA,KACD,CAAA,CAAA;AAAA,GACH,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,mBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"aliossToken.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossToken.ts"],"sourcesContent":["import { ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type GetOssAccessTokenResponseData, getOssAccessToken } from '@giime/api/materialApi';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport Cookies from 'js-cookie';\r\n\r\n/**\r\n * @description 素材上传权限\r\n * @param {*}\r\n * @return {*}\r\n **/\r\n\r\nconst useAliossTokenStore = defineStore('aliossToken', () => {\r\n const isLoading = ref(false);\r\n const aliossTokenResult = createEventHook<GetOssAccessTokenResponseData>();\r\n\r\n const setCookie = (data: GetOssAccessTokenResponseData) => {\r\n if (!data) return;\r\n const { Expiration } = data;\r\n const time = new Date(new Date(Expiration ?? 0).getTime() - 10000); //-10秒作为缓冲\r\n Cookies.set('aliossStsToken', JSON.stringify(data), { expires: time });\r\n };\r\n\r\n /* 请求临时上传权限 */\r\n const getAliossToken = async (params?: { config_id?: string }) => {\r\n const aliossStsToken = Cookies.get('aliossStsToken');\r\n if (aliossStsToken) {\r\n return JSON.parse(aliossStsToken) as GetOssAccessTokenResponseData;\r\n }\r\n isLoading.value = true;\r\n try {\r\n const { data } = await getOssAccessToken({ config_id: params?.config_id || 'giikin-material' });\r\n if (data.code === 0) {\r\n setCookie(data.data);\r\n aliossTokenResult.trigger(data.data);\r\n }\r\n return data.data;\r\n } finally {\r\n isLoading.value = false;\r\n }\r\n };\r\n\r\n /* 获取 alioss 临时上传 token*/\r\n const getAliossTokenAsync = (params?: { config_id?: string }) => {\r\n /* 若正在请求请求临时token接口 则其他后进来的等待 */\r\n return new Promise<GetOssAccessTokenResponseData>(resolve => {\r\n if (isLoading.value) {\r\n aliossTokenResult.on(value => resolve(value));\r\n } else {\r\n resolve(getAliossToken(params));\r\n }\r\n });\r\n };\r\n\r\n return {\r\n isLoading,\r\n getAliossTokenAsync,\r\n };\r\n});\r\n\r\nexport default useAliossTokenStore;\r\n"],"names":[],"mappings":";;;;;;;AAYM,MAAA,mBAAA,GAAsB,WAAY,CAAA,aAAA,EAAe,MAAM;AAC3D,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAA,MAAM,oBAAoB,eAA+C,EAAA,CAAA;AAEzE,EAAM,MAAA,SAAA,GAAY,CAAC,IAAwC,KAAA;AACzD,IAAA,IAAI,CAAC,IAAA;AAAM,MAAA,OAAA;AACX,IAAM,MAAA,EAAE,YAAe,GAAA,IAAA,CAAA;AACvB,IAAM,MAAA,IAAA,GAAO,IAAI,IAAA,CAAK,IAAI,IAAA,CAAK,cAAc,CAAC,CAAA,CAAE,OAAQ,EAAA,GAAI,GAAK,CAAA,CAAA;AACjE,IAAQ,OAAA,CAAA,GAAA,CAAI,kBAAkB,IAAK,CAAA,SAAA,CAAU,IAAI,CAAG,EAAA,EAAE,OAAS,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,GACvE,CAAA;AAGA,EAAM,MAAA,cAAA,GAAiB,OAAO,MAAoC,KAAA;AAChE,IAAM,MAAA,cAAA,GAAiB,OAAQ,CAAA,GAAA,CAAI,gBAAgB,CAAA,CAAA;AACnD,IAAA,IAAI,cAAgB,EAAA;AAClB,MAAO,OAAA,IAAA,CAAK,MAAM,cAAc,CAAA,CAAA;AAAA,KAClC;AACA,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAM,MAAA,EAAE,IAAK,EAAA,GAAI,MAAM,iBAAA,CAAkB,EAAE,SAAW,EAAA,MAAA,EAAQ,SAAa,IAAA,iBAAA,EAAmB,CAAA,CAAA;AAC9F,MAAI,IAAA,IAAA,CAAK,SAAS,CAAG,EAAA;AACnB,QAAA,SAAA,CAAU,KAAK,IAAI,CAAA,CAAA;AACnB,QAAkB,iBAAA,CAAA,OAAA,CAAQ,KAAK,IAAI,CAAA,CAAA;AAAA,OACrC;AACA,MAAA,OAAO,IAAK,CAAA,IAAA,CAAA;AAAA,KACZ,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AAGA,EAAM,MAAA,mBAAA,GAAsB,CAAC,MAAoC,KAAA;AAE/D,IAAO,OAAA,IAAI,QAAuC,CAAW,OAAA,KAAA;AAC3D,MAAA,IAAI,UAAU,KAAO,EAAA;AACnB,QAAA,iBAAA,CAAkB,EAAG,CAAA,CAAA,KAAA,KAAS,OAAQ,CAAA,KAAK,CAAC,CAAA,CAAA;AAAA,OACvC,MAAA;AACL,QAAQ,OAAA,CAAA,cAAA,CAAe,MAAM,CAAC,CAAA,CAAA;AAAA,OAChC;AAAA,KACD,CAAA,CAAA;AAAA,GACH,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,mBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ *
3
+ * @example const number = 1234567890;
4
+ console.log(formatNumberWithCommas(number)); // 输出: "1,234,567,890"
5
+ * @returns
6
+ */
7
+ export declare function formatNumberWithCommas(number?: number | string): string | number | undefined;
@@ -0,0 +1,11 @@
1
+ import { isNil } from './is.mjs';
2
+
3
+ function formatNumberWithCommas(number) {
4
+ if (isNil(number) || Number.isNaN(Number(number))) {
5
+ return number;
6
+ }
7
+ return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
8
+ }
9
+
10
+ export { formatNumberWithCommas };
11
+ //# sourceMappingURL=number.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.mjs","sources":["../../../../../packages/utils/src/number.ts"],"sourcesContent":["import { isNil } from './is';\n\n/**\n *\n * @example const number = 1234567890;\n console.log(formatNumberWithCommas(number)); // 输出: \"1,234,567,890\"\n * @returns\n */\nexport function formatNumberWithCommas(number?: number | string) {\n if (isNil(number) || Number.isNaN(Number(number))) {\n return number;\n }\n\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n}\n"],"names":[],"mappings":";;AAQO,SAAS,uBAAuB,MAA0B,EAAA;AAC/D,EAAI,IAAA,KAAA,CAAM,MAAM,CAAK,IAAA,MAAA,CAAO,MAAM,MAAO,CAAA,MAAM,CAAC,CAAG,EAAA;AACjD,IAAO,OAAA,MAAA,CAAA;AAAA,GACT;AAEA,EAAA,OAAO,MAAO,CAAA,QAAA,EAAW,CAAA,OAAA,CAAQ,yBAAyB,GAAG,CAAA,CAAA;AAC/D;;;;"}
@@ -0,0 +1,14 @@
1
+ export interface FilterTreeByNameNode {
2
+ /** 分类名称 */
3
+ name?: string;
4
+ /** 子分类列表 */
5
+ children?: FilterTreeByNameNode[];
6
+ [key: string]: any;
7
+ }
8
+ /**
9
+ * 过滤树
10
+ */
11
+ export declare function filterTreeByName<T extends FilterTreeByNameNode>(nodes: T[], searchName: string, options?: {
12
+ nameKey: string;
13
+ childrenKey: string;
14
+ }): T[];
@@ -0,0 +1,18 @@
1
+ function filterTreeByName(nodes, searchName, options = { nameKey: "name", childrenKey: "children" }) {
2
+ const { nameKey, childrenKey } = options;
3
+ return nodes.map((node) => {
4
+ const matches = node[nameKey].includes(searchName);
5
+ const filteredChildren = node[childrenKey] ? filterTreeByName(node[childrenKey], searchName) : [];
6
+ if (matches || filteredChildren.length > 0) {
7
+ return {
8
+ ...node,
9
+ [childrenKey]: filteredChildren
10
+ };
11
+ } else {
12
+ return null;
13
+ }
14
+ }).filter((node) => node !== null);
15
+ }
16
+
17
+ export { filterTreeByName };
18
+ //# sourceMappingURL=filterTreeByName.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterTreeByName.mjs","sources":["../../../../../../packages/utils/src/tree/filterTreeByName.ts"],"sourcesContent":["export interface FilterTreeByNameNode {\n /** 分类名称 */\n name?: string;\n /** 子分类列表 */\n children?: FilterTreeByNameNode[];\n [key: string]: any;\n}\n\n/**\n * 过滤树\n */\nexport function filterTreeByName<T extends FilterTreeByNameNode>(\n nodes: T[],\n searchName: string,\n options = { nameKey: 'name', childrenKey: 'children' },\n): T[] {\n const { nameKey, childrenKey } = options;\n\n return nodes\n .map(node => {\n // Check if the current node matches the search name\n const matches = node[nameKey].includes(searchName);\n\n // Recursively filter the children\n const filteredChildren = node[childrenKey] ? filterTreeByName(node[childrenKey], searchName) : [];\n\n // If the node matches or has matching children, include it in the results\n if (matches || filteredChildren.length > 0) {\n return {\n ...node,\n [childrenKey]: filteredChildren,\n };\n } else {\n return null;\n }\n })\n .filter(node => node !== null) as T[];\n}\n"],"names":[],"mappings":"AAWgB,SAAA,gBAAA,CACd,OACA,UACA,EAAA,OAAA,GAAU,EAAE,OAAS,EAAA,MAAA,EAAQ,WAAa,EAAA,UAAA,EACrC,EAAA;AACL,EAAM,MAAA,EAAE,OAAS,EAAA,WAAA,EAAgB,GAAA,OAAA,CAAA;AAEjC,EAAO,OAAA,KAAA,CACJ,IAAI,CAAQ,IAAA,KAAA;AAEX,IAAA,MAAM,OAAU,GAAA,IAAA,CAAK,OAAO,CAAA,CAAE,SAAS,UAAU,CAAA,CAAA;AAGjD,IAAM,MAAA,gBAAA,GAAmB,IAAK,CAAA,WAAW,CAAI,GAAA,gBAAA,CAAiB,KAAK,WAAW,CAAA,EAAG,UAAU,CAAA,GAAI,EAAC,CAAA;AAGhG,IAAI,IAAA,OAAA,IAAW,gBAAiB,CAAA,MAAA,GAAS,CAAG,EAAA;AAC1C,MAAO,OAAA;AAAA,QACL,GAAG,IAAA;AAAA,QACH,CAAC,WAAW,GAAG,gBAAA;AAAA,OACjB,CAAA;AAAA,KACK,MAAA;AACL,MAAO,OAAA,IAAA,CAAA;AAAA,KACT;AAAA,GACD,CAAA,CACA,MAAO,CAAA,CAAA,IAAA,KAAQ,SAAS,IAAI,CAAA,CAAA;AACjC;;;;"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 获取子节点
3
+ */
4
+ export declare function findChildrenItem<T = any>(nodes: T[], targetValue: any, options?: {
5
+ valueKey: string;
6
+ childrenKey: string;
7
+ }): T | undefined;
@@ -0,0 +1,20 @@
1
+ function findChildrenItem(nodes, targetValue, options = { valueKey: "value", childrenKey: "children" }) {
2
+ const valueField = options?.valueKey;
3
+ const childrenField = options?.childrenKey;
4
+ for (const nodeItem of nodes) {
5
+ const currentNode = nodeItem;
6
+ if (currentNode[valueField] === targetValue) {
7
+ return nodeItem;
8
+ }
9
+ if (currentNode[childrenField]) {
10
+ const found = findChildrenItem(currentNode[childrenField], targetValue);
11
+ if (found) {
12
+ return found;
13
+ }
14
+ }
15
+ }
16
+ return void 0;
17
+ }
18
+
19
+ export { findChildrenItem };
20
+ //# sourceMappingURL=findChildrenItem.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findChildrenItem.mjs","sources":["../../../../../../packages/utils/src/tree/findChildrenItem.ts"],"sourcesContent":["/**\n * 获取子节点\n */\nexport function findChildrenItem<T = any>(nodes: T[], targetValue: any, options = { valueKey: 'value', childrenKey: 'children' }): T | undefined {\n const valueField = options?.valueKey;\n const childrenField = options?.childrenKey;\n\n for (const nodeItem of nodes) {\n // 将 option 强制转换为 Record<string, any>,表示它是一个具有字符串键的对象\n const currentNode = nodeItem as Record<string, any>;\n\n if (currentNode[valueField] === targetValue) {\n return nodeItem;\n }\n if (currentNode[childrenField]) {\n const found = findChildrenItem<T>(currentNode[childrenField], targetValue);\n\n if (found) {\n return found;\n }\n }\n }\n\n return undefined;\n}\n"],"names":[],"mappings":"AAGgB,SAAA,gBAAA,CAA0B,OAAY,WAAkB,EAAA,OAAA,GAAU,EAAE,QAAU,EAAA,OAAA,EAAS,WAAa,EAAA,UAAA,EAA6B,EAAA;AAC/I,EAAA,MAAM,aAAa,OAAS,EAAA,QAAA,CAAA;AAC5B,EAAA,MAAM,gBAAgB,OAAS,EAAA,WAAA,CAAA;AAE/B,EAAA,KAAA,MAAW,YAAY,KAAO,EAAA;AAE5B,IAAA,MAAM,WAAc,GAAA,QAAA,CAAA;AAEpB,IAAI,IAAA,WAAA,CAAY,UAAU,CAAA,KAAM,WAAa,EAAA;AAC3C,MAAO,OAAA,QAAA,CAAA;AAAA,KACT;AACA,IAAI,IAAA,WAAA,CAAY,aAAa,CAAG,EAAA;AAC9B,MAAA,MAAM,KAAQ,GAAA,gBAAA,CAAoB,WAAY,CAAA,aAAa,GAAG,WAAW,CAAA,CAAA;AAEzE,MAAA,IAAI,KAAO,EAAA;AACT,QAAO,OAAA,KAAA,CAAA;AAAA,OACT;AAAA,KACF;AAAA,GACF;AAEA,EAAO,OAAA,KAAA,CAAA,CAAA;AACT;;;;"}
@@ -0,0 +1,2 @@
1
+ export * from './filterTreeByName';
2
+ export * from './findChildrenItem';
@@ -0,0 +1,3 @@
1
+ export { filterTreeByName } from './filterTreeByName.mjs';
2
+ export { findChildrenItem } from './findChildrenItem.mjs';
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,14 @@
1
+ import { type AxiosRequestConfig } from 'axios';
2
+ export interface GetAliOssConfigsResponse {
3
+ code: number;
4
+ data: GetAliOssConfigsResponseData;
5
+ comment: string;
6
+ }
7
+ export interface GetAliOssConfigsResponseData {
8
+ config_ids: string[];
9
+ }
10
+ /**
11
+ * 获取阿里OSS配置ID
12
+ * /material/cross/aliOssConfigs
13
+ */
14
+ export declare function getAliOssConfigs(config?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GetAliOssConfigsResponse, any>>;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ var request = require('../request.js');
4
+
5
+ function getAliOssConfigs(config) {
6
+ return request.default.get(`/material/cross/aliOssConfigs`, config);
7
+ }
8
+
9
+ exports.getAliOssConfigs = getAliOssConfigs;
10
+ //# sourceMappingURL=getAliOssConfigs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAliOssConfigs.js","sources":["../../../../../../packages/api/materialApi/cross/getAliOssConfigs.ts"],"sourcesContent":["import { type AxiosRequestConfig } from 'axios';\r\nimport request from '../request';\r\n\r\nexport interface GetAliOssConfigsResponse {\r\n code: number;\r\n data: GetAliOssConfigsResponseData;\r\n comment: string;\r\n}\r\n\r\nexport interface GetAliOssConfigsResponseData {\r\n config_ids: string[];\r\n}\r\n\r\n/**\r\n * 获取阿里OSS配置ID\r\n * /material/cross/aliOssConfigs\r\n */\r\nexport function getAliOssConfigs(config?: AxiosRequestConfig) {\r\n return request.get<GetAliOssConfigsResponse>(`/material/cross/aliOssConfigs`, config);\r\n}\r\n"],"names":["request"],"mappings":";;;;AAiBO,SAAS,iBAAiB,MAA6B,EAAA;AAC5D,EAAO,OAAAA,eAAA,CAAQ,GAA8B,CAAA,CAAA,6BAAA,CAAA,EAAiC,MAAM,CAAA,CAAA;AACtF;;;;"}
@@ -1,4 +1,4 @@
1
1
  export * from './getOssAccessToken';
2
2
  export * from './getAdFileExist';
3
3
  export * from './postSaveFileResources';
4
- export * from './getAliOssConfigIds';
4
+ export * from './getAliOssConfigs';
@@ -3,12 +3,12 @@
3
3
  var getOssAccessToken = require('./getOssAccessToken.js');
4
4
  var getAdFileExist = require('./getAdFileExist.js');
5
5
  var postSaveFileResources = require('./postSaveFileResources.js');
6
- var getAliOssConfigIds = require('./getAliOssConfigIds.js');
6
+ var getAliOssConfigs = require('./getAliOssConfigs.js');
7
7
 
8
8
 
9
9
 
10
10
  exports.getOssAccessToken = getOssAccessToken.getOssAccessToken;
11
11
  exports.getAdFileExist = getAdFileExist.getAdFileExist;
12
12
  exports.postSaveFileResources = postSaveFileResources.postSaveFileResources;
13
- exports.getAliOssConfigIds = getAliOssConfigIds.getAliOssConfigIds;
13
+ exports.getAliOssConfigs = getAliOssConfigs.getAliOssConfigs;
14
14
  //# sourceMappingURL=index.js.map
@@ -4,12 +4,12 @@ require('./cross/index.js');
4
4
  var getOssAccessToken = require('./cross/getOssAccessToken.js');
5
5
  var getAdFileExist = require('./cross/getAdFileExist.js');
6
6
  var postSaveFileResources = require('./cross/postSaveFileResources.js');
7
- var getAliOssConfigIds = require('./cross/getAliOssConfigIds.js');
7
+ var getAliOssConfigs = require('./cross/getAliOssConfigs.js');
8
8
 
9
9
 
10
10
 
11
11
  exports.getOssAccessToken = getOssAccessToken.getOssAccessToken;
12
12
  exports.getAdFileExist = getAdFileExist.getAdFileExist;
13
13
  exports.postSaveFileResources = postSaveFileResources.postSaveFileResources;
14
- exports.getAliOssConfigIds = getAliOssConfigIds.getAliOssConfigIds;
14
+ exports.getAliOssConfigs = getAliOssConfigs.getAliOssConfigs;
15
15
  //# sourceMappingURL=index.js.map