@aristid/leav-types 1.12.0-ca805ec3 → 1.12.0-e51612da
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.
- package/CLAUDE.md +42 -0
- package/apps/core/config/default.d.ts +4 -0
- package/apps/core/config/development.d.ts +4 -0
- package/apps/core/config/test.d.ts +4 -0
- package/apps/core/src/__tests__/e2e/_gqlTypes/index.d.ts +164 -47
- package/apps/core/src/__tests__/e2e/api/e2eUtils.d.ts +6 -7
- package/apps/core/src/_types/automation.d.ts +22 -4
- package/apps/core/src/_types/config.d.ts +4 -0
- package/apps/core/src/_types/errors.d.ts +1 -0
- package/apps/core/src/_types/events.d.ts +1 -0
- package/apps/core/src/app/core/attributeApp/attributeApp.d.ts +2 -0
- package/apps/core/src/app/core/automationApp.d.ts +9 -4
- package/apps/core/src/app/core/eventsManagerApp.d.ts +2 -1
- package/apps/core/src/domain/automation/automationDomain.d.ts +15 -2
- package/apps/core/src/domain/record/helpers/createRecord.d.ts +3 -1
- package/apps/core/src/domain/record/helpers/getRecordIdentity.d.ts +27 -0
- package/apps/core/src/domain/record/helpers/getRecordIdentity.spec.d.ts +1 -0
- package/apps/core/src/domain/record/helpers/index.d.ts +1 -0
- package/apps/core/src/domain/record/recordDomain.d.ts +3 -11
- package/apps/core/src/domain/value/helpers/formatValue.d.ts +17 -0
- package/apps/core/src/domain/value/helpers/getRecordFieldValue.d.ts +27 -0
- package/apps/core/src/domain/value/helpers/getRecordFieldValue.spec.d.ts +1 -0
- package/apps/core/src/domain/value/helpers/getValues.d.ts +26 -0
- package/apps/core/src/domain/value/helpers/getValues.spec.d.ts +1 -0
- package/apps/core/src/domain/value/helpers/index.d.ts +7 -0
- package/apps/core/src/domain/value/helpers/manageEventMetadata.d.ts +4 -0
- package/apps/core/src/domain/value/helpers/runActionsList.d.ts +10 -0
- package/apps/core/src/domain/value/valueDomain.d.ts +11 -1
- package/apps/core/src/infra/automation/automationRuleRepo.d.ts +8 -1
- package/apps/core/src/infra/db/dbUtils.d.ts +5 -1
- package/apps/core/tsconfig.types.tsbuildinfo +1 -1
- package/libs/utils/src/types/events.d.ts +1 -0
- package/package.json +1 -1
- package/apps/core/src/domain/record/helpers/getRecordFieldValue.spec.d.ts +0 -0
package/CLAUDE.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# libs/types — CLAUDE.md
|
|
2
|
+
|
|
3
|
+
`@aristid/leav-types` — Types TypeScript de `apps/core` publiés sur npm pour les plugins externes.
|
|
4
|
+
|
|
5
|
+
## Ce que c'est
|
|
6
|
+
|
|
7
|
+
Ce package ne contient **pas de code source** — c'est une projection des types générés
|
|
8
|
+
depuis `apps/core`, destinée aux **développeurs de plugins** qui étendent le core.
|
|
9
|
+
|
|
10
|
+
> ⚠️ Ce package **n'est pas utilisé dans le monorepo lui-même**. Il est uniquement
|
|
11
|
+
> consommé par des repos externes (plugins tiers du core).
|
|
12
|
+
|
|
13
|
+
## Publication CI (GitLab)
|
|
14
|
+
|
|
15
|
+
Publié automatiquement sur **npm public** (`@aristid/leav-types`) via GitLab CI,
|
|
16
|
+
déclenché par tout changement dans `apps/core/**/*` :
|
|
17
|
+
|
|
18
|
+
- **`next`** — à chaque push sur `develop`
|
|
19
|
+
- **`latest`** — sur les releases taguées
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# Commande de génération (lancée par le CI)
|
|
23
|
+
yarn workspace @aristid/leav-types generate
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Problème connu : les enums ne sont pas exportés ⚠️
|
|
27
|
+
|
|
28
|
+
La commande `generate` (basée sur `build-types` du core) n'exporte pas les enums TypeScript.
|
|
29
|
+
Les consommateurs du package doivent **réécrire les enums manuellement** de leur côté —
|
|
30
|
+
ce qui est une source de désynchronisation et de maintenance coûteuse.
|
|
31
|
+
|
|
32
|
+
**Piste de résolution envisagée :** publier davantage de code du core directement
|
|
33
|
+
(pas uniquement les types), de façon à exposer les enums comme du code exécutable.
|
|
34
|
+
C'est un chantier à prioriser.
|
|
35
|
+
|
|
36
|
+
## Ne jamais modifier manuellement
|
|
37
|
+
|
|
38
|
+
Toujours régénérer via le CI ou :
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
yarn workspace @aristid/leav-types generate
|
|
42
|
+
```
|
|
@@ -287,4 +287,8 @@ export declare namespace logsCollector {
|
|
|
287
287
|
let queue: string;
|
|
288
288
|
}
|
|
289
289
|
export declare let pluginsPath: string[];
|
|
290
|
+
export declare namespace automation {
|
|
291
|
+
let enable_7: boolean;
|
|
292
|
+
export { enable_7 as enable };
|
|
293
|
+
}
|
|
290
294
|
export { debug_1 as debug, _export as export, _import as import };
|
|
@@ -244,12 +244,53 @@ export declare enum AttributesSortableFields {
|
|
|
244
244
|
multiple_values = "multiple_values",
|
|
245
245
|
type = "type"
|
|
246
246
|
}
|
|
247
|
+
export declare enum AutomationRuleEventAction {
|
|
248
|
+
API_KEY_DELETE = "API_KEY_DELETE",
|
|
249
|
+
API_KEY_SAVE = "API_KEY_SAVE",
|
|
250
|
+
APP_DELETE = "APP_DELETE",
|
|
251
|
+
APP_SAVE = "APP_SAVE",
|
|
252
|
+
ATTRIBUTE_DELETE = "ATTRIBUTE_DELETE",
|
|
253
|
+
ATTRIBUTE_SAVE = "ATTRIBUTE_SAVE",
|
|
254
|
+
AUTOMATION_RULE_CREATE = "AUTOMATION_RULE_CREATE",
|
|
255
|
+
AUTOMATION_RULE_UPDATE = "AUTOMATION_RULE_UPDATE",
|
|
256
|
+
CONFIG_IMPORT_END = "CONFIG_IMPORT_END",
|
|
257
|
+
CONFIG_IMPORT_START = "CONFIG_IMPORT_START",
|
|
258
|
+
DATA_IMPORT_END = "DATA_IMPORT_END",
|
|
259
|
+
DATA_IMPORT_START = "DATA_IMPORT_START",
|
|
260
|
+
EXPORT_END = "EXPORT_END",
|
|
261
|
+
EXPORT_START = "EXPORT_START",
|
|
262
|
+
GLOBAL_SETTINGS_SAVE = "GLOBAL_SETTINGS_SAVE",
|
|
263
|
+
LIBRARY_DELETE = "LIBRARY_DELETE",
|
|
264
|
+
LIBRARY_PURGE = "LIBRARY_PURGE",
|
|
265
|
+
LIBRARY_SAVE = "LIBRARY_SAVE",
|
|
266
|
+
PERMISSION_SAVE = "PERMISSION_SAVE",
|
|
267
|
+
RECORD_DELETE = "RECORD_DELETE",
|
|
268
|
+
RECORD_INIT = "RECORD_INIT",
|
|
269
|
+
RECORD_SAVE = "RECORD_SAVE",
|
|
270
|
+
TASKS_DELETE = "TASKS_DELETE",
|
|
271
|
+
TREE_ADD_ELEMENT = "TREE_ADD_ELEMENT",
|
|
272
|
+
TREE_DELETE = "TREE_DELETE",
|
|
273
|
+
TREE_DELETE_ELEMENT = "TREE_DELETE_ELEMENT",
|
|
274
|
+
TREE_MOVE_ELEMENT = "TREE_MOVE_ELEMENT",
|
|
275
|
+
TREE_SAVE = "TREE_SAVE",
|
|
276
|
+
VALUE_DELETE = "VALUE_DELETE",
|
|
277
|
+
VALUE_SAVE = "VALUE_SAVE",
|
|
278
|
+
VERSION_PROFILE_DELETE = "VERSION_PROFILE_DELETE",
|
|
279
|
+
VERSION_PROFILE_SAVE = "VERSION_PROFILE_SAVE"
|
|
280
|
+
}
|
|
247
281
|
export declare enum AutomationRuleSortableFields {
|
|
248
282
|
id = "id"
|
|
249
283
|
}
|
|
284
|
+
export type AutomationRuleTriggerInput = {
|
|
285
|
+
eventAction: AutomationRuleEventAction;
|
|
286
|
+
eventTopic?: InputMaybe<EventTopicInput>;
|
|
287
|
+
synchronous: Scalars['Boolean']['input'];
|
|
288
|
+
};
|
|
250
289
|
export type AutomationRulesFiltersInput = {
|
|
290
|
+
active?: InputMaybe<Scalars['Boolean']['input']>;
|
|
251
291
|
id?: InputMaybe<Scalars['ID']['input']>;
|
|
252
292
|
label?: InputMaybe<Scalars['String']['input']>;
|
|
293
|
+
trigger?: InputMaybe<PartialAutomationRuleTriggerInput>;
|
|
253
294
|
};
|
|
254
295
|
export type AutomationRulesSortInput = {
|
|
255
296
|
field: AutomationRuleSortableFields;
|
|
@@ -259,16 +300,6 @@ export declare enum AvailableLanguage {
|
|
|
259
300
|
en = "en",
|
|
260
301
|
fr = "fr"
|
|
261
302
|
}
|
|
262
|
-
export type CampaignToRenew = {
|
|
263
|
-
endDate: Scalars['String']['input'];
|
|
264
|
-
id: Scalars['String']['input'];
|
|
265
|
-
startDate: Scalars['String']['input'];
|
|
266
|
-
};
|
|
267
|
-
export type CampaignToUpdateDates = {
|
|
268
|
-
endDate: Scalars['String']['input'];
|
|
269
|
-
id: Scalars['String']['input'];
|
|
270
|
-
startDate: Scalars['String']['input'];
|
|
271
|
-
};
|
|
272
303
|
export type ChildrenAsRecordValuePermissionFilterInput = {
|
|
273
304
|
action: RecordPermissionsActions;
|
|
274
305
|
attributeId: Scalars['ID']['input'];
|
|
@@ -277,6 +308,7 @@ export type ChildrenAsRecordValuePermissionFilterInput = {
|
|
|
277
308
|
export type CreateAutomationRuleInput = {
|
|
278
309
|
description?: InputMaybe<Scalars['SystemTranslationOptional']['input']>;
|
|
279
310
|
label: Scalars['SystemTranslation']['input'];
|
|
311
|
+
trigger: AutomationRuleTriggerInput;
|
|
280
312
|
};
|
|
281
313
|
export type CreateRecordDataInput = {
|
|
282
314
|
values?: InputMaybe<Array<ValueBatchInput>>;
|
|
@@ -313,6 +345,59 @@ export type EmbeddedAttributeInput = {
|
|
|
313
345
|
label?: InputMaybe<Scalars['SystemTranslation']['input']>;
|
|
314
346
|
validation_regex?: InputMaybe<Scalars['String']['input']>;
|
|
315
347
|
};
|
|
348
|
+
export declare enum EventAction {
|
|
349
|
+
API_KEY_DELETE = "API_KEY_DELETE",
|
|
350
|
+
API_KEY_SAVE = "API_KEY_SAVE",
|
|
351
|
+
APP_DELETE = "APP_DELETE",
|
|
352
|
+
APP_SAVE = "APP_SAVE",
|
|
353
|
+
ATTRIBUTE_DELETE = "ATTRIBUTE_DELETE",
|
|
354
|
+
ATTRIBUTE_SAVE = "ATTRIBUTE_SAVE",
|
|
355
|
+
AUTOMATION_RULE_CREATE = "AUTOMATION_RULE_CREATE",
|
|
356
|
+
AUTOMATION_RULE_UPDATE = "AUTOMATION_RULE_UPDATE",
|
|
357
|
+
CONFIG_IMPORT_END = "CONFIG_IMPORT_END",
|
|
358
|
+
CONFIG_IMPORT_START = "CONFIG_IMPORT_START",
|
|
359
|
+
DATA_IMPORT_END = "DATA_IMPORT_END",
|
|
360
|
+
DATA_IMPORT_START = "DATA_IMPORT_START",
|
|
361
|
+
EXPORT_END = "EXPORT_END",
|
|
362
|
+
EXPORT_START = "EXPORT_START",
|
|
363
|
+
GLOBAL_SETTINGS_SAVE = "GLOBAL_SETTINGS_SAVE",
|
|
364
|
+
LIBRARY_DELETE = "LIBRARY_DELETE",
|
|
365
|
+
LIBRARY_PURGE = "LIBRARY_PURGE",
|
|
366
|
+
LIBRARY_SAVE = "LIBRARY_SAVE",
|
|
367
|
+
PERMISSION_SAVE = "PERMISSION_SAVE",
|
|
368
|
+
RECORD_DELETE = "RECORD_DELETE",
|
|
369
|
+
RECORD_SAVE = "RECORD_SAVE",
|
|
370
|
+
TASKS_DELETE = "TASKS_DELETE",
|
|
371
|
+
TREE_ADD_ELEMENT = "TREE_ADD_ELEMENT",
|
|
372
|
+
TREE_DELETE = "TREE_DELETE",
|
|
373
|
+
TREE_DELETE_ELEMENT = "TREE_DELETE_ELEMENT",
|
|
374
|
+
TREE_MOVE_ELEMENT = "TREE_MOVE_ELEMENT",
|
|
375
|
+
TREE_SAVE = "TREE_SAVE",
|
|
376
|
+
VALUE_DELETE = "VALUE_DELETE",
|
|
377
|
+
VALUE_SAVE = "VALUE_SAVE",
|
|
378
|
+
VERSION_PROFILE_DELETE = "VERSION_PROFILE_DELETE",
|
|
379
|
+
VERSION_PROFILE_SAVE = "VERSION_PROFILE_SAVE"
|
|
380
|
+
}
|
|
381
|
+
export type EventTopicInput = {
|
|
382
|
+
apiKey?: InputMaybe<Scalars['String']['input']>;
|
|
383
|
+
application?: InputMaybe<Scalars['String']['input']>;
|
|
384
|
+
attribute?: InputMaybe<Scalars['String']['input']>;
|
|
385
|
+
automationRule?: InputMaybe<Scalars['String']['input']>;
|
|
386
|
+
filename?: InputMaybe<Scalars['String']['input']>;
|
|
387
|
+
library?: InputMaybe<Scalars['String']['input']>;
|
|
388
|
+
permission?: InputMaybe<EventTopicPermissionInput>;
|
|
389
|
+
profile?: InputMaybe<Scalars['String']['input']>;
|
|
390
|
+
record?: InputMaybe<EventTopicRecordInput>;
|
|
391
|
+
tree?: InputMaybe<Scalars['String']['input']>;
|
|
392
|
+
};
|
|
393
|
+
export type EventTopicPermissionInput = {
|
|
394
|
+
applyTo?: InputMaybe<Scalars['String']['input']>;
|
|
395
|
+
id: Scalars['String']['input'];
|
|
396
|
+
};
|
|
397
|
+
export type EventTopicRecordInput = {
|
|
398
|
+
id: Scalars['String']['input'];
|
|
399
|
+
libraryId: Scalars['String']['input'];
|
|
400
|
+
};
|
|
316
401
|
export type FileInput = {
|
|
317
402
|
data: Scalars['Upload']['input'];
|
|
318
403
|
replace?: InputMaybe<Scalars['Boolean']['input']>;
|
|
@@ -373,16 +458,6 @@ export declare enum FormsSortableFields {
|
|
|
373
458
|
library = "library",
|
|
374
459
|
system = "system"
|
|
375
460
|
}
|
|
376
|
-
export declare enum GenerationStatus {
|
|
377
|
-
DONE = "DONE",
|
|
378
|
-
GENERATION_FAILED = "GENERATION_FAILED",
|
|
379
|
-
GENERATION_IN_PROGRESS = "GENERATION_IN_PROGRESS",
|
|
380
|
-
GENERATION_IN_PROGRESS_WITH_FAILURE = "GENERATION_IN_PROGRESS_WITH_FAILURE",
|
|
381
|
-
PREPARATION_FAILED = "PREPARATION_FAILED",
|
|
382
|
-
PREPARATION_IN_PROGRESS = "PREPARATION_IN_PROGRESS",
|
|
383
|
-
TRANSMISSION_FAILED = "TRANSMISSION_FAILED",
|
|
384
|
-
TRANSMISSION_IN_PROGRESS = "TRANSMISSION_IN_PROGRESS"
|
|
385
|
-
}
|
|
386
461
|
export type GlobalSettingsFileInput = {
|
|
387
462
|
library: Scalars['String']['input'];
|
|
388
463
|
recordId: Scalars['String']['input'];
|
|
@@ -457,6 +532,8 @@ export declare enum LogAction {
|
|
|
457
532
|
APP_SAVE = "APP_SAVE",
|
|
458
533
|
ATTRIBUTE_DELETE = "ATTRIBUTE_DELETE",
|
|
459
534
|
ATTRIBUTE_SAVE = "ATTRIBUTE_SAVE",
|
|
535
|
+
AUTOMATION_RULE_CREATE = "AUTOMATION_RULE_CREATE",
|
|
536
|
+
AUTOMATION_RULE_UPDATE = "AUTOMATION_RULE_UPDATE",
|
|
460
537
|
CONFIG_IMPORT_END = "CONFIG_IMPORT_END",
|
|
461
538
|
CONFIG_IMPORT_START = "CONFIG_IMPORT_START",
|
|
462
539
|
DATA_IMPORT_END = "DATA_IMPORT_END",
|
|
@@ -509,6 +586,7 @@ export declare enum LogSortableField {
|
|
|
509
586
|
export type LogTopicFilterInput = {
|
|
510
587
|
apiKey?: InputMaybe<Scalars['String']['input']>;
|
|
511
588
|
attribute?: InputMaybe<Scalars['String']['input']>;
|
|
589
|
+
automationRule?: InputMaybe<Scalars['String']['input']>;
|
|
512
590
|
filename?: InputMaybe<Scalars['String']['input']>;
|
|
513
591
|
library?: InputMaybe<Scalars['String']['input']>;
|
|
514
592
|
permission?: InputMaybe<LogTopicPermissionFilterInput>;
|
|
@@ -539,6 +617,11 @@ export type Pagination = {
|
|
|
539
617
|
limit: Scalars['Int']['input'];
|
|
540
618
|
offset: Scalars['Int']['input'];
|
|
541
619
|
};
|
|
620
|
+
export type PartialAutomationRuleTriggerInput = {
|
|
621
|
+
eventAction?: InputMaybe<AutomationRuleEventAction>;
|
|
622
|
+
eventTopic?: InputMaybe<EventTopicInput>;
|
|
623
|
+
synchronous?: InputMaybe<Scalars['Boolean']['input']>;
|
|
624
|
+
};
|
|
542
625
|
export type PermissionActionInput = {
|
|
543
626
|
allowed?: InputMaybe<Scalars['Boolean']['input']>;
|
|
544
627
|
name: PermissionsActions;
|
|
@@ -719,26 +802,6 @@ export type RecordsPagination = {
|
|
|
719
802
|
limit: Scalars['Int']['input'];
|
|
720
803
|
offset?: InputMaybe<Scalars['Int']['input']>;
|
|
721
804
|
};
|
|
722
|
-
export type ReportFramingAttributeFilterItemInput = {
|
|
723
|
-
attributeId: Scalars['String']['input'];
|
|
724
|
-
values: Array<ReportFramingAttributeFilterValueItemInput>;
|
|
725
|
-
withEmptyValues?: InputMaybe<Scalars['Boolean']['input']>;
|
|
726
|
-
};
|
|
727
|
-
export type ReportFramingAttributeFilterValueItemInput = {
|
|
728
|
-
formattedValue?: InputMaybe<Scalars['String']['input']>;
|
|
729
|
-
rawValue: Scalars['String']['input'];
|
|
730
|
-
};
|
|
731
|
-
export type ReportFramingContentInput = {
|
|
732
|
-
filters?: InputMaybe<ReportFramingFiltersInput>;
|
|
733
|
-
};
|
|
734
|
-
export type ReportFramingFiltersInput = {
|
|
735
|
-
/** only for excel header filter display */
|
|
736
|
-
attributes?: InputMaybe<Array<ReportFramingAttributeFilterItemInput>>;
|
|
737
|
-
campaigns?: InputMaybe<Array<RecordFilterInput>>;
|
|
738
|
-
categories?: InputMaybe<Array<Scalars['String']['input']>>;
|
|
739
|
-
categoryStatus?: InputMaybe<Array<Scalars['String']['input']>>;
|
|
740
|
-
search?: InputMaybe<Scalars['String']['input']>;
|
|
741
|
-
};
|
|
742
805
|
export type SaveValueBulkMappingInput = {
|
|
743
806
|
dependenciesFilters?: InputMaybe<Array<InputMaybe<RecordFilterInput>>>;
|
|
744
807
|
values: Array<SaveValueBulkMappingValueInput>;
|
|
@@ -810,18 +873,12 @@ export declare enum TaskStatus {
|
|
|
810
873
|
}
|
|
811
874
|
export declare enum TaskType {
|
|
812
875
|
EXPORT = "EXPORT",
|
|
813
|
-
FRAMING_REPORT = "FRAMING_REPORT",
|
|
814
876
|
IMPORT_CONFIG = "IMPORT_CONFIG",
|
|
815
877
|
IMPORT_DATA = "IMPORT_DATA",
|
|
816
878
|
INDEXATION = "INDEXATION",
|
|
817
879
|
PURGE_MULTIPLE_VALUES = "PURGE_MULTIPLE_VALUES",
|
|
818
|
-
RENEW_CAMPAIGNS = "RENEW_CAMPAIGNS",
|
|
819
880
|
SAVE_VALUE_BULK = "SAVE_VALUE_BULK"
|
|
820
881
|
}
|
|
821
|
-
export type ThematicToRenew = {
|
|
822
|
-
campaignId: Scalars['String']['input'];
|
|
823
|
-
thematicId: Scalars['String']['input'];
|
|
824
|
-
};
|
|
825
882
|
export declare enum TreeBehavior {
|
|
826
883
|
files = "files",
|
|
827
884
|
standard = "standard"
|
|
@@ -882,6 +939,13 @@ export declare enum TreesSortableFields {
|
|
|
882
939
|
id = "id",
|
|
883
940
|
system = "system"
|
|
884
941
|
}
|
|
942
|
+
export type UpdateAutomationRuleInput = {
|
|
943
|
+
active?: InputMaybe<Scalars['Boolean']['input']>;
|
|
944
|
+
description?: InputMaybe<Scalars['SystemTranslationOptional']['input']>;
|
|
945
|
+
id: Scalars['ID']['input'];
|
|
946
|
+
label?: InputMaybe<Scalars['SystemTranslation']['input']>;
|
|
947
|
+
trigger?: InputMaybe<PartialAutomationRuleTriggerInput>;
|
|
948
|
+
};
|
|
885
949
|
export type UploadFiltersInput = {
|
|
886
950
|
uid?: InputMaybe<Scalars['String']['input']>;
|
|
887
951
|
userId?: InputMaybe<Scalars['ID']['input']>;
|
|
@@ -1048,6 +1112,21 @@ export type SaveAttributeMutation = {
|
|
|
1048
1112
|
id: string;
|
|
1049
1113
|
};
|
|
1050
1114
|
};
|
|
1115
|
+
export type GetLinkAttributeSmartFilterQueryVariables = Exact<{
|
|
1116
|
+
filters?: InputMaybe<AttributesFiltersInput>;
|
|
1117
|
+
}>;
|
|
1118
|
+
export type GetLinkAttributeSmartFilterQuery = {
|
|
1119
|
+
attributes?: {
|
|
1120
|
+
list: Array<{
|
|
1121
|
+
smart_filter?: {
|
|
1122
|
+
enable: boolean;
|
|
1123
|
+
through?: {
|
|
1124
|
+
id: string;
|
|
1125
|
+
} | null;
|
|
1126
|
+
} | null;
|
|
1127
|
+
}>;
|
|
1128
|
+
} | null;
|
|
1129
|
+
};
|
|
1051
1130
|
export type MeQueryVariables = Exact<{
|
|
1052
1131
|
[key: string]: never;
|
|
1053
1132
|
}>;
|
|
@@ -1057,7 +1136,7 @@ export type MeQuery = {
|
|
|
1057
1136
|
} | null;
|
|
1058
1137
|
};
|
|
1059
1138
|
export type GetAutomationRulesQueryVariables = Exact<{
|
|
1060
|
-
|
|
1139
|
+
filters?: InputMaybe<AutomationRulesFiltersInput>;
|
|
1061
1140
|
}>;
|
|
1062
1141
|
export type GetAutomationRulesQuery = {
|
|
1063
1142
|
automationRules: {
|
|
@@ -1070,6 +1149,13 @@ export type GetAutomationRulesQuery = {
|
|
|
1070
1149
|
createdBy: string;
|
|
1071
1150
|
modifiedAt: number;
|
|
1072
1151
|
modifiedBy: string;
|
|
1152
|
+
trigger: {
|
|
1153
|
+
synchronous: boolean;
|
|
1154
|
+
eventAction: AutomationRuleEventAction;
|
|
1155
|
+
eventTopic?: {
|
|
1156
|
+
library?: string | null;
|
|
1157
|
+
} | null;
|
|
1158
|
+
};
|
|
1073
1159
|
}>;
|
|
1074
1160
|
};
|
|
1075
1161
|
};
|
|
@@ -1080,6 +1166,33 @@ export type CreateAutomationRuleMutation = {
|
|
|
1080
1166
|
createAutomationRule: {
|
|
1081
1167
|
id: string;
|
|
1082
1168
|
label: any;
|
|
1169
|
+
modifiedAt: number;
|
|
1170
|
+
trigger: {
|
|
1171
|
+
synchronous: boolean;
|
|
1172
|
+
eventAction: AutomationRuleEventAction;
|
|
1173
|
+
eventTopic?: {
|
|
1174
|
+
library?: string | null;
|
|
1175
|
+
} | null;
|
|
1176
|
+
};
|
|
1177
|
+
};
|
|
1178
|
+
};
|
|
1179
|
+
export type UpdateAutomationRuleMutationVariables = Exact<{
|
|
1180
|
+
rule: UpdateAutomationRuleInput;
|
|
1181
|
+
}>;
|
|
1182
|
+
export type UpdateAutomationRuleMutation = {
|
|
1183
|
+
updateAutomationRule: {
|
|
1184
|
+
id: string;
|
|
1185
|
+
label: any;
|
|
1186
|
+
description?: any | null;
|
|
1187
|
+
active: boolean;
|
|
1188
|
+
modifiedAt: number;
|
|
1189
|
+
trigger: {
|
|
1190
|
+
synchronous: boolean;
|
|
1191
|
+
eventAction: AutomationRuleEventAction;
|
|
1192
|
+
eventTopic?: {
|
|
1193
|
+
library?: string | null;
|
|
1194
|
+
} | null;
|
|
1195
|
+
};
|
|
1083
1196
|
};
|
|
1084
1197
|
};
|
|
1085
1198
|
export type GetRecordsLinkValuesPropertyQueryVariables = Exact<{
|
|
@@ -1249,9 +1362,11 @@ export declare const SaveApiKeyDocument: import("graphql").DocumentNode;
|
|
|
1249
1362
|
export declare const GetApiKeysDocument: import("graphql").DocumentNode;
|
|
1250
1363
|
export declare const DeleteApiKeyDocument: import("graphql").DocumentNode;
|
|
1251
1364
|
export declare const SaveAttributeDocument: import("graphql").DocumentNode;
|
|
1365
|
+
export declare const GetLinkAttributeSmartFilterDocument: import("graphql").DocumentNode;
|
|
1252
1366
|
export declare const MeDocument: import("graphql").DocumentNode;
|
|
1253
1367
|
export declare const GetAutomationRulesDocument: import("graphql").DocumentNode;
|
|
1254
1368
|
export declare const CreateAutomationRuleDocument: import("graphql").DocumentNode;
|
|
1369
|
+
export declare const UpdateAutomationRuleDocument: import("graphql").DocumentNode;
|
|
1255
1370
|
export declare const GetRecordsLinkValuesPropertyDocument: import("graphql").DocumentNode;
|
|
1256
1371
|
export declare const SaveLibraryDocument: import("graphql").DocumentNode;
|
|
1257
1372
|
export declare const DeleteLibraryDocument: import("graphql").DocumentNode;
|
|
@@ -1269,9 +1384,11 @@ export declare function getSdk(client: GraphQLClient, withWrapper?: SdkFunctionW
|
|
|
1269
1384
|
GetApiKeys(variables?: GetApiKeysQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetApiKeysQuery>;
|
|
1270
1385
|
DeleteApiKey(variables: DeleteApiKeyMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<DeleteApiKeyMutation>;
|
|
1271
1386
|
SaveAttribute(variables?: SaveAttributeMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<SaveAttributeMutation>;
|
|
1387
|
+
getLinkAttributeSmartFilter(variables?: GetLinkAttributeSmartFilterQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetLinkAttributeSmartFilterQuery>;
|
|
1272
1388
|
Me(variables?: MeQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<MeQuery>;
|
|
1273
1389
|
GetAutomationRules(variables?: GetAutomationRulesQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetAutomationRulesQuery>;
|
|
1274
1390
|
CreateAutomationRule(variables: CreateAutomationRuleMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<CreateAutomationRuleMutation>;
|
|
1391
|
+
UpdateAutomationRule(variables: UpdateAutomationRuleMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<UpdateAutomationRuleMutation>;
|
|
1275
1392
|
GetRecordsLinkValuesProperty(variables: GetRecordsLinkValuesPropertyQueryVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<GetRecordsLinkValuesPropertyQuery>;
|
|
1276
1393
|
SaveLibrary(variables?: SaveLibraryMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<SaveLibraryMutation>;
|
|
1277
1394
|
DeleteLibrary(variables?: DeleteLibraryMutationVariables, requestHeaders?: GraphQLClientRequestHeaders, signal?: RequestInit["signal"]): Promise<DeleteLibraryMutation>;
|
|
@@ -41,9 +41,11 @@ export declare const adminUserSdk: {
|
|
|
41
41
|
GetApiKeys(variables?: import("../_gqlTypes").GetApiKeysQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetApiKeysQuery>;
|
|
42
42
|
DeleteApiKey(variables: import("../_gqlTypes").DeleteApiKeyMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").DeleteApiKeyMutation>;
|
|
43
43
|
SaveAttribute(variables?: import("../_gqlTypes").SaveAttributeMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").SaveAttributeMutation>;
|
|
44
|
+
getLinkAttributeSmartFilter(variables?: import("../_gqlTypes").GetLinkAttributeSmartFilterQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetLinkAttributeSmartFilterQuery>;
|
|
44
45
|
Me(variables?: import("../_gqlTypes").MeQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").MeQuery>;
|
|
45
46
|
GetAutomationRules(variables?: import("../_gqlTypes").GetAutomationRulesQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetAutomationRulesQuery>;
|
|
46
47
|
CreateAutomationRule(variables: import("../_gqlTypes").CreateAutomationRuleMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").CreateAutomationRuleMutation>;
|
|
48
|
+
UpdateAutomationRule(variables: import("../_gqlTypes").UpdateAutomationRuleMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").UpdateAutomationRuleMutation>;
|
|
47
49
|
GetRecordsLinkValuesProperty(variables: import("../_gqlTypes").GetRecordsLinkValuesPropertyQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetRecordsLinkValuesPropertyQuery>;
|
|
48
50
|
SaveLibrary(variables?: import("../_gqlTypes").SaveLibraryMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").SaveLibraryMutation>;
|
|
49
51
|
DeleteLibrary(variables?: import("../_gqlTypes").DeleteLibraryMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").DeleteLibraryMutation>;
|
|
@@ -61,9 +63,11 @@ export declare const guestUserSdk: {
|
|
|
61
63
|
GetApiKeys(variables?: import("../_gqlTypes").GetApiKeysQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetApiKeysQuery>;
|
|
62
64
|
DeleteApiKey(variables: import("../_gqlTypes").DeleteApiKeyMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").DeleteApiKeyMutation>;
|
|
63
65
|
SaveAttribute(variables?: import("../_gqlTypes").SaveAttributeMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").SaveAttributeMutation>;
|
|
66
|
+
getLinkAttributeSmartFilter(variables?: import("../_gqlTypes").GetLinkAttributeSmartFilterQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetLinkAttributeSmartFilterQuery>;
|
|
64
67
|
Me(variables?: import("../_gqlTypes").MeQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").MeQuery>;
|
|
65
68
|
GetAutomationRules(variables?: import("../_gqlTypes").GetAutomationRulesQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetAutomationRulesQuery>;
|
|
66
69
|
CreateAutomationRule(variables: import("../_gqlTypes").CreateAutomationRuleMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").CreateAutomationRuleMutation>;
|
|
70
|
+
UpdateAutomationRule(variables: import("../_gqlTypes").UpdateAutomationRuleMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").UpdateAutomationRuleMutation>;
|
|
67
71
|
GetRecordsLinkValuesProperty(variables: import("../_gqlTypes").GetRecordsLinkValuesPropertyQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetRecordsLinkValuesPropertyQuery>;
|
|
68
72
|
SaveLibrary(variables?: import("../_gqlTypes").SaveLibraryMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").SaveLibraryMutation>;
|
|
69
73
|
DeleteLibrary(variables?: import("../_gqlTypes").DeleteLibraryMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").DeleteLibraryMutation>;
|
|
@@ -81,9 +85,11 @@ export declare const nonAdminUserSdk: {
|
|
|
81
85
|
GetApiKeys(variables?: import("../_gqlTypes").GetApiKeysQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetApiKeysQuery>;
|
|
82
86
|
DeleteApiKey(variables: import("../_gqlTypes").DeleteApiKeyMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").DeleteApiKeyMutation>;
|
|
83
87
|
SaveAttribute(variables?: import("../_gqlTypes").SaveAttributeMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").SaveAttributeMutation>;
|
|
88
|
+
getLinkAttributeSmartFilter(variables?: import("../_gqlTypes").GetLinkAttributeSmartFilterQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetLinkAttributeSmartFilterQuery>;
|
|
84
89
|
Me(variables?: import("../_gqlTypes").MeQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").MeQuery>;
|
|
85
90
|
GetAutomationRules(variables?: import("../_gqlTypes").GetAutomationRulesQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetAutomationRulesQuery>;
|
|
86
91
|
CreateAutomationRule(variables: import("../_gqlTypes").CreateAutomationRuleMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").CreateAutomationRuleMutation>;
|
|
92
|
+
UpdateAutomationRule(variables: import("../_gqlTypes").UpdateAutomationRuleMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").UpdateAutomationRuleMutation>;
|
|
87
93
|
GetRecordsLinkValuesProperty(variables: import("../_gqlTypes").GetRecordsLinkValuesPropertyQueryVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").GetRecordsLinkValuesPropertyQuery>;
|
|
88
94
|
SaveLibrary(variables?: import("../_gqlTypes").SaveLibraryMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").SaveLibraryMutation>;
|
|
89
95
|
DeleteLibrary(variables?: import("../_gqlTypes").DeleteLibraryMutationVariables, requestHeaders?: HeadersInit, signal?: RequestInit["signal"]): Promise<import("../_gqlTypes").DeleteLibraryMutation>;
|
|
@@ -98,13 +104,6 @@ export declare const nonAdminUserSdk: {
|
|
|
98
104
|
};
|
|
99
105
|
export declare function makeGraphQlCall(query: string | FormData, options?: IMakeGraphQlCallOptions): Promise<any>;
|
|
100
106
|
export declare function importFileGraphQlCall(query: string, filePath: string, sheets?: any): Promise<any>;
|
|
101
|
-
export declare function gqlSaveLibrary(id: string, label: string, additionalAttributes?: string[], settings?: string, recordIdentityConf?: {
|
|
102
|
-
label: string;
|
|
103
|
-
subLabel?: string;
|
|
104
|
-
preview?: string;
|
|
105
|
-
color?: string;
|
|
106
|
-
treeColorPreview?: string;
|
|
107
|
-
}): Promise<any>;
|
|
108
107
|
export declare function gqlSaveApplication(id: string, label: string, endpoint: string): Promise<any>;
|
|
109
108
|
export declare function gqlSaveAttribute(params: {
|
|
110
109
|
id: string;
|
|
@@ -1,15 +1,33 @@
|
|
|
1
1
|
import { type ISystemTranslation } from './systemTranslation';
|
|
2
|
+
import { type EventAction, type IDbPayload } from '@leav/utils';
|
|
2
3
|
export type IAutomationRule = ICoreEntity & {
|
|
4
|
+
createdAt: number;
|
|
5
|
+
createdBy: string;
|
|
6
|
+
modifiedAt: number;
|
|
7
|
+
modifiedBy: string;
|
|
3
8
|
id: string;
|
|
4
9
|
label: ISystemTranslation;
|
|
5
10
|
description?: ISystemTranslation;
|
|
6
11
|
active: boolean;
|
|
7
|
-
|
|
8
|
-
createdBy?: string;
|
|
9
|
-
modifiedAt?: number;
|
|
10
|
-
modifiedBy?: string;
|
|
12
|
+
trigger: AutomationRuleTrigger;
|
|
11
13
|
};
|
|
12
14
|
export type ICreateAutomationRule = {
|
|
13
15
|
label: ISystemTranslation;
|
|
14
16
|
description?: ISystemTranslation;
|
|
17
|
+
trigger: AutomationRuleTrigger;
|
|
15
18
|
};
|
|
19
|
+
export type IUpdateAutomationRule = {
|
|
20
|
+
id: string;
|
|
21
|
+
label?: ISystemTranslation;
|
|
22
|
+
description?: ISystemTranslation;
|
|
23
|
+
active?: boolean;
|
|
24
|
+
trigger?: Partial<AutomationRuleTrigger>;
|
|
25
|
+
};
|
|
26
|
+
export type AutomationRuleTrigger = {
|
|
27
|
+
synchronous: boolean;
|
|
28
|
+
eventAction: EventAction | SyncAutomationRuleEventAction;
|
|
29
|
+
eventTopic?: IDbPayload['topic'];
|
|
30
|
+
};
|
|
31
|
+
export declare enum SyncAutomationRuleEventAction {
|
|
32
|
+
RECORD_INIT = "RECORD_INIT"
|
|
33
|
+
}
|
|
@@ -91,6 +91,7 @@ export declare enum Errors {
|
|
|
91
91
|
UNKNOWN_APPLICATION = "UNKNOWN_APPLICATION",
|
|
92
92
|
UNKNOWN_ATTRIBUTE = "UNKNOWN_ATTRIBUTE",
|
|
93
93
|
UNKNOWN_ATTRIBUTES = "UNKNOWN_ATTRIBUTES",
|
|
94
|
+
UNKNOWN_AUTOMATION_RULE = "UNKNOWN_AUTOMATION_RULE",
|
|
94
95
|
UNKNOWN_ELEMENT = "UNKNOWN_ELEMENT",
|
|
95
96
|
UNKNOWN_FORM = "UNKNOWN_FORM",
|
|
96
97
|
UNKNOWN_FORM_ATTRIBUTES = "UNKNOWN_FORM_ATTRIBUTES",
|
|
@@ -32,6 +32,7 @@ interface IDBPayloadDataMap {
|
|
|
32
32
|
[EventAction.APP_SAVE]: IApplication;
|
|
33
33
|
[EventAction.APP_DELETE]: IApplication;
|
|
34
34
|
[EventAction.AUTOMATION_RULE_CREATE]: IAutomationRule;
|
|
35
|
+
[EventAction.AUTOMATION_RULE_UPDATE]: IAutomationRule;
|
|
35
36
|
[EventAction.GLOBAL_SETTINGS_SAVE]: IGlobalSettings;
|
|
36
37
|
[EventAction.LIBRARY_SAVE]: ILibraryDbEvent;
|
|
37
38
|
[EventAction.LIBRARY_DELETE]: ILibraryDbEvent;
|
|
@@ -3,6 +3,7 @@ import { type IAttributeDomain } from '../../../domain/attribute/attributeDomain
|
|
|
3
3
|
import { type ILibraryDomain } from '../../../domain/library/libraryDomain';
|
|
4
4
|
import { type IPermissionDomain } from '../../../domain/permission/permissionDomain';
|
|
5
5
|
import { type IAttributeDependentValuesPermissionDomain } from '../../../domain/permission/attributeDependentValuesPermissionDomain';
|
|
6
|
+
import { type IfLibraryJoinLinkAttribute } from '../../../domain/attribute/helpers/ifLibraryJoinLinkAttribute';
|
|
6
7
|
import { type IRecordDomain } from '../../../domain/record/recordDomain';
|
|
7
8
|
import { type ITreeDomain } from '../../../domain/tree/treeDomain';
|
|
8
9
|
import { type IVersionProfileDomain } from '../../../domain/versionProfile/versionProfileDomain';
|
|
@@ -12,6 +13,7 @@ import { type ICoreApp } from '../coreApp';
|
|
|
12
13
|
export type ICoreAttributeApp = IGraphqlAppModule;
|
|
13
14
|
interface IDeps {
|
|
14
15
|
'core.domain.attribute': IAttributeDomain;
|
|
16
|
+
'core.domain.attribute.helpers.ifLibraryJoinLinkAttribute': IfLibraryJoinLinkAttribute;
|
|
15
17
|
'core.domain.library': ILibraryDomain;
|
|
16
18
|
'core.domain.record': IRecordDomain;
|
|
17
19
|
'core.domain.tree': ITreeDomain;
|
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import { type IGraphqlAppModule } from '../graphql/graphqlApp';
|
|
2
2
|
import { type IAutomationDomain } from '../../domain/automation/automationDomain';
|
|
3
|
+
import { type IAutomationRule } from '../../_types/automation';
|
|
3
4
|
import { type IPaginationParams, type ISortParams } from '../../_types/list';
|
|
5
|
+
import { type IEventsManagerDomain } from '../../domain/eventsManager/eventsManagerDomain';
|
|
4
6
|
export type ICoreImportApp = IGraphqlAppModule;
|
|
5
|
-
interface
|
|
7
|
+
interface IAutomationAppDeps {
|
|
6
8
|
'core.domain.automation': IAutomationDomain;
|
|
9
|
+
'core.domain.eventsManager': IEventsManagerDomain;
|
|
7
10
|
}
|
|
8
11
|
export interface IGetAutomationRulesArgs {
|
|
9
12
|
filters?: ICoreEntityFilterOptions & {
|
|
10
|
-
|
|
11
|
-
|
|
13
|
+
active?: boolean;
|
|
14
|
+
synchronous?: boolean;
|
|
15
|
+
eventAction?: IAutomationRule['trigger']['eventAction'];
|
|
16
|
+
eventTopic?: IAutomationRule['trigger']['eventTopic'];
|
|
12
17
|
};
|
|
13
18
|
pagination?: IPaginationParams;
|
|
14
19
|
sort?: ISortParams;
|
|
15
20
|
}
|
|
16
|
-
export default function ({ 'core.domain.automation': automationDomain }:
|
|
21
|
+
export default function ({ 'core.domain.automation': automationDomain, 'core.domain.eventsManager': eventsManagerDomain, }: IAutomationAppDeps): ICoreImportApp;
|
|
17
22
|
export {};
|
|
@@ -2,7 +2,8 @@ import { type InitQueryContextFunc } from '../helpers/initQueryContext';
|
|
|
2
2
|
import { type IEventsManagerDomain } from '../../domain/eventsManager/eventsManagerDomain';
|
|
3
3
|
import { type IConfig } from '../../_types/config';
|
|
4
4
|
import { type IAppModule } from '../../_types/shared';
|
|
5
|
-
|
|
5
|
+
import { type IGraphqlAppModule } from '../graphql/graphqlApp';
|
|
6
|
+
export type IEventsManagerApp = IAppModule & IGraphqlAppModule;
|
|
6
7
|
interface IDeps {
|
|
7
8
|
'core.domain.eventsManager': IEventsManagerDomain;
|
|
8
9
|
'core.app.helpers.initQueryContext': InitQueryContextFunc;
|
|
@@ -1,13 +1,17 @@
|
|
|
1
|
-
import { type ICreateAutomationRule, type IAutomationRule } from '../../_types/automation';
|
|
1
|
+
import { type ICreateAutomationRule, type IAutomationRule, type IUpdateAutomationRule } from '../../_types/automation';
|
|
2
2
|
import { type IList } from '../../_types/list';
|
|
3
3
|
import { type IQueryInfos } from '../../_types/queryInfos';
|
|
4
4
|
import { type IGetCoreEntitiesParams } from '../../_types/shared';
|
|
5
5
|
import { type IAutomationRuleRepo } from '../../infra/automation/automationRuleRepo';
|
|
6
6
|
import { type IAdminPermissionDomain } from '../permission/adminPermissionDomain';
|
|
7
7
|
import { type IEventsManagerDomain } from '../eventsManager/eventsManagerDomain';
|
|
8
|
+
import { type IConfig } from '../../_types/config';
|
|
8
9
|
export interface IGetAutomationRulesParams extends IGetCoreEntitiesParams {
|
|
9
10
|
filters?: ICoreEntityFilterOptions & {
|
|
10
11
|
active?: boolean;
|
|
12
|
+
synchronous?: boolean;
|
|
13
|
+
eventAction?: IAutomationRule['trigger']['eventAction'];
|
|
14
|
+
eventTopic?: IAutomationRule['trigger']['eventTopic'];
|
|
11
15
|
};
|
|
12
16
|
}
|
|
13
17
|
export interface IAutomationDomain {
|
|
@@ -19,10 +23,19 @@ export interface IAutomationDomain {
|
|
|
19
23
|
rule: ICreateAutomationRule;
|
|
20
24
|
ctx: IQueryInfos;
|
|
21
25
|
}): Promise<IAutomationRule>;
|
|
26
|
+
updateAutomationRule({ rule, ctx }: {
|
|
27
|
+
rule: IUpdateAutomationRule;
|
|
28
|
+
ctx: IQueryInfos;
|
|
29
|
+
}): Promise<IAutomationRule>;
|
|
30
|
+
triggerRules(event: {
|
|
31
|
+
action: IAutomationRule['trigger']['eventAction'];
|
|
32
|
+
topic?: IAutomationRule['trigger']['eventTopic'];
|
|
33
|
+
}, synchronous: boolean, ctx: IQueryInfos): Promise<void>;
|
|
22
34
|
}
|
|
23
35
|
export interface IAutomationDomainDeps {
|
|
24
36
|
'core.domain.permission.admin': IAdminPermissionDomain;
|
|
25
37
|
'core.domain.eventsManager': IEventsManagerDomain;
|
|
26
38
|
'core.infra.automation.rule': IAutomationRuleRepo;
|
|
39
|
+
config: IConfig;
|
|
27
40
|
}
|
|
28
|
-
export default function ({ 'core.domain.permission.admin': adminPermissionDomain, 'core.domain.eventsManager': eventsManagerDomain, 'core.infra.automation.rule': automationRuleRepo, }: IAutomationDomainDeps): IAutomationDomain;
|
|
41
|
+
export default function ({ 'core.domain.permission.admin': adminPermissionDomain, 'core.domain.eventsManager': eventsManagerDomain, 'core.infra.automation.rule': automationRuleRepo, config, }: IAutomationDomainDeps): IAutomationDomain;
|
|
@@ -4,6 +4,7 @@ import { type IRecordRepo } from '../../../infra/record/recordRepo';
|
|
|
4
4
|
import { type IQueryInfos } from '../../../_types/queryInfos';
|
|
5
5
|
import { type IRecord } from '../../../_types/record';
|
|
6
6
|
import { type ICreateRecordValueError } from '../_types';
|
|
7
|
+
import { type IAutomationDomain } from '../../automation/automationDomain';
|
|
7
8
|
export type IPreCreateRecordCallback = () => Promise<ICreateRecordValueError[]>;
|
|
8
9
|
export type CreateRecordHelper = (params: {
|
|
9
10
|
library: string;
|
|
@@ -14,6 +15,7 @@ interface IDeps {
|
|
|
14
15
|
'core.domain.eventsManager': IEventsManagerDomain;
|
|
15
16
|
'core.domain.permission.library': ILibraryPermissionDomain;
|
|
16
17
|
'core.infra.record': IRecordRepo;
|
|
18
|
+
'core.domain.automation': IAutomationDomain;
|
|
17
19
|
}
|
|
18
|
-
export default function ({ 'core.domain.eventsManager': eventsManager, 'core.domain.permission.library': libraryPermissionDomain, 'core.infra.record': recordRepo, }: IDeps): CreateRecordHelper;
|
|
20
|
+
export default function ({ 'core.domain.eventsManager': eventsManager, 'core.domain.permission.library': libraryPermissionDomain, 'core.infra.record': recordRepo, 'core.domain.automation': automationDomain, }: IDeps): CreateRecordHelper;
|
|
19
21
|
export {};
|