@abyss-project/tools 1.1.1 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/dist/api/beam.api.d.ts +2 -1
  2. package/dist/api/beam.api.js +10 -4
  3. package/dist/api/beam.api.js.map +1 -1
  4. package/dist/api/extraction-plan-preset.api.js +1 -1
  5. package/dist/api/extraction-plan-preset.api.js.map +1 -1
  6. package/dist/api/extraction-settings.api.js +1 -1
  7. package/dist/api/extraction-settings.api.js.map +1 -1
  8. package/dist/api/extraction.api.d.ts +5 -5
  9. package/dist/api/extraction.api.js +22 -5
  10. package/dist/api/extraction.api.js.map +1 -1
  11. package/dist/index.d.ts +4 -1
  12. package/dist/index.js +4 -1
  13. package/dist/index.js.map +1 -1
  14. package/dist/types/enum/beam.enum.d.ts +4 -0
  15. package/dist/types/enum/beam.enum.js +6 -1
  16. package/dist/types/enum/beam.enum.js.map +1 -1
  17. package/dist/types/interface/api/requests/beam.request.d.ts +16 -0
  18. package/dist/types/interface/api/requests/extraction.request.d.ts +8 -0
  19. package/dist/types/interface/api/responses/beam.response.d.ts +23 -1
  20. package/dist/types/interface/api/responses/extraction.response.d.ts +6 -0
  21. package/dist/types/interface/models/beam.dto.d.ts +13 -1
  22. package/dist/types/interface/models/extraction.dto.d.ts +8 -1
  23. package/dist/types/interface/models/extraction.dto.js.map +1 -1
  24. package/dist/utils/shape.utils.js +18 -18
  25. package/package.json +14 -9
  26. package/src/api/abyss.admin.api.ts +54 -54
  27. package/src/api/atlas-document.api.ts +68 -68
  28. package/src/api/atlas-group.api.ts +69 -69
  29. package/src/api/atlas-page.api.ts +124 -124
  30. package/src/api/atlas.api.ts +103 -103
  31. package/src/api/atlas.public.api.ts +42 -42
  32. package/src/api/beam.api.ts +29 -4
  33. package/src/api/board-card-checklist.api.ts +99 -99
  34. package/src/api/board-card-comment.api.ts +57 -57
  35. package/src/api/board-card-document.api.ts +57 -57
  36. package/src/api/board-card.api.ts +137 -137
  37. package/src/api/board-column.api.ts +54 -54
  38. package/src/api/board-label.api.ts +87 -87
  39. package/src/api/board.api.ts +122 -122
  40. package/src/api/draw.api.ts +97 -97
  41. package/src/api/draw.public.api.ts +48 -48
  42. package/src/api/extraction-plan-preset.api.ts +1 -1
  43. package/src/api/extraction-settings.api.ts +1 -1
  44. package/src/api/extraction.api.ts +58 -18
  45. package/src/api/memo.api.ts +97 -97
  46. package/src/api/metrics.api.ts +27 -27
  47. package/src/api/monitor.api.ts +6 -6
  48. package/src/api/organization.api.ts +14 -14
  49. package/src/api/retrospective-card.api.ts +74 -74
  50. package/src/api/retrospective-member.api.ts +54 -54
  51. package/src/api/retrospective-section.api.ts +74 -74
  52. package/src/api/retrospective.api.ts +124 -124
  53. package/src/api/retrospective.public.api.ts +147 -147
  54. package/src/api/short-link.admin.api.ts +39 -39
  55. package/src/api/short-link.api.ts +125 -125
  56. package/src/api/short-link.public.api.ts +60 -60
  57. package/src/api/tag.api.ts +72 -72
  58. package/src/api/tests/beam.api.spec.ts +64 -0
  59. package/src/constants/atlas.constants.ts +2 -2
  60. package/src/constants/board.constants.ts +7 -7
  61. package/src/constants/memo.constants.ts +3 -3
  62. package/src/constants/short-link.constants.ts +11 -11
  63. package/src/constants/tag.constants.ts +3 -3
  64. package/src/index.ts +10 -1
  65. package/src/server-sent-events/index.ts +13 -13
  66. package/src/server-sent-events/protocols/atlas/atlas.sse-protocol.ts +90 -90
  67. package/src/server-sent-events/protocols/atlas/index.ts +1 -1
  68. package/src/server-sent-events/protocols/board/board.sse-protocol.ts +115 -115
  69. package/src/server-sent-events/protocols/board/index.ts +1 -1
  70. package/src/server-sent-events/protocols/board-card/board-card.sse-protocol.ts +26 -26
  71. package/src/server-sent-events/protocols/board-card/index.ts +1 -1
  72. package/src/server-sent-events/protocols/index.ts +26 -26
  73. package/src/server-sent-events/protocols/retrospective/index.ts +1 -1
  74. package/src/server-sent-events/protocols/retrospective/retrospective.sse-protocol.ts +92 -92
  75. package/src/server-sent-events/server-sent-events.manager.ts +73 -73
  76. package/src/types/draw.type.ts +173 -173
  77. package/src/types/enum/api-error.enum.ts +23 -23
  78. package/src/types/enum/beam.enum.ts +8 -0
  79. package/src/types/enum/board-activity.enum.ts +189 -189
  80. package/src/types/enum/board-column-type.enum.ts +6 -6
  81. package/src/types/enum/pdf-operation.enum.ts +98 -98
  82. package/src/types/enum/rcb-bank.enum.ts +137 -137
  83. package/src/types/index.ts +5 -5
  84. package/src/types/interface/api/index.ts +5 -5
  85. package/src/types/interface/api/requests/abyss.admin.request.ts +20 -20
  86. package/src/types/interface/api/requests/atlas-document.request.ts +32 -32
  87. package/src/types/interface/api/requests/atlas-group.request.ts +45 -45
  88. package/src/types/interface/api/requests/atlas-page.request.ts +84 -84
  89. package/src/types/interface/api/requests/atlas.public.request.ts +21 -21
  90. package/src/types/interface/api/requests/atlas.request.ts +52 -52
  91. package/src/types/interface/api/requests/beam.request.ts +27 -2
  92. package/src/types/interface/api/requests/board-card-checklist.request.ts +61 -61
  93. package/src/types/interface/api/requests/board-card-comment.request.ts +28 -28
  94. package/src/types/interface/api/requests/board-card-document.request.ts +29 -29
  95. package/src/types/interface/api/requests/board-card.request.ts +86 -86
  96. package/src/types/interface/api/requests/board-column.request.ts +30 -30
  97. package/src/types/interface/api/requests/board-label.request.ts +42 -42
  98. package/src/types/interface/api/requests/board.request.ts +61 -61
  99. package/src/types/interface/api/requests/draw.public.request.ts +20 -20
  100. package/src/types/interface/api/requests/draw.request.ts +49 -49
  101. package/src/types/interface/api/requests/extraction.request.ts +22 -0
  102. package/src/types/interface/api/requests/memo.request.ts +49 -49
  103. package/src/types/interface/api/requests/metrics.request.ts +7 -7
  104. package/src/types/interface/api/requests/retrospective-card.request.ts +38 -38
  105. package/src/types/interface/api/requests/retrospective-member.request.ts +20 -20
  106. package/src/types/interface/api/requests/retrospective-section.request.ts +43 -43
  107. package/src/types/interface/api/requests/retrospective.public.request.ts +84 -84
  108. package/src/types/interface/api/requests/retrospective.request.ts +59 -59
  109. package/src/types/interface/api/requests/short-link.admin.request.ts +35 -35
  110. package/src/types/interface/api/requests/short-link.public.request.ts +40 -40
  111. package/src/types/interface/api/requests/short-link.request.ts +71 -71
  112. package/src/types/interface/api/requests/tag.request.ts +54 -54
  113. package/src/types/interface/api/requests/transfer.request.ts +3 -3
  114. package/src/types/interface/api/responses/abyss.admin.response.ts +28 -28
  115. package/src/types/interface/api/responses/atlas-document.response.ts +24 -24
  116. package/src/types/interface/api/responses/atlas-group.response.ts +23 -23
  117. package/src/types/interface/api/responses/atlas-page.response.ts +53 -53
  118. package/src/types/interface/api/responses/atlas.public.response.ts +21 -21
  119. package/src/types/interface/api/responses/atlas.response.ts +32 -32
  120. package/src/types/interface/api/responses/beam.response.ts +30 -1
  121. package/src/types/interface/api/responses/board-card-checklist.response.ts +31 -31
  122. package/src/types/interface/api/responses/board-card-comment.response.ts +20 -20
  123. package/src/types/interface/api/responses/board-card-document.response.ts +21 -21
  124. package/src/types/interface/api/responses/board-card.response.ts +55 -55
  125. package/src/types/interface/api/responses/board-column.response.ts +20 -20
  126. package/src/types/interface/api/responses/board-label.response.ts +31 -31
  127. package/src/types/interface/api/responses/board.response.ts +81 -81
  128. package/src/types/interface/api/responses/count.response.ts +9 -9
  129. package/src/types/interface/api/responses/draw.public.response.ts +22 -22
  130. package/src/types/interface/api/responses/draw.response.ts +32 -32
  131. package/src/types/interface/api/responses/enriched-paginate.response.ts +11 -11
  132. package/src/types/interface/api/responses/extraction.response.ts +19 -2
  133. package/src/types/interface/api/responses/memo.response.ts +32 -32
  134. package/src/types/interface/api/responses/metrics.response.ts +22 -22
  135. package/src/types/interface/api/responses/monitor.response.ts +8 -8
  136. package/src/types/interface/api/responses/recent.response.ts +18 -18
  137. package/src/types/interface/api/responses/retrospective-card.response.ts +23 -23
  138. package/src/types/interface/api/responses/retrospective-member.response.ts +22 -22
  139. package/src/types/interface/api/responses/retrospective-section.response.ts +23 -23
  140. package/src/types/interface/api/responses/retrospective.public.response.ts +57 -57
  141. package/src/types/interface/api/responses/retrospective.response.ts +32 -32
  142. package/src/types/interface/api/responses/short-link.admin.response.ts +21 -21
  143. package/src/types/interface/api/responses/short-link.public.response.ts +26 -26
  144. package/src/types/interface/api/responses/short-link.response.ts +38 -38
  145. package/src/types/interface/api/responses/tag.response.ts +38 -38
  146. package/src/types/interface/api/responses/transfer.response.ts +14 -14
  147. package/src/types/interface/api/type-message/api-error.ts +7 -7
  148. package/src/types/interface/api/type-message/base-paginate.ts +11 -11
  149. package/src/types/interface/api/type-message/response.ts +6 -6
  150. package/src/types/interface/index.ts +2 -2
  151. package/src/types/interface/models/atlas-document.dto.ts +22 -22
  152. package/src/types/interface/models/atlas-group.dto.ts +21 -21
  153. package/src/types/interface/models/atlas-page-content.dto.ts +17 -17
  154. package/src/types/interface/models/atlas-page.dto.ts +26 -26
  155. package/src/types/interface/models/atlas.dto.ts +34 -34
  156. package/src/types/interface/models/beam.dto.ts +20 -1
  157. package/src/types/interface/models/board-activity.dto.ts +20 -20
  158. package/src/types/interface/models/board-card-checklist-row.dto.ts +14 -14
  159. package/src/types/interface/models/board-card-checklist.dto.ts +16 -16
  160. package/src/types/interface/models/board-card-comment.dto.ts +15 -15
  161. package/src/types/interface/models/board-card-document.dto.ts +22 -22
  162. package/src/types/interface/models/board-card-label.dto.ts +14 -14
  163. package/src/types/interface/models/board-card-member.dto.ts +14 -14
  164. package/src/types/interface/models/board-card.dto.ts +37 -37
  165. package/src/types/interface/models/board-column.dto.ts +17 -17
  166. package/src/types/interface/models/board-label.dto.ts +13 -13
  167. package/src/types/interface/models/board.dto.ts +33 -33
  168. package/src/types/interface/models/content-share.dto.ts +16 -16
  169. package/src/types/interface/models/draw.dto.ts +30 -30
  170. package/src/types/interface/models/extraction.dto.ts +24 -6
  171. package/src/types/interface/models/memo.dto.ts +23 -23
  172. package/src/types/interface/models/project.dto.ts +25 -25
  173. package/src/types/interface/models/retrospective-card.dto.ts +17 -17
  174. package/src/types/interface/models/retrospective-member.dto.ts +15 -15
  175. package/src/types/interface/models/retrospective-section.dto.ts +16 -16
  176. package/src/types/interface/models/retrospective.dto.ts +32 -32
  177. package/src/types/interface/models/short-link-click.dto.ts +33 -33
  178. package/src/types/interface/models/short-link.dto.ts +49 -49
  179. package/src/types/interface/models/tag.dto.ts +26 -26
  180. package/src/types/interface/models/team.dto.ts +12 -12
  181. package/src/types/interface/models/user.dto.ts +26 -26
  182. package/src/utils/board.utils.ts +57 -57
  183. package/src/utils/enum.utils.ts +5 -5
  184. package/src/utils/error.utils.ts +30 -30
  185. package/src/utils/icons.utils.ts +96 -96
  186. package/src/utils/shape.utils.ts +292 -292
@@ -1,57 +1,57 @@
1
- import { differenceInCalendarDays, isBefore } from 'date-fns';
2
- import { BoardColumnType, IBoardCard } from '../types';
3
-
4
- const BOARD_COLUMN_TYPE_STARTED = [BoardColumnType.DOING, BoardColumnType.DONE];
5
- const BOARD_COLUMN_TYPE_DONE = [BoardColumnType.DONE];
6
-
7
- export const isCardStartDateLate = (
8
- boardCard: IBoardCard,
9
- boardColumnType: BoardColumnType,
10
- ): boolean => {
11
- if (!boardCard.startDate) {
12
- return false;
13
- }
14
- return (
15
- isBefore(new Date(boardCard.startDate), new Date()) &&
16
- !BOARD_COLUMN_TYPE_STARTED.includes(boardColumnType)
17
- );
18
- };
19
-
20
- export const isAlmostCardStartDateLate = (
21
- boardCard: IBoardCard,
22
- boardColumnType: BoardColumnType,
23
- ): boolean => {
24
- if (!boardCard.startDate) {
25
- return false;
26
- }
27
- return (
28
- !isCardStartDateLate(boardCard, boardColumnType) &&
29
- differenceInCalendarDays(new Date(boardCard.startDate), new Date()) <= 2
30
- );
31
- };
32
-
33
- export const isCardEndDateLate = (
34
- boardCard: IBoardCard,
35
- boardColumnType: BoardColumnType,
36
- ): boolean => {
37
- if (!boardCard.endDate) {
38
- return false;
39
- }
40
- return (
41
- isBefore(new Date(boardCard.endDate), new Date()) &&
42
- !BOARD_COLUMN_TYPE_DONE.includes(boardColumnType)
43
- );
44
- };
45
-
46
- export const isAlmostCardEndDateLate = (
47
- boardCard: IBoardCard,
48
- boardColumnType: BoardColumnType,
49
- ): boolean => {
50
- if (!boardCard.endDate) {
51
- return false;
52
- }
53
- return (
54
- !isCardEndDateLate(boardCard, boardColumnType) &&
55
- Math.abs(differenceInCalendarDays(new Date(boardCard.endDate), new Date())) <= 2
56
- );
57
- };
1
+ import { differenceInCalendarDays, isBefore } from 'date-fns';
2
+ import { BoardColumnType, IBoardCard } from '../types';
3
+
4
+ const BOARD_COLUMN_TYPE_STARTED = [BoardColumnType.DOING, BoardColumnType.DONE];
5
+ const BOARD_COLUMN_TYPE_DONE = [BoardColumnType.DONE];
6
+
7
+ export const isCardStartDateLate = (
8
+ boardCard: IBoardCard,
9
+ boardColumnType: BoardColumnType,
10
+ ): boolean => {
11
+ if (!boardCard.startDate) {
12
+ return false;
13
+ }
14
+ return (
15
+ isBefore(new Date(boardCard.startDate), new Date()) &&
16
+ !BOARD_COLUMN_TYPE_STARTED.includes(boardColumnType)
17
+ );
18
+ };
19
+
20
+ export const isAlmostCardStartDateLate = (
21
+ boardCard: IBoardCard,
22
+ boardColumnType: BoardColumnType,
23
+ ): boolean => {
24
+ if (!boardCard.startDate) {
25
+ return false;
26
+ }
27
+ return (
28
+ !isCardStartDateLate(boardCard, boardColumnType) &&
29
+ differenceInCalendarDays(new Date(boardCard.startDate), new Date()) <= 2
30
+ );
31
+ };
32
+
33
+ export const isCardEndDateLate = (
34
+ boardCard: IBoardCard,
35
+ boardColumnType: BoardColumnType,
36
+ ): boolean => {
37
+ if (!boardCard.endDate) {
38
+ return false;
39
+ }
40
+ return (
41
+ isBefore(new Date(boardCard.endDate), new Date()) &&
42
+ !BOARD_COLUMN_TYPE_DONE.includes(boardColumnType)
43
+ );
44
+ };
45
+
46
+ export const isAlmostCardEndDateLate = (
47
+ boardCard: IBoardCard,
48
+ boardColumnType: BoardColumnType,
49
+ ): boolean => {
50
+ if (!boardCard.endDate) {
51
+ return false;
52
+ }
53
+ return (
54
+ !isCardEndDateLate(boardCard, boardColumnType) &&
55
+ Math.abs(differenceInCalendarDays(new Date(boardCard.endDate), new Date())) <= 2
56
+ );
57
+ };
@@ -1,5 +1,5 @@
1
- export const enumToArray = (enums: Record<string, string>): string[] => {
2
- return Object.keys(enums).map((type) => {
3
- return enums[type];
4
- });
5
- };
1
+ export const enumToArray = (enums: Record<string, string>): string[] => {
2
+ return Object.keys(enums).map((type) => {
3
+ return enums[type];
4
+ });
5
+ };
@@ -1,30 +1,30 @@
1
- import { Code, ErrorType } from '../types';
2
-
3
- type ErrorParams = { code: Code; type: ErrorType; message?: string };
4
-
5
- export class ServiceException extends Error {
6
- private readonly code: Code;
7
-
8
- private readonly type: ErrorType;
9
-
10
- getCode(): Code {
11
- return this.code;
12
- }
13
-
14
- getType(): ErrorType {
15
- return this.type;
16
- }
17
-
18
- constructor(params: ErrorParams) {
19
- super(params.message);
20
- this.code = params.code;
21
- this.type = params.type;
22
- }
23
- }
24
-
25
- export const handleError = (error: Error | ErrorParams, _params?: ErrorParams): Error => {
26
- if (error instanceof Error) {
27
- return error;
28
- }
29
- return new ServiceException(error);
30
- };
1
+ import { Code, ErrorType } from '../types';
2
+
3
+ type ErrorParams = { code: Code; type: ErrorType; message?: string };
4
+
5
+ export class ServiceException extends Error {
6
+ private readonly code: Code;
7
+
8
+ private readonly type: ErrorType;
9
+
10
+ getCode(): Code {
11
+ return this.code;
12
+ }
13
+
14
+ getType(): ErrorType {
15
+ return this.type;
16
+ }
17
+
18
+ constructor(params: ErrorParams) {
19
+ super(params.message);
20
+ this.code = params.code;
21
+ this.type = params.type;
22
+ }
23
+ }
24
+
25
+ export const handleError = (error: Error | ErrorParams, _params?: ErrorParams): Error => {
26
+ if (error instanceof Error) {
27
+ return error;
28
+ }
29
+ return new ServiceException(error);
30
+ };
@@ -1,96 +1,96 @@
1
- export const ICON_LIBRARY = {
2
- database: '🗄️',
3
- server: '🖥️',
4
- cloud: '☁️',
5
- network: '🌐',
6
- router: '📡',
7
- security: '🔒',
8
- warning: '⚠️',
9
- error: '❌',
10
- success: '✅',
11
- info: 'ℹ️',
12
-
13
- diamond: '💎',
14
- gear: '⚙️',
15
- tool: '🔧',
16
- wrench: '🔨',
17
-
18
- arrowUp: '⬆️',
19
- arrowDown: '⬇️',
20
- arrowLeft: '⬅️',
21
- arrowRight: '➡️',
22
- arrowUpRight: '↗️',
23
- arrowDownRight: '↘️',
24
- arrowDownLeft: '↙️',
25
- arrowUpLeft: '↖️',
26
-
27
- start: '🚀',
28
- stop: '🛑',
29
- pause: '⏸️',
30
- play: '▶️',
31
- process: '⚡',
32
-
33
- email: '📧',
34
- phone: '📞',
35
- message: '💬',
36
- notification: '🔔',
37
-
38
- document: '📄',
39
- folder: '📁',
40
- file: '📋',
41
- pdf: '📕',
42
- image: '🖼️',
43
-
44
- user: '👤',
45
- users: '👥',
46
- team: '👪',
47
- admin: '👨‍💼',
48
-
49
- add: '➕',
50
- remove: '➖',
51
- edit: '✏️',
52
- search: '🔍',
53
- filter: '🔽',
54
- sort: '📊',
55
-
56
- online: '🟢',
57
- offline: '🔴',
58
- pending: '🟡',
59
- unknown: '⚪',
60
-
61
- circle: '⭕',
62
- square: '⬜',
63
- triangle: '🔺',
64
- star: '⭐',
65
- heart: '❤️',
66
-
67
- settings: '⚙️',
68
- power: '🔌',
69
- battery: '🔋',
70
- wifi: '📶',
71
- bluetooth: '📲',
72
- };
73
-
74
- export const ICON_CATEGORIES = {
75
- technical: ['database', 'server', 'cloud', 'network', 'router', 'security'],
76
- status: ['warning', 'error', 'success', 'info', 'online', 'offline', 'pending', 'unknown'],
77
- arrows: [
78
- 'arrowUp',
79
- 'arrowDown',
80
- 'arrowLeft',
81
- 'arrowRight',
82
- 'arrowUpRight',
83
- 'arrowDownRight',
84
- 'arrowDownLeft',
85
- 'arrowUpLeft',
86
- ],
87
- process: ['start', 'stop', 'pause', 'play', 'process', 'gear', 'tool', 'wrench'],
88
- communication: ['email', 'phone', 'message', 'notification'],
89
- files: ['document', 'folder', 'file', 'pdf', 'image'],
90
- users: ['user', 'users', 'team', 'admin'],
91
- actions: ['add', 'remove', 'edit', 'search', 'filter', 'sort'],
92
- shapes: ['circle', 'square', 'triangle', 'star', 'heart', 'diamond'],
93
- system: ['settings', 'power', 'battery', 'wifi', 'bluetooth'],
94
- };
95
-
96
- export type IconType = keyof typeof ICON_LIBRARY;
1
+ export const ICON_LIBRARY = {
2
+ database: '🗄️',
3
+ server: '🖥️',
4
+ cloud: '☁️',
5
+ network: '🌐',
6
+ router: '📡',
7
+ security: '🔒',
8
+ warning: '⚠️',
9
+ error: '❌',
10
+ success: '✅',
11
+ info: 'ℹ️',
12
+
13
+ diamond: '💎',
14
+ gear: '⚙️',
15
+ tool: '🔧',
16
+ wrench: '🔨',
17
+
18
+ arrowUp: '⬆️',
19
+ arrowDown: '⬇️',
20
+ arrowLeft: '⬅️',
21
+ arrowRight: '➡️',
22
+ arrowUpRight: '↗️',
23
+ arrowDownRight: '↘️',
24
+ arrowDownLeft: '↙️',
25
+ arrowUpLeft: '↖️',
26
+
27
+ start: '🚀',
28
+ stop: '🛑',
29
+ pause: '⏸️',
30
+ play: '▶️',
31
+ process: '⚡',
32
+
33
+ email: '📧',
34
+ phone: '📞',
35
+ message: '💬',
36
+ notification: '🔔',
37
+
38
+ document: '📄',
39
+ folder: '📁',
40
+ file: '📋',
41
+ pdf: '📕',
42
+ image: '🖼️',
43
+
44
+ user: '👤',
45
+ users: '👥',
46
+ team: '👪',
47
+ admin: '👨‍💼',
48
+
49
+ add: '➕',
50
+ remove: '➖',
51
+ edit: '✏️',
52
+ search: '🔍',
53
+ filter: '🔽',
54
+ sort: '📊',
55
+
56
+ online: '🟢',
57
+ offline: '🔴',
58
+ pending: '🟡',
59
+ unknown: '⚪',
60
+
61
+ circle: '⭕',
62
+ square: '⬜',
63
+ triangle: '🔺',
64
+ star: '⭐',
65
+ heart: '❤️',
66
+
67
+ settings: '⚙️',
68
+ power: '🔌',
69
+ battery: '🔋',
70
+ wifi: '📶',
71
+ bluetooth: '📲',
72
+ };
73
+
74
+ export const ICON_CATEGORIES = {
75
+ technical: ['database', 'server', 'cloud', 'network', 'router', 'security'],
76
+ status: ['warning', 'error', 'success', 'info', 'online', 'offline', 'pending', 'unknown'],
77
+ arrows: [
78
+ 'arrowUp',
79
+ 'arrowDown',
80
+ 'arrowLeft',
81
+ 'arrowRight',
82
+ 'arrowUpRight',
83
+ 'arrowDownRight',
84
+ 'arrowDownLeft',
85
+ 'arrowUpLeft',
86
+ ],
87
+ process: ['start', 'stop', 'pause', 'play', 'process', 'gear', 'tool', 'wrench'],
88
+ communication: ['email', 'phone', 'message', 'notification'],
89
+ files: ['document', 'folder', 'file', 'pdf', 'image'],
90
+ users: ['user', 'users', 'team', 'admin'],
91
+ actions: ['add', 'remove', 'edit', 'search', 'filter', 'sort'],
92
+ shapes: ['circle', 'square', 'triangle', 'star', 'heart', 'diamond'],
93
+ system: ['settings', 'power', 'battery', 'wifi', 'bluetooth'],
94
+ };
95
+
96
+ export type IconType = keyof typeof ICON_LIBRARY;