@gct-paas/core 0.1.4-dev.7 → 0.1.4-dev.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/dist/index.esm.min.mjs +6520 -18715
  2. package/dist/index.min.cjs +386 -2
  3. package/dist/index.system.min.js +386 -2
  4. package/es/constants/core.mjs +0 -1
  5. package/es/constants/editor-register/editor-register.mjs +0 -1
  6. package/es/constants/editor-type/editor-type.d.ts +65 -1
  7. package/es/constants/editor-type/editor-type.mjs +14 -1
  8. package/es/constants/expression-type/BuiltOperators.d.ts +20 -0
  9. package/es/constants/expression-type/BuiltOperators.mjs +148 -0
  10. package/es/constants/expression-type/FunctionKeys.d.ts +1 -0
  11. package/es/constants/expression-type/FunctionKeys.mjs +81 -0
  12. package/es/constants/expression-type/editor.d.ts +8 -0
  13. package/es/constants/expression-type/editor.mjs +4 -0
  14. package/es/constants/expression-type/function.d.ts +7 -0
  15. package/es/constants/expression-type/function.mjs +875 -0
  16. package/es/constants/expression-type/index.d.ts +42 -0
  17. package/es/constants/expression-type/index.mjs +120 -0
  18. package/es/constants/expression-type/modeCfg.d.ts +30 -0
  19. package/es/constants/expression-type/modeCfg.mjs +268 -0
  20. package/es/constants/expression-type/variable.d.ts +12 -0
  21. package/es/constants/expression-type/variable.mjs +42 -0
  22. package/es/constants/form-container-type/form-container-type.mjs +0 -1
  23. package/es/constants/index.d.ts +5 -0
  24. package/es/constants/index.mjs +6 -6
  25. package/es/controller/edit-form/edit-form.controller.mjs +0 -1
  26. package/es/controller/editor/color-editor.controller.mjs +0 -1
  27. package/es/controller/editor/length-unit-editor.controller.mjs +0 -1
  28. package/es/controller/editor-item/editor-item.controller.mjs +0 -1
  29. package/es/controller/form/form.controller.mjs +5 -4
  30. package/es/controller/form-collapse/form-collapse.controller.mjs +4 -3
  31. package/es/controller/form-collapse-pane/form-collapse-pane.controller.mjs +4 -3
  32. package/es/controller/form-edit-item/form-edit-item.controller.d.ts +1 -0
  33. package/es/controller/form-edit-item/form-edit-item.controller.mjs +6 -2
  34. package/es/controller/form-group/form-group.controller.mjs +4 -3
  35. package/es/controller/form-item/form-item.controller.d.ts +1 -0
  36. package/es/controller/form-item/form-item.controller.mjs +7 -3
  37. package/es/controller/form-item-basic/form-item-basic.controller.mjs +3 -2
  38. package/es/controller/form-item-hidden/form-item-hidden.controller.mjs +0 -1
  39. package/es/controller/form-tab/form-tab.controller.mjs +4 -3
  40. package/es/controller/form-tab-pane/form-tab-pane.controller.mjs +4 -3
  41. package/es/controller/gct-form/gct-form.controller.mjs +5 -4
  42. package/es/create-app-vue.mjs +3 -9
  43. package/es/enums/app-designer/index.d.ts +13 -1
  44. package/es/enums/app-designer/index.mjs +8 -2
  45. package/es/enums/appEnum.d.ts +22 -66
  46. package/es/enums/appEnum.mjs +24 -15
  47. package/es/enums/appStateEnum.mjs +0 -1
  48. package/es/enums/authActionEnum.mjs +0 -1
  49. package/es/enums/breakpointEnum.mjs +0 -1
  50. package/es/enums/cacheEnum.mjs +0 -1
  51. package/es/enums/designEnum.d.ts +2 -2
  52. package/es/enums/designEnum.mjs +31 -32
  53. package/es/enums/developer-center/index.d.ts +1 -0
  54. package/es/enums/developer-center/integration.d.ts +4 -0
  55. package/es/enums/developer-center/integration.mjs +7 -0
  56. package/es/enums/exceptionEnum.mjs +0 -1
  57. package/es/enums/expressionEnum.d.ts +130 -0
  58. package/es/enums/expressionEnum.mjs +75 -0
  59. package/es/enums/globalEnum.d.ts +38 -0
  60. package/es/enums/globalEnum.mjs +25 -0
  61. package/es/enums/httpEnum.mjs +0 -1
  62. package/es/enums/index.d.ts +19 -0
  63. package/es/enums/index.mjs +13 -16
  64. package/es/enums/menuEnum.mjs +0 -1
  65. package/es/enums/page-designer/designer.d.ts +23 -3
  66. package/es/enums/page-designer/designer.mjs +90 -6
  67. package/es/enums/page-designer/panel.d.ts +78 -7
  68. package/es/enums/page-designer/panel.mjs +22 -4
  69. package/es/enums/page-designer/toolkit.mjs +0 -1
  70. package/es/enums/page-designer/widget.d.ts +2 -1
  71. package/es/enums/page-designer/widget.mjs +3 -3
  72. package/es/enums/pageEnum.mjs +0 -1
  73. package/es/enums/plugin-enum.mjs +0 -1
  74. package/es/enums/processEnum.d.ts +54 -0
  75. package/es/enums/processEnum.mjs +36 -2
  76. package/es/enums/roleEnum.mjs +0 -1
  77. package/es/enums/sizeEnum.mjs +0 -1
  78. package/es/global/gct/gct.d.ts +11 -28
  79. package/es/global/gct/gct.mjs +29 -32
  80. package/es/hooks/index.d.ts +2 -1
  81. package/es/hooks/use-app-inst/use-app-inst.d.ts +8 -0
  82. package/es/hooks/use-app-inst/use-app-inst.mjs +8 -0
  83. package/es/hooks/use-form/use-form.mjs +0 -1
  84. package/es/hooks/use-gct-form-value/use-gct-form-value.d.ts +1 -1
  85. package/es/hooks/use-gct-form-value/use-gct-form-value.mjs +0 -4
  86. package/es/hooks/use-modal/use-modal.mjs +0 -1
  87. package/es/hooks/use-overlay-scrollbars/use-overlay-scrollbars.d.ts +11 -0
  88. package/es/hooks/use-sub-app-utils/use-sub-app-utils.d.ts +31 -0
  89. package/es/hooks/use-sub-app-utils/use-sub-app-utils.mjs +30 -0
  90. package/es/hooks/useCopyToClipboard.mjs +0 -1
  91. package/es/index.d.ts +6 -8
  92. package/es/index.mjs +98 -64
  93. package/es/interface/controller/form-edit-item/form-edit-item.controller.d.ts +5 -0
  94. package/es/interface/controller/index.d.ts +0 -1
  95. package/es/interface/form/i-editor/i-editor-basic.d.ts +2 -2
  96. package/es/interface/form/i-editor/i-model-field-select-editor.d.ts +18 -0
  97. package/es/interface/form/i-form/i-form-collapse-pane.d.ts +4 -0
  98. package/es/interface/form/i-form/i-form-item-basic.d.ts +1 -1
  99. package/es/interface/form/i-form/i-form-tab-pane.d.ts +4 -0
  100. package/es/interface/form/index.d.ts +1 -0
  101. package/es/interface/i-app-context/i-app-context.d.ts +34 -0
  102. package/es/interface/i-field-code-chain/i-field-code-chain.d.ts +17 -0
  103. package/es/interface/i-global-var/i-global-var.d.ts +15 -0
  104. package/es/interface/i-mobile-home-menu-item/i-mobile-home-menu-item.d.ts +94 -0
  105. package/es/interface/i-pinia-action/i-global-actions.d.ts +8 -20
  106. package/es/interface/i-pinia-getter/i-global-getters.d.ts +1 -1
  107. package/es/interface/i-pinia-state/i-global-state.d.ts +7 -14
  108. package/es/interface/index.d.ts +5 -5
  109. package/es/interface/open-util/i-message-util/i-message-util.d.ts +54 -0
  110. package/es/interface/{i-modal → open-util/i-modal}/i-modal.d.ts +9 -10
  111. package/es/interface/{i-modal-data → open-util/i-modal-data}/i-modal-data.d.ts +6 -0
  112. package/es/interface/open-util/i-modal-options/i-modal-options.d.ts +12 -0
  113. package/es/interface/open-util/i-open-window-options/i-open-window-options.d.ts +59 -0
  114. package/es/interface/open-util/i-overlay-container/i-overlay-container.d.ts +36 -0
  115. package/es/interface/open-util/i-overlay-controller/i-overlay-controller.d.ts +36 -0
  116. package/es/interface/open-util/index.d.ts +7 -0
  117. package/es/interface/state/index.d.ts +0 -1
  118. package/es/locale/index.mjs +2 -2
  119. package/es/modules/env-manager/env-manager.const.mjs +0 -1
  120. package/es/modules/env-manager/env-manager.interface.mjs +0 -1
  121. package/es/modules/env-manager/env-manager.mjs +7 -8
  122. package/es/modules/error-handler/error-handler.const.mjs +1 -30
  123. package/es/modules/error-handler/error-strategy.mjs +0 -1
  124. package/es/modules/error-handler/index.mjs +0 -1
  125. package/es/modules/platform-config/constants/index.d.ts +7 -0
  126. package/es/modules/platform-config/constants/login.const.d.ts +15 -0
  127. package/es/modules/platform-config/constants/login.const.mjs +50 -0
  128. package/es/modules/platform-config/constants/org.const.d.ts +9 -0
  129. package/es/modules/platform-config/constants/org.const.mjs +54 -0
  130. package/es/modules/platform-config/constants/theme.const.d.ts +9 -0
  131. package/es/modules/platform-config/constants/theme.const.mjs +5 -0
  132. package/es/modules/platform-config/constants/watermark.const.d.ts +16 -0
  133. package/es/modules/platform-config/constants/watermark.const.mjs +14 -0
  134. package/es/modules/platform-config/enums/deploy.enum.d.ts +10 -0
  135. package/es/modules/platform-config/enums/deploy.enum.mjs +7 -0
  136. package/es/modules/platform-config/enums/index.d.ts +6 -0
  137. package/es/modules/platform-config/{constants.d.ts → enums/login.enum.d.ts} +3 -7
  138. package/es/modules/platform-config/enums/login.enum.mjs +16 -0
  139. package/es/modules/platform-config/enums/platform.enum.d.ts +27 -0
  140. package/es/modules/platform-config/enums/platform.enum.mjs +26 -0
  141. package/es/modules/platform-config/index.d.ts +6 -17
  142. package/es/modules/platform-config/interfaces/global-setting.interface.d.ts +7 -0
  143. package/es/modules/platform-config/interfaces/index.d.ts +7 -0
  144. package/es/modules/platform-config/interfaces/login-config.interface.d.ts +17 -0
  145. package/es/modules/platform-config/interfaces/platform-map.interface.d.ts +8 -0
  146. package/es/modules/platform-config/interfaces/theme-setting.interface.d.ts +30 -0
  147. package/es/modules/platform-config/store.d.ts +221 -0
  148. package/es/modules/platform-config/store.mjs +78 -0
  149. package/es/modules/platform-config/useBasicSetting.d.ts +6 -2
  150. package/es/modules/platform-config/useBasicSetting.mjs +39 -0
  151. package/es/modules/platform-config/useDeploySetting.d.ts +9 -4
  152. package/es/modules/platform-config/useDeploySetting.mjs +27 -0
  153. package/es/modules/platform-config/useLoginSetting.d.ts +4 -14
  154. package/es/modules/platform-config/useLoginSetting.mjs +177 -0
  155. package/es/modules/platform-config/useOrgSetting.d.ts +5 -1
  156. package/es/modules/platform-config/useOrgSetting.mjs +66 -0
  157. package/es/modules/platform-config/useProjectSetting.d.ts +12 -0
  158. package/es/modules/platform-config/useProjectSetting.mjs +11 -0
  159. package/es/modules/platform-config/useSecuritySetting.d.ts +5 -1
  160. package/es/modules/platform-config/useSecuritySetting.mjs +60 -0
  161. package/es/modules/platform-config/useThemeSetting.d.ts +6 -3
  162. package/es/modules/platform-config/useThemeSetting.mjs +64 -0
  163. package/es/modules/platform-config/useWatermarkSetting.d.ts +4 -1
  164. package/es/modules/platform-config/useWatermarkSetting.mjs +26 -0
  165. package/es/modules/user-stores/index.d.ts +3 -0
  166. package/es/modules/user-stores/store/permission.store.d.ts +21 -0
  167. package/es/modules/user-stores/store/permission.store.mjs +38 -0
  168. package/es/modules/user-stores/store/tenant.store.d.ts +9 -0
  169. package/es/modules/user-stores/store/tenant.store.mjs +24 -0
  170. package/es/modules/user-stores/store/user.store.d.ts +154 -0
  171. package/es/modules/user-stores/store/user.store.mjs +107 -0
  172. package/es/modules/user-stores/types/permission.d.ts +1 -0
  173. package/es/modules/user-stores/types/tenant.d.ts +1 -0
  174. package/es/modules/user-stores/types/user.d.ts +14 -0
  175. package/es/register/editor-register/editor-register.d.ts +5 -13
  176. package/es/register/editor-register/editor-register.mjs +8 -17
  177. package/es/register/form-item-register/form-item-register.d.ts +4 -15
  178. package/es/register/form-item-register/form-item-register.mjs +7 -17
  179. package/es/register/index.d.ts +12 -2
  180. package/es/router/index.mjs +0 -1
  181. package/es/setup-app.d.ts +8 -0
  182. package/es/setup-app.mjs +30 -0
  183. package/es/state/form/form.state.mjs +0 -1
  184. package/es/state/form-collapse/form-collapse.state.mjs +0 -1
  185. package/es/state/form-collapse-pane/form-collapse-pane.state.mjs +0 -1
  186. package/es/state/form-edit-item/form-edit-item.state.mjs +0 -1
  187. package/es/state/form-group/form-group.state.mjs +0 -1
  188. package/es/state/form-item/form-item.state.mjs +0 -1
  189. package/es/state/form-item-basic/form-item-basic.state.mjs +0 -1
  190. package/es/state/form-tab/form-tab.state.mjs +0 -1
  191. package/es/state/form-tab-pane/form-tab-pane.state.mjs +0 -1
  192. package/es/state/global-pinia-state/global-pinia-state.d.ts +8 -25
  193. package/es/state/global-pinia-state/global-pinia-state.mjs +30 -16
  194. package/es/store/global-store.d.ts +1 -0
  195. package/es/store/global-store.mjs +40 -37
  196. package/es/store/index.d.ts +2 -3
  197. package/es/store/index.mjs +0 -1
  198. package/es/types/index.d.ts +18 -1
  199. package/es/utils/axios/interceptors.mjs +2 -23
  200. package/es/utils/cache-adapter/cache-adapter.d.ts +2 -0
  201. package/es/utils/cache-adapter/cache-adapter.mjs +59 -0
  202. package/es/utils/deviceFingerprint.d.ts +17 -0
  203. package/es/utils/deviceFingerprint.mjs +73 -0
  204. package/es/utils/dictionary/dictionary.mjs +0 -1
  205. package/es/utils/i18n/index.d.ts +2 -1
  206. package/es/utils/i18n/index.mjs +3 -4
  207. package/es/utils/index.d.ts +17 -3
  208. package/es/utils/linked-list/linked-list.d.ts +72 -0
  209. package/es/utils/linked-list/linked-list.mjs +119 -0
  210. package/es/utils/linked-node/linked-node.d.ts +31 -0
  211. package/es/utils/linked-node/linked-node.mjs +32 -0
  212. package/es/utils/lowcode/utils.d.ts +1 -0
  213. package/es/utils/lowcode/utils.mjs +20 -0
  214. package/es/utils/lowcode/validate.d.ts +13 -0
  215. package/es/utils/lowcode/validate.mjs +29 -0
  216. package/es/utils/mitt/mitt.d.ts +1 -0
  217. package/es/utils/mitt/mitt.mjs +5 -0
  218. package/es/utils/model-loader/model-loader.d.ts +118 -0
  219. package/es/utils/model-loader/model-loader.mjs +326 -0
  220. package/es/utils/namespace/namespace.d.ts +8 -0
  221. package/es/utils/namespace/namespace.mjs +4 -2
  222. package/es/utils/openUtil/index.d.ts +2 -0
  223. package/es/utils/openUtil/modal/modal.d.ts +61 -0
  224. package/es/utils/openUtil/modal/modal.mjs +80 -0
  225. package/es/utils/openUtil/overlay-container/overlay-container.d.ts +100 -0
  226. package/es/utils/openUtil/overlay-container/overlay-container.mjs +139 -0
  227. package/es/utils/plugin-static-resource/plugin-static-resource.mjs +0 -1
  228. package/es/utils/props/gct-form-item/gct-form-item.props.d.ts +63 -0
  229. package/es/utils/props/gct-form-item/gct-form-item.props.mjs +66 -0
  230. package/es/utils/props/index.d.ts +1 -0
  231. package/es/utils/style/index.d.ts +16 -0
  232. package/es/utils/style/index.mjs +141 -0
  233. package/es/utils/tools/tools.d.ts +13 -10
  234. package/es/utils/tools/tools.mjs +23 -11
  235. package/es/utils/treeHelper/treeHelper.d.ts +124 -0
  236. package/es/utils/treeHelper/treeHelper.mjs +234 -0
  237. package/es/utils/util.d.ts +39 -0
  238. package/es/utils/util.mjs +40 -0
  239. package/es/utils/uuid/uuid.d.ts +3 -0
  240. package/es/utils/uuid/uuid.mjs +48 -0
  241. package/es/utils/value-helper/value-helper.d.ts +49 -0
  242. package/es/utils/value-helper/value-helper.mjs +111 -0
  243. package/es/utils/width-install/width-install.mjs +4 -2
  244. package/package.json +13 -16
  245. package/es/controller/index.mjs +0 -17
  246. package/es/enums/page-designer/index.mjs +0 -6
  247. package/es/global/index.mjs +0 -3
  248. package/es/hooks/index.mjs +0 -7
  249. package/es/hooks/use-namespace/use-namespace.d.ts +0 -9
  250. package/es/hooks/use-namespace/use-namespace.mjs +0 -9
  251. package/es/interface/controller/i-designer-controller.d.ts +0 -116
  252. package/es/interface/hooks/i-designer-hooks.d.ts +0 -26
  253. package/es/interface/hooks/index.d.ts +0 -1
  254. package/es/interface/i-message-util/i-message-util.d.ts +0 -78
  255. package/es/interface/index.mjs +0 -1
  256. package/es/interface/low-code-types/index.d.ts +0 -4
  257. package/es/interface/low-code-types/modal-types.d.ts +0 -67
  258. package/es/interface/low-code-types/model/index.d.ts +0 -5338
  259. package/es/interface/low-code-types/schema/index.d.ts +0 -12
  260. package/es/interface/low-code-types/widget-basic-types.d.ts +0 -667
  261. package/es/interface/state/i-designer-state.d.ts +0 -27
  262. package/es/modules/env-manager/index.mjs +0 -5
  263. package/es/modules/platform-config/index.mjs +0 -17
  264. package/es/modules/platform-config/types.d.ts +0 -67
  265. package/es/provider/i-designer-provider/i-designer-provider.d.ts +0 -102
  266. package/es/provider/index.d.ts +0 -1
  267. package/es/provider/index.mjs +0 -1
  268. package/es/register/designer-register/designer-register.d.ts +0 -53
  269. package/es/register/designer-register/designer-register.mjs +0 -68
  270. package/es/register/index.mjs +0 -6
  271. package/es/register/render-register/render-register.d.ts +0 -59
  272. package/es/register/render-register/render-register.mjs +0 -64
  273. package/es/state/index.mjs +0 -12
  274. package/es/utils/index.mjs +0 -10
  275. package/es/utils/plugin-pkg-util/plugin-pkg-util.d.ts +0 -96
  276. package/es/utils/plugin-pkg-util/plugin-pkg-util.mjs +0 -260
@@ -0,0 +1,177 @@
1
+ import { ref, reactive } from 'vue';
2
+ import { LoginTypeEnum, LoginSortTypeEnum } from './enums/login.enum.mjs';
3
+ import { getLoginTypeOptions, OTHER_LOGIN_KEYS, SYSTEM_LOGIN_KEYS } from './constants/login.const.mjs';
4
+ import { has, isEmpty } from 'lodash-es';
5
+
6
+ const loginModeAuthTypes = ref([LoginTypeEnum.ACCOUNT]);
7
+ const openIDOAuthAuthTypes = ref([]);
8
+ const sysLoginSort = ref(getLoginTypeOptions(SYSTEM_LOGIN_KEYS));
9
+ const openIDOAuthAuthSort = ref(
10
+ getLoginTypeOptions(OTHER_LOGIN_KEYS)
11
+ );
12
+ const loginSetting = reactive({
13
+ theme: "full",
14
+ title: "欢迎登录冠骋云PaaS平台",
15
+ subtitle: "让数字化赋能客户成功!",
16
+ logo: "",
17
+ banner: "",
18
+ loginModeConfigs: [],
19
+ openIDOAuthConfigs: [],
20
+ sortJson: "",
21
+ defaultAuthType: LoginTypeEnum.ACCOUNT
22
+ });
23
+ const loginModeConfig = reactive(
24
+ /* @__PURE__ */ new Map([
25
+ [
26
+ LoginTypeEnum.ACCOUNT,
27
+ {
28
+ address: "",
29
+ authType: LoginTypeEnum.ACCOUNT,
30
+ relationField: "",
31
+ enabled: 0
32
+ }
33
+ ],
34
+ [
35
+ LoginTypeEnum.DOMAIN_ACCOUNT,
36
+ {
37
+ address: "",
38
+ authType: LoginTypeEnum.DOMAIN_ACCOUNT,
39
+ relationField: "",
40
+ domainSuffix: "",
41
+ relationFieldName: "",
42
+ enabled: 0
43
+ }
44
+ ],
45
+ [
46
+ LoginTypeEnum.MOBILE,
47
+ {
48
+ smsServiceProvider: "",
49
+ // 短信服务商
50
+ smsKey: "",
51
+ // 授权key
52
+ smsKeySecret: "",
53
+ // 授权secret
54
+ smsTemplateCode: "",
55
+ // 模板代码
56
+ smsSignName: "",
57
+ // 短信签名
58
+ phoneNumb: "",
59
+ smsSdkAppId: "",
60
+ authType: LoginTypeEnum.MOBILE,
61
+ enabled: 0
62
+ }
63
+ ],
64
+ [
65
+ LoginTypeEnum.DINGDING,
66
+ {
67
+ appId: "",
68
+ authType: LoginTypeEnum.DINGDING,
69
+ secret: "",
70
+ redirectURL: "",
71
+ enabled: 0
72
+ }
73
+ ],
74
+ [
75
+ LoginTypeEnum.FEISHU,
76
+ {
77
+ appId: "",
78
+ authType: LoginTypeEnum.FEISHU,
79
+ secret: "",
80
+ redirectURL: "",
81
+ enabled: 0
82
+ }
83
+ ],
84
+ [
85
+ LoginTypeEnum.QIYEWEIXIN,
86
+ {
87
+ appId: "",
88
+ agentId: "",
89
+ authType: LoginTypeEnum.QIYEWEIXIN,
90
+ secret: "",
91
+ redirectURL: "",
92
+ enabled: 0,
93
+ certFileName: ""
94
+ }
95
+ ]
96
+ ])
97
+ );
98
+ function useLoginSetting() {
99
+ const postLoginSetting = async () => {
100
+ const enableTypes = [
101
+ ...loginModeAuthTypes.value,
102
+ ...openIDOAuthAuthTypes.value
103
+ ];
104
+ enableTypes.forEach((item) => {
105
+ const config = loginModeConfig.get(item);
106
+ if (config) {
107
+ config.enabled = 1;
108
+ }
109
+ });
110
+ loginSetting.loginModeConfigs = SYSTEM_LOGIN_KEYS.map((item) => {
111
+ return loginModeConfig.get(item);
112
+ }).filter((config) => config !== void 0);
113
+ loginSetting.openIDOAuthConfigs = OTHER_LOGIN_KEYS.map((item) => {
114
+ return loginModeConfig.get(item);
115
+ }).filter((config) => config !== void 0);
116
+ loginSetting.sortJson = JSON.stringify({
117
+ [LoginSortTypeEnum.SYSTEM]: sysLoginSort.value.map((item) => item.id),
118
+ [LoginSortTypeEnum.THIRD_PARTY]: openIDOAuthAuthSort.value.map(
119
+ (item) => item.id
120
+ )
121
+ });
122
+ await _api.platform.plat.postLogin(loginSetting);
123
+ };
124
+ const setLoginSetting = (config) => {
125
+ if (config && config.value) {
126
+ const value = JSON.parse(config.value);
127
+ for (const k in value) {
128
+ if (k in loginSetting) {
129
+ loginSetting[k] = value[k];
130
+ }
131
+ }
132
+ if (has(value, "sortJson") && !isEmpty(value.sortJson)) {
133
+ const sortObj = JSON.parse(value.sortJson);
134
+ if (has(sortObj, LoginSortTypeEnum.SYSTEM)) {
135
+ sysLoginSort.value = getLoginTypeOptions(
136
+ sortObj[LoginSortTypeEnum.SYSTEM]
137
+ );
138
+ }
139
+ if (has(sortObj, LoginSortTypeEnum.THIRD_PARTY)) {
140
+ openIDOAuthAuthSort.value = getLoginTypeOptions(
141
+ sortObj[LoginSortTypeEnum.THIRD_PARTY]
142
+ );
143
+ }
144
+ }
145
+ loginSetting.loginModeConfigs?.forEach((item) => {
146
+ loginModeConfig.set(item.authType, { ...item, enabled: 0 });
147
+ });
148
+ const loginModeConfigs = loginSetting.loginModeConfigs?.filter((item) => {
149
+ return item.enabled;
150
+ }).map((i) => {
151
+ return i.authType;
152
+ }) || [];
153
+ loginModeConfigs.push(LoginTypeEnum.ACCOUNT);
154
+ loginModeAuthTypes.value = [...new Set(loginModeConfigs)];
155
+ loginSetting.openIDOAuthConfigs?.forEach((item) => {
156
+ loginModeConfig.set(item.authType, { ...item, enabled: 0 });
157
+ });
158
+ openIDOAuthAuthTypes.value = loginSetting.openIDOAuthConfigs?.filter((item) => {
159
+ return item.enabled;
160
+ }).map((i) => {
161
+ return i.authType;
162
+ }) || [];
163
+ }
164
+ };
165
+ return {
166
+ loginSetting,
167
+ postLoginSetting,
168
+ setLoginSetting,
169
+ loginModeAuthTypes,
170
+ openIDOAuthAuthTypes,
171
+ sysLoginSort,
172
+ openIDOAuthAuthSort,
173
+ loginModeConfig
174
+ };
175
+ }
176
+
177
+ export { useLoginSetting };
@@ -1,7 +1,11 @@
1
1
  import { OrgConfig, SysConfigResponse } from '@gct-paas/api/platform';
2
+ /**
3
+ * 组织设置 Composable 函数
4
+ * @param isPlatform - 是否为平台模式,默认为 true
5
+ * @returns 返回组织设置相关的响应式数据和方法
6
+ */
2
7
  export declare function useOrgSetting(isPlatform?: boolean): {
3
8
  orgSetting: OrgConfig;
4
- loadOrgSetting: () => Promise<void>;
5
9
  setOrgSetting: (data: SysConfigResponse) => void;
6
10
  postOrgSetting: () => Promise<void>;
7
11
  relationFields: import('vue').Ref<{
@@ -0,0 +1,66 @@
1
+ import { reactive, ref } from 'vue';
2
+ import { RELATION_FIELDS } from './constants/org.const.mjs';
3
+
4
+ const orgSetting = reactive({
5
+ initialPassword: "123456",
6
+ initialSignPassword: "12345678",
7
+ enableIdentifier: 1,
8
+ enableDeleteAccount: 1,
9
+ enableDeleteUser: 0,
10
+ requiredFields: [],
11
+ // supportLoginFields: ['username_', 'emp_no_'],
12
+ supportLoginFields: ["username_"],
13
+ extFieldConfigs: [],
14
+ orgExtFieldConfigs: []
15
+ });
16
+ const relationFields = ref([...RELATION_FIELDS]);
17
+ const relationFiledsCopy = ref([]);
18
+ function useOrgSetting(isPlatform = true) {
19
+ const postOrgSetting = async () => {
20
+ const setting = JSON.parse(JSON.stringify(orgSetting));
21
+ if (isPlatform) {
22
+ await _api.platform.plat.postOrg(setting);
23
+ } else {
24
+ await _api.apaas.plat.postOrg(setting);
25
+ }
26
+ };
27
+ function setOrgSetting(data) {
28
+ const { value } = data;
29
+ if (!value) return;
30
+ try {
31
+ const setting = JSON.parse(value);
32
+ for (const key in setting) {
33
+ if (key == "supportLoginFields") {
34
+ setting["supportLoginFields"] = setting["supportLoginFields"].filter(
35
+ (i) => i !== "username_"
36
+ );
37
+ }
38
+ }
39
+ Object.assign(orgSetting, setting);
40
+ if (orgSetting.extFieldConfigs && orgSetting.extFieldConfigs.length) {
41
+ orgSetting.extFieldConfigs.forEach((element) => {
42
+ relationFields.value = relationFields.value.filter((i) => {
43
+ if (i.value == element.relationField) {
44
+ relationFiledsCopy.value.push(i);
45
+ }
46
+ return i.value !== element.relationField;
47
+ });
48
+ });
49
+ }
50
+ orgSetting.extFieldConfigs = JSON.parse(
51
+ JSON.stringify(setting.extFieldConfigs)
52
+ );
53
+ } catch (err) {
54
+ console.warn(err);
55
+ }
56
+ }
57
+ return {
58
+ orgSetting,
59
+ setOrgSetting,
60
+ postOrgSetting,
61
+ relationFields,
62
+ relationFiledsCopy
63
+ };
64
+ }
65
+
66
+ export { useOrgSetting };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * 部署设置 Composable
3
+ * 用于管理应用的部署模式配置
4
+ */
5
+ /** 基础配置信息响应式对象 */
6
+ declare const projectSetting: {};
7
+ declare function setProjectConfig(config: typeof projectSetting): void;
8
+ export declare function useProjectSetting(): {
9
+ projectSetting: {};
10
+ setProjectConfig: typeof setProjectConfig;
11
+ };
12
+ export {};
@@ -0,0 +1,11 @@
1
+ import { reactive } from 'vue';
2
+
3
+ const projectSetting = reactive({});
4
+ function setProjectConfig(config) {
5
+ Object.assign(projectSetting, config);
6
+ }
7
+ function useProjectSetting() {
8
+ return { projectSetting, setProjectConfig };
9
+ }
10
+
11
+ export { useProjectSetting };
@@ -1,7 +1,11 @@
1
1
  import { SecurityConfig, SysConfigResponse } from '@gct-paas/api/platform';
2
+ /**
3
+ * 安全设置 Composable 函数
4
+ * @param isPlatform - 是否为平台模式,默认为 true
5
+ * @returns 返回安全设置相关的响应式数据和方法
6
+ */
2
7
  export declare function useSecuritySetting(isPlatform?: boolean): {
3
8
  securitySetting: SecurityConfig;
4
9
  postSecuritySetting: () => Promise<void>;
5
- loadSecuritySetting: () => Promise<void>;
6
10
  setSecuritySetting: (data: SysConfigResponse) => void;
7
11
  };
@@ -0,0 +1,60 @@
1
+ import { reactive } from 'vue';
2
+
3
+ const securitySetting = reactive({
4
+ durationHour: 2,
5
+ durationMinute: 0,
6
+ enableChangePassword: 1,
7
+ enableChangeSignPassword: 0,
8
+ enableSignPassword: 0,
9
+ enableKickOut: 1,
10
+ enablePassphrase: 1,
11
+ signEnablePassphrase: 1,
12
+ enableLockAccount: 1,
13
+ expiryDate: 30,
14
+ signExpiryDate: 30,
15
+ firstTimeChangePassword: 0,
16
+ signFirstTimeChangePassword: 0,
17
+ lockTimeout: 0,
18
+ loginKickOutMode: "SAME_END",
19
+ maxErrorTimes: 2,
20
+ passMinLength: 6,
21
+ signPassMinLength: 6,
22
+ passRule: ["NUMBER"],
23
+ signPassRule: ["NUMBER"],
24
+ signRepeatNum: 1,
25
+ repeatNum: 1,
26
+ timeUnit: "DAYS",
27
+ signTimeUnit: "DAYS",
28
+ noOpRetainHour: 8,
29
+ noOpRetainMinute: 0,
30
+ earlyAlarmMinute: 5,
31
+ earlyAlarmSecond: 0,
32
+ inapplicablePerson: [],
33
+ lockHourTimeout: 0,
34
+ lockMinTimeout: 5
35
+ });
36
+ function useSecuritySetting(isPlatform = true) {
37
+ const postSecuritySetting = async () => {
38
+ if (isPlatform) {
39
+ await _api.platform.plat.postSecurity(securitySetting);
40
+ } else {
41
+ await _api.apaas.plat.postSecurity(securitySetting);
42
+ }
43
+ };
44
+ function setSecuritySetting(data) {
45
+ const { value } = data;
46
+ if (!value) return;
47
+ try {
48
+ Object.assign(securitySetting, JSON.parse(value));
49
+ } catch (err) {
50
+ console.warn(err);
51
+ }
52
+ }
53
+ return {
54
+ securitySetting,
55
+ postSecuritySetting,
56
+ setSecuritySetting
57
+ };
58
+ }
59
+
60
+ export { useSecuritySetting };
@@ -1,8 +1,11 @@
1
- import { ThemeSetting } from './types';
1
+ import { IThemeSetting } from './interfaces/theme-setting.interface';
2
2
  import { SysConfigResponse } from '@gct-paas/api/platform';
3
+ /**
4
+ * 主题设置 Composable 函数
5
+ * @returns 返回主题设置相关的响应式数据和方法
6
+ */
3
7
  export declare function useThemeSetting(): {
4
- themeSetting: ThemeSetting;
5
- loadThemeSetting: () => Promise<void>;
8
+ themeSetting: IThemeSetting;
6
9
  setThemeSetting: (data: SysConfigResponse) => void;
7
10
  postThemeSetting: () => Promise<void>;
8
11
  menuCollapsed: import('vue').Ref<boolean, boolean>;
@@ -0,0 +1,64 @@
1
+ import { reactive, ref, watch } from 'vue';
2
+ import { THEME_COLORS, MENU_WIDTH_RANGE, MENU_COLLAPSED_WIDTH } from './constants/theme.const.mjs';
3
+
4
+ const themeSetting = reactive({
5
+ darkMode: "light",
6
+ themeColor: "#026AC8",
7
+ // menuMode: 'mix-sider',
8
+ menuMode: "classic",
9
+ menuWidth: 232,
10
+ menuCollapsible: true,
11
+ menuSearchable: true,
12
+ menuFilter: false,
13
+ showLogo: true,
14
+ showBreadcrumb: false,
15
+ showBreadcrumbIcon: false,
16
+ showTabs: true,
17
+ pageProgress: true,
18
+ pageLoading: true,
19
+ colorMode: "normal"
20
+ });
21
+ const menuCollapsed = ref(false);
22
+ const menuCollapsedWidth = MENU_COLLAPSED_WIDTH;
23
+ const menuWidthRange = MENU_WIDTH_RANGE;
24
+ const themeColors = THEME_COLORS;
25
+ const toggleColorMode = () => {
26
+ switch (themeSetting.colorMode) {
27
+ }
28
+ };
29
+ watch(
30
+ () => themeSetting.colorMode,
31
+ (value) => {
32
+ if (value) {
33
+ toggleColorMode();
34
+ }
35
+ }
36
+ );
37
+ function useThemeSetting() {
38
+ const postThemeSetting = async () => {
39
+ };
40
+ function setThemeSetting(data) {
41
+ const { value } = data;
42
+ if (!value) return;
43
+ try {
44
+ Object.assign(themeSetting, JSON.parse(value));
45
+ } catch (err) {
46
+ console.warn(err);
47
+ }
48
+ }
49
+ function toggleMenuCollapsed() {
50
+ menuCollapsed.value = !menuCollapsed.value;
51
+ }
52
+ return {
53
+ themeSetting,
54
+ setThemeSetting,
55
+ postThemeSetting,
56
+ menuCollapsed,
57
+ toggleMenuCollapsed,
58
+ menuCollapsedWidth,
59
+ menuWidthRange,
60
+ themeColors
61
+ };
62
+ }
63
+
64
+ export { useThemeSetting };
@@ -1,4 +1,8 @@
1
1
  import { SysConfigResponse } from '@gct-paas/api/platform';
2
+ /**
3
+ * 水印设置 Composable 函数
4
+ * @returns 返回水印设置相关的响应式数据和方法
5
+ */
2
6
  export declare function useWatermarkSetting(): {
3
7
  watermarkSetting: {
4
8
  openWatermark: boolean;
@@ -12,7 +16,6 @@ export declare function useWatermarkSetting(): {
12
16
  width: number;
13
17
  height: number;
14
18
  };
15
- loadWatermarkSetting: () => Promise<void>;
16
19
  postWatermarkSetting: () => Promise<void>;
17
20
  setWatermarkSetting: (data: SysConfigResponse) => void;
18
21
  };
@@ -0,0 +1,26 @@
1
+ import { reactive } from 'vue';
2
+ import { WATERMARK_INIT_DATA } from './constants/watermark.const.mjs';
3
+
4
+ const watermarkSetting = reactive({ ...WATERMARK_INIT_DATA });
5
+ function useWatermarkSetting() {
6
+ const postWatermarkSetting = async () => {
7
+ const value = JSON.stringify(watermarkSetting);
8
+ await _api.platform.plat.postWatermark({ value });
9
+ };
10
+ function setWatermarkSetting(data) {
11
+ const { value } = data;
12
+ if (!value) return;
13
+ try {
14
+ Object.assign(watermarkSetting, JSON.parse(value));
15
+ } catch (err) {
16
+ console.warn(err);
17
+ }
18
+ }
19
+ return {
20
+ watermarkSetting,
21
+ postWatermarkSetting,
22
+ setWatermarkSetting
23
+ };
24
+ }
25
+
26
+ export { useWatermarkSetting };
@@ -0,0 +1,3 @@
1
+ export { useUserStore } from './store/user.store';
2
+ export { useTenantStore } from './store/tenant.store';
3
+ export { usePermissionStore } from './store/permission.store';
@@ -0,0 +1,21 @@
1
+ export declare const usePermissionStore: import('pinia').StoreDefinition<"permission", {
2
+ userPermissions: {
3
+ appSuperAdmin: number;
4
+ permissions: IObject;
5
+ };
6
+ }, {
7
+ hasAllPermissions(state: {
8
+ userPermissions: {
9
+ appSuperAdmin: number;
10
+ permissions: IObject;
11
+ };
12
+ } & import('pinia').PiniaCustomStateProperties<{
13
+ userPermissions: {
14
+ appSuperAdmin: number;
15
+ permissions: IObject;
16
+ };
17
+ }>): boolean;
18
+ }, {
19
+ getPermissionByKey(pageId: string, key?: string): boolean;
20
+ initPermission(): Promise<void>;
21
+ }>;
@@ -0,0 +1,38 @@
1
+ import { defineStore } from 'pinia';
2
+
3
+ const usePermissionStore = defineStore("permission", {
4
+ state: () => ({
5
+ //当前应用中用户的权限
6
+ userPermissions: {
7
+ appSuperAdmin: 0,
8
+ permissions: {}
9
+ }
10
+ }),
11
+ getters: {
12
+ hasAllPermissions(state) {
13
+ return !!state.userPermissions.appSuperAdmin || !!state.userPermissions.permissions["POINT.*"];
14
+ }
15
+ },
16
+ actions: {
17
+ getPermissionByKey(pageId, key) {
18
+ if (this.hasAllPermissions) return true;
19
+ if (!key) {
20
+ return this.userPermissions.permissions[pageId];
21
+ }
22
+ const uKey = `${pageId}.${key}`;
23
+ const pageKey = `${pageId}.*`;
24
+ return this.userPermissions.permissions[uKey] || this.userPermissions.permissions[pageKey];
25
+ },
26
+ async initPermission() {
27
+ const res = await _api.apaas.designerCommon.getUserInfo();
28
+ Object.assign(this.userPermissions, {
29
+ ...res,
30
+ permissions: Object.fromEntries(
31
+ (res?.permissions ?? []).map((key) => [key, true])
32
+ )
33
+ });
34
+ }
35
+ }
36
+ });
37
+
38
+ export { usePermissionStore };
@@ -0,0 +1,9 @@
1
+ import { UserOfTenantDTO } from '@gct-paas/api/platform';
2
+ export declare const useTenantStore: import('pinia').StoreDefinition<"tenant", {
3
+ tenantId: string;
4
+ tenantUserInfo: {};
5
+ tenantUserPermissions: {};
6
+ }, {}, {
7
+ setTenant(tenantId: string): void;
8
+ getTenantUserInfoAction(): Promise<UserOfTenantDTO | undefined>;
9
+ }>;
@@ -0,0 +1,24 @@
1
+ import { defineStore } from 'pinia';
2
+
3
+ const useTenantStore = defineStore("tenant", {
4
+ state: () => ({
5
+ //selected tenant Id
6
+ tenantId: "",
7
+ // 当前租户中的用户信息
8
+ tenantUserInfo: {},
9
+ tenantUserPermissions: {}
10
+ }),
11
+ actions: {
12
+ setTenant(tenantId) {
13
+ this.tenantId = tenantId;
14
+ },
15
+ async getTenantUserInfoAction() {
16
+ if (!this.tenantId) return;
17
+ const info = await _api.platform.tenant.getUserInfo();
18
+ this.tenantUserInfo = info;
19
+ return info;
20
+ }
21
+ }
22
+ });
23
+
24
+ export { useTenantStore };