@giteeteam/apps-team-components 1.2.2 → 1.3.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/README.md +21 -28
  2. package/dist/components/common/PriceTag.js +18 -18
  3. package/dist/components/common/expand-component/index.d.ts +23 -0
  4. package/dist/components/common/expand-component/index.js +65 -0
  5. package/dist/components/common/expand-component/style.d.ts +2 -0
  6. package/dist/components/common/expand-component/style.js +8 -0
  7. package/dist/components/common/item-icon/ItemIcon.d.ts +8 -0
  8. package/dist/components/common/item-icon/ItemIcon.js +6 -0
  9. package/dist/components/common/overflow-tooltip/OverflowTooltip.d.ts +19 -0
  10. package/dist/components/common/overflow-tooltip/OverflowTooltip.js +54 -0
  11. package/dist/components/common/overflow-tooltip/style/index.js +13 -13
  12. package/dist/components/common/style/global.js +2 -2
  13. package/dist/components/common/style/mixin.d.ts +2 -0
  14. package/dist/components/common/style/mixin.js +17 -0
  15. package/dist/components/common/user-field/style/index.js +21 -21
  16. package/dist/components/common/utils.d.ts +6 -0
  17. package/dist/components/common/utils.js +54 -0
  18. package/dist/components/default-empty-icon/config.d.ts +2 -0
  19. package/dist/components/default-empty-icon/config.js +19 -0
  20. package/dist/components/default-empty-icon/index.d.ts +5 -0
  21. package/dist/components/default-empty-icon/index.js +23 -0
  22. package/dist/components/default-empty-icon/style.d.ts +11 -0
  23. package/dist/components/default-empty-icon/style.js +64 -0
  24. package/dist/components/default-empty-icon/types.d.ts +29 -0
  25. package/dist/components/default-empty-icon/types.js +6 -0
  26. package/dist/components/field-behavior/fields/type.js +1 -1
  27. package/dist/components/fields/base-component/types.d.ts +1 -0
  28. package/dist/components/fields/base-component/utils.d.ts +2 -0
  29. package/dist/components/fields/base-component/utils.js +9 -0
  30. package/dist/components/fields/bind-workspace/hooks.js +3 -3
  31. package/dist/components/fields/bind-workspace/style/index.js +3 -3
  32. package/dist/components/fields/dropdown/BaseField.d.ts +24 -2
  33. package/dist/components/fields/dropdown/BaseField.js +562 -1
  34. package/dist/components/fields/dropdown/Cell.d.ts +4 -0
  35. package/dist/components/fields/dropdown/Cell.js +6 -0
  36. package/dist/components/fields/dropdown/ReadView.js +1 -1
  37. package/dist/components/fields/dropdown/data.d.ts +9 -0
  38. package/dist/components/fields/dropdown/data.js +26 -0
  39. package/dist/components/fields/dropdown/hook.d.ts +103 -0
  40. package/dist/components/fields/dropdown/hook.js +152 -0
  41. package/dist/components/fields/dropdown/style.d.ts +16 -0
  42. package/dist/components/fields/dropdown/style.js +90 -0
  43. package/dist/components/fields/hooks/useViewClass.d.ts +11 -0
  44. package/dist/components/fields/hooks/useViewClass.js +18 -0
  45. package/dist/components/fields/hyper-link/style/index.js +14 -14
  46. package/dist/components/fields/item-type/ItemTypeIcon.d.ts +9 -0
  47. package/dist/components/fields/item-type/ItemTypeIcon.js +33 -0
  48. package/dist/components/fields/item-type/style/index.d.ts +1 -0
  49. package/dist/components/fields/item-type/style/index.js +6 -0
  50. package/dist/components/fields/key/ReadView.js +2 -2
  51. package/dist/components/fields/long-text/style/index.js +5 -5
  52. package/dist/components/fields/priority/ReadView.js +1 -1
  53. package/dist/components/fields/priority/style/index.js +50 -50
  54. package/dist/components/fields/status/style/index.js +323 -323
  55. package/dist/components/fields/tag/style/index.js +5 -5
  56. package/dist/components/fields/team/style/index.js +2 -2
  57. package/dist/components/fields/user/style/index.js +8 -8
  58. package/dist/components/fields/user-group/ReadView.js +1 -1
  59. package/dist/components/filters/filter-search/utils.d.ts +4 -0
  60. package/dist/components/filters/filter-search/utils.js +28 -0
  61. package/dist/components/table-components/EditTableCell.d.ts +1 -0
  62. package/dist/components/table-components/EditTableCell.js +2 -1
  63. package/dist/components/table-components/index.js +4 -4
  64. package/dist/components/table-components/style/index.js +5 -5
  65. package/dist/components/table-components/utils.js +2 -0
  66. package/dist/icons/SyncIconFont.d.ts +6 -0
  67. package/dist/icons/SyncIconFont.js +15 -0
  68. package/dist/icons/createFromIconFontClass.d.ts +4 -0
  69. package/dist/icons/createFromIconFontClass.js +33 -0
  70. package/dist/icons/empty-icon/data-empty.png +0 -0
  71. package/dist/icons/empty-icon/forbidden.png +0 -0
  72. package/dist/icons/empty-icon/index.d.ts +1 -0
  73. package/dist/icons/empty-icon/index.js +8 -0
  74. package/dist/icons/empty-icon/large-item@2x.png +0 -0
  75. package/dist/icons/empty-icon/large-workspace@2x.png +0 -0
  76. package/dist/icons/empty-icon/load-error.png +0 -0
  77. package/dist/icons/empty-icon/not-found.png +0 -0
  78. package/dist/icons/empty-icon/small-default@2x.png +0 -0
  79. package/dist/icons/empty-icon/workspace-empty.svg +127 -0
  80. package/dist/icons/index.d.ts +58 -1
  81. package/dist/icons/index.js +294 -0
  82. package/dist/icons/style/index.d.ts +2 -0
  83. package/dist/icons/style/index.js +23 -0
  84. package/dist/icons/svg/DottedCircle.svg +7 -7
  85. package/dist/icons/svg/HollowCircle.svg +6 -6
  86. package/dist/icons/svg/Workflow.svg +12 -12
  87. package/dist/index.d.ts +1 -0
  88. package/dist/index.js +1 -0
  89. package/dist/lib/app/utils.d.ts +3 -0
  90. package/dist/lib/app/utils.js +16 -0
  91. package/dist/lib/config.d.ts +14 -0
  92. package/dist/lib/config.js +45 -0
  93. package/dist/lib/constants/code.d.ts +4 -0
  94. package/dist/lib/constants/code.js +4 -0
  95. package/dist/lib/constants/field.d.ts +1 -0
  96. package/dist/lib/constants/field.js +2 -0
  97. package/dist/lib/contexts/index.js +2 -2
  98. package/dist/lib/contexts/teamConfig.d.ts +3 -0
  99. package/dist/lib/contexts/teamConfig.js +19 -4
  100. package/dist/lib/error/index.d.ts +2 -0
  101. package/dist/lib/error/index.js +2 -0
  102. package/dist/lib/error/log.d.ts +10 -0
  103. package/dist/lib/error/log.js +25 -0
  104. package/dist/lib/error/utils.d.ts +14 -0
  105. package/dist/lib/error/utils.js +50 -0
  106. package/dist/lib/error/withServerError.d.ts +1 -0
  107. package/dist/lib/error/withServerError.js +1 -0
  108. package/dist/lib/fetch.d.ts +45 -0
  109. package/dist/lib/fetch.js +301 -0
  110. package/dist/lib/global.d.ts +18 -0
  111. package/dist/lib/global.js +18 -0
  112. package/dist/lib/i18n.d.ts +1 -0
  113. package/dist/lib/i18n.js +1 -0
  114. package/dist/lib/icons/utils.d.ts +23 -0
  115. package/dist/lib/icons/utils.js +59 -0
  116. package/dist/lib/path.d.ts +5 -0
  117. package/dist/lib/path.js +47 -0
  118. package/dist/lib/router.d.ts +23 -0
  119. package/dist/lib/router.js +20 -0
  120. package/dist/lib/storage.d.ts +10 -0
  121. package/dist/lib/storage.js +62 -0
  122. package/dist/lib/swr/throttleWithCache.d.ts +17 -0
  123. package/dist/lib/swr/throttleWithCache.js +108 -0
  124. package/dist/lib/throttleFetch.d.ts +2 -0
  125. package/dist/lib/throttleFetch.js +66 -0
  126. package/dist/lib/useConfig.d.ts +8 -0
  127. package/dist/lib/useConfig.js +28 -0
  128. package/dist/locales/index.d.ts +45 -0
  129. package/dist/locales/index.js +45 -0
  130. package/dist/public/icons/BulbIcon.svg +1 -0
  131. package/dist/public/icons/Cloud.svg +1 -0
  132. package/dist/public/icons/ConsultIcon.svg +1 -0
  133. package/dist/public/icons/Demo.svg +1 -0
  134. package/dist/public/icons/ErrorTemplate.svg +1 -0
  135. package/dist/public/icons/Fail.svg +1 -0
  136. package/dist/public/icons/Flag.svg +1 -0
  137. package/dist/public/icons/GiteeIcon.svg +1 -0
  138. package/dist/public/icons/IntelligenceGradient.svg +1 -0
  139. package/dist/public/icons/Issue_Approval.svg +1 -0
  140. package/dist/public/icons/Issue_Bug.svg +1 -0
  141. package/dist/public/icons/Issue_Demand.svg +1 -0
  142. package/dist/public/icons/Issue_Doc.svg +1 -0
  143. package/dist/public/icons/Issue_Idea.svg +1 -0
  144. package/dist/public/icons/Issue_List.svg +1 -0
  145. package/dist/public/icons/Issue_Plan.svg +1 -0
  146. package/dist/public/icons/Issue_Product.svg +1 -0
  147. package/dist/public/icons/Issue_Risk.svg +1 -0
  148. package/dist/public/icons/Issue_Story.svg +1 -0
  149. package/dist/public/icons/Issue_Subtask.svg +1 -0
  150. package/dist/public/icons/Issue_Task.svg +1 -0
  151. package/dist/public/icons/Issue_Test.svg +1 -0
  152. package/dist/public/icons/Issue_TestExcution.svg +1 -0
  153. package/dist/public/icons/Issue_TestPlan.svg +1 -0
  154. package/dist/public/icons/Issue_Time.svg +1 -0
  155. package/dist/public/icons/Issue_develop.svg +1 -0
  156. package/dist/public/icons/KanbanCover.svg +7 -0
  157. package/dist/public/icons/ListCover.svg +118 -0
  158. package/dist/public/icons/ManHour.svg +1 -0
  159. package/dist/public/icons/MobileIcon.svg +1 -0
  160. package/dist/public/icons/NoItemType.svg +10 -0
  161. package/dist/public/icons/ProductIcon.svg +1 -0
  162. package/dist/public/icons/RedFlagIcon.svg +1 -0
  163. package/dist/public/icons/Safe.svg +1 -0
  164. package/dist/public/icons/StarIcon.svg +61 -0
  165. package/dist/public/icons/StructureCover.svg +1 -0
  166. package/dist/public/icons/Success.svg +1 -0
  167. package/dist/public/icons/TeamIcon.svg +1 -0
  168. package/dist/public/icons/WebIcon.svg +1 -0
  169. package/dist/public/icons/iconfont.svg +467 -0
  170. package/dist/public/icons/iconfont.ttf +0 -0
  171. package/dist/public/icons/iconfont.woff +0 -0
  172. package/dist/public/icons/iconfont.woff2 +0 -0
  173. package/dist/public/icons/iconfont_multiple_color.js +1 -0
  174. package/dist/public/icons/iconfont_single_color.css +912 -0
  175. package/dist/public/icons/iconfont_single_color.js +1 -0
  176. package/dist/public/icons/loginBg.svg +1 -0
  177. package/dist/public/mockServiceWorker.js +284 -0
  178. package/dist/style/common.d.ts +1 -0
  179. package/dist/style/common.js +9 -0
  180. package/dist/style/global.d.ts +1 -0
  181. package/dist/style/global.js +8 -0
  182. package/package.json +105 -69
@@ -0,0 +1,62 @@
1
+ export const getLocalStorageItem = (key, defaults = '') => {
2
+ let item;
3
+ try {
4
+ item = localStorage.getItem(key);
5
+ return (item && JSON.parse(item)) || defaults;
6
+ }
7
+ catch (e) {
8
+ return item !== null && item !== void 0 ? item : defaults;
9
+ }
10
+ };
11
+ export const setLocalStorageItem = (key, value) => {
12
+ try {
13
+ localStorage.setItem(key, JSON.stringify(value));
14
+ return true;
15
+ }
16
+ catch (e) {
17
+ console.error(e);
18
+ return false;
19
+ }
20
+ };
21
+ const getStorageKeys = () => {
22
+ return Object.keys(localStorage);
23
+ };
24
+ export const removeParseItems = () => {
25
+ try {
26
+ const keys = getStorageKeys();
27
+ const parseKeys = keys.filter(fieldKey => fieldKey.startsWith('Parse/') && fieldKey.endsWith('/currentUser'));
28
+ parseKeys.forEach(paresKey => {
29
+ localStorage.removeItem(paresKey);
30
+ });
31
+ }
32
+ catch (error) {
33
+ console.error('removeParseItems', error);
34
+ }
35
+ };
36
+ export default {
37
+ getItem: getLocalStorageItem,
38
+ setItem: setLocalStorageItem,
39
+ removeParseItems,
40
+ };
41
+ const setLocalStorageState = (key, data) => {
42
+ localStorage.setItem(key, JSON.stringify({ time: new Date().getDate(), data }));
43
+ };
44
+ export const getLocalStorageState = async (key, fn) => {
45
+ try {
46
+ const target = localStorage.getItem(key);
47
+ if (target) {
48
+ const targetFormat = JSON.parse(target);
49
+ if ((targetFormat === null || targetFormat === void 0 ? void 0 : targetFormat.time) === new Date().getDate()) {
50
+ if (typeof targetFormat.data !== 'string') {
51
+ return targetFormat.data;
52
+ }
53
+ }
54
+ }
55
+ }
56
+ catch (e) {
57
+ console.error(e);
58
+ }
59
+ const data = await fn();
60
+ setLocalStorageState(key, data);
61
+ return data;
62
+ };
@@ -0,0 +1,17 @@
1
+ export declare const DISABLE_THROTTLE_API_FETCH = "DISABLE_THROTTLE_API_FETCH";
2
+ declare const throttleWithCache: ({ type, params, fn, method, }: {
3
+ type: THROTTLE_TYPE;
4
+ params: unknown;
5
+ fn: () => Promise<any>;
6
+ method?: string;
7
+ }) => Promise<any>;
8
+ export declare enum THROTTLE_TYPE {
9
+ PLUGIN_RESOURCE_FETCH = "PLUGIN_RESOURCE_FETCH",
10
+ QUERY_FETCH = "QUERY_FETCH",
11
+ CUSTOM_FETCH = "CUSTOM_FETCH"
12
+ }
13
+ export declare const createKeyByParams: ({ type, params }: {
14
+ type: THROTTLE_TYPE;
15
+ params: any;
16
+ }) => string;
17
+ export default throttleWithCache;
@@ -0,0 +1,108 @@
1
+ import debug from 'debug';
2
+ import { getLocalStorageItem } from 'lib/storage';
3
+ export const DISABLE_THROTTLE_API_FETCH = 'DISABLE_THROTTLE_API_FETCH';
4
+ const log = debug('repeat-api');
5
+ const disableThrottle = !!getLocalStorageItem(DISABLE_THROTTLE_API_FETCH) || false;
6
+ let cacheKeys = [];
7
+ let results = [];
8
+ let resolves = [];
9
+ const THROTTLE_TIME = 3000;
10
+ let postPending = false;
11
+ let postPendingTime = 0;
12
+ const refreshCache = () => {
13
+ const dirtyIds = [];
14
+ cacheKeys.forEach(item => {
15
+ if (Date.now() - item.time > THROTTLE_TIME) {
16
+ dirtyIds.push(item.id);
17
+ }
18
+ });
19
+ cacheKeys = cacheKeys.filter(item => !dirtyIds.includes(item.id));
20
+ results = results.filter(item => !dirtyIds.includes(item.id));
21
+ resolves = resolves.filter(item => !dirtyIds.includes(item.id));
22
+ };
23
+ const refreshPostPending = () => {
24
+ if (postPending) {
25
+ const curTime = Date.now();
26
+ if (curTime - postPendingTime > THROTTLE_TIME) {
27
+ postPending = false;
28
+ }
29
+ }
30
+ };
31
+ const throttleWithCache = ({ type, params, fn, method, }) => {
32
+ if (disableThrottle) {
33
+ return fn();
34
+ }
35
+ const key = createKeyByParams({ type, params });
36
+ refreshCache();
37
+ refreshPostPending();
38
+ if (postPending) {
39
+ return fn();
40
+ }
41
+ const _method = String(method).toLowerCase();
42
+ if (_method !== 'get') {
43
+ postPending = true;
44
+ postPendingTime = +new Date();
45
+ return fn();
46
+ }
47
+ return new Promise((resolve, reject) => {
48
+ var _a;
49
+ const findItem = cacheKeys.find(item => item.key === key && +new Date() - item.time < THROTTLE_TIME);
50
+ if (findItem) {
51
+ try {
52
+ const getStackTrace = (limitFrames = 50) => {
53
+ const obj = { stack: '' };
54
+ const stackTraceLimit = Error.stackTraceLimit;
55
+ Error.stackTraceLimit = stackTraceLimit < limitFrames ? limitFrames : stackTraceLimit;
56
+ Error.captureStackTrace(obj, getStackTrace);
57
+ Error.stackTraceLimit = stackTraceLimit;
58
+ return obj.stack.split('\n');
59
+ };
60
+ const stackFrames = getStackTrace();
61
+ log('stackFrame', stackFrames, key);
62
+ }
63
+ catch (e) {
64
+ console.error(e);
65
+ }
66
+ const result = (_a = results.find(item => item.key === findItem.key)) === null || _a === void 0 ? void 0 : _a.data;
67
+ if (result) {
68
+ resolve(result);
69
+ }
70
+ else {
71
+ resolves.push({
72
+ key: findItem.key,
73
+ resolve,
74
+ id: findItem.id,
75
+ });
76
+ }
77
+ }
78
+ else {
79
+ const curTime = +new Date();
80
+ cacheKeys.push({ key, time: curTime, id: `${key}${curTime}` });
81
+ fn()
82
+ .then(res => {
83
+ results.push({ key, data: res, id: `${key}${curTime}` });
84
+ resolve(res);
85
+ resolves.forEach(item => {
86
+ if (item.key === key) {
87
+ item.resolve(res);
88
+ }
89
+ });
90
+ })
91
+ .catch(_error => {
92
+ reject(_error);
93
+ });
94
+ }
95
+ });
96
+ };
97
+ export var THROTTLE_TYPE;
98
+ (function (THROTTLE_TYPE) {
99
+ THROTTLE_TYPE["PLUGIN_RESOURCE_FETCH"] = "PLUGIN_RESOURCE_FETCH";
100
+ THROTTLE_TYPE["QUERY_FETCH"] = "QUERY_FETCH";
101
+ THROTTLE_TYPE["CUSTOM_FETCH"] = "CUSTOM_FETCH";
102
+ })(THROTTLE_TYPE || (THROTTLE_TYPE = {}));
103
+ export const createKeyByParams = ({ type, params }) => {
104
+ if (!params)
105
+ return `${+new Date()}`;
106
+ return `${type}_${JSON.stringify(params)}`;
107
+ };
108
+ export default throttleWithCache;
@@ -0,0 +1,2 @@
1
+ export declare const generateHash: (content: any) => string;
2
+ export declare function throttleFetch<Key = any, Data = any>(key: Key, fetcher: () => Promise<Data>): Promise<Data>;
@@ -0,0 +1,66 @@
1
+ class PubSub {
2
+ constructor() {
3
+ this.events = {};
4
+ }
5
+ subscribe(event, resolve, reject) {
6
+ if (!(event in this.events)) {
7
+ this.events[event] = [];
8
+ }
9
+ this.events[event].push([resolve, reject]);
10
+ }
11
+ publish(event, data, err) {
12
+ if (!(event in this.events)) {
13
+ return;
14
+ }
15
+ while (this.events[event].length) {
16
+ const [resolve, reject] = this.events[event].shift();
17
+ if (err) {
18
+ reject(err);
19
+ }
20
+ else {
21
+ resolve(data);
22
+ }
23
+ }
24
+ delete this.events[event];
25
+ }
26
+ }
27
+ const pubSub = new PubSub();
28
+ export const generateHash = (content) => {
29
+ if (content && typeof content === 'object')
30
+ try {
31
+ content = JSON.stringify(content);
32
+ }
33
+ catch (e) {
34
+ content = content === null || content === void 0 ? void 0 : content.toString();
35
+ console.error('[Error] getStringHash JSON.stringify(content)', e);
36
+ }
37
+ if (!content)
38
+ return;
39
+ let hash = 0;
40
+ let chr;
41
+ if (content.length === 0)
42
+ return '';
43
+ for (let i = 0; i < content.length; i++) {
44
+ chr = content.charCodeAt(i);
45
+ hash = (hash << 5) - hash + chr;
46
+ hash |= 0;
47
+ }
48
+ return btoa('hash-' + hash);
49
+ };
50
+ export async function throttleFetch(key, fetcher) {
51
+ return new Promise((resolve, reject) => {
52
+ const hashKey = generateHash(key);
53
+ const hasEvent = hashKey in pubSub.events;
54
+ pubSub.subscribe(hashKey, resolve, reject);
55
+ if (!hasEvent) {
56
+ pubSub.subscribe(hashKey, resolve, reject);
57
+ fetcher()
58
+ .then(data => {
59
+ pubSub.publish(hashKey, data);
60
+ })
61
+ .catch(err => {
62
+ pubSub.publish(hashKey, undefined, err);
63
+ });
64
+ }
65
+ });
66
+ }
@@ -0,0 +1,8 @@
1
+ export declare const LOCALE_KEY = "lang";
2
+ export declare const PROXIMA_TENANT_KEY = "team_tenant";
3
+ export declare const SESSION_KEY = "sessionToken";
4
+ export declare const useAppProps: () => {
5
+ locale: string;
6
+ sessionToken: string;
7
+ appId: string;
8
+ };
@@ -0,0 +1,28 @@
1
+ import { useContext, useMemo } from 'react';
2
+ import Cookie from 'js-cookie';
3
+ import { TeamConfigContext } from './contexts/teamConfig';
4
+ import { getAcceptLanguageHeader } from './config';
5
+ export const LOCALE_KEY = 'lang';
6
+ export const PROXIMA_TENANT_KEY = 'team_tenant';
7
+ export const SESSION_KEY = 'sessionToken';
8
+ export const useAppProps = () => {
9
+ const { userConfig = {}, publicRuntimeConfig = {} } = useContext(TeamConfigContext);
10
+ const locale = useMemo(() => {
11
+ const userLocale = userConfig.locale;
12
+ const [defaultLang] = navigator.languages;
13
+ const locale = userLocale || Cookie.get(LOCALE_KEY) || defaultLang;
14
+ return getAcceptLanguageHeader(locale);
15
+ }, [userConfig.locale]);
16
+ const { sessionToken, appId } = useMemo(() => {
17
+ const { userTenant, sessionToken } = userConfig;
18
+ return {
19
+ appId: userTenant || Cookie.get(PROXIMA_TENANT_KEY) || publicRuntimeConfig.appId,
20
+ sessionToken: sessionToken || Cookie.get(SESSION_KEY),
21
+ };
22
+ }, [publicRuntimeConfig.appId, userConfig]);
23
+ return {
24
+ locale,
25
+ sessionToken,
26
+ appId,
27
+ };
28
+ };
@@ -11,12 +11,23 @@ export declare const en: {
11
11
  'date.month': string;
12
12
  'date.year': string;
13
13
  'pages.fields.default.toWorkspacePage': string;
14
+ 'pages.fields.default.onlyWorkspace': string;
15
+ 'pages.fields.default.getImageError': string;
16
+ 'pages.fields.default.noItemType': string;
14
17
  'pages.fields.view.noWorkflowOrAuth': string;
15
18
  'pages.fields.view.viewWorkflow': string;
16
19
  'pages.fields.view.unrestrictedStatus': string;
17
20
  'pages.fields.view.approvalStatus': string;
18
21
  'pages.fields.view.checkInStatus': string;
19
22
  'pages.fields.view.readonlyStatus': string;
23
+ 'pages.fields.workspace.default.currentWorkspace': string;
24
+ 'pages.fields.fieldName.undefined': string;
25
+ 'pages.fields.fieldName.CustomVersion': string;
26
+ 'pages.fields.fieldName.Sprint': string;
27
+ 'pages.fields.fieldName.Team': string;
28
+ 'pages.fields.fieldName.Version': string;
29
+ 'pages.fields.fieldName.TestPlan': string;
30
+ 'pages.fields.fieldName.TestExecution': string;
20
31
  'pages.workflow.default.userType.creatorAuth': string;
21
32
  'pages.workflow.condition.isEmpty': string;
22
33
  'pages.workflow.condition.notEmpty': string;
@@ -38,6 +49,8 @@ export declare const en: {
38
49
  'pages.workflow.flowHandler.message': string;
39
50
  'global.stateless': string;
40
51
  'global.haveDelete': string;
52
+ 'global.collapse': string;
53
+ 'global.expand': string;
41
54
  'global.columns.forbiddenActive': string;
42
55
  'message.fields.stateFlowSuccess': string;
43
56
  'message.fields.stateFlowFailure': string;
@@ -52,6 +65,8 @@ export declare const en: {
52
65
  'libs.default.flowTextTip.1': string;
53
66
  'pages.fields.view.noPriority': string;
54
67
  'components.priceTag.pro': string;
68
+ 'views.common.searchSelect.emptyData.noData': string;
69
+ 'workspaceArchived.archived': string;
55
70
  };
56
71
  export declare const zh: {
57
72
  'pages.users.default.delete': string;
@@ -66,12 +81,23 @@ export declare const zh: {
66
81
  'date.month': string;
67
82
  'date.year': string;
68
83
  'pages.fields.default.toWorkspacePage': string;
84
+ 'pages.fields.default.onlyWorkspace': string;
85
+ 'pages.fields.default.getImageError': string;
86
+ 'pages.fields.default.noItemType': string;
69
87
  'pages.fields.view.noWorkflowOrAuth': string;
70
88
  'pages.fields.view.viewWorkflow': string;
71
89
  'pages.fields.view.unrestrictedStatus': string;
72
90
  'pages.fields.view.approvalStatus': string;
73
91
  'pages.fields.view.checkInStatus': string;
74
92
  'pages.fields.view.readonlyStatus': string;
93
+ 'pages.fields.workspace.default.currentWorkspace': string;
94
+ 'pages.fields.fieldName.undefined': string;
95
+ 'pages.fields.fieldName.CustomVersion': string;
96
+ 'pages.fields.fieldName.Sprint': string;
97
+ 'pages.fields.fieldName.Team': string;
98
+ 'pages.fields.fieldName.Version': string;
99
+ 'pages.fields.fieldName.TestPlan': string;
100
+ 'pages.fields.fieldName.TestExecution': string;
75
101
  'pages.workflow.default.userType.creatorAuth': string;
76
102
  'pages.workflow.condition.isEmpty': string;
77
103
  'pages.workflow.condition.notEmpty': string;
@@ -94,6 +120,8 @@ export declare const zh: {
94
120
  'global.stateless': string;
95
121
  'global.haveDelete': string;
96
122
  'global.columns.forbiddenActive': string;
123
+ 'global.collapse': string;
124
+ 'global.expand': string;
97
125
  'message.fields.stateFlowSuccess': string;
98
126
  'message.fields.stateFlowFailure': string;
99
127
  'libs.workflow.user': string;
@@ -107,6 +135,8 @@ export declare const zh: {
107
135
  'libs.default.flowTextTip.1': string;
108
136
  'pages.fields.view.noPriority': string;
109
137
  'components.priceTag.pro': string;
138
+ 'views.common.searchSelect.emptyData.noData': string;
139
+ 'workspaceArchived.archived': string;
110
140
  };
111
141
  export declare const ru: {
112
142
  'pages.users.default.delete': string;
@@ -121,12 +151,23 @@ export declare const ru: {
121
151
  'date.month': string;
122
152
  'date.year': string;
123
153
  'pages.fields.default.toWorkspacePage': string;
154
+ 'pages.fields.default.onlyWorkspace': string;
155
+ 'pages.fields.default.getImageError': string;
156
+ 'pages.fields.default.noItemType': string;
124
157
  'pages.fields.view.noWorkflowOrAuth': string;
125
158
  'pages.fields.view.viewWorkflow': string;
126
159
  'pages.fields.view.unrestrictedStatus': string;
127
160
  'pages.fields.view.approvalStatus': string;
128
161
  'pages.fields.view.checkInStatus': string;
129
162
  'pages.fields.view.readonlyStatus': string;
163
+ 'pages.fields.workspace.default.currentWorkspace': string;
164
+ 'pages.fields.fieldName.undefined': string;
165
+ 'pages.fields.fieldName.CustomVersion': string;
166
+ 'pages.fields.fieldName.Sprint': string;
167
+ 'pages.fields.fieldName.Team': string;
168
+ 'pages.fields.fieldName.Version': string;
169
+ 'pages.fields.fieldName.TestPlan': string;
170
+ 'pages.fields.fieldName.TestExecution': string;
130
171
  'pages.workflow.default.userType.creatorAuth': string;
131
172
  'pages.workflow.condition.isEmpty': string;
132
173
  'pages.workflow.condition.notEmpty': string;
@@ -149,6 +190,8 @@ export declare const ru: {
149
190
  'global.stateless': string;
150
191
  'global.haveDelete': string;
151
192
  'global.columns.forbiddenActive': string;
193
+ 'global.collapse': string;
194
+ 'global.expand': string;
152
195
  'message.fields.stateFlowSuccess': string;
153
196
  'message.fields.stateFlowFailure': string;
154
197
  'libs.workflow.user': string;
@@ -162,4 +205,6 @@ export declare const ru: {
162
205
  'libs.default.flowTextTip.1': string;
163
206
  'pages.fields.view.noPriority': string;
164
207
  'components.priceTag.pro': string;
208
+ 'views.common.searchSelect.emptyData.noData': string;
209
+ 'workspaceArchived.archived': string;
165
210
  };
@@ -11,12 +11,23 @@ export const en = {
11
11
  'date.month': 'Month',
12
12
  'date.year': 'Year',
13
13
  'pages.fields.default.toWorkspacePage': 'Click to enter the workspace',
14
+ 'pages.fields.default.onlyWorkspace': 'Current Workspace',
15
+ 'pages.fields.default.getImageError': 'Image acquisition failure',
16
+ 'pages.fields.default.noItemType': 'Issue type is not specified',
14
17
  'pages.fields.view.noWorkflowOrAuth': `Current state doesn't allow workflow or has no permission`,
15
18
  'pages.fields.view.viewWorkflow': 'View workflow diagram',
16
19
  'pages.fields.view.unrestrictedStatus': 'This transition can only be clicked before approval',
17
20
  'pages.fields.view.approvalStatus': 'The transition needs approval',
18
21
  'pages.fields.view.checkInStatus': 'The transition needs check-in',
19
22
  'pages.fields.view.readonlyStatus': 'Read only status, please contact the administrator for configuration.',
23
+ 'pages.fields.workspace.default.currentWorkspace': 'Current workspace',
24
+ 'pages.fields.fieldName.undefined': '',
25
+ 'pages.fields.fieldName.CustomVersion': 'CustomVersion',
26
+ 'pages.fields.fieldName.Sprint': 'Sprint',
27
+ 'pages.fields.fieldName.Team': 'Team',
28
+ 'pages.fields.fieldName.Version': 'Version',
29
+ 'pages.fields.fieldName.TestPlan': 'TestPlan',
30
+ 'pages.fields.fieldName.TestExecution': 'TestExecution',
20
31
  'pages.workflow.default.userType.creatorAuth': 'Issue Creator',
21
32
  'pages.workflow.condition.isEmpty': 'is empty',
22
33
  'pages.workflow.condition.notEmpty': 'not empty',
@@ -38,6 +49,8 @@ export const en = {
38
49
  'pages.workflow.flowHandler.message': 'Please select at least one handler',
39
50
  'global.stateless': 'Stateless',
40
51
  'global.haveDelete': 'deleted',
52
+ 'global.collapse': 'Collapse',
53
+ 'global.expand': 'Expand',
41
54
  'global.columns.forbiddenActive': 'disabled',
42
55
  'message.fields.stateFlowSuccess': 'State transfer completed successfully',
43
56
  'message.fields.stateFlowFailure': 'State transfer failed {{messageText}}',
@@ -52,6 +65,8 @@ export const en = {
52
65
  'libs.default.flowTextTip.1': 'The issue field [{{field}}] should be [{{condition}}]',
53
66
  'pages.fields.view.noPriority': 'No priority',
54
67
  'components.priceTag.pro': 'Pro',
68
+ 'views.common.searchSelect.emptyData.noData': 'No data',
69
+ 'workspaceArchived.archived': 'Archived',
55
70
  };
56
71
  export const zh = {
57
72
  'pages.users.default.delete': '(已删除)',
@@ -66,12 +81,23 @@ export const zh = {
66
81
  'date.month': '月',
67
82
  'date.year': '年',
68
83
  'pages.fields.default.toWorkspacePage': '点击进入空间',
84
+ 'pages.fields.default.onlyWorkspace': '只显示当前空间的{{name}}',
85
+ 'pages.fields.default.getImageError': '图片获取失败',
86
+ 'pages.fields.default.noItemType': '未指定类型',
69
87
  'pages.fields.view.noWorkflowOrAuth': '当前状态无法继续流转或者没有权限',
70
88
  'pages.fields.view.viewWorkflow': '查看工作流图',
71
89
  'pages.fields.view.unrestrictedStatus': '该流转动作只有未审批前才可点击',
72
90
  'pages.fields.view.approvalStatus': '该流转需要审批完成后才能流转',
73
91
  'pages.fields.view.checkInStatus': '该流转需要签到完成后才能流转',
74
92
  'pages.fields.view.readonlyStatus': '只读状态,请联系管理员配置。',
93
+ 'pages.fields.workspace.default.currentWorkspace': '当前空间',
94
+ 'pages.fields.fieldName.undefined': '',
95
+ 'pages.fields.fieldName.CustomVersion': '版本',
96
+ 'pages.fields.fieldName.Sprint': '迭代',
97
+ 'pages.fields.fieldName.Team': '团队',
98
+ 'pages.fields.fieldName.Version': '版本',
99
+ 'pages.fields.fieldName.TestPlan': '测试计划',
100
+ 'pages.fields.fieldName.TestExecution': '测试执行任务',
75
101
  'pages.workflow.default.userType.creatorAuth': '事项创建人',
76
102
  'pages.workflow.condition.isEmpty': '为空',
77
103
  'pages.workflow.condition.notEmpty': '非空',
@@ -94,6 +120,8 @@ export const zh = {
94
120
  'global.stateless': '无状态',
95
121
  'global.haveDelete': '已删除',
96
122
  'global.columns.forbiddenActive': '已禁用',
123
+ 'global.collapse': '收起',
124
+ 'global.expand': '展开',
97
125
  'message.fields.stateFlowSuccess': '状态流转成功',
98
126
  'message.fields.stateFlowFailure': '状态流转失败{{messageText}}',
99
127
  'libs.workflow.user': '用户',
@@ -107,6 +135,8 @@ export const zh = {
107
135
  'libs.default.flowTextTip.1': '当前事项字段[{{field}}]应该[{{condition}}]',
108
136
  'pages.fields.view.noPriority': '无优先级',
109
137
  'components.priceTag.pro': '高级',
138
+ 'views.common.searchSelect.emptyData.noData': '暂无数据',
139
+ 'workspaceArchived.archived': '已归档',
110
140
  };
111
141
  export const ru = {
112
142
  'pages.users.default.delete': '(удалено)',
@@ -121,12 +151,23 @@ export const ru = {
121
151
  'date.month': 'Месяц',
122
152
  'date.year': 'Год',
123
153
  'pages.fields.default.toWorkspacePage': 'Нажмите, чтобы войти в рабочее пространство',
154
+ 'pages.fields.default.onlyWorkspace': 'Current Workspace',
155
+ 'pages.fields.default.getImageError': 'Не удалось получить изображение',
156
+ 'pages.fields.default.noItemType': 'Тип задачи не указан',
124
157
  'pages.fields.view.noWorkflowOrAuth': `Текущее состояние не допускает рабочий процесс или не имеет разрешения`,
125
158
  'pages.fields.view.viewWorkflow': 'Посмотреть схему рабочего процесса',
126
159
  'pages.fields.view.unrestrictedStatus': 'This transition can only be clicked before approval',
127
160
  'pages.fields.view.approvalStatus': 'Данный перевод требует подтверждения',
128
161
  'pages.fields.view.checkInStatus': 'The transition needs check-in',
129
162
  'pages.fields.view.readonlyStatus': 'Статус только для чтения, пожалуйста, свяжитесь с администратором для настройки.',
163
+ 'pages.fields.workspace.default.currentWorkspace': 'Tекущая рабочая область',
164
+ 'pages.fields.fieldName.undefined': '',
165
+ 'pages.fields.fieldName.CustomVersion': 'CustomVersion',
166
+ 'pages.fields.fieldName.Sprint': 'Sprint',
167
+ 'pages.fields.fieldName.Team': 'Team',
168
+ 'pages.fields.fieldName.Version': 'Version',
169
+ 'pages.fields.fieldName.TestPlan': 'TestPlan',
170
+ 'pages.fields.fieldName.TestExecution': 'TestExecution',
130
171
  'pages.workflow.default.userType.creatorAuth': 'Создатель события',
131
172
  'pages.workflow.condition.isEmpty': 'пусто',
132
173
  'pages.workflow.condition.notEmpty': 'не пусто',
@@ -149,6 +190,8 @@ export const ru = {
149
190
  'global.stateless': 'Stateless',
150
191
  'global.haveDelete': 'deleted',
151
192
  'global.columns.forbiddenActive': 'disabled',
193
+ 'global.collapse': 'Расширить',
194
+ 'global.expand': 'Expand',
152
195
  'message.fields.stateFlowSuccess': 'Перенос статуса выполнен успешно',
153
196
  'message.fields.stateFlowFailure': 'Передача состояния не удалась {{messageText}}',
154
197
  'libs.workflow.user': 'Пользователь',
@@ -162,4 +205,6 @@ export const ru = {
162
205
  'libs.default.flowTextTip.1': `Поле задачи "{{field}}" должно при условии "{{condition}}"`,
163
206
  'pages.fields.view.noPriority': 'Нет приоритета',
164
207
  'components.priceTag.pro': 'Pro',
208
+ 'views.common.searchSelect.emptyData.noData': 'No data',
209
+ 'workspaceArchived.archived': 'В архиве',
165
210
  };
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M0 0m128 0l768 0q128 0 128 128l0 768q0 128-128 128l-768 0q-128 0-128-128l0-768q0-128 128-128Z" fill="#09B866" /><path d="M666.368 198.506667s-1.024-0.277333 0 0c-114.517333-54.506667-238.165333-17.301333-300.906667 89.216-30.592 52.394667-55.722667 100.842667-14.912 249.173333 8.149333 31.402667-7.658667 78.016-18.048 104.448-6.101333 14.592 59.733333 57.130667 84.629334 71.36L666.368 198.506667z" fill="#FFD20C" /><path d="M784.512 486.570667c44.266667-115.797333-3.626667-233.6-117.12-287.786667l-1.024-0.277333-249.237333 514.197333c26.986667 10.474667 101.056 34.666667 109.226666 20.629333 14.506667-25.344 41.877333-65.621333 70.954667-79.445333 143.04-60.16 165.333333-110.421333 187.2-167.317333z" fill="#FFAA0C" /><path d="M412.629333 721.237333c-7.957333-3.2-11.221333-11.669333-11.392-19.285333l30.826667-283.861333a19.029333 19.029333 0 0 1 9.472-14.762667 19.925333 19.925333 0 0 1 17.813333-0.64l173.333334 82.133333a18.090667 18.090667 0 0 1 10.666666 13.696c0.725333 5.589333-1.173333 12.672-5.610666 16.874667l-202.090667 202.282667a19.456 19.456 0 0 1-23.018667 3.562666z m56.234667-271.637333l-22.336 202.816 145.578667-143.829333-123.242667-58.986667z" fill="#FFFFFF" /><path d="M340.608 590.506667l-67.008 138.922666c-0.810667 3.029333 0.426667 6.613333 5.248 13.312l55.36 77.589334c4.821333 6.698667 14.037333 13.482667 22.762667 17.984l94.314666-195.434667-110.677333-52.373333z" fill="#00238C" /><path d="M451.285333 642.88l-94.293333 195.434667c9.749333 4.778667 19.008 7.253333 28.053333 6.442666l95.36-5.824c7.765333-0.085333 12.693333-2.005333 14.250667-3.754666l67.306667-139.925334-110.677334-52.373333z" fill="#1F2B47" /><path d="M549.653333 757.973333c4.224-7.552 0.213333-17.28-7.765333-20.48l-110.656-52.394666-13.013333 27.904 110.677333 52.373333c6.954667 2.944 16.533333 0.106667 20.757333-7.424z" fill="#B0D6FF" /><path d="M320.554667 632.746667a15.018667 15.018667 0 0 0-20.757334 7.402666c-4.224 7.530667-0.213333 17.28 7.765334 20.48l110.677333 52.373334 12.992-27.904-110.677333-52.373334z m-28.928 58.24a15.018667 15.018667 0 0 0-20.757334 7.424c-4.224 7.509333-0.213333 17.237333 7.765334 20.48l110.656 52.352 13.013333-27.882667-110.677333-52.373333z" fill="#FFFFFF" /><path d="M512.96 795.733333l-110.677333-52.373333-12.992 27.882667 110.677333 52.373333c7.68 4.224 17.557333 0.384 20.757333-7.424 4.224-7.509333 1.237333-16.981333-7.765333-20.48z" fill="#B0D6FF" /></svg>
@@ -0,0 +1 @@
1
+ <svg width="22" height="22" xmlns="http://www.w3.org/2000/svg"><title>云</title><g fill="none" fill-rule="evenodd"><path fill="none" d="M0 0h22v22H0z"/><path d="M14 9.108c0 1.657 1.364 3 3.047 3s3.047-1.343 3.047-3-1.364-3-3.047-3S14 7.45 14 9.108Z" fill="#87BDFF" fill-rule="nonzero"/><path d="M21 14.077C21 16.785 18.75 19 16 19H6c-2.75 0-5-2.19-5-4.923 0-1.772.975-3.397 2.525-4.283-.025-.172-.025-.345-.025-.517C3.5 5.807 6.35 3 9.875 3c3.475 0 6.3 2.732 6.375 6.154 2.65.148 4.75 2.29 4.75 4.923Z" fill="#0C62FF" fill-rule="nonzero"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg width="18" height="18" xmlns="http://www.w3.org/2000/svg"><title>编组</title><path d="M9 0c3.445 0 6.276 2.795 6.501 6.346l.007.141h.116c1.26 0 2.29 1.024 2.371 2.315l.005.163v2.163c0 1.367-1.063 2.477-2.376 2.477h-.554l-.07.179c-.784 1.931-2.39 3.388-4.321 3.918l-.243.062a8.943 8.943 0 0 1-.861.2 2.036 2.036 0 0 1-2.42-2.035l.082-.096 2.325-.371.425.431c2.144-.486 3.675-2.47 3.675-4.765V6.803c0-2.693-2.088-4.875-4.662-4.875S4.338 4.11 4.338 6.803v6.055c0 .412-.321.747-.72.747H2.376C1.063 13.605 0 12.495 0 11.128V8.965c0-1.367 1.063-2.478 2.376-2.478h.115l.008-.141C2.719 2.874 5.43.125 8.77.004L9 0Zm6.516 8.415v3.262h.108a.537.537 0 0 0 .522-.55V8.966a.537.537 0 0 0-.522-.55h-.108Zm-13.033 0h-.107a.531.531 0 0 0-.515.46l-.007.09v2.163c0 .304.235.55.522.55l.107-.001V8.415Zm9.222.212c.3.453.19 1.072-.25 1.383-1.664 1.182-3.505 1.189-5.339.029a1.015 1.015 0 0 1-.32-1.368.95.95 0 0 1 1.331-.331c1.189.751 2.205.757 3.232.028a.949.949 0 0 1 1.346.259Z" fill="#60D1FF" fill-rule="nonzero"/></svg>
@@ -0,0 +1 @@
1
+ <svg width="22" height="22" xmlns="http://www.w3.org/2000/svg"><title>编组 2</title><g fill="none" fill-rule="evenodd"><path fill="none" d="M0 0h22v22H0z"/><path d="M10.824 1.3c.626 0 1.133.507 1.133 1.133v2.322h6.891c.636 0 1.152.516 1.152 1.152v10.367c0 .636-.516 1.151-1.152 1.151h-4.046l1.274 1.298c.41.417.438 1.067.087 1.516l-.088.1-.02.02a1.124 1.124 0 0 1-1.59-.015l-2.597-2.647a1.152 1.152 0 0 1-.198-.27h-1.578a1.152 1.152 0 0 1-.198.27l-2.597 2.647a1.124 1.124 0 0 1-1.59.014l-.013-.012a1.154 1.154 0 0 1-.008-1.623l1.273-1.298H3.152A1.152 1.152 0 0 1 2 16.274V5.907c0-.636.516-1.152 1.152-1.152H9.69V2.433c0-.584.443-1.065 1.01-1.126Z" fill="#6572A3"/><path d="M13.682 11.795 9.72 14.144a.576.576 0 0 1-.87-.496V8.951a.576.576 0 0 1 .87-.495l3.962 2.349a.576.576 0 0 1 0 .99Z" fill="#FFF"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg width="177" height="120" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><title>编组 3</title><defs><filter x="-5.3%" y="-6.2%" width="110.5%" height="125%" filterUnits="objectBoundingBox" id="a"><feOffset dy="1" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur stdDeviation=".5" in="shadowOffsetOuter1" result="shadowBlurOuter1"/><feColorMatrix values="0 0 0 0 0.0352941176 0 0 0 0 0.0980392157 0 0 0 0 0.250980392 0 0 0 0.122104458 0" in="shadowBlurOuter1"/></filter><rect id="b" x="68" y="60" width="38" height="16" rx="1"/></defs><g fill="none" fill-rule="evenodd"><path d="M4 0h173v120H4a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4Z" fill="#F5F6F8"/><rect fill="#DADDE3" opacity=".278" x="37" y="26" width="47.863" height="68" rx="2"/><rect fill="#FFF" x="42" y="32" width="38" height="16" rx="1"/><rect fill="#F1F2F4" x="45" y="36" width="8" height="8" rx="1"/><rect fill="#F1F2F4" x="55" y="37" width="16" height="2" rx="1"/><rect fill="#F1F2F4" x="55" y="41" width="22" height="2" rx="1"/><rect fill="#FFF" x="42" y="52" width="38" height="16" rx="1"/><path d="M65 64h19a1 1 0 0 1 1 1v15H65a1 1 0 0 1-1-1V65a1 1 0 0 1 1-1Z" fill="#DADDE3" opacity=".4"/><rect fill="#F1F2F4" x="45" y="56" width="8" height="8" rx="1"/><rect fill="#F1F2F4" x="55" y="57" width="16" height="2" rx="1"/><rect fill="#F1F2F4" x="55" y="61" width="22" height="2" rx="1"/><rect fill="#DADDE3" opacity=".278" x="90" y="26" width="47.863" height="68" rx="2"/><rect fill="#FFF" x="95" y="32" width="38" height="16" rx="1"/><rect fill="#F1F2F4" x="98" y="36" width="8" height="8" rx="1"/><rect fill="#F1F2F4" x="108" y="37" width="16" height="2" rx="1"/><rect fill="#F1F2F4" x="108" y="41" width="22" height="2" rx="1"/><rect fill="#FFF" x="95" y="52" width="38" height="16" rx="1"/><rect fill="#F5F6F8" x="95" y="72" width="38" height="16" rx="1"/><path d="M91 64h10a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H90V65a1 1 0 0 1 1-1Z" fill="#DADDE3" opacity=".404"/><rect fill="#F1F2F4" x="98" y="56" width="8" height="8" rx="1"/><use fill="#000" filter="url(#a)" xlink:href="#b"/><use fill="#FFF" xlink:href="#b"/><rect fill="#F1F2F4" x="71" y="64" width="8" height="8" rx="1"/><path d="M75.234 69.076c0-.196.032-.359.114-.522.081-.146.18-.293.326-.391.375-.326.62-.554.685-.62.195-.26.293-.586.293-.978 0-.489-.163-.864-.473-1.141-.326-.294-.733-.424-1.255-.424-.587 0-1.06.163-1.402.505-.359.327-.522.8-.522 1.386.016.245.13.392.424.408.31.016.489-.261.489-.408 0-.326.065-.603.196-.782.146-.229.391-.326.75-.326.277 0 .489.065.636.228.146.147.228.359.228.62a.888.888 0 0 1-.212.57l-.098.114c-.522.457-.831.8-.93 1.011-.113.212-.162.473-.162.783 0 .293.163.424.456.424.294-.017.44-.163.457-.457ZM74.712 71a.596.596 0 0 0 .408-.147c.114-.098.163-.244.163-.407a.54.54 0 0 0-.163-.392.596.596 0 0 0-.408-.146.596.596 0 0 0-.408.146.483.483 0 0 0-.163.392c0 .163.05.293.163.391a.61.61 0 0 0 .408.163Z" fill="#DADDE3" fill-rule="nonzero" opacity=".9"/><rect fill="#F1F2F4" x="81" y="65" width="16" height="2" rx="1"/><rect fill="#F1F2F4" x="81" y="69" width="22" height="2" rx="1"/><rect fill="#F1F2F4" x="108" y="57" width="16" height="2" rx="1"/><rect fill="#F1F2F4" x="108" y="61" width="22" height="2" rx="1"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" x="0" y="0" viewBox="0 0 128 128" style="enable-background:new 0 0 128 128" xml:space="preserve"><style>.st0{fill:#ff4d0d}</style><path class="st0" d="M97.6 30.4c1.8 1.8 1.8 4.8 0 6.6L37 97.6c-1.8 1.8-4.8 1.8-6.6 0-1.8-1.8-1.8-4.8 0-6.6L91 30.4c1.8-1.9 4.8-1.9 6.6 0z"/><path class="st0" d="M30.4 30.4c1.8-1.8 4.8-1.8 6.6 0L97.6 91c1.8 1.8 1.8 4.8 0 6.6-1.8 1.8-4.8 1.8-6.6 0L30.4 37c-1.9-1.8-1.9-4.8 0-6.6z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="enable-background:new 0 0 24 24" xml:space="preserve"><path d="M21 24H3c-1.7 0-3-1.3-3-3V3c0-1.7 1.3-3 3-3h18c1.7 0 3 1.3 3 3v18c0 1.7-1.3 3-3 3z" style="fill:#8080f7"/><path d="M17.2 10.2v-.5l1.3-3.1c.2-.5-.1-.8-.6-.8h-9c0-.5-.3-.8-.8-.8s-.6.3-.6.6v12.5H7c-.5 0-.8.3-.8.8 0 .4.3.8.8.8h2.1c.5 0 .8-.3.8-.8s-.3-.8-.8-.8h-.2v-3.9h9.3c.4 0 .8-.5.6-.8l-1.6-3.2zm-1.3 2.3c-.3.1-.8 0-.9-.3l-.8-1.9c-.1-.3-.1-.4 0-.6L15 8c.2-.3.6-.5.9-.3.3.1.4.6.3.9l-.6 1.4.6 1.6c.1.3 0 .7-.3.9z" style="fill:#fff"/></svg>
@@ -0,0 +1 @@
1
+ <svg height="32" width="32" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><circle cx="16" cy="16" fill="#c71d23" r="16"/><path d="M24.099 14.223h-9.087a.79.79 0 0 0-.79.79v1.975c0 .436.353.79.79.79h5.531a.79.79 0 0 1 .79.79v.395a2.37 2.37 0 0 1-2.37 2.37h-7.507a.79.79 0 0 1-.79-.79v-7.506a2.37 2.37 0 0 1 2.37-2.37h11.06c.437 0 .79-.354.791-.79l.001-1.975a.79.79 0 0 0-.79-.79H13.038a5.926 5.926 0 0 0-5.926 5.925V24.1c0 .436.354.79.79.79h11.655a5.333 5.333 0 0 0 5.333-5.333v-4.543a.79.79 0 0 0-.79-.79z" fill="#fff"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg width="16" height="16" xmlns="http://www.w3.org/2000/svg"><title>IntelligenceGradient</title><defs><linearGradient x1="20.343%" y1="11.174%" x2="76.878%" y2="91.439%" id="a"><stop stop-color="#1CFFFF" offset="0%"/><stop stop-color="#1AB2FF" offset="50.287%"/><stop stop-color="#0D65FF" offset="100%"/></linearGradient></defs><path d="M8.018 1c.815 0 1.495.605 2.008 1.614a.6.6 0 1 1-1.07.544c-.33-.65-.676-.958-.938-.958-.34 0-.795.504-1.173 1.489a9.55 9.55 0 0 0-.462 1.733l.11-.063C9.82 3.437 13.159 2.905 14.08 4.5c.355.615.26 1.376-.18 2.188a.6.6 0 0 1-1.066-.55l.01-.021c.262-.482.305-.829.197-1.017-.17-.294-.834-.437-1.876-.27-1.184.188-2.643.742-4.072 1.568-.308.178-.606.363-.891.554a16.045 16.045 0 0 0 0 2.096c.285.191.583.376.89.554 1.43.826 2.89 1.38 4.073 1.569l.098.014c.985.142 1.613 0 1.778-.285.14-.245.02-.748-.445-1.416-.532-.764-1.427-1.609-2.542-2.382a.6.6 0 1 1 .684-.986c2.646 1.835 4.147 3.99 3.342 5.384-.921 1.595-4.259 1.063-7.587-.859a18.28 18.28 0 0 1-.11-.063c.114.644.27 1.23.462 1.733.378.985.834 1.489 1.173 1.489.274 0 .638-.337.978-1.04a.6.6 0 1 1 1.08.524C9.558 14.355 8.861 15 8.018 15c-1.56 0-2.664-2.262-2.967-5.287a14.314 14.314 0 0 1-1.097-.87c-.09.1-.176.199-.256.297l-.062.078c-.615.782-.805 1.398-.641 1.682.114.199.467.338 1.063.34a.6.6 0 1 1-.005 1.2c-.979-.004-1.728-.3-2.098-.94-.537-.93-.036-2.212 1.137-3.5-1.173-1.288-1.674-2.57-1.137-3.5.355-.615 1.061-.912 1.983-.938a.6.6 0 1 1 .033 1.2c-.547.015-.868.15-.976.338-.17.294.038.94.703 1.76.08.098.165.198.256.297.335-.295.702-.586 1.097-.87C5.354 3.262 6.459 1 8.018 1Zm-3.05 7v-.127l-.014.013L4.82 8l.148.127V8Z" fill="url(#a)" fill-rule="nonzero"/></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M896 1024H128c-72.512 0-128-55.488-128-128V128C0 55.488 55.488 0 128 0h768c72.512 0 128 55.488 128 128v768c0 72.512-55.488 128-128 128z" fill="#FFAA0C" /><path d="M584.512 520.512H716.8c29.888 0 51.2 25.6 55.488 55.488v106.688c0 12.8-8.576 21.312-21.376 21.312H277.312c-21.312 0-25.6-4.288-25.6-25.6V576c0-25.6 25.6-51.2 51.2-55.488H435.2c0-12.8-4.288-25.6-12.8-38.4l-25.6-38.4a146.432 146.432 0 0 1 25.6-196.224c59.712-46.976 149.312-38.4 200.512 25.6 42.688 55.424 38.4 128-8.512 179.2-17.088 17.024-25.6 38.4-29.888 59.712v8.512z m183.488 230.4c-4.288-4.224-12.8-12.8-29.888-12.8H273.088c-17.088 4.288-25.6 17.088-25.6 34.176 0 17.024 12.8 29.824 29.824 29.824H746.688c17.024 0 25.6-12.8 29.824-29.824a32.64 32.64 0 0 0-8.512-21.376z" fill="#FFFFFF" /></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M896 1024H128c-72.512 0-128-55.488-128-128V128C0 55.488 55.488 0 128 0h768c72.512 0 128 55.488 128 128v768c0 72.512-55.488 128-128 128z" fill="#FF4D0D" /><path d="M810.688 550.4c0 17.088-21.376 38.4-38.4 38.4h-64v21.312c0 25.6-8.576 51.2-21.376 68.288l68.288 72.512c12.8 12.8 12.8 38.4 0 51.2-12.8 12.8-38.4 12.8-51.2 0l-64-64c-34.112 25.6-64 38.4-110.912 38.4V486.4c0-4.288-8.576-12.8-12.8-12.8h-25.6c-8.576 0-12.8 4.288-12.8 12.8v290.112c-38.4 0-76.8-12.8-110.976-38.4l-64 64c-12.8 12.8-38.4 12.8-51.2 0-12.8-12.8-12.8-38.4 0-51.2L320 682.688c-12.8-17.088-17.088-46.976-17.088-68.288v-21.312h-51.2a38.272 38.272 0 0 1-38.4-38.4C204.8 533.312 221.888 512 243.2 512h64V443.712L256 384c-12.8-12.8-12.8-38.4 0-51.2 12.8-12.8 38.4-12.8 59.712 0l64 64h277.376l64-64c12.8-12.8 38.4-12.8 51.2 0 12.8 12.8 12.8 38.4 0 51.2l-55.488 59.712V512h64c21.312 0 38.4 21.312 29.888 38.4zM512 209.088c-68.288 0-132.288 55.424-132.288 132.224h268.8C648.512 268.8 588.8 209.088 512 209.088z" fill="#FFFFFF" /></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M896 1024H128c-72.512 0-128-55.488-128-128V128C0 55.488 55.488 0 128 0h768c72.512 0 128 55.488 128 128v768c0 72.512-55.488 128-128 128z" fill="#FFD20C" /><path d="M469.312 793.6c4.288 8.512 17.088 0 17.088-4.288V294.4c0-25.6-12.8-76.8-89.6-76.8H251.712c-21.312 0-51.2 0-51.2 51.2v426.688c0 34.112 8.576 64 51.2 64H332.8c12.8 0 89.6-4.288 136.512 34.112zM546.112 793.6c-8.512 4.288-21.312 0-21.312-4.288V294.4c0-25.6 12.8-76.8 89.6-76.8H768c21.312 0 51.2 0 51.2 51.2v426.688c0 34.112-8.512 64-51.2 64h-85.312c-29.888 0-85.376 0-136.576 34.112z" fill="#FFFFFF" /></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M85.312 0h853.376C985.6 0 1024 38.4 1024 85.312v853.376C1024 985.6 985.6 1024 938.688 1024H85.312C38.4 1024 0 985.6 0 938.688V85.312C0 38.4 38.4 0 85.312 0z" fill="#FFD20C" /><path d="M669.888 268.8v-25.6c0-46.912-38.4-81.088-85.376-68.288L302.912 268.8C268.8 277.312 256 302.912 256 337.088v409.6c0 38.4 34.112 72.512 72.512 68.224H665.6c51.2 0 98.112-46.912 98.112-106.624v-332.8C768 320 729.6 277.312 669.888 268.8zM435.2 635.712l110.912-38.4c12.8-8.512 34.176 0 38.4 21.376 8.576 21.312 0 34.112-21.312 38.4l-110.912 38.4h-12.8c-12.8 0-25.6-8.576-34.176-21.376 4.288-12.8 17.088-34.112 29.888-38.4z m277.312 72.576a47.36 47.36 0 0 1-46.912 46.912H507.712l110.976-34.112c25.6-8.576 46.912-34.176 46.912-68.288V320c25.6 0 46.912 21.312 46.912 46.912v341.376z" fill="#FFFFFF" /></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M896 1024H128c-72.512 0-128-55.488-128-128V128C0 55.488 55.488 0 128 0h768c72.512 0 128 55.488 128 128v768c0 72.512-55.488 128-128 128z" fill="#846BFF" /><path d="M618.688 857.6H396.8a33.664 33.664 0 0 1-34.112-34.112c0-17.088 12.8-34.176 34.112-34.176h217.6c17.088 0 34.112 12.8 34.112 34.176 0 21.312-17.024 34.112-29.824 34.112zM512 174.912c-149.312-8.512-268.8 115.2-268.8 256 0 89.6 51.2 174.976 119.488 217.6V704c0 25.6 21.312 42.688 46.912 42.688h187.712c25.6 0 42.688-21.376 42.688-42.688v-64c72.512-42.688 115.2-128 115.2-217.6 4.288-128-102.4-243.2-243.2-247.488zM435.2 345.6s-38.4 38.4-46.912 93.888c0 17.024-12.8 34.112-34.176 34.112C332.8 473.6 320 452.288 320 439.488c12.8-81.088 72.512-140.8 72.512-140.8 12.8-12.8 34.176-12.8 46.976 0 12.8 17.024 8.512 34.112-4.288 46.912z" fill="#FFFFFF" /></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M896 1024H128c-72.512 0-128-55.488-128-128V128C0 55.488 55.488 0 128 0h768c72.512 0 128 55.488 128 128v768c0 72.512-55.488 128-128 128z" fill="#5EA1FF" /><path d="M268.8 358.4c-38.4 0-64-25.6-64-64s25.6-64 64-64 64 25.6 64 64c0 29.888-25.6 64-64 64zM755.2 358.4h-256c-38.4 0-64-25.6-64-64s25.6-64 64-64h256c38.4 0 64 25.6 64 64 0 29.888-29.888 64-64 64zM268.8 567.488c-38.4 0-64-25.6-64-64s25.6-64 64-64 64 25.6 64 64c0 42.624-25.6 64-64 64zM755.2 567.488h-256c-38.4 0-64-25.6-64-64s25.6-64 64-64h256c38.4 0 64 25.6 64 64 0 42.624-29.888 64-64 64zM268.8 793.6c-38.4 0-64-25.6-64-64s25.6-64 64-64 64 25.6 64 64-25.6 64-64 64zM755.2 793.6h-256c-38.4 0-64-25.6-64-64s25.6-64 64-64h256c38.4 0 64 25.6 64 64s-29.888 64-64 64z" fill="#FFFFFF" /></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M896 1024H128c-72.512 0-128-55.488-128-128V128C0 55.488 55.488 0 128 0h768c72.512 0 128 55.488 128 128v768c0 72.512-55.488 128-128 128z" fill="#846BFF" /><path d="M733.888 435.2v-21.312l55.424-132.288c8.576-21.312-4.224-34.112-25.6-34.112h-384c0-21.376-12.8-34.176-34.112-34.176s-25.6 12.8-25.6 25.6v533.376h-21.312c-21.376 0-34.176 12.8-34.176 34.112 0 17.088 12.8 34.112 34.176 34.112h89.6c21.312 0 34.112-12.8 34.112-34.112s-12.8-34.112-34.112-34.112h-8.576v-166.4h396.8c17.088 0 34.176-21.376 25.6-34.176L733.888 435.2zM678.4 533.312c-12.8 4.288-34.112 0-38.4-12.8l-34.112-81.024c-4.288-12.8-4.288-17.088 0-25.6L640 341.312c8.512-12.8 25.6-21.312 38.4-12.8 12.8 4.288 17.088 25.6 12.8 38.4l-25.6 59.776 25.6 68.224c4.288 12.8 0 29.888-12.8 38.4z" fill="#FFFFFF" /></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M896 1024H128c-72.512 0-128-55.488-128-128V128C0 55.488 55.488 0 128 0h768c72.512 0 128 55.488 128 128v768c0 72.512-55.488 128-128 128z" fill="#FFAA0C" /><path d="M243.2 439.488l256 119.424c8.512 4.288 12.8 4.288 21.312 4.288 8.576 0 17.088 0 21.376-4.288L789.312 435.2c17.088-8.512 29.888-25.6 29.888-42.688 0-17.024-8.512-38.4-25.6-46.912L546.112 221.888c-12.8-8.576-29.824-8.576-46.912 0l-256 128c-17.088 4.224-25.6 25.6-25.6 42.624 0 21.376 8.512 38.4 25.6 46.976zM789.312 601.6l-268.8 140.8L243.2 605.888c-17.088-8.576-34.112 0-42.688 12.8-8.512 17.024 0 34.112 12.8 42.624l277.376 136.576c8.512 4.224 17.024 4.224 25.6 4.224 8.512 0 21.312-4.224 29.824-8.512l268.8-140.8c17.088-8.512 21.376-25.6 12.8-42.688-4.224-12.8-21.312-17.024-38.4-8.512z" fill="#FFFFFF" /><path d="M217.6 550.4l277.312 136.512c8.576 4.288 17.088 4.288 25.6 4.288 8.576 0 17.088-4.288 29.888-8.512l268.8-140.8c17.088-8.576 21.312-25.6 12.8-42.688s-25.6-21.312-42.688-12.8l-268.8 140.8L243.2 490.688c-17.088-8.576-34.112 0-42.688 17.024-4.224 17.088 0 34.176 17.088 42.688z" fill="#FFFFFF" /></svg>