@antscorp/antsomi-ui 2.0.88 → 2.0.90

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.
@@ -2,10 +2,10 @@
2
2
  export declare const LazyIcon: {
3
3
  AccountCircleIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
4
4
  AccountCircleOutlineIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
5
- Accounts30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
6
5
  AccountSharing30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
7
6
  AccountSharingIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
8
7
  AccountTreeIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
8
+ Accounts30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
9
9
  AddChartIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
10
10
  AddFolderIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
11
11
  AddIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -54,6 +54,7 @@ export declare const LazyIcon: {
54
54
  ChatConversationCommentAddCommentIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
55
55
  ChatMentionIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
56
56
  ChatUnreadIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
57
+ CheckSlimIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
57
58
  CheckboxChecked5RadiusIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
58
59
  CheckboxCheckedIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
59
60
  CheckboxIndeterminate5RadiusIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -61,7 +62,6 @@ export declare const LazyIcon: {
61
62
  CheckboxUnchecked5RadiusIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
62
63
  CheckboxUncheckedIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
63
64
  ChecklistRtlIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
64
- CheckSlimIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
65
65
  CircleAddElementIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
66
66
  CircleInfoIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
67
67
  CircleNotificationsIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -97,15 +97,15 @@ export declare const LazyIcon: {
97
97
  DataDestinationIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
98
98
  DataEncryption30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
99
99
  DataEncryptionIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
100
- Dataflows30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
101
100
  DataIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
102
101
  DataRefreshIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
103
102
  DataSchema30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
104
103
  DataSource30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
105
- DatasourceIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
106
- DatasourceSegment30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
107
104
  DataView30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
108
105
  DataViewIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
106
+ Dataflows30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
107
+ DatasourceIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
108
+ DatasourceSegment30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
109
109
  DecreaseDecimalIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
110
110
  DeleteRemoveTrashIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
111
111
  DeliveryLogIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -182,13 +182,13 @@ export declare const LazyIcon: {
182
182
  ForwardIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
183
183
  FreeDrawIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
184
184
  FullReviewIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
185
+ GPTIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
185
186
  GalleryTemplateIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
186
187
  GeneralSettingIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
187
188
  GeneralSettings30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
188
189
  GenerateAutoWizardIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
189
190
  Geofence30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
190
191
  GetInsightIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
191
- GPTIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
192
192
  GridViewIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
193
193
  GroupIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
194
194
  GroupLayerIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -251,8 +251,8 @@ export declare const LazyIcon: {
251
251
  MuteIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
252
252
  NodeViewIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
253
253
  NotificationIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
254
- NotificationsActiveIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
255
254
  NotificationSettingIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
255
+ NotificationsActiveIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
256
256
  OpenNewTabIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
257
257
  OpenUrlIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
258
258
  OrchestrationIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -304,6 +304,7 @@ export declare const LazyIcon: {
304
304
  ResumeIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
305
305
  RightExpandIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
306
306
  Role30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
307
+ SQLWorkspace30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
307
308
  SaveAsIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
308
309
  SaveIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
309
310
  ScheduleEmailDeliveryIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -327,9 +328,9 @@ export declare const LazyIcon: {
327
328
  SlideGroupIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
328
329
  Sort1Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
329
330
  SortIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
330
- SQLWorkspace30Icon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
331
331
  SqlWorkspaceIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
332
332
  StatisticIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
333
+ StatusInfoIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
333
334
  StickerIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
334
335
  StopRecordIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
335
336
  StoreIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
@@ -377,9 +378,9 @@ export declare const LazyIcon: {
377
378
  VisitorInformationIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
378
379
  WarningIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
379
380
  WebAssetIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
380
- WebhookIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
381
381
  WebIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
382
382
  WebPersonalizationIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
383
+ WebhookIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
383
384
  WidgetIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
384
385
  WritingAIAssitantIcon: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("../types").IconProps & import("react").RefAttributes<SVGSVGElement>>>;
385
386
  };
@@ -2,10 +2,10 @@ import { lazy } from 'react';
2
2
  export const LazyIcon = {
3
3
  AccountCircleIcon: lazy(() => import('../AccountCircleIcon').then(m => ({ default: m.AccountCircleIcon }))),
4
4
  AccountCircleOutlineIcon: lazy(() => import('../AccountCircleOutlineIcon').then(m => ({ default: m.AccountCircleOutlineIcon }))),
5
- Accounts30Icon: lazy(() => import('../Accounts30Icon').then(m => ({ default: m.Accounts30Icon }))),
6
5
  AccountSharing30Icon: lazy(() => import('../AccountSharing30Icon').then(m => ({ default: m.AccountSharing30Icon }))),
7
6
  AccountSharingIcon: lazy(() => import('../AccountSharingIcon').then(m => ({ default: m.AccountSharingIcon }))),
8
7
  AccountTreeIcon: lazy(() => import('../AccountTreeIcon').then(m => ({ default: m.AccountTreeIcon }))),
8
+ Accounts30Icon: lazy(() => import('../Accounts30Icon').then(m => ({ default: m.Accounts30Icon }))),
9
9
  AddChartIcon: lazy(() => import('../AddChartIcon').then(m => ({ default: m.AddChartIcon }))),
10
10
  AddFolderIcon: lazy(() => import('../AddFolderIcon').then(m => ({ default: m.AddFolderIcon }))),
11
11
  AddIcon: lazy(() => import('../AddIcon').then(m => ({ default: m.AddIcon }))),
@@ -56,6 +56,7 @@ export const LazyIcon = {
56
56
  }))),
57
57
  ChatMentionIcon: lazy(() => import('../ChatMentionIcon').then(m => ({ default: m.ChatMentionIcon }))),
58
58
  ChatUnreadIcon: lazy(() => import('../ChatUnreadIcon').then(m => ({ default: m.ChatUnreadIcon }))),
59
+ CheckSlimIcon: lazy(() => import('../CheckSlimIcon').then(m => ({ default: m.CheckSlimIcon }))),
59
60
  CheckboxChecked5RadiusIcon: lazy(() => import('../CheckboxChecked5RadiusIcon').then(m => ({ default: m.CheckboxChecked5RadiusIcon }))),
60
61
  CheckboxCheckedIcon: lazy(() => import('../CheckboxCheckedIcon').then(m => ({ default: m.CheckboxCheckedIcon }))),
61
62
  CheckboxIndeterminate5RadiusIcon: lazy(() => import('../CheckboxIndeterminate5RadiusIcon').then(m => ({
@@ -67,7 +68,6 @@ export const LazyIcon = {
67
68
  }))),
68
69
  CheckboxUncheckedIcon: lazy(() => import('../CheckboxUncheckedIcon').then(m => ({ default: m.CheckboxUncheckedIcon }))),
69
70
  ChecklistRtlIcon: lazy(() => import('../ChecklistRtlIcon').then(m => ({ default: m.ChecklistRtlIcon }))),
70
- CheckSlimIcon: lazy(() => import('../CheckSlimIcon').then(m => ({ default: m.CheckSlimIcon }))),
71
71
  CircleAddElementIcon: lazy(() => import('../CircleAddElementIcon').then(m => ({ default: m.CircleAddElementIcon }))),
72
72
  CircleInfoIcon: lazy(() => import('../CircleInfoIcon').then(m => ({ default: m.CircleInfoIcon }))),
73
73
  CircleNotificationsIcon: lazy(() => import('../CircleNotificationsIcon').then(m => ({ default: m.CircleNotificationsIcon }))),
@@ -103,15 +103,15 @@ export const LazyIcon = {
103
103
  DataDestinationIcon: lazy(() => import('../DataDestinationIcon').then(m => ({ default: m.DataDestinationIcon }))),
104
104
  DataEncryption30Icon: lazy(() => import('../DataEncryption30Icon').then(m => ({ default: m.DataEncryption30Icon }))),
105
105
  DataEncryptionIcon: lazy(() => import('../DataEncryptionIcon').then(m => ({ default: m.DataEncryptionIcon }))),
106
- Dataflows30Icon: lazy(() => import('../Dataflows30Icon').then(m => ({ default: m.Dataflows30Icon }))),
107
106
  DataIcon: lazy(() => import('../DataIcon').then(m => ({ default: m.DataIcon }))),
108
107
  DataRefreshIcon: lazy(() => import('../DataRefreshIcon').then(m => ({ default: m.DataRefreshIcon }))),
109
108
  DataSchema30Icon: lazy(() => import('../DataSchema30Icon').then(m => ({ default: m.DataSchema30Icon }))),
110
109
  DataSource30Icon: lazy(() => import('../DataSource30Icon').then(m => ({ default: m.DataSource30Icon }))),
111
- DatasourceIcon: lazy(() => import('../DatasourceIcon').then(m => ({ default: m.DatasourceIcon }))),
112
- DatasourceSegment30Icon: lazy(() => import('../DatasourceSegment30Icon').then(m => ({ default: m.DatasourceSegment30Icon }))),
113
110
  DataView30Icon: lazy(() => import('../DataView30Icon').then(m => ({ default: m.DataView30Icon }))),
114
111
  DataViewIcon: lazy(() => import('../DataViewIcon').then(m => ({ default: m.DataViewIcon }))),
112
+ Dataflows30Icon: lazy(() => import('../Dataflows30Icon').then(m => ({ default: m.Dataflows30Icon }))),
113
+ DatasourceIcon: lazy(() => import('../DatasourceIcon').then(m => ({ default: m.DatasourceIcon }))),
114
+ DatasourceSegment30Icon: lazy(() => import('../DatasourceSegment30Icon').then(m => ({ default: m.DatasourceSegment30Icon }))),
115
115
  DecreaseDecimalIcon: lazy(() => import('../DecreaseDecimalIcon').then(m => ({ default: m.DecreaseDecimalIcon }))),
116
116
  DeleteRemoveTrashIcon: lazy(() => import('../DeleteRemoveTrashIcon').then(m => ({ default: m.DeleteRemoveTrashIcon }))),
117
117
  DeliveryLogIcon: lazy(() => import('../DeliveryLogIcon').then(m => ({ default: m.DeliveryLogIcon }))),
@@ -188,13 +188,13 @@ export const LazyIcon = {
188
188
  ForwardIcon: lazy(() => import('../ForwardIcon').then(m => ({ default: m.ForwardIcon }))),
189
189
  FreeDrawIcon: lazy(() => import('../FreeDrawIcon').then(m => ({ default: m.FreeDrawIcon }))),
190
190
  FullReviewIcon: lazy(() => import('../FullReviewIcon').then(m => ({ default: m.FullReviewIcon }))),
191
+ GPTIcon: lazy(() => import('../GPTIcon').then(m => ({ default: m.GPTIcon }))),
191
192
  GalleryTemplateIcon: lazy(() => import('../GalleryTemplateIcon').then(m => ({ default: m.GalleryTemplateIcon }))),
192
193
  GeneralSettingIcon: lazy(() => import('../GeneralSettingIcon').then(m => ({ default: m.GeneralSettingIcon }))),
193
194
  GeneralSettings30Icon: lazy(() => import('../GeneralSettings30Icon').then(m => ({ default: m.GeneralSettings30Icon }))),
194
195
  GenerateAutoWizardIcon: lazy(() => import('../GenerateAutoWizardIcon').then(m => ({ default: m.GenerateAutoWizardIcon }))),
195
196
  Geofence30Icon: lazy(() => import('../Geofence30Icon').then(m => ({ default: m.Geofence30Icon }))),
196
197
  GetInsightIcon: lazy(() => import('../GetInsightIcon').then(m => ({ default: m.GetInsightIcon }))),
197
- GPTIcon: lazy(() => import('../GPTIcon').then(m => ({ default: m.GPTIcon }))),
198
198
  GridViewIcon: lazy(() => import('../GridViewIcon').then(m => ({ default: m.GridViewIcon }))),
199
199
  GroupIcon: lazy(() => import('../GroupIcon').then(m => ({ default: m.GroupIcon }))),
200
200
  GroupLayerIcon: lazy(() => import('../GroupLayerIcon').then(m => ({ default: m.GroupLayerIcon }))),
@@ -255,8 +255,8 @@ export const LazyIcon = {
255
255
  MuteIcon: lazy(() => import('../MuteIcon').then(m => ({ default: m.MuteIcon }))),
256
256
  NodeViewIcon: lazy(() => import('../NodeViewIcon').then(m => ({ default: m.NodeViewIcon }))),
257
257
  NotificationIcon: lazy(() => import('../NotificationIcon').then(m => ({ default: m.NotificationIcon }))),
258
- NotificationsActiveIcon: lazy(() => import('../NotificationsActiveIcon').then(m => ({ default: m.NotificationsActiveIcon }))),
259
258
  NotificationSettingIcon: lazy(() => import('../NotificationSettingIcon').then(m => ({ default: m.NotificationSettingIcon }))),
259
+ NotificationsActiveIcon: lazy(() => import('../NotificationsActiveIcon').then(m => ({ default: m.NotificationsActiveIcon }))),
260
260
  OpenNewTabIcon: lazy(() => import('../OpenNewTabIcon').then(m => ({ default: m.OpenNewTabIcon }))),
261
261
  OpenUrlIcon: lazy(() => import('../OpenUrlIcon').then(m => ({ default: m.OpenUrlIcon }))),
262
262
  OrchestrationIcon: lazy(() => import('../OrchestrationIcon').then(m => ({ default: m.OrchestrationIcon }))),
@@ -310,6 +310,7 @@ export const LazyIcon = {
310
310
  ResumeIcon: lazy(() => import('../ResumeIcon').then(m => ({ default: m.ResumeIcon }))),
311
311
  RightExpandIcon: lazy(() => import('../RightExpandIcon').then(m => ({ default: m.RightExpandIcon }))),
312
312
  Role30Icon: lazy(() => import('../Role30Icon').then(m => ({ default: m.Role30Icon }))),
313
+ SQLWorkspace30Icon: lazy(() => import('../SQLWorkspace30Icon').then(m => ({ default: m.SQLWorkspace30Icon }))),
313
314
  SaveAsIcon: lazy(() => import('../SaveAsIcon').then(m => ({ default: m.SaveAsIcon }))),
314
315
  SaveIcon: lazy(() => import('../SaveIcon').then(m => ({ default: m.SaveIcon }))),
315
316
  ScheduleEmailDeliveryIcon: lazy(() => import('../ScheduleEmailDeliveryIcon').then(m => ({ default: m.ScheduleEmailDeliveryIcon }))),
@@ -333,9 +334,9 @@ export const LazyIcon = {
333
334
  SlideGroupIcon: lazy(() => import('../SlideGroupIcon').then(m => ({ default: m.SlideGroupIcon }))),
334
335
  Sort1Icon: lazy(() => import('../Sort1Icon').then(m => ({ default: m.Sort1Icon }))),
335
336
  SortIcon: lazy(() => import('../SortIcon').then(m => ({ default: m.SortIcon }))),
336
- SQLWorkspace30Icon: lazy(() => import('../SQLWorkspace30Icon').then(m => ({ default: m.SQLWorkspace30Icon }))),
337
337
  SqlWorkspaceIcon: lazy(() => import('../SqlWorkspaceIcon').then(m => ({ default: m.SqlWorkspaceIcon }))),
338
338
  StatisticIcon: lazy(() => import('../StatisticIcon').then(m => ({ default: m.StatisticIcon }))),
339
+ StatusInfoIcon: lazy(() => import('../StatusInfoIcon').then(m => ({ default: m.StatusInfoIcon }))),
339
340
  StickerIcon: lazy(() => import('../StickerIcon').then(m => ({ default: m.StickerIcon }))),
340
341
  StopRecordIcon: lazy(() => import('../StopRecordIcon').then(m => ({ default: m.StopRecordIcon }))),
341
342
  StoreIcon: lazy(() => import('../StoreIcon').then(m => ({ default: m.StoreIcon }))),
@@ -383,9 +384,9 @@ export const LazyIcon = {
383
384
  VisitorInformationIcon: lazy(() => import('../VisitorInformationIcon').then(m => ({ default: m.VisitorInformationIcon }))),
384
385
  WarningIcon: lazy(() => import('../WarningIcon').then(m => ({ default: m.WarningIcon }))),
385
386
  WebAssetIcon: lazy(() => import('../WebAssetIcon').then(m => ({ default: m.WebAssetIcon }))),
386
- WebhookIcon: lazy(() => import('../WebhookIcon').then(m => ({ default: m.WebhookIcon }))),
387
387
  WebIcon: lazy(() => import('../WebIcon').then(m => ({ default: m.WebIcon }))),
388
388
  WebPersonalizationIcon: lazy(() => import('../WebPersonalizationIcon').then(m => ({ default: m.WebPersonalizationIcon }))),
389
+ WebhookIcon: lazy(() => import('../WebhookIcon').then(m => ({ default: m.WebhookIcon }))),
389
390
  WidgetIcon: lazy(() => import('../WidgetIcon').then(m => ({ default: m.WidgetIcon }))),
390
391
  WritingAIAssitantIcon: lazy(() => import('../WritingAIAssitantIcon').then(m => ({ default: m.WritingAIAssitantIcon }))),
391
392
  };
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { IconProps } from './types';
3
+ export declare const StatusInfoIcon: React.ForwardRefExoticComponent<IconProps & React.RefAttributes<SVGSVGElement>>;
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from 'react';
3
+ import { useIcon } from './hooks/useIcon';
4
+ export const StatusInfoIcon = forwardRef((props, ref) => {
5
+ const { width, height } = useIcon(props);
6
+ return (_jsx("svg", { viewBox: "0 0 16 17", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, ref: ref, width: width, height: height, children: _jsx("path", { d: "M7.99536 16.8003C6.41311 16.8003 4.8664 16.3311 3.5508 15.4521C2.23521 14.573 1.20983 13.3235 0.604329 11.8617C-0.00117234 10.3999 -0.159599 8.7913 0.149083 7.23945C0.457764 5.68761 1.21969 4.26229 2.33851 3.14347C3.45733 2.02465 4.88279 1.26242 6.43464 0.953741C7.98649 0.64506 9.59502 0.803598 11.0568 1.4091C12.5186 2.0146 13.7681 3.03993 14.6471 4.35553C15.5262 5.67112 15.9954 7.21803 15.9954 8.80028C15.9929 10.9213 15.1493 12.9545 13.6495 14.4543C12.1498 15.9541 10.1164 16.7979 7.99536 16.8003ZM5.58736 6.75675C5.46208 6.75675 5.3419 6.80666 5.25321 6.89515C5.16451 6.98363 5.11452 7.10356 5.11422 7.22885V8.0687C5.11452 8.19398 5.16451 8.31392 5.25321 8.4024C5.3419 8.49089 5.46208 8.54079 5.58736 8.54079H6.77594V14.4482H9.06165V6.75675H5.58736ZM7.73251 3.09995C7.4477 3.09972 7.16923 3.18353 6.93229 3.34158C6.69536 3.49962 6.51061 3.72474 6.40142 3.98778C6.29222 4.25082 6.26347 4.53988 6.31881 4.81925C6.37415 5.09863 6.5111 5.35543 6.71232 5.55698C6.91355 5.75852 7.17002 5.89628 7.44931 5.95207C7.7286 6.00785 8.01816 5.97937 8.28137 5.87059C8.54458 5.76181 8.76963 5.57714 8.92804 5.34046C9.08646 5.10378 9.17114 4.8256 9.17136 4.54079C9.17197 4.15847 9.02075 3.79158 8.75095 3.52071C8.48114 3.24983 8.11483 3.09695 7.73251 3.09604V3.09995Z", fill: "currentColor" }) }));
7
+ });
@@ -1,9 +1,9 @@
1
1
  export { AccountCircleIcon } from './AccountCircleIcon';
2
2
  export { AccountCircleOutlineIcon } from './AccountCircleOutlineIcon';
3
- export { Accounts30Icon } from './Accounts30Icon';
4
3
  export { AccountSharing30Icon } from './AccountSharing30Icon';
5
4
  export { AccountSharingIcon } from './AccountSharingIcon';
6
5
  export { AccountTreeIcon } from './AccountTreeIcon';
6
+ export { Accounts30Icon } from './Accounts30Icon';
7
7
  export { AddChartIcon } from './AddChartIcon';
8
8
  export { AddFolderIcon } from './AddFolderIcon';
9
9
  export { AddIcon } from './AddIcon';
@@ -52,6 +52,7 @@ export { ChatBubbleOutlineIcon } from './ChatBubbleOutlineIcon';
52
52
  export { ChatConversationCommentAddCommentIcon } from './ChatConversationCommentAddCommentIcon';
53
53
  export { ChatMentionIcon } from './ChatMentionIcon';
54
54
  export { ChatUnreadIcon } from './ChatUnreadIcon';
55
+ export { CheckSlimIcon } from './CheckSlimIcon';
55
56
  export { CheckboxChecked5RadiusIcon } from './CheckboxChecked5RadiusIcon';
56
57
  export { CheckboxCheckedIcon } from './CheckboxCheckedIcon';
57
58
  export { CheckboxIndeterminate5RadiusIcon } from './CheckboxIndeterminate5RadiusIcon';
@@ -59,7 +60,6 @@ export { CheckboxIndeterminateIcon } from './CheckboxIndeterminateIcon';
59
60
  export { CheckboxUnchecked5RadiusIcon } from './CheckboxUnchecked5RadiusIcon';
60
61
  export { CheckboxUncheckedIcon } from './CheckboxUncheckedIcon';
61
62
  export { ChecklistRtlIcon } from './ChecklistRtlIcon';
62
- export { CheckSlimIcon } from './CheckSlimIcon';
63
63
  export { CircleAddElementIcon } from './CircleAddElementIcon';
64
64
  export { CircleInfoIcon } from './CircleInfoIcon';
65
65
  export { CircleNotificationsIcon } from './CircleNotificationsIcon';
@@ -95,15 +95,15 @@ export { DataDestination30Icon } from './DataDestination30Icon';
95
95
  export { DataDestinationIcon } from './DataDestinationIcon';
96
96
  export { DataEncryption30Icon } from './DataEncryption30Icon';
97
97
  export { DataEncryptionIcon } from './DataEncryptionIcon';
98
- export { Dataflows30Icon } from './Dataflows30Icon';
99
98
  export { DataIcon } from './DataIcon';
100
99
  export { DataRefreshIcon } from './DataRefreshIcon';
101
100
  export { DataSchema30Icon } from './DataSchema30Icon';
102
101
  export { DataSource30Icon } from './DataSource30Icon';
103
- export { DatasourceIcon } from './DatasourceIcon';
104
- export { DatasourceSegment30Icon } from './DatasourceSegment30Icon';
105
102
  export { DataView30Icon } from './DataView30Icon';
106
103
  export { DataViewIcon } from './DataViewIcon';
104
+ export { Dataflows30Icon } from './Dataflows30Icon';
105
+ export { DatasourceIcon } from './DatasourceIcon';
106
+ export { DatasourceSegment30Icon } from './DatasourceSegment30Icon';
107
107
  export { DecreaseDecimalIcon } from './DecreaseDecimalIcon';
108
108
  export { DeleteRemoveTrashIcon } from './DeleteRemoveTrashIcon';
109
109
  export { DeliveryLogIcon } from './DeliveryLogIcon';
@@ -180,13 +180,13 @@ export { Form30Icon } from './Form30Icon';
180
180
  export { ForwardIcon } from './ForwardIcon';
181
181
  export { FreeDrawIcon } from './FreeDrawIcon';
182
182
  export { FullReviewIcon } from './FullReviewIcon';
183
+ export { GPTIcon } from './GPTIcon';
183
184
  export { GalleryTemplateIcon } from './GalleryTemplateIcon';
184
185
  export { GeneralSettingIcon } from './GeneralSettingIcon';
185
186
  export { GeneralSettings30Icon } from './GeneralSettings30Icon';
186
187
  export { GenerateAutoWizardIcon } from './GenerateAutoWizardIcon';
187
188
  export { Geofence30Icon } from './Geofence30Icon';
188
189
  export { GetInsightIcon } from './GetInsightIcon';
189
- export { GPTIcon } from './GPTIcon';
190
190
  export { GridViewIcon } from './GridViewIcon';
191
191
  export { GroupIcon } from './GroupIcon';
192
192
  export { GroupLayerIcon } from './GroupLayerIcon';
@@ -247,8 +247,8 @@ export { MoveToIcon } from './MoveToIcon';
247
247
  export { MuteIcon } from './MuteIcon';
248
248
  export { NodeViewIcon } from './NodeViewIcon';
249
249
  export { NotificationIcon } from './NotificationIcon';
250
- export { NotificationsActiveIcon } from './NotificationsActiveIcon';
251
250
  export { NotificationSettingIcon } from './NotificationSettingIcon';
251
+ export { NotificationsActiveIcon } from './NotificationsActiveIcon';
252
252
  export { OpenNewTabIcon } from './OpenNewTabIcon';
253
253
  export { OpenUrlIcon } from './OpenUrlIcon';
254
254
  export { OrchestrationIcon } from './OrchestrationIcon';
@@ -300,6 +300,7 @@ export { RestoreDefaultIcon } from './RestoreDefaultIcon';
300
300
  export { ResumeIcon } from './ResumeIcon';
301
301
  export { RightExpandIcon } from './RightExpandIcon';
302
302
  export { Role30Icon } from './Role30Icon';
303
+ export { SQLWorkspace30Icon } from './SQLWorkspace30Icon';
303
304
  export { SaveAsIcon } from './SaveAsIcon';
304
305
  export { SaveIcon } from './SaveIcon';
305
306
  export { ScheduleEmailDeliveryIcon } from './ScheduleEmailDeliveryIcon';
@@ -323,9 +324,9 @@ export { SignatureIcon } from './SignatureIcon';
323
324
  export { SlideGroupIcon } from './SlideGroupIcon';
324
325
  export { Sort1Icon } from './Sort1Icon';
325
326
  export { SortIcon } from './SortIcon';
326
- export { SQLWorkspace30Icon } from './SQLWorkspace30Icon';
327
327
  export { SqlWorkspaceIcon } from './SqlWorkspaceIcon';
328
328
  export { StatisticIcon } from './StatisticIcon';
329
+ export { StatusInfoIcon } from './StatusInfoIcon';
329
330
  export { StickerIcon } from './StickerIcon';
330
331
  export { StopRecordIcon } from './StopRecordIcon';
331
332
  export { StoreIcon } from './StoreIcon';
@@ -373,8 +374,8 @@ export { VisitorIcon } from './VisitorIcon';
373
374
  export { VisitorInformationIcon } from './VisitorInformationIcon';
374
375
  export { WarningIcon } from './WarningIcon';
375
376
  export { WebAssetIcon } from './WebAssetIcon';
376
- export { WebhookIcon } from './WebhookIcon';
377
377
  export { WebIcon } from './WebIcon';
378
378
  export { WebPersonalizationIcon } from './WebPersonalizationIcon';
379
+ export { WebhookIcon } from './WebhookIcon';
379
380
  export { WidgetIcon } from './WidgetIcon';
380
381
  export { WritingAIAssitantIcon } from './WritingAIAssitantIcon';
@@ -1,9 +1,9 @@
1
1
  export { AccountCircleIcon } from './AccountCircleIcon';
2
2
  export { AccountCircleOutlineIcon } from './AccountCircleOutlineIcon';
3
- export { Accounts30Icon } from './Accounts30Icon';
4
3
  export { AccountSharing30Icon } from './AccountSharing30Icon';
5
4
  export { AccountSharingIcon } from './AccountSharingIcon';
6
5
  export { AccountTreeIcon } from './AccountTreeIcon';
6
+ export { Accounts30Icon } from './Accounts30Icon';
7
7
  export { AddChartIcon } from './AddChartIcon';
8
8
  export { AddFolderIcon } from './AddFolderIcon';
9
9
  export { AddIcon } from './AddIcon';
@@ -52,6 +52,7 @@ export { ChatBubbleOutlineIcon } from './ChatBubbleOutlineIcon';
52
52
  export { ChatConversationCommentAddCommentIcon } from './ChatConversationCommentAddCommentIcon';
53
53
  export { ChatMentionIcon } from './ChatMentionIcon';
54
54
  export { ChatUnreadIcon } from './ChatUnreadIcon';
55
+ export { CheckSlimIcon } from './CheckSlimIcon';
55
56
  export { CheckboxChecked5RadiusIcon } from './CheckboxChecked5RadiusIcon';
56
57
  export { CheckboxCheckedIcon } from './CheckboxCheckedIcon';
57
58
  export { CheckboxIndeterminate5RadiusIcon } from './CheckboxIndeterminate5RadiusIcon';
@@ -59,7 +60,6 @@ export { CheckboxIndeterminateIcon } from './CheckboxIndeterminateIcon';
59
60
  export { CheckboxUnchecked5RadiusIcon } from './CheckboxUnchecked5RadiusIcon';
60
61
  export { CheckboxUncheckedIcon } from './CheckboxUncheckedIcon';
61
62
  export { ChecklistRtlIcon } from './ChecklistRtlIcon';
62
- export { CheckSlimIcon } from './CheckSlimIcon';
63
63
  export { CircleAddElementIcon } from './CircleAddElementIcon';
64
64
  export { CircleInfoIcon } from './CircleInfoIcon';
65
65
  export { CircleNotificationsIcon } from './CircleNotificationsIcon';
@@ -95,15 +95,15 @@ export { DataDestination30Icon } from './DataDestination30Icon';
95
95
  export { DataDestinationIcon } from './DataDestinationIcon';
96
96
  export { DataEncryption30Icon } from './DataEncryption30Icon';
97
97
  export { DataEncryptionIcon } from './DataEncryptionIcon';
98
- export { Dataflows30Icon } from './Dataflows30Icon';
99
98
  export { DataIcon } from './DataIcon';
100
99
  export { DataRefreshIcon } from './DataRefreshIcon';
101
100
  export { DataSchema30Icon } from './DataSchema30Icon';
102
101
  export { DataSource30Icon } from './DataSource30Icon';
103
- export { DatasourceIcon } from './DatasourceIcon';
104
- export { DatasourceSegment30Icon } from './DatasourceSegment30Icon';
105
102
  export { DataView30Icon } from './DataView30Icon';
106
103
  export { DataViewIcon } from './DataViewIcon';
104
+ export { Dataflows30Icon } from './Dataflows30Icon';
105
+ export { DatasourceIcon } from './DatasourceIcon';
106
+ export { DatasourceSegment30Icon } from './DatasourceSegment30Icon';
107
107
  export { DecreaseDecimalIcon } from './DecreaseDecimalIcon';
108
108
  export { DeleteRemoveTrashIcon } from './DeleteRemoveTrashIcon';
109
109
  export { DeliveryLogIcon } from './DeliveryLogIcon';
@@ -180,13 +180,13 @@ export { Form30Icon } from './Form30Icon';
180
180
  export { ForwardIcon } from './ForwardIcon';
181
181
  export { FreeDrawIcon } from './FreeDrawIcon';
182
182
  export { FullReviewIcon } from './FullReviewIcon';
183
+ export { GPTIcon } from './GPTIcon';
183
184
  export { GalleryTemplateIcon } from './GalleryTemplateIcon';
184
185
  export { GeneralSettingIcon } from './GeneralSettingIcon';
185
186
  export { GeneralSettings30Icon } from './GeneralSettings30Icon';
186
187
  export { GenerateAutoWizardIcon } from './GenerateAutoWizardIcon';
187
188
  export { Geofence30Icon } from './Geofence30Icon';
188
189
  export { GetInsightIcon } from './GetInsightIcon';
189
- export { GPTIcon } from './GPTIcon';
190
190
  export { GridViewIcon } from './GridViewIcon';
191
191
  export { GroupIcon } from './GroupIcon';
192
192
  export { GroupLayerIcon } from './GroupLayerIcon';
@@ -247,8 +247,8 @@ export { MoveToIcon } from './MoveToIcon';
247
247
  export { MuteIcon } from './MuteIcon';
248
248
  export { NodeViewIcon } from './NodeViewIcon';
249
249
  export { NotificationIcon } from './NotificationIcon';
250
- export { NotificationsActiveIcon } from './NotificationsActiveIcon';
251
250
  export { NotificationSettingIcon } from './NotificationSettingIcon';
251
+ export { NotificationsActiveIcon } from './NotificationsActiveIcon';
252
252
  export { OpenNewTabIcon } from './OpenNewTabIcon';
253
253
  export { OpenUrlIcon } from './OpenUrlIcon';
254
254
  export { OrchestrationIcon } from './OrchestrationIcon';
@@ -300,6 +300,7 @@ export { RestoreDefaultIcon } from './RestoreDefaultIcon';
300
300
  export { ResumeIcon } from './ResumeIcon';
301
301
  export { RightExpandIcon } from './RightExpandIcon';
302
302
  export { Role30Icon } from './Role30Icon';
303
+ export { SQLWorkspace30Icon } from './SQLWorkspace30Icon';
303
304
  export { SaveAsIcon } from './SaveAsIcon';
304
305
  export { SaveIcon } from './SaveIcon';
305
306
  export { ScheduleEmailDeliveryIcon } from './ScheduleEmailDeliveryIcon';
@@ -323,9 +324,9 @@ export { SignatureIcon } from './SignatureIcon';
323
324
  export { SlideGroupIcon } from './SlideGroupIcon';
324
325
  export { Sort1Icon } from './Sort1Icon';
325
326
  export { SortIcon } from './SortIcon';
326
- export { SQLWorkspace30Icon } from './SQLWorkspace30Icon';
327
327
  export { SqlWorkspaceIcon } from './SqlWorkspaceIcon';
328
328
  export { StatisticIcon } from './StatisticIcon';
329
+ export { StatusInfoIcon } from './StatusInfoIcon';
329
330
  export { StickerIcon } from './StickerIcon';
330
331
  export { StopRecordIcon } from './StopRecordIcon';
331
332
  export { StoreIcon } from './StoreIcon';
@@ -373,8 +374,8 @@ export { VisitorIcon } from './VisitorIcon';
373
374
  export { VisitorInformationIcon } from './VisitorInformationIcon';
374
375
  export { WarningIcon } from './WarningIcon';
375
376
  export { WebAssetIcon } from './WebAssetIcon';
376
- export { WebhookIcon } from './WebhookIcon';
377
377
  export { WebIcon } from './WebIcon';
378
378
  export { WebPersonalizationIcon } from './WebPersonalizationIcon';
379
+ export { WebhookIcon } from './WebhookIcon';
379
380
  export { WidgetIcon } from './WidgetIcon';
380
381
  export { WritingAIAssitantIcon } from './WritingAIAssitantIcon';
@@ -69,6 +69,7 @@ export const formats = [
69
69
  'image',
70
70
  'color',
71
71
  'code-block',
72
+ 'imageBlot',
72
73
  ];
73
74
  const ToolBarWrapper = styled.div `
74
75
  border: 1px solid ${props => props.borderColor} !important;
@@ -1,7 +1,12 @@
1
1
  import 'quill/dist/quill.snow.css';
2
+ export declare enum TCallBack {
3
+ LOADING_UPLOAD = "LOADING_UPLOAD",
4
+ ERROR = "error"
5
+ }
2
6
  type TEditorProps = {
3
7
  value: string;
4
8
  onChange: (value: string) => void;
9
+ callback?: (type: TCallBack, value: string | boolean) => void;
5
10
  placeholder: string;
6
11
  uploadService?: Function;
7
12
  height?: string | number;
@@ -9,5 +14,5 @@ type TEditorProps = {
9
14
  borderColor?: string;
10
15
  isRoundCorner?: boolean;
11
16
  };
12
- export declare const QuillEditor: ({ value, onChange, placeholder, uploadService, height, maxImgHeight, borderColor, isRoundCorner, }: TEditorProps) => import("react/jsx-runtime").JSX.Element;
17
+ export declare const QuillEditor: ({ value, onChange, placeholder, uploadService, height, maxImgHeight, borderColor, isRoundCorner, callback, }: TEditorProps) => import("react/jsx-runtime").JSX.Element;
13
18
  export {};
@@ -1,48 +1,29 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, useRef } from 'react';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useRef, useState } from 'react';
3
3
  import Quill from 'quill';
4
- import { ImageHandler } from 'quill-upload';
4
+ import { isFunction } from 'lodash';
5
+ import QuillImageDropAndPaste from 'quill-image-drop-and-paste';
5
6
  // Hooks
6
7
  import debounce from 'lodash/debounce';
7
8
  // Components
8
9
  import EditorToolbar, { modules, formats } from './EditorToolbar';
9
10
  // Styles
10
11
  import 'quill/dist/quill.snow.css';
11
- import styled from 'styled-components';
12
- Quill.register('modules/imageHandler', ImageHandler);
12
+ import { EditorWrapper, LoadingOverlay, QuillWrapper } from './styled';
13
+ import { Spin } from '../../atoms';
13
14
  const Block = Quill.import('blots/block');
14
15
  Block.tagName = 'DIV';
15
16
  Quill.register(Block, true);
16
- // const toolbarOptions = [
17
- // ['bold', 'italic', 'underline', 'strike'],
18
- // ['blockquote', 'code-block'],
19
- // ['link', 'image', 'video', 'formula'],
20
- // [{ header: 1 }, { header: 2 }],
21
- // [{ list: 'ordered' }, { list: 'bullet' }, { list: 'check' }],
22
- // [{ script: 'sub' }, { script: 'super' }],
23
- // [{ indent: '-1' }, { indent: '+1' }],
24
- // [{ direction: 'rtl' }],
25
- // [{ size: ['small', false, 'large', 'huge'] }],
26
- // [{ header: [1, 2, 3, 4, 5, 6, false] }],
27
- // [{ color: [] }, { background: [] }],
28
- // [{ font: [] }],
29
- // [{ align: [] }],
30
- // ['clean'],
31
- // ];
32
- const EditorWrapper = styled.div `
33
- border: 1px solid ${props => props.borderColor} !important;
34
-
35
- .ql-editor.ql-blank::before {
36
- font-style: normal !important;
37
- }
38
-
39
- .ql-editor a {
40
- color: #06c !important;
41
- }
42
- `;
43
- export const QuillEditor = ({ value, onChange, placeholder = '', uploadService, height = 'auto', maxImgHeight = '300px', borderColor = '#d4d4d4', isRoundCorner, }) => {
17
+ Quill.register('modules/imageDropAndPaste', QuillImageDropAndPaste);
18
+ export var TCallBack;
19
+ (function (TCallBack) {
20
+ TCallBack["LOADING_UPLOAD"] = "LOADING_UPLOAD";
21
+ TCallBack["ERROR"] = "error";
22
+ })(TCallBack || (TCallBack = {}));
23
+ export const QuillEditor = ({ value, onChange, placeholder = '', uploadService, height = 'auto', maxImgHeight = '300px', borderColor = '#d4d4d4', isRoundCorner, callback = () => { }, }) => {
44
24
  const editor = useRef(null);
45
25
  const rand = useRef(String(Math.random()).replace(/\./g, ''));
26
+ const [isUploading, setIsUploading] = useState(false);
46
27
  const processText = () => {
47
28
  editor.current?.root.querySelectorAll('li').forEach(li => {
48
29
  let max = 0;
@@ -56,22 +37,76 @@ export const QuillEditor = ({ value, onChange, placeholder = '', uploadService,
56
37
  const debounceQuickProcess = debounce(processText, 100);
57
38
  const debounceChange = debounce(onChange, 500);
58
39
  // Upload handler function
59
- const _onUpload = async (file, resolve) => {
40
+ const _onUpload = async (file) => {
60
41
  try {
42
+ setIsUploading(true);
43
+ callback(TCallBack.LOADING_UPLOAD, true);
61
44
  const result = await uploadService({ files: [file], mode: 'file' });
62
45
  if (result?.data?.length) {
63
- resolve(result.data[0].url);
64
- editor.current.root.querySelectorAll('img.quill-upload-progress').forEach(el => {
65
- el.classList.remove('quill-upload-progress');
66
- el.style.maxHeight = maxImgHeight;
67
- });
46
+ return result.data[0].url;
47
+ }
48
+ return '';
49
+ }
50
+ finally {
51
+ setIsUploading(false);
52
+ isFunction(callback) && callback(TCallBack.LOADING_UPLOAD, false);
53
+ }
54
+ };
55
+ const handlerDropImage = async (_imageDataUrl, _type, imageData) => {
56
+ callback(TCallBack.ERROR, 'RESET');
57
+ const file = imageData.toFile();
58
+ if (!editor.current)
59
+ return;
60
+ if (file.size > 10 * 1024 * 1024) {
61
+ callback(TCallBack.ERROR, 'FILE_TOO_LARGE');
62
+ return;
63
+ }
64
+ const range = editor.current?.getSelection();
65
+ if (!range)
66
+ return;
67
+ // Insert loading placeholder
68
+ try {
69
+ const fileUrl = await _onUpload(file);
70
+ if (fileUrl) {
71
+ const currentRange = editor.current?.getSelection();
72
+ editor.current?.insertEmbed(currentRange?.index || range.index, 'image', fileUrl, Quill.sources.USER);
68
73
  }
69
- resolve('');
70
74
  }
71
75
  catch (error) {
72
- resolve('');
76
+ callback(TCallBack.ERROR, 'UPLOAD_FAILED');
73
77
  }
74
78
  };
79
+ const imageHandler = useCallback(() => {
80
+ callback(TCallBack.ERROR, 'RESET');
81
+ const input = document.createElement('input');
82
+ input.setAttribute('type', 'file');
83
+ input.setAttribute('accept', 'image/*');
84
+ input.click();
85
+ input.onchange = async () => {
86
+ if (input !== null && input.files !== null) {
87
+ if (!editor.current)
88
+ return;
89
+ const file = input.files[0];
90
+ if (file.size > 10 * 1024 * 1024) {
91
+ callback(TCallBack.ERROR, 'FILE_TOO_LARGE');
92
+ return;
93
+ }
94
+ const range = editor.current?.getSelection();
95
+ if (!range)
96
+ return;
97
+ try {
98
+ const fileUrl = await _onUpload(file);
99
+ if (fileUrl) {
100
+ const currentRange = editor.current?.getSelection();
101
+ editor.current?.insertEmbed(currentRange?.index || range.index, 'image', fileUrl, Quill.sources.USER);
102
+ }
103
+ }
104
+ catch (error) {
105
+ callback(TCallBack.ERROR, 'UPLOAD_FAILED');
106
+ }
107
+ }
108
+ };
109
+ }, []);
75
110
  useEffect(() => {
76
111
  if (!value && editor.current) {
77
112
  editor.current.setText('');
@@ -80,22 +115,21 @@ export const QuillEditor = ({ value, onChange, placeholder = '', uploadService,
80
115
  useEffect(() => {
81
116
  if (editor.current)
82
117
  return;
118
+ const configModule = modules(`toolbar-${rand.current}`);
83
119
  editor.current = new Quill(`#editor-${rand.current}`, {
84
120
  theme: 'snow',
85
121
  modules: {
86
- ...modules(`toolbar-${rand.current}`),
87
- imageHandler: uploadService
88
- ? {
89
- imageClass: 'custom-image-class',
90
- upload: file => new Promise(resolve => {
91
- if (file.size > 10 * 1024 * 1024) {
92
- resolve('');
93
- return;
94
- }
95
- _onUpload(file, resolve);
96
- }),
97
- }
98
- : undefined,
122
+ ...configModule,
123
+ toolbar: {
124
+ ...configModule.toolbar,
125
+ handlers: {
126
+ ...configModule.toolbar.handlers,
127
+ image: imageHandler,
128
+ },
129
+ },
130
+ imageDropAndPaste: {
131
+ handler: handlerDropImage,
132
+ },
99
133
  },
100
134
  formats,
101
135
  placeholder,
@@ -111,8 +145,9 @@ export const QuillEditor = ({ value, onChange, placeholder = '', uploadService,
111
145
  else {
112
146
  debounceChange(editor.current?.root.innerHTML || '');
113
147
  }
148
+ callback(TCallBack.ERROR, 'RESET');
114
149
  }
115
150
  });
116
151
  }, []);
117
- return (_jsxs(_Fragment, { children: [_jsx(EditorToolbar, { id: `toolbar-${rand.current}`, isRoundCorner: isRoundCorner, borderColor: borderColor }), _jsx(EditorWrapper, { id: `editor-${rand.current}`, style: { height, color: '#000000' }, borderColor: borderColor })] }));
152
+ return (_jsxs(QuillWrapper, { children: [_jsx(EditorToolbar, { id: `toolbar-${rand.current}`, isRoundCorner: isRoundCorner, borderColor: borderColor }), _jsx(EditorWrapper, { id: `editor-${rand.current}`, style: { height, color: '#000000' }, borderColor: borderColor, children: isUploading && (_jsx(LoadingOverlay, { children: _jsx(Spin, { spinning: isUploading }) })) })] }));
118
153
  };
@@ -0,0 +1,5 @@
1
+ export declare const QuillWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
2
+ export declare const EditorWrapper: import("styled-components").StyledComponent<"div", any, {
3
+ borderColor: string;
4
+ }, never>;
5
+ export declare const LoadingOverlay: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,29 @@
1
+ import styled from 'styled-components';
2
+ export const QuillWrapper = styled.div `
3
+ position: relative;
4
+ `;
5
+ export const EditorWrapper = styled.div `
6
+ position: relative;
7
+ border: 1px solid ${props => props.borderColor} !important;
8
+
9
+ .ql-editor.ql-blank::before {
10
+ font-style: normal !important;
11
+ }
12
+
13
+ .ql-editor a {
14
+ color: #06c !important;
15
+ }
16
+ `;
17
+ export const LoadingOverlay = styled.div `
18
+ position: absolute;
19
+ top: 0;
20
+ left: 0;
21
+ right: 0;
22
+ bottom: 0;
23
+ background-color: rgba(255, 255, 255, 0.8);
24
+ display: flex;
25
+ align-items: center;
26
+ justify-content: center;
27
+ z-index: 1000;
28
+ backdrop-filter: blur(2px);
29
+ `;
@@ -30,6 +30,7 @@ import { BugIcon, CameraIcon, OpenUrlIcon, RequestIcon, ScreenshotMonitorIcon, }
30
30
  import { base64ToFile, convertBlobToFile, generateUniqueId, mergeAudioStreams, } from '@antscorp/antsomi-ui/es/components/molecules/CaptureScreen/utils';
31
31
  import { expendDefault, formatParams, postCustomEvent } from './utils';
32
32
  import { useGetListUser } from './queries';
33
+ import { TCallBack } from '../../molecules/QuillEditor/QuillEditor';
33
34
  const antIcon = _jsx(LoadingOutlined, { style: { fontSize: 40 }, spin: true });
34
35
  const Loading = ({ isLoading, height, width }) => isLoading && (_jsx(WrapperLoading, { className: "loader-container", height: height, width: width, children: _jsx(Spin, { indicator: antIcon }) }));
35
36
  const Help = props => {
@@ -93,6 +94,7 @@ const Help = props => {
93
94
  const streamTracks = useRef();
94
95
  const allAppOptionsRef = useRef([]);
95
96
  const [fileInputKey, setFileInputKey] = useState(0);
97
+ const [isLoadingUpload, setIsLoadingUpload] = useState(false);
96
98
  // const showModal = (captureKey: CaptureTypeProps) => {
97
99
  // setOpen(true);
98
100
  // setCaptureType(captureKey);
@@ -250,12 +252,17 @@ const Help = props => {
250
252
  }
251
253
  }, [allAppOptions, config, domainTicket, token, userId]);
252
254
  const handleOnchangeFile = e => {
253
- const limitSize = 50 * 1024 * 1024;
254
- const sizeFile = e.target?.files[0]?.size;
255
+ const file = e.target?.files[0];
256
+ if (!file)
257
+ return;
258
+ const sizeFile = file.size;
259
+ const fileType = file.type;
260
+ const isImage = fileType.startsWith('image/');
261
+ const limitSize = isImage ? 10 * 1024 * 1024 : 50 * 1024 * 1024;
255
262
  if (sizeFile >= limitSize) {
256
263
  setErrFile({
257
264
  isError: true,
258
- message: '*Maximum upload file size: 50MB',
265
+ message: `Maximum file size is reached (10MB for image & 50MB for other types).`,
259
266
  });
260
267
  }
261
268
  else {
@@ -265,6 +272,7 @@ const Help = props => {
265
272
  });
266
273
  handleUploadFile(e.target.files[0]);
267
274
  }
275
+ setFileInputKey(fileInputKey + 1);
268
276
  };
269
277
  const handleRemoveFile = token => {
270
278
  let newListFile = valueInput.files;
@@ -837,10 +845,13 @@ const Help = props => {
837
845
  domain: domainUpload,
838
846
  token,
839
847
  userId,
840
- }), onChange: content => setValueInput(prevVal => ({
841
- ...prevVal,
842
- message: content,
843
- })), placeholder: "Enter your comment...", borderColor: "#e6e6e6", isRoundCorner: false, height: 159 }), _jsxs("div", { children: [valueInput.files?.length > 0 && (_jsx(WrapperLinkFiles, { children: valueInput.files?.map((file, index) => (_jsxs(WrapperLinkItemFiles, { children: [_jsxs("span", { style: {
848
+ }), onChange: content => {
849
+ setValueInput(prevVal => ({
850
+ ...prevVal,
851
+ message: content,
852
+ }));
853
+ setIsLoadingUpload(content.includes('<img src="data:image/png;base64'));
854
+ }, callback: callbackEditor, placeholder: "Enter your comment...", borderColor: "#e6e6e6", isRoundCorner: false, height: 159 }), _jsxs("div", { children: [valueInput.files?.length > 0 && (_jsx(WrapperLinkFiles, { children: valueInput.files?.map((file, index) => (_jsxs(WrapperLinkItemFiles, { children: [_jsxs("span", { style: {
844
855
  display: 'flex',
845
856
  alignItems: 'center',
846
857
  gap: '10px',
@@ -877,9 +888,35 @@ const Help = props => {
877
888
  }
878
889
  }
879
890
  };
880
- const isDisableButtonSend = useMemo(() => {
881
- return !valueInput?.title || !valueInput?.message;
882
- }, [valueInput]);
891
+ const isDisableButtonSend = useMemo(() => !valueInput?.title || !valueInput?.message || isLoadingUpload, [valueInput, isLoadingUpload]);
892
+ const callbackEditor = (type, value) => {
893
+ switch (type) {
894
+ case TCallBack.LOADING_UPLOAD:
895
+ setIsLoadingUpload(value);
896
+ break;
897
+ case TCallBack.ERROR: {
898
+ switch (value) {
899
+ case 'FILE_TOO_LARGE':
900
+ setErrFile({
901
+ isError: true,
902
+ message: '*Maximum upload file size: 10MB',
903
+ });
904
+ break;
905
+ case 'RESET':
906
+ setErrFile({
907
+ isError: false,
908
+ message: '',
909
+ });
910
+ break;
911
+ default:
912
+ break;
913
+ }
914
+ break;
915
+ }
916
+ default:
917
+ break;
918
+ }
919
+ };
883
920
  const renderPopupLayout = (type) => (_jsxs(_Fragment, { children: [_jsx(Loading, { isLoading: isMainLoading || isFetchingUsers, width: "100%", height: "100%" }), _jsx(WrapperHeader, { className: "cursor", children: _jsx(Header, { children: title }) }), _jsx(WrapperBody, { className: "popup-content", style: {
884
921
  padding: type === REPORT_TYPES.CHAT ||
885
922
  type === REPORT_TYPES.HELP ||
@@ -11,6 +11,8 @@ import Service from './Service';
11
11
  import { MESSAGE_TYPE, TICKET_CUSTOM_MESSAGE_KEY } from './constant';
12
12
  import { WrapperContent, WrapperContentInput, WrapperEditor, WrapperIconEditor, WrapperInputFile, WrapperLable, WrapperLeftContent, WrapperLinkItemFiles, WrapperMessageContent, WrapperRightContent, WrapperTextEdit, WrapperTextInput, DrawerHeader, } from './styled';
13
13
  import { formatAccountId, formatDatarender, formatParams, handleValidateContent, postCustomEvent, } from './util';
14
+ import { TCallBack } from '../../molecules/QuillEditor/QuillEditor';
15
+ import { isBoolean } from 'lodash';
14
16
  const initValueInput = {
15
17
  originTitle: 'Create new ticket',
16
18
  title: '',
@@ -50,23 +52,6 @@ const Content = ({ portalId, token, action, ticketId, listUsers, domainTicket, d
50
52
  const isUpdate = action === 'edit' && ticketId;
51
53
  const valueInputRef = useRef(valueInput);
52
54
  valueInputRef.current = valueInput;
53
- // const isRulesEdit = useMemo(() => {
54
- // const { title, feature, ticketType, priority, category, ownerId, followers, message, files, referenceUrl } = valueInput
55
- // if (
56
- // !title?.length && referenceUrl === window.location.href
57
- // && Object.keys(feature)?.length <= 2
58
- // && Object.keys(ticketType)?.length <= 2 && (!Object.keys(priority)?.length || Object.values(priority)[0] === '-')
59
- // && Object.keys(category)?.length <= 2 && ((!ownerId?.length && accountEdit === 4 && isAllAccount) || (ownerId[0]?.userId === Number(initOwnerId || userId)))
60
- // && followers?.length === accountManage?.length
61
- // && !message?.length && !files.length && !isUpdate
62
- // ) {
63
- // return false
64
- // }else if(isUpdate && compareArrays(valueInput.followers, ticketDetails.followers)
65
- // && !valueInput?.message?.length && !valueInput?.files?.length) {
66
- // return false
67
- // }
68
- // return true
69
- // }, [valueInput])
70
55
  const updateValueInput = value => {
71
56
  setValueInput(prev => ({
72
57
  ...prev,
@@ -248,7 +233,7 @@ const Content = ({ portalId, token, action, ticketId, listUsers, domainTicket, d
248
233
  const handleEditorChange = content => {
249
234
  setTextValue(content);
250
235
  updateValueInput({ message: content });
251
- setIsLoadingUpload(content.includes('<img src="data:image/png;base64'));
236
+ // setIsLoadingUpload(content.includes('<img src="data:image/png;base64'));
252
237
  };
253
238
  const handleUpdateFollowers = arrFolowers => {
254
239
  const params = {
@@ -331,12 +316,17 @@ const Content = ({ portalId, token, action, ticketId, listUsers, domainTicket, d
331
316
  };
332
317
  }, [isOpenToast]);
333
318
  const handleOnchangeFile = e => {
334
- const limitSize = 50 * 1024 * 1024;
335
- const sizeFile = e.target?.files[0]?.size;
319
+ const file = e.target?.files[0];
320
+ if (!file)
321
+ return;
322
+ const sizeFile = file.size;
323
+ const fileType = file.type;
324
+ const isImage = fileType.startsWith('image/');
325
+ const limitSize = isImage ? 10 * 1024 * 1024 : 50 * 1024 * 1024;
336
326
  if (sizeFile >= limitSize) {
337
327
  setErrFile({
338
328
  isError: true,
339
- message: '*Maximum upload file size: 50MB',
329
+ message: `Maximum file size is reached (10MB for image & 50MB for other types).`,
340
330
  });
341
331
  }
342
332
  else {
@@ -363,34 +353,58 @@ const Content = ({ portalId, token, action, ticketId, listUsers, domainTicket, d
363
353
  });
364
354
  setFileInputKey(prev => prev + 1);
365
355
  };
356
+ const callbackEditor = (type, value) => {
357
+ switch (type) {
358
+ case TCallBack.LOADING_UPLOAD:
359
+ if (isBoolean(value)) {
360
+ setIsLoadingUpload(value);
361
+ }
362
+ break;
363
+ case TCallBack.ERROR: {
364
+ switch (value) {
365
+ case 'FILE_TOO_LARGE':
366
+ setErrFile({
367
+ isError: true,
368
+ message: '*Maximum upload file size: 10MB',
369
+ });
370
+ break;
371
+ case 'RESET':
372
+ setErrFile({
373
+ isError: false,
374
+ message: '',
375
+ });
376
+ break;
377
+ default:
378
+ break;
379
+ }
380
+ break;
381
+ }
382
+ default:
383
+ break;
384
+ }
385
+ };
366
386
  return (_jsxs("div", { style: { height: '100%' }, children: [_jsxs(Helmet, { children: [_jsx("meta", { charSet: "utf-8" }), _jsx("title", { children: browserTitle })] }), _jsxs(Spin, { style: { height: '100vh' }, spinning: isLoading ||
367
387
  isLoadingDetails ||
368
388
  isLoadingDataSouce ||
369
389
  isLoadingFollower ||
370
390
  isLoadingSelectedAccount, children: [_jsxs(DrawerHeader, { children: [_jsx(EditableName, { value: valueInput.title, onChange: handleOnchangeTitle, readonly: isUpdate, error: isEmptyField && (!valueInput.title || !valueInput.title.trim())
371
391
  ? "Title can't be empty"
372
- : '' }), _jsx("div", { id: "header-journey-right", className: "right-content", children: !isUpdate && (_jsx(Button, { type: "primary", onClick: handleSubmit, children: "Save" })) })] }), _jsxs(WrapperContent, { style: { height: '100%' }, children: [_jsxs(WrapperLeftContent, { children: [_jsxs(WrapperContentInput, { style: { alignItems: 'flex-start' }, children: [_jsxs(WrapperLable, { children: ["Owner", _jsx("span", { style: { color: '#ff0000' }, children: "*" })] }), _jsxs("div", { children: [_jsx(SelectAccount, { type: "default", initData: (valueInput?.ownerId || []).map((item) => item.userId), nameKey: "userName", userIdKey: "userId", users: listUsers, isViewMode: isUpdate || !isAllAccount || accountEdit !== 4, onChange: (_, users) => updateValueInput({ ownerId: users }), onlyOne: true }), isEmptyField && !valueInput?.ownerId?.length && (_jsx("div", { className: "error-message", children: "*This field can't be empty" }))] })] }), _jsxs(WrapperContentInput, { style: { marginTop: '15px', alignItems: 'flex-start' }, children: [_jsx(WrapperLable, { children: "Follower(s)" }), _jsx(SelectAccount, { type: "default", initData: [
392
+ : '' }), _jsx("div", { id: "header-journey-right", className: "right-content", children: !isUpdate && (_jsx(Button, { disabled: isLoadingUpload, type: "primary", onClick: handleSubmit, children: "Save" })) })] }), _jsxs(WrapperContent, { style: { height: '100%' }, children: [_jsxs(WrapperLeftContent, { children: [_jsxs(WrapperContentInput, { style: { alignItems: 'flex-start' }, children: [_jsxs(WrapperLable, { children: ["Owner", _jsx("span", { style: { color: '#ff0000' }, children: "*" })] }), _jsxs("div", { children: [_jsx(SelectAccount, { type: "default", initData: (valueInput?.ownerId || []).map((item) => item.userId), nameKey: "userName", userIdKey: "userId", users: listUsers, isViewMode: isUpdate || !isAllAccount || accountEdit !== 4, onChange: (_, users) => updateValueInput({ ownerId: users }), onlyOne: true }), isEmptyField && !valueInput?.ownerId?.length && (_jsx("div", { className: "error-message", children: "*This field can't be empty" }))] })] }), _jsxs(WrapperContentInput, { style: { marginTop: '15px', alignItems: 'flex-start' }, children: [_jsx(WrapperLable, { children: "Follower(s)" }), _jsx(SelectAccount, { type: "default", initData: [
373
393
  ...accountManage,
374
394
  ...(valueInput?.followers || []).map((item) => item.userId),
375
- ], nameKey: "userName", userIdKey: "userId", users: listUsers, disabledAccount: accountManage, onChange: (_, followers) => updateValueInput({ followers }) })] }), dataSelects?.map((data) => (
376
- // eslint-disable-next-line react/jsx-key
377
- _jsxs(WrapperContentInput, { style: { marginTop: '15px' }, children: [_jsx(WrapperLable, { children: data.title }), _jsx("div", { style: { flex: 1 }, children: isUpdate ? (_jsx(WrapperTextEdit, { children: !valueInput[data?.value]?.name?.length
395
+ ], nameKey: "userName", userIdKey: "userId", users: listUsers, disabledAccount: accountManage, onChange: (_, followers) => updateValueInput({ followers }) })] }), dataSelects?.map((data) => (_jsxs(WrapperContentInput, { style: { marginTop: '15px' }, children: [_jsx(WrapperLable, { children: data.title }), _jsx("div", { style: { flex: 1 }, children: isUpdate ? (_jsx(WrapperTextEdit, { children: !valueInput[data?.value]?.name?.length
378
396
  ? '--'
379
- : valueInput[data?.value]?.name })) : (_jsx(DropdownComponent, { data: data.field_options, setValueInput: updateValueInput, valueInput: valueInput, type: data.value, isUpdate: isUpdate, title: data.title })) })] }, data.id))), _jsxs(WrapperContentInput, { style: { marginTop: '15px' }, children: [_jsx(WrapperLable, { htmlFor: "referenceUrl", children: "Reference URL" }), isUpdate ? (valueInput.referenceUrl ? (_jsx(Tooltip, { title: valueInput.referenceUrl, placement: "top", children: _jsx(WrapperTextEdit, { color: "#005fb8", href: valueInput.referenceUrl, target: "_blank", children: valueInput.referenceUrl }) })) : (_jsx(WrapperTextEdit, { color: "#005fb8", href: valueInput.referenceUrl, target: "_blank", children: valueInput.referenceUrl }))) : (_jsx(WrapperTextInput, { placeholder: "Reference URL", id: "referenceUrl",
380
- // width="300px"
381
- onChange: handleOnchangeInput, name: "referenceUrl", value: valueInput.referenceUrl }))] })] }), _jsxs(WrapperRightContent, { children: [_jsxs(WrapperEditor, { children: [_jsxs("div", { children: [_jsx(QuillEditor, { value: textValue, uploadService: Service.tickets.callApi.uploadImg({
397
+ : valueInput[data?.value]?.name })) : (_jsx(DropdownComponent, { data: data.field_options, setValueInput: updateValueInput, valueInput: valueInput, type: data.value, isUpdate: isUpdate, title: data.title })) })] }, data.id))), _jsxs(WrapperContentInput, { style: { marginTop: '15px' }, children: [_jsx(WrapperLable, { htmlFor: "referenceUrl", children: "Reference URL" }), isUpdate ? (valueInput.referenceUrl ? (_jsx(Tooltip, { title: valueInput.referenceUrl, placement: "top", children: _jsx(WrapperTextEdit, { color: "#005fb8", href: valueInput.referenceUrl, target: "_blank", children: valueInput.referenceUrl }) })) : (_jsx(WrapperTextEdit, { color: "#005fb8", href: valueInput.referenceUrl, target: "_blank", children: valueInput.referenceUrl }))) : (_jsx(WrapperTextInput, { placeholder: "Reference URL", id: "referenceUrl", onChange: handleOnchangeInput, name: "referenceUrl", value: valueInput.referenceUrl }))] })] }), _jsxs(WrapperRightContent, { children: [_jsxs(WrapperEditor, { children: [_jsxs("div", { children: [_jsx(QuillEditor, { value: textValue, uploadService: Service.tickets.callApi.uploadImg({
382
398
  domain: domainUpload,
383
399
  token,
384
400
  userId,
385
- }), onChange: handleEditorChange, placeholder: "Enter your comment...", height: 195 }), _jsxs("div", { children: [valueInput.files?.length > 0 && (_jsx(WrapperLinkItemFiles, { children: valueInput.files?.map((file, index) => (_jsxs("div", { className: "file-item", children: [_jsxs("div", { className: "file-name-group", children: [_jsx(Icon, { className: "file-icon", type: "icon-ants-attachment" }), _jsx(Tooltip, { title: file?.file_name, children: _jsx("span", { className: "file-name", children: file?.file_name }) })] }), _jsx(Icon, { onClick: () => {
401
+ }), onChange: handleEditorChange, callback: callbackEditor, placeholder: "Enter your comment...", height: 195 }), _jsxs("div", { children: [valueInput.files?.length > 0 && (_jsx(WrapperLinkItemFiles, { children: valueInput.files?.map((file, index) => (_jsxs("div", { className: "file-item", children: [_jsxs("div", { className: "file-name-group", children: [_jsx(Icon, { className: "file-icon", type: "icon-ants-attachment" }), _jsx(Tooltip, { title: file?.file_name, children: _jsx("span", { className: "file-name", children: file?.file_name }) })] }), _jsx(Icon, { onClick: () => {
386
402
  handleRemoveFileV2(index);
387
403
  }, className: "remove-btn", type: "icon-ants-remove-slim" })] }, file?.file_name))) })), _jsxs(WrapperIconEditor, { borderTop: !!valueInput.files?.length, children: [_jsxs(WrapperInputFile, { children: [_jsx("label", { htmlFor: `fileImage-${fileInputKey}`, className: "upload-wrapper-label", children: _jsx(Icon, { type: "icon-ants-attachment", className: "upload-icon" }) }), _jsx("input", { type: "file", style: { position: 'absolute', top: 0, right: 0, display: 'none' }, name: `fileImage-${fileInputKey}`, id: `fileImage-${fileInputKey}`, onChange: handleOnchangeFile }, fileInputKey)] }), isUpdate && (_jsx(Button, { type: "primary", disabled: !handleValidateContent(textValue) || isLoadingUpload, className: "reply-btn", style: {
388
404
  background: `${!handleValidateContent(textValue) || isLoadingUpload
389
405
  ? '#ccc'
390
406
  : '#1f5fac'}`,
391
- }, onClick: handleUpdateComment, loading: isLoadingUpload, children: "Reply" }))] })] })] }), errFile.isError ? (_jsx("div", { className: "error-message", children: errFile.message })) : (isEmptyField &&
392
- !valueInput?.message && (_jsx("div", { className: "error-message", children: "*This field can't be empty" })))] }), isUpdate && (_jsx(Spin, { spinning: isLoadingComment, children: _jsx(WrapperMessageContent, { children: listComment?.map(comment => (_jsx(MessageComponent, { toUser: comment?.toUser, fromUser: comment?.fromUser, followers: comment?.followers,
393
- // mailFollower={comment?.mailFollower}
394
- message: comment?.message, date: comment?.createdDate, attachments: comment?.attachments, timeZone: timeZone, submitterEmail: comment?.submitterEmail }, comment?.id))) }) }))] })] })] })] }));
407
+ }, onClick: handleUpdateComment, children: "Reply" }))] })] })] }), errFile.isError ? (_jsx("div", { className: "error-message", children: errFile.message })) : (isEmptyField &&
408
+ !valueInput?.message && (_jsx("div", { className: "error-message", children: "*This field can't be empty" })))] }), isUpdate && (_jsx(Spin, { spinning: isLoadingComment, children: _jsx(WrapperMessageContent, { children: listComment?.map(comment => (_jsx(MessageComponent, { toUser: comment?.toUser, fromUser: comment?.fromUser, followers: comment?.followers, message: comment?.message, date: comment?.createdDate, attachments: comment?.attachments, timeZone: timeZone, submitterEmail: comment?.submitterEmail }, comment?.id))) }) }))] })] })] })] }));
395
409
  };
396
410
  export default Content;
@@ -19,6 +19,7 @@ const MessageComponent = ({ toUser, fromUser, followers, attachments, message, d
19
19
  if (refMesage.current) {
20
20
  refMesage.current.querySelectorAll('img')?.forEach(img => {
21
21
  img.style.cursor = 'pointer';
22
+ img.style.width = '100%';
22
23
  img.addEventListener('click', () => {
23
24
  setModalImg({
24
25
  ...modalImg,
@@ -424,6 +424,7 @@ export const WrapperLinkItemFiles = styled.div `
424
424
  display: flex;
425
425
  align-items: center;
426
426
  gap: 10px;
427
+ overflow: hidden;
427
428
  }
428
429
  .file-icon {
429
430
  font-size: 20.5px;
@@ -10,6 +10,7 @@ import Service from './Service';
10
10
  import { WrapperContent, WrapperContentInput, WrapperEditor, WrapperIconEditor, WrapperInputFile, WrapperLable, WrapperLeftContent, WrapperLinkItemFiles, WrapperMessageContent, WrapperRightContent, WrapperTextEdit, WrapperTextInput, } from './styled';
11
11
  import { formatDatarender, handleValidateContent } from './util';
12
12
  import { get, keyBy } from 'lodash';
13
+ import { TCallBack } from '../../molecules/QuillEditor/QuillEditor';
13
14
  const initValueInput = {
14
15
  originTitle: 'Create new ticket',
15
16
  title: '',
@@ -137,7 +138,7 @@ const Content = ({ apiKey, domain, portalId, token, action, ticketId, listUsers,
137
138
  const handleEditorChange = content => {
138
139
  setTextValue(content);
139
140
  updateValueInput({ message: content });
140
- setIsLoadingUpload(content.includes('<img src="data:image/png;base64'));
141
+ // setIsLoadingUpload(content.includes('<img src="data:image/png;base64'));
141
142
  };
142
143
  const handleUpdateFollowers = arrFolowers => {
143
144
  const params = {
@@ -221,12 +222,17 @@ const Content = ({ apiKey, domain, portalId, token, action, ticketId, listUsers,
221
222
  };
222
223
  }, [isOpenToast]);
223
224
  const handleOnchangeFile = e => {
224
- const limitSize = 50 * 1024 * 1024;
225
- const sizeFile = e.target?.files[0]?.size;
225
+ const file = e.target?.files[0];
226
+ if (!file)
227
+ return;
228
+ const sizeFile = file.size;
229
+ const fileType = file.type;
230
+ const isImage = fileType.startsWith('image/');
231
+ const limitSize = isImage ? 10 * 1024 * 1024 : 50 * 1024 * 1024;
226
232
  if (sizeFile >= limitSize) {
227
233
  setErrFile({
228
234
  isError: true,
229
- message: '*Maximum upload file size: 50MB',
235
+ message: `Maximum file size is reached (10MB for image & 50MB for other types).`,
230
236
  });
231
237
  }
232
238
  else {
@@ -267,15 +273,43 @@ const Content = ({ apiKey, domain, portalId, token, action, ticketId, listUsers,
267
273
  ? '--'
268
274
  : dataSelectOptions[ticketDetails[info?.value]]?.name }) })] }, info.id));
269
275
  };
276
+ const callbackEditor = (type, value) => {
277
+ switch (type) {
278
+ case TCallBack.LOADING_UPLOAD:
279
+ setIsLoadingUpload(value);
280
+ break;
281
+ case TCallBack.ERROR: {
282
+ switch (value) {
283
+ case 'FILE_TOO_LARGE':
284
+ setErrFile({
285
+ isError: true,
286
+ message: '*Maximum upload file size: 10MB',
287
+ });
288
+ break;
289
+ case 'RESET':
290
+ setErrFile({
291
+ isError: false,
292
+ message: '',
293
+ });
294
+ break;
295
+ default:
296
+ break;
297
+ }
298
+ break;
299
+ }
300
+ default:
301
+ break;
302
+ }
303
+ };
270
304
  return (_jsxs("div", { style: { height: '100%' }, children: [_jsxs(Helmet, { children: [_jsx("meta", { charSet: "utf-8" }), _jsx("title", { children: browserTitle })] }), _jsx(Spin, { style: { height: '100vh' }, spinning: isLoading || isLoadingDetails || isLoadingDataSouce || isLoadingFollower, children: _jsxs(WrapperContent, { style: { height: '100%' }, children: [_jsxs(WrapperLeftContent, { children: [_jsxs(WrapperContentInput, { style: { alignItems: 'flex-start' }, children: [_jsxs(WrapperLable, { children: ["Owner", _jsx("span", { style: { color: '#ff0000' }, children: "*" })] }), _jsx("div", { children: ownerEmail })] }), _jsxs(WrapperContentInput, { style: { marginTop: '15px', alignItems: 'flex-start' }, children: [_jsx(WrapperLable, { children: "Follower(s)" }), _jsx(SelectAccount, { type: "default", initData: ticketDetails?.followers || [], nameKey: "userName", userIdKey: "userId", users: listUsers, onChange: (_, followers) => onChangeFollowers(followers) })] }), dataSelects?.map((data) => _jsx(_Fragment, { children: renderOptions(data) })), _jsxs(WrapperContentInput, { style: { marginTop: '15px' }, children: [_jsx(WrapperLable, { htmlFor: "referenceUrl", children: "Reference URL" }), isUpdate ? (ticketDetails.referenceUrl ? (_jsx(Tooltip, { title: ticketDetails.referenceUrl, placement: "top", children: _jsx(WrapperTextEdit, { color: "#005fb8", href: ticketDetails.referenceUrl, target: "_blank", children: ticketDetails.referenceUrl }) })) : (_jsx(WrapperTextEdit, { color: "#005fb8", href: ticketDetails.referenceUrl, target: "_blank", children: ticketDetails.referenceUrl }))) : (_jsx(WrapperTextInput, { placeholder: "Reference URL", id: "referenceUrl",
271
305
  // width="300px"
272
- onChange: handleOnchangeInput, name: "referenceUrl", value: valueInput.referenceUrl }))] })] }), _jsxs(WrapperRightContent, { children: [_jsxs(WrapperEditor, { children: [_jsxs("div", { children: [_jsx(QuillEditor, { value: textValue, uploadService: Service.tickets.callApi.uploadFile({
306
+ onChange: handleOnchangeInput, name: "referenceUrl", value: valueInput.referenceUrl }))] })] }), _jsxs(WrapperRightContent, { children: [_jsxs(WrapperEditor, { children: [_jsxs(_Fragment, { children: [_jsx(QuillEditor, { value: textValue, uploadService: Service.tickets.callApi.uploadFile({
273
307
  domain: domainUpload,
274
- }), onChange: handleEditorChange, placeholder: "Enter your comment...", height: 195 }), _jsxs("div", { children: [valueInput.files?.length > 0 && (_jsx(WrapperLinkItemFiles, { children: valueInput.files?.map((file, index) => (_jsxs("div", { className: "file-item", children: [_jsxs("div", { className: "file-name-group", children: [_jsx(Icon, { className: "file-icon", type: "icon-ants-attachment" }), _jsx(Tooltip, { title: file?.file_name, children: _jsx("span", { className: "file-name", children: file?.file_name }) })] }), _jsx(Icon, { onClick: () => handleRemoveFileV2(index), className: "remove-btn", type: "icon-ants-remove-slim" })] }, file?.token))) })), _jsxs(WrapperIconEditor, { borderTop: !!valueInput.files?.length, children: [_jsxs(WrapperInputFile, { children: [_jsx("label", { htmlFor: `fileImage-${fileInputKey}`, className: "upload-wrapper-label", children: _jsx(Icon, { type: "icon-ants-attachment", className: "upload-icon" }) }), _jsx("input", { type: "file", style: { position: 'absolute', top: 0, right: 0, display: 'none' }, name: `fileImage-${fileInputKey}`, id: `fileImage-${fileInputKey}`, onChange: handleOnchangeFile }, fileInputKey)] }), isUpdate && (_jsx(Button, { type: "primary", disabled: !handleValidateContent(textValue) || isLoadingUpload, className: "reply-btn", style: {
308
+ }), onChange: handleEditorChange, placeholder: "Enter your comment...", height: 195, callback: callbackEditor }), _jsxs("div", { children: [valueInput.files?.length > 0 && (_jsx(WrapperLinkItemFiles, { children: valueInput.files?.map((file, index) => (_jsxs("div", { className: "file-item", children: [_jsxs("div", { className: "file-name-group", children: [_jsx(Icon, { className: "file-icon", type: "icon-ants-attachment" }), _jsx(Tooltip, { title: file?.file_name, children: _jsx("span", { className: "file-name", children: file?.file_name }) })] }), _jsx(Icon, { onClick: () => handleRemoveFileV2(index), className: "remove-btn", type: "icon-ants-remove-slim" })] }, file?.token))) })), _jsxs(WrapperIconEditor, { borderTop: !!valueInput.files?.length, children: [_jsxs(WrapperInputFile, { children: [_jsx("label", { htmlFor: `fileImage-${fileInputKey}`, className: "upload-wrapper-label", children: _jsx(Icon, { type: "icon-ants-attachment", className: "upload-icon" }) }), _jsx("input", { type: "file", style: { position: 'absolute', top: 0, right: 0, display: 'none' }, name: `fileImage-${fileInputKey}`, id: `fileImage-${fileInputKey}`, onChange: handleOnchangeFile }, fileInputKey)] }), isUpdate && (_jsx(Button, { type: "primary", disabled: !handleValidateContent(textValue) || isLoadingUpload, className: "reply-btn", style: {
275
309
  background: `${!handleValidateContent(textValue) || isLoadingUpload
276
310
  ? '#ccc'
277
311
  : '#1f5fac'}`,
278
- }, onClick: handleUpdateComment, loading: isLoadingUpload, children: "Reply" }))] })] })] }), errFile.isError ? (_jsx("div", { className: "error-message", children: errFile.message })) : (isEmptyField &&
312
+ }, onClick: handleUpdateComment, children: "Reply" }))] })] })] }), errFile.isError ? (_jsx("div", { className: "error-message", children: errFile.message })) : (isEmptyField &&
279
313
  !valueInput?.message && (_jsx("div", { className: "error-message", children: "* This field can't be empty" })))] }), isUpdate && (_jsx(Spin, { spinning: isLoadingComment, children: _jsx(WrapperMessageContent, { children: listComment?.map(comment => (_jsx(MessageComponent, { toUser: comment?.toUser, fromUser: comment?.fromUser, followers: comment?.followers,
280
314
  // mailFollower={comment?.mailFollower}
281
315
  message: comment?.message, date: comment?.createdDate, attachments: comment?.attachments, timeZone: timeZone, submitterEmail: comment?.submitterEmail }, comment?.id))) }) }))] })] }) })] }));
@@ -18,6 +18,7 @@ const MessageComponent = ({ toUser, fromUser, followers, attachments, message, d
18
18
  if (refMesage.current) {
19
19
  refMesage.current.querySelectorAll('img')?.forEach(img => {
20
20
  img.style.cursor = 'pointer';
21
+ img.style.width = '100%';
21
22
  img.addEventListener('click', () => {
22
23
  setModalImg({
23
24
  ...modalImg,
@@ -34,7 +34,7 @@ export const WrapperLeftContent = styled.div `
34
34
  `;
35
35
  export const WrapperRightContent = styled.div `
36
36
  flex: 2;
37
- width: 100%;
37
+ max-width: 66.67%;
38
38
  ::-webkit-scrollbar {
39
39
  width: 8px;
40
40
  height: 8px;
@@ -423,6 +423,7 @@ export const WrapperLinkItemFiles = styled.div `
423
423
  display: flex;
424
424
  align-items: center;
425
425
  gap: 10px;
426
+ overflow: hidden;
426
427
  }
427
428
  .file-icon {
428
429
  font-size: 20.5px;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antscorp/antsomi-ui",
3
- "version": "2.0.88",
3
+ "version": "2.0.90",
4
4
  "description": "An enterprise-class UI design language and React UI library.",
5
5
  "sideEffects": [
6
6
  "dist/*",
@@ -113,6 +113,7 @@
113
113
  "qs": "6.10.3",
114
114
  "quill": "2.0.3",
115
115
  "quill-upload": "0.0.13",
116
+ "quill-image-drop-and-paste": "^2.0.1",
116
117
  "react-ace": "9.5.0",
117
118
  "react-beautiful-dnd": "^13.1.1",
118
119
  "react-color": "2.19.3",