@accounter/server 0.0.8-alpha-20251105183654-b3147b83bfda6ce62d09073ce81342ceadf5160c → 0.0.8-alpha-20251106080932-aeb05a6f60a5ad38f48a4149e31ae1c5482d7177
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/CHANGELOG.md +5 -25
- package/dist/server/src/__generated__/types.d.ts +10 -39
- package/dist/server/src/__generated__/types.js.map +1 -1
- package/dist/server/src/modules/financial-entities/__generated__/clients.types.d.ts +4 -11
- package/dist/server/src/modules/financial-entities/__generated__/types.d.ts +7 -19
- package/dist/server/src/modules/financial-entities/__generated__/types.js.map +1 -1
- package/dist/server/src/modules/financial-entities/providers/businesses.provider.js +1 -1
- package/dist/server/src/modules/financial-entities/providers/clients.provider.js +16 -18
- package/dist/server/src/modules/financial-entities/providers/clients.provider.js.map +1 -1
- package/dist/server/src/modules/financial-entities/resolvers/clients.resolvers.js +24 -26
- package/dist/server/src/modules/financial-entities/resolvers/clients.resolvers.js.map +1 -1
- package/dist/server/src/modules/financial-entities/typeDefs/clients.graphql.js +8 -24
- package/dist/server/src/modules/financial-entities/typeDefs/clients.graphql.js.map +1 -1
- package/dist/server/src/modules/green-invoice/__generated__/types.d.ts +0 -8
- package/dist/server/src/modules/green-invoice/__generated__/types.js.map +1 -1
- package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.d.ts +1 -3
- package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.js +12 -5
- package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.js.map +1 -1
- package/dist/server/src/modules/green-invoice/helpers/green-invoice-clients.helper.d.ts +2 -1
- package/dist/server/src/modules/green-invoice/helpers/green-invoice-clients.helper.js +31 -17
- package/dist/server/src/modules/green-invoice/helpers/green-invoice-clients.helper.js.map +1 -1
- package/dist/server/src/modules/green-invoice/helpers/green-invoice.helper.d.ts +2 -2
- package/dist/server/src/modules/green-invoice/helpers/green-invoice.helper.js +18 -21
- package/dist/server/src/modules/green-invoice/helpers/green-invoice.helper.js.map +1 -1
- package/dist/server/src/modules/green-invoice/resolvers/green-invoice.resolvers.js +28 -89
- package/dist/server/src/modules/green-invoice/resolvers/green-invoice.resolvers.js.map +1 -1
- package/dist/server/src/modules/green-invoice/typeDefs/green-invoice.graphql.js +0 -4
- package/dist/server/src/modules/green-invoice/typeDefs/green-invoice.graphql.js.map +1 -1
- package/package.json +1 -1
- package/src/__generated__/types.ts +10 -42
- package/src/modules/financial-entities/__generated__/clients.types.ts +4 -10
- package/src/modules/financial-entities/__generated__/types.ts +7 -19
- package/src/modules/financial-entities/providers/businesses.provider.ts +1 -1
- package/src/modules/financial-entities/providers/clients.provider.ts +16 -19
- package/src/modules/financial-entities/resolvers/clients.resolvers.ts +27 -30
- package/src/modules/financial-entities/typeDefs/clients.graphql.ts +8 -24
- package/src/modules/green-invoice/__generated__/types.ts +0 -8
- package/src/modules/green-invoice/helpers/contract-to-draft.helper.ts +13 -7
- package/src/modules/green-invoice/helpers/green-invoice-clients.helper.ts +40 -19
- package/src/modules/green-invoice/helpers/green-invoice.helper.ts +23 -22
- package/src/modules/green-invoice/resolvers/green-invoice.resolvers.ts +34 -99
- package/src/modules/green-invoice/typeDefs/green-invoice.graphql.ts +0 -4
- package/dist/server/src/modules/financial-entities/helpers/clients.helper.d.ts +0 -11
- package/dist/server/src/modules/financial-entities/helpers/clients.helper.js +0 -26
- package/dist/server/src/modules/financial-entities/helpers/clients.helper.js.map +0 -1
- package/src/modules/financial-entities/helpers/clients.helper.ts +0 -28
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @accounter/server
|
|
2
2
|
|
|
3
|
-
## 0.0.8-alpha-
|
|
3
|
+
## 0.0.8-alpha-20251106080932-aeb05a6f60a5ad38f48a4149e31ae1c5482d7177
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
@@ -264,16 +264,6 @@
|
|
|
264
264
|
- Updated dependency [`graphql@16.12.0` ↗︎](https://www.npmjs.com/package/graphql/v/16.12.0)
|
|
265
265
|
(from `16.11.0`, in `dependencies`)
|
|
266
266
|
|
|
267
|
-
- [#2655](https://github.com/Urigo/accounter-fullstack/pull/2655)
|
|
268
|
-
[`dd02669`](https://github.com/Urigo/accounter-fullstack/commit/dd02669a794e4debd032cd4a2c418795cba38563)
|
|
269
|
-
Thanks [@gilgardosh](https://github.com/gilgardosh)! - dependencies updates:
|
|
270
|
-
- Updated dependency
|
|
271
|
-
[`@graphql-yoga/plugin-defer-stream@3.16.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.16.1)
|
|
272
|
-
(from `3.16.0`, in `dependencies`)
|
|
273
|
-
- Updated dependency
|
|
274
|
-
[`graphql-yoga@5.16.1` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.16.1) (from `5.16.0`,
|
|
275
|
-
in `dependencies`)
|
|
276
|
-
|
|
277
267
|
- [#2662](https://github.com/Urigo/accounter-fullstack/pull/2662)
|
|
278
268
|
[`fa15c75`](https://github.com/Urigo/accounter-fullstack/commit/fa15c754be3cf82893a3573b4ebe60776c96a296)
|
|
279
269
|
Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
|
|
@@ -660,16 +650,6 @@
|
|
|
660
650
|
`packages/server/src/modules/app-providers/green-invoice-client.ts`, the access patterns for these
|
|
661
651
|
environment variables have been updated to use optional chaining (`?.`) to safely handle cases
|
|
662
652
|
where the configuration might be `undefined`.
|
|
663
|
-
|
|
664
|
-
- [#2655](https://github.com/Urigo/accounter-fullstack/pull/2655)
|
|
665
|
-
[`eee0a0e`](https://github.com/Urigo/accounter-fullstack/commit/eee0a0e586d6c5b49caa3a7ac308b8bd79f11b8a)
|
|
666
|
-
Thanks [@gilgardosh](https://github.com/gilgardosh)! - - Introduced a new `ClientIntegrations`
|
|
667
|
-
GraphQL type with a JSONB-backed structure
|
|
668
|
-
- Migrated `green_invoice_id` and `hive_id` columns to a unified `integrations` JSONB field
|
|
669
|
-
- Added validation helper using Zod schema for client integrations
|
|
670
|
-
- Updated GraphQL resolvers to use the new structure, with `GreenInvoiceClient` now resolving as a
|
|
671
|
-
string ID
|
|
672
|
-
- Activate integrations section in the client management UI to reflect backend changes
|
|
673
653
|
- Updated dependencies
|
|
674
654
|
[[`1ae19c6`](https://github.com/Urigo/accounter-fullstack/commit/1ae19c6f8dabd995120862795284dab6e363dc79),
|
|
675
655
|
[`7fef068`](https://github.com/Urigo/accounter-fullstack/commit/7fef0682c7316153ae5ffde42f97ce7284dd4c9a),
|
|
@@ -678,10 +658,10 @@
|
|
|
678
658
|
[`65e3c7f`](https://github.com/Urigo/accounter-fullstack/commit/65e3c7f01993eb4f41244a40feefefa08b31a4e6),
|
|
679
659
|
[`7a898a0`](https://github.com/Urigo/accounter-fullstack/commit/7a898a0ff1ee15420ab2532370a1d2f618cc86ab),
|
|
680
660
|
[`15ed6f9`](https://github.com/Urigo/accounter-fullstack/commit/15ed6f982a5d288a1159ccd069fca14b35801a18)]:
|
|
681
|
-
- @accounter/green-invoice-graphql@0.8.2-alpha-
|
|
682
|
-
- @accounter/pcn874-generator@0.6.3-alpha-
|
|
683
|
-
- @accounter/shaam-uniform-format-generator@0.2.2-alpha-
|
|
684
|
-
- @accounter/shaam6111-generator@0.1.4-alpha-
|
|
661
|
+
- @accounter/green-invoice-graphql@0.8.2-alpha-20251106080932-aeb05a6f60a5ad38f48a4149e31ae1c5482d7177
|
|
662
|
+
- @accounter/pcn874-generator@0.6.3-alpha-20251106080932-aeb05a6f60a5ad38f48a4149e31ae1c5482d7177
|
|
663
|
+
- @accounter/shaam-uniform-format-generator@0.2.2-alpha-20251106080932-aeb05a6f60a5ad38f48a4149e31ae1c5482d7177
|
|
664
|
+
- @accounter/shaam6111-generator@0.1.4-alpha-20251106080932-aeb05a6f60a5ad38f48a4149e31ae1c5482d7177
|
|
685
665
|
|
|
686
666
|
## 0.0.7
|
|
687
667
|
|
|
@@ -916,8 +916,10 @@ export type Client = {
|
|
|
916
916
|
readonly __typename?: 'Client';
|
|
917
917
|
readonly emails: ReadonlyArray<Scalars['String']['output']>;
|
|
918
918
|
readonly generatedDocumentType: DocumentType;
|
|
919
|
+
readonly greenInvoiceId?: Maybe<Scalars['UUID']['output']>;
|
|
920
|
+
readonly greenInvoiceInfo?: Maybe<GreenInvoiceClient>;
|
|
921
|
+
readonly hiveId?: Maybe<Scalars['String']['output']>;
|
|
919
922
|
readonly id: Scalars['UUID']['output'];
|
|
920
|
-
readonly integrations: ClientIntegrations;
|
|
921
923
|
readonly originalBusiness: LtdFinancialEntity;
|
|
922
924
|
};
|
|
923
925
|
/** fields for inserting a new client */
|
|
@@ -925,33 +927,15 @@ export type ClientInsertInput = {
|
|
|
925
927
|
readonly businessId: Scalars['UUID']['input'];
|
|
926
928
|
readonly emails?: InputMaybe<ReadonlyArray<Scalars['String']['input']>>;
|
|
927
929
|
readonly generatedDocumentType: DocumentType;
|
|
928
|
-
readonly integrations?: InputMaybe<ClientIntegrationsInput>;
|
|
929
|
-
};
|
|
930
|
-
/** integrations associated with a client */
|
|
931
|
-
export type ClientIntegrations = {
|
|
932
|
-
readonly __typename?: 'ClientIntegrations';
|
|
933
|
-
readonly greenInvoiceInfo?: Maybe<GreenInvoiceClient>;
|
|
934
|
-
readonly hiveId?: Maybe<Scalars['String']['output']>;
|
|
935
|
-
readonly id: Scalars['ID']['output'];
|
|
936
|
-
readonly linearId?: Maybe<Scalars['String']['output']>;
|
|
937
|
-
readonly notionId?: Maybe<Scalars['String']['output']>;
|
|
938
|
-
readonly slackChannelKey?: Maybe<Scalars['String']['output']>;
|
|
939
|
-
readonly workflowyUrl?: Maybe<Scalars['String']['output']>;
|
|
940
|
-
};
|
|
941
|
-
/** integrations input for client insert/update */
|
|
942
|
-
export type ClientIntegrationsInput = {
|
|
943
930
|
readonly greenInvoiceId?: InputMaybe<Scalars['UUID']['input']>;
|
|
944
931
|
readonly hiveId?: InputMaybe<Scalars['String']['input']>;
|
|
945
|
-
readonly linearId?: InputMaybe<Scalars['String']['input']>;
|
|
946
|
-
readonly notionId?: InputMaybe<Scalars['String']['input']>;
|
|
947
|
-
readonly slackChannelKey?: InputMaybe<Scalars['String']['input']>;
|
|
948
|
-
readonly workflowyUrl?: InputMaybe<Scalars['String']['input']>;
|
|
949
932
|
};
|
|
950
933
|
/** fields for updating an existing client */
|
|
951
934
|
export type ClientUpdateInput = {
|
|
952
935
|
readonly emails?: InputMaybe<ReadonlyArray<Scalars['String']['input']>>;
|
|
953
936
|
readonly generatedDocumentType?: InputMaybe<DocumentType>;
|
|
954
|
-
readonly
|
|
937
|
+
readonly greenInvoiceId?: InputMaybe<Scalars['UUID']['input']>;
|
|
938
|
+
readonly hiveId?: InputMaybe<Scalars['String']['input']>;
|
|
955
939
|
readonly newBusinessId?: InputMaybe<Scalars['UUID']['input']>;
|
|
956
940
|
};
|
|
957
941
|
/** common charge */
|
|
@@ -4273,8 +4257,6 @@ export type ResolversTypes = {
|
|
|
4273
4257
|
}>;
|
|
4274
4258
|
Client: ResolverTypeWrapper<IGetAllClientsResult>;
|
|
4275
4259
|
ClientInsertInput: ClientInsertInput;
|
|
4276
|
-
ClientIntegrations: ResolverTypeWrapper<IGetAllClientsResult>;
|
|
4277
|
-
ClientIntegrationsInput: ClientIntegrationsInput;
|
|
4278
4260
|
ClientUpdateInput: ClientUpdateInput;
|
|
4279
4261
|
CommonCharge: ResolverTypeWrapper<IGetChargesByIdsResult>;
|
|
4280
4262
|
CommonError: ResolverTypeWrapper<CommonError>;
|
|
@@ -4347,7 +4329,7 @@ export type ResolversTypes = {
|
|
|
4347
4329
|
Fund: ResolverTypeWrapper<ResolversInterfaceTypes<ResolversTypes>['Fund']>;
|
|
4348
4330
|
GenerateMonthlyClientDocumentsResult: ResolverTypeWrapper<GenerateMonthlyClientDocumentsResult>;
|
|
4349
4331
|
GeneratedLedgerRecords: ResolverTypeWrapper<ResolversUnionTypes<ResolversTypes>['GeneratedLedgerRecords']>;
|
|
4350
|
-
GreenInvoiceClient: ResolverTypeWrapper<
|
|
4332
|
+
GreenInvoiceClient: ResolverTypeWrapper<GreenInvoiceClient>;
|
|
4351
4333
|
GreenInvoiceClientInput: GreenInvoiceClientInput;
|
|
4352
4334
|
GreenInvoiceCountry: GreenInvoiceCountry;
|
|
4353
4335
|
GreenInvoiceDiscount: ResolverTypeWrapper<GreenInvoiceDiscount>;
|
|
@@ -4646,8 +4628,6 @@ export type ResolversParentTypes = {
|
|
|
4646
4628
|
};
|
|
4647
4629
|
Client: IGetAllClientsResult;
|
|
4648
4630
|
ClientInsertInput: ClientInsertInput;
|
|
4649
|
-
ClientIntegrations: IGetAllClientsResult;
|
|
4650
|
-
ClientIntegrationsInput: ClientIntegrationsInput;
|
|
4651
4631
|
ClientUpdateInput: ClientUpdateInput;
|
|
4652
4632
|
CommonCharge: IGetChargesByIdsResult;
|
|
4653
4633
|
CommonError: CommonError;
|
|
@@ -4711,7 +4691,7 @@ export type ResolversParentTypes = {
|
|
|
4711
4691
|
Fund: ResolversInterfaceTypes<ResolversParentTypes>['Fund'];
|
|
4712
4692
|
GenerateMonthlyClientDocumentsResult: GenerateMonthlyClientDocumentsResult;
|
|
4713
4693
|
GeneratedLedgerRecords: ResolversUnionTypes<ResolversParentTypes>['GeneratedLedgerRecords'];
|
|
4714
|
-
GreenInvoiceClient:
|
|
4694
|
+
GreenInvoiceClient: GreenInvoiceClient;
|
|
4715
4695
|
GreenInvoiceClientInput: GreenInvoiceClientInput;
|
|
4716
4696
|
GreenInvoiceDiscount: GreenInvoiceDiscount;
|
|
4717
4697
|
GreenInvoiceDiscountInput: GreenInvoiceDiscountInput;
|
|
@@ -5388,19 +5368,11 @@ export type ChargesWithLedgerChangesResultResolvers<ContextType = GraphQLModules
|
|
|
5388
5368
|
export type ClientResolvers<ContextType = GraphQLModules.Context, ParentType extends ResolversParentTypes['Client'] = ResolversParentTypes['Client']> = {
|
|
5389
5369
|
emails?: Resolver<ReadonlyArray<ResolversTypes['String']>, ParentType, ContextType>;
|
|
5390
5370
|
generatedDocumentType?: Resolver<ResolversTypes['DocumentType'], ParentType, ContextType>;
|
|
5391
|
-
|
|
5392
|
-
integrations?: Resolver<ResolversTypes['ClientIntegrations'], ParentType, ContextType>;
|
|
5393
|
-
originalBusiness?: Resolver<ResolversTypes['LtdFinancialEntity'], ParentType, ContextType>;
|
|
5394
|
-
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
|
|
5395
|
-
};
|
|
5396
|
-
export type ClientIntegrationsResolvers<ContextType = GraphQLModules.Context, ParentType extends ResolversParentTypes['ClientIntegrations'] = ResolversParentTypes['ClientIntegrations']> = {
|
|
5371
|
+
greenInvoiceId?: Resolver<Maybe<ResolversTypes['UUID']>, ParentType, ContextType>;
|
|
5397
5372
|
greenInvoiceInfo?: Resolver<Maybe<ResolversTypes['GreenInvoiceClient']>, ParentType, ContextType>;
|
|
5398
5373
|
hiveId?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
5399
|
-
id?: Resolver<ResolversTypes['
|
|
5400
|
-
|
|
5401
|
-
notionId?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
5402
|
-
slackChannelKey?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
5403
|
-
workflowyUrl?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
5374
|
+
id?: Resolver<ResolversTypes['UUID'], ParentType, ContextType>;
|
|
5375
|
+
originalBusiness?: Resolver<ResolversTypes['LtdFinancialEntity'], ParentType, ContextType>;
|
|
5404
5376
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
|
|
5405
5377
|
};
|
|
5406
5378
|
export type CommonChargeResolvers<ContextType = GraphQLModules.Context, ParentType extends ResolversParentTypes['CommonCharge'] = ResolversParentTypes['CommonCharge']> = {
|
|
@@ -7117,7 +7089,6 @@ export type Resolvers<ContextType = GraphQLModules.Context> = {
|
|
|
7117
7089
|
ChargeSuggestions?: ChargeSuggestionsResolvers<ContextType>;
|
|
7118
7090
|
ChargesWithLedgerChangesResult?: ChargesWithLedgerChangesResultResolvers<ContextType>;
|
|
7119
7091
|
Client?: ClientResolvers<ContextType>;
|
|
7120
|
-
ClientIntegrations?: ClientIntegrationsResolvers<ContextType>;
|
|
7121
7092
|
CommonCharge?: CommonChargeResolvers<ContextType>;
|
|
7122
7093
|
CommonError?: CommonErrorResolvers<ContextType>;
|
|
7123
7094
|
CommonTransaction?: CommonTransactionResolvers<ContextType>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/__generated__/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAu5BrD,OAAO,EAAE,iBAAiB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/__generated__/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAu5BrD,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAyX7B,OAAO,EAAE,QAAQ,EAAE,CAAC;AAuLpB,OAAO,EAAE,YAAY,EAAE,CAAC;AAomCxB,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAw6D7B,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
/** Types generated for queries found in "src/modules/financial-entities/providers/clients.provider.ts" */
|
|
2
2
|
export type document_type = 'CREDIT_INVOICE' | 'INVOICE' | 'INVOICE_RECEIPT' | 'OTHER' | 'PROFORMA' | 'RECEIPT' | 'UNPROCESSED';
|
|
3
|
-
export type Json = null | boolean | number | string | Json[] | {
|
|
4
|
-
[key: string]: Json;
|
|
5
|
-
};
|
|
6
3
|
export type stringArray = (string)[];
|
|
7
4
|
/** 'GetAllClients' parameters type */
|
|
8
5
|
export type IGetAllClientsParams = void;
|
|
@@ -13,7 +10,6 @@ export interface IGetAllClientsResult {
|
|
|
13
10
|
emails: stringArray | null;
|
|
14
11
|
green_invoice_id: string;
|
|
15
12
|
hive_id: string | null;
|
|
16
|
-
integrations: Json | null;
|
|
17
13
|
remark: string | null;
|
|
18
14
|
}
|
|
19
15
|
/** 'GetAllClients' query type */
|
|
@@ -32,7 +28,6 @@ export interface IGetClientsByIdsResult {
|
|
|
32
28
|
emails: stringArray | null;
|
|
33
29
|
green_invoice_id: string;
|
|
34
30
|
hive_id: string | null;
|
|
35
|
-
integrations: Json | null;
|
|
36
31
|
remark: string | null;
|
|
37
32
|
}
|
|
38
33
|
/** 'GetClientsByIds' query type */
|
|
@@ -49,10 +44,8 @@ export interface IGetClientsByGreenInvoiceIdsResult {
|
|
|
49
44
|
business_id: string;
|
|
50
45
|
document_type: document_type;
|
|
51
46
|
emails: stringArray | null;
|
|
52
|
-
green_invoice_business_id: string | null;
|
|
53
47
|
green_invoice_id: string;
|
|
54
48
|
hive_id: string | null;
|
|
55
|
-
integrations: Json | null;
|
|
56
49
|
remark: string | null;
|
|
57
50
|
}
|
|
58
51
|
/** 'GetClientsByGreenInvoiceIds' query type */
|
|
@@ -64,7 +57,8 @@ export interface IGetClientsByGreenInvoiceIdsQuery {
|
|
|
64
57
|
export interface IUpdateClientParams {
|
|
65
58
|
businessId?: string | null | void;
|
|
66
59
|
emails?: stringArray | null | void;
|
|
67
|
-
|
|
60
|
+
greenInvoiceId?: string | null | void;
|
|
61
|
+
hiveId?: string | null | void;
|
|
68
62
|
newBusinessId?: string | null | void;
|
|
69
63
|
}
|
|
70
64
|
/** 'UpdateClient' return type */
|
|
@@ -74,7 +68,6 @@ export interface IUpdateClientResult {
|
|
|
74
68
|
emails: stringArray | null;
|
|
75
69
|
green_invoice_id: string;
|
|
76
70
|
hive_id: string | null;
|
|
77
|
-
integrations: Json | null;
|
|
78
71
|
remark: string | null;
|
|
79
72
|
}
|
|
80
73
|
/** 'UpdateClient' query type */
|
|
@@ -99,7 +92,8 @@ export interface IDeleteClientQuery {
|
|
|
99
92
|
export interface IInsertClientParams {
|
|
100
93
|
businessId?: string | null | void;
|
|
101
94
|
emails?: stringArray | null | void;
|
|
102
|
-
|
|
95
|
+
greenInvoiceId?: string | null | void;
|
|
96
|
+
hiveId?: string | null | void;
|
|
103
97
|
}
|
|
104
98
|
/** 'InsertClient' return type */
|
|
105
99
|
export interface IInsertClientResult {
|
|
@@ -108,7 +102,6 @@ export interface IInsertClientResult {
|
|
|
108
102
|
emails: stringArray | null;
|
|
109
103
|
green_invoice_id: string;
|
|
110
104
|
hive_id: string | null;
|
|
111
|
-
integrations: Json | null;
|
|
112
105
|
remark: string | null;
|
|
113
106
|
}
|
|
114
107
|
/** 'InsertClient' query type */
|
|
@@ -17,8 +17,7 @@ export declare namespace FinancialEntitiesModule {
|
|
|
17
17
|
Suggestions: 'phrases' | 'tags' | 'description' | 'emails' | 'emailListener' | 'priority';
|
|
18
18
|
SuggestionsEmailListenerConfig: 'internalEmailLinks' | 'emailBody' | 'attachments';
|
|
19
19
|
PersonalFinancialEntity: 'id' | 'name' | 'email' | 'pcn874RecordType' | 'irsCode' | 'isActive' | 'createdAt' | 'updatedAt';
|
|
20
|
-
Client: 'id' | 'originalBusiness' | 'emails' | 'generatedDocumentType' | '
|
|
21
|
-
ClientIntegrations: 'id' | 'hiveId' | 'linearId' | 'slackChannelKey' | 'notionId' | 'workflowyUrl';
|
|
20
|
+
Client: 'id' | 'originalBusiness' | 'greenInvoiceId' | 'hiveId' | 'emails' | 'generatedDocumentType' | 'greenInvoiceInfo';
|
|
22
21
|
PaginatedFinancialEntities: 'nodes' | 'pageInfo';
|
|
23
22
|
TaxCategory: 'id' | 'name' | 'irsCode' | 'createdAt' | 'updatedAt' | 'isActive';
|
|
24
23
|
CommonCharge: 'owner' | 'counterparty' | 'taxCategory';
|
|
@@ -60,9 +59,8 @@ export declare namespace FinancialEntitiesModule {
|
|
|
60
59
|
InsertNewBusinessInput: 'name' | 'sortCode' | 'country' | 'hebrewName' | 'address' | 'email' | 'website' | 'phoneNumber' | 'governmentId' | 'taxCategory' | 'exemptDealer' | 'suggestions' | 'optionalVAT' | 'isReceiptEnough' | 'isDocumentsOptional' | 'pcn874RecordType' | 'irsCode' | 'isActive';
|
|
61
60
|
SuggestionsInput: 'phrases' | 'tags' | 'description' | 'emails' | 'emailListener' | 'priority';
|
|
62
61
|
SuggestionsEmailListenerConfigInput: 'internalEmailLinks' | 'emailBody' | 'attachments';
|
|
63
|
-
ClientInsertInput: 'businessId' | '
|
|
64
|
-
ClientUpdateInput: '
|
|
65
|
-
ClientIntegrationsInput: 'greenInvoiceId' | 'hiveId' | 'linearId' | 'slackChannelKey' | 'notionId' | 'workflowyUrl';
|
|
62
|
+
ClientInsertInput: 'businessId' | 'greenInvoiceId' | 'hiveId' | 'emails' | 'generatedDocumentType';
|
|
63
|
+
ClientUpdateInput: 'greenInvoiceId' | 'hiveId' | 'emails' | 'generatedDocumentType' | 'newBusinessId';
|
|
66
64
|
UpdateTaxCategoryInput: 'name' | 'sortCode' | 'irsCode' | 'isActive' | 'hashavshevetName' | 'taxExcluded';
|
|
67
65
|
InsertTaxCategoryInput: 'name' | 'sortCode' | 'irsCode' | 'hashavshevetName' | 'taxExcluded' | 'isActive';
|
|
68
66
|
UpdateChargeInput: 'counterpartyId' | 'ownerId';
|
|
@@ -125,8 +123,7 @@ export declare namespace FinancialEntitiesModule {
|
|
|
125
123
|
export type ClientUpdateInput = Pick<Types.ClientUpdateInput, DefinedInputFields['ClientUpdateInput']>;
|
|
126
124
|
export type ClientInsertInput = Pick<Types.ClientInsertInput, DefinedInputFields['ClientInsertInput']>;
|
|
127
125
|
export type DocumentType = Types.DocumentType;
|
|
128
|
-
export type
|
|
129
|
-
export type ClientIntegrationsInput = Pick<Types.ClientIntegrationsInput, DefinedInputFields['ClientIntegrationsInput']>;
|
|
126
|
+
export type GreenInvoiceClient = Types.GreenInvoiceClient;
|
|
130
127
|
export type PaginatedFinancialEntities = Pick<Types.PaginatedFinancialEntities, DefinedFields['PaginatedFinancialEntities']>;
|
|
131
128
|
export type UpdateChargeInput = Types.UpdateChargeInput;
|
|
132
129
|
export type Transaction = Types.Transaction;
|
|
@@ -159,7 +156,6 @@ export declare namespace FinancialEntitiesModule {
|
|
|
159
156
|
export type SuggestionsEmailListenerConfigResolvers = Pick<Types.SuggestionsEmailListenerConfigResolvers, DefinedFields['SuggestionsEmailListenerConfig']>;
|
|
160
157
|
export type PersonalFinancialEntityResolvers = Pick<Types.PersonalFinancialEntityResolvers, DefinedFields['PersonalFinancialEntity'] | '__isTypeOf'>;
|
|
161
158
|
export type ClientResolvers = Pick<Types.ClientResolvers, DefinedFields['Client'] | '__isTypeOf'>;
|
|
162
|
-
export type ClientIntegrationsResolvers = Pick<Types.ClientIntegrationsResolvers, DefinedFields['ClientIntegrations']>;
|
|
163
159
|
export type PaginatedFinancialEntitiesResolvers = Pick<Types.PaginatedFinancialEntitiesResolvers, DefinedFields['PaginatedFinancialEntities']>;
|
|
164
160
|
export type TaxCategoryResolvers = Pick<Types.TaxCategoryResolvers, DefinedFields['TaxCategory'] | '__isTypeOf'>;
|
|
165
161
|
export type CommonChargeResolvers = Pick<Types.CommonChargeResolvers, DefinedFields['CommonCharge']>;
|
|
@@ -203,7 +199,6 @@ export declare namespace FinancialEntitiesModule {
|
|
|
203
199
|
SuggestionsEmailListenerConfig?: SuggestionsEmailListenerConfigResolvers;
|
|
204
200
|
PersonalFinancialEntity?: PersonalFinancialEntityResolvers;
|
|
205
201
|
Client?: ClientResolvers;
|
|
206
|
-
ClientIntegrations?: ClientIntegrationsResolvers;
|
|
207
202
|
PaginatedFinancialEntities?: PaginatedFinancialEntitiesResolvers;
|
|
208
203
|
TaxCategory?: TaxCategoryResolvers;
|
|
209
204
|
CommonCharge?: CommonChargeResolvers;
|
|
@@ -445,18 +440,11 @@ export declare namespace FinancialEntitiesModule {
|
|
|
445
440
|
'*'?: gm.Middleware[];
|
|
446
441
|
id?: gm.Middleware[];
|
|
447
442
|
originalBusiness?: gm.Middleware[];
|
|
443
|
+
greenInvoiceId?: gm.Middleware[];
|
|
444
|
+
hiveId?: gm.Middleware[];
|
|
448
445
|
emails?: gm.Middleware[];
|
|
449
446
|
generatedDocumentType?: gm.Middleware[];
|
|
450
|
-
|
|
451
|
-
};
|
|
452
|
-
ClientIntegrations?: {
|
|
453
|
-
'*'?: gm.Middleware[];
|
|
454
|
-
id?: gm.Middleware[];
|
|
455
|
-
hiveId?: gm.Middleware[];
|
|
456
|
-
linearId?: gm.Middleware[];
|
|
457
|
-
slackChannelKey?: gm.Middleware[];
|
|
458
|
-
notionId?: gm.Middleware[];
|
|
459
|
-
workflowyUrl?: gm.Middleware[];
|
|
447
|
+
greenInvoiceInfo?: gm.Middleware[];
|
|
460
448
|
};
|
|
461
449
|
PaginatedFinancialEntities?: {
|
|
462
450
|
'*'?: gm.Middleware[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/__generated__/types.ts"],"names":[],"mappings":"AAEA,MAAM,KAAW,uBAAuB,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/__generated__/types.ts"],"names":[],"mappings":"AAEA,MAAM,KAAW,uBAAuB,CA2fvC;AA3fD,WAAiB,uBAAuB;IA4CrC,CAAC;IAKD,CAAC;IAiBD,CAAC;IA+JD,CAAC;IAyRD,CAAC;AACJ,CAAC,EA3fgB,uBAAuB,KAAvB,uBAAuB,QA2fvC"}
|
|
@@ -264,7 +264,7 @@ const replaceBusinesses = sql `
|
|
|
264
264
|
UPDATE accounter_schema.clients
|
|
265
265
|
SET business_id = $targetBusinessId
|
|
266
266
|
WHERE business_id = $businessIdToReplace
|
|
267
|
-
RETURNING
|
|
267
|
+
RETURNING green_invoice_id
|
|
268
268
|
)
|
|
269
269
|
UPDATE accounter_schema.transactions
|
|
270
270
|
SET business_id = $targetBusinessId
|
|
@@ -4,7 +4,6 @@ import { Injectable, Scope } from 'graphql-modules';
|
|
|
4
4
|
import { DBProvider } from '../../app-providers/db.provider.js';
|
|
5
5
|
import { sql } from '@pgtyped/runtime';
|
|
6
6
|
import { getCacheInstance } from '../../../shared/helpers/index.js';
|
|
7
|
-
import { validateClientIntegrations } from '../helpers/clients.helper.js';
|
|
8
7
|
const getAllClients = sql `
|
|
9
8
|
SELECT *
|
|
10
9
|
FROM accounter_schema.clients;
|
|
@@ -15,13 +14,23 @@ const getClientsByIds = sql `
|
|
|
15
14
|
WHERE business_id IN $$businessIds;
|
|
16
15
|
`;
|
|
17
16
|
const getClientsByGreenInvoiceIds = sql `
|
|
18
|
-
SELECT
|
|
17
|
+
SELECT *
|
|
19
18
|
FROM accounter_schema.clients
|
|
20
|
-
WHERE
|
|
19
|
+
WHERE green_invoice_id IN $$greenInvoiceBusinessIds;
|
|
21
20
|
`;
|
|
22
21
|
const updateClient = sql `
|
|
23
22
|
UPDATE accounter_schema.clients
|
|
24
23
|
SET
|
|
24
|
+
green_invoice_id = COALESCE(
|
|
25
|
+
$greenInvoiceId,
|
|
26
|
+
green_invoice_id,
|
|
27
|
+
NULL
|
|
28
|
+
),
|
|
29
|
+
hive_id = COALESCE(
|
|
30
|
+
$hiveId,
|
|
31
|
+
hive_id,
|
|
32
|
+
NULL
|
|
33
|
+
),
|
|
25
34
|
emails = COALESCE(
|
|
26
35
|
$emails,
|
|
27
36
|
emails,
|
|
@@ -31,11 +40,6 @@ const updateClient = sql `
|
|
|
31
40
|
$newBusinessId,
|
|
32
41
|
business_id,
|
|
33
42
|
NULL
|
|
34
|
-
),
|
|
35
|
-
integrations = COALESCE(
|
|
36
|
-
$integrations,
|
|
37
|
-
integrations,
|
|
38
|
-
NULL
|
|
39
43
|
)
|
|
40
44
|
WHERE
|
|
41
45
|
business_id = $businessId
|
|
@@ -47,8 +51,8 @@ const deleteClient = sql `
|
|
|
47
51
|
RETURNING business_id;
|
|
48
52
|
`;
|
|
49
53
|
const insertClient = sql `
|
|
50
|
-
INSERT INTO accounter_schema.clients (business_id,
|
|
51
|
-
VALUES ($businessId, $
|
|
54
|
+
INSERT INTO accounter_schema.clients (business_id, green_invoice_id, hive_id, emails)
|
|
55
|
+
VALUES ($businessId, $greenInvoiceId, $hiveId, $emails)
|
|
52
56
|
RETURNING *;`;
|
|
53
57
|
let ClientsProvider = class ClientsProvider {
|
|
54
58
|
dbProvider;
|
|
@@ -67,13 +71,7 @@ let ClientsProvider = class ClientsProvider {
|
|
|
67
71
|
this.cache.set('all-clients', data);
|
|
68
72
|
data.map(client => {
|
|
69
73
|
this.cache.set(`client-id-${client.business_id}`, client);
|
|
70
|
-
|
|
71
|
-
const { greenInvoiceId } = validateClientIntegrations(client.integrations ?? {});
|
|
72
|
-
this.cache.set(`client-green-invoice-id-${greenInvoiceId}`, client);
|
|
73
|
-
}
|
|
74
|
-
catch {
|
|
75
|
-
// swallow errors
|
|
76
|
-
}
|
|
74
|
+
this.cache.set(`client-green-invoice-id-${client.green_invoice_id}`, client);
|
|
77
75
|
});
|
|
78
76
|
return data;
|
|
79
77
|
});
|
|
@@ -95,7 +93,7 @@ let ClientsProvider = class ClientsProvider {
|
|
|
95
93
|
async batchClientsByGreenInvoiceIds(greenInvoiceIds) {
|
|
96
94
|
try {
|
|
97
95
|
const matches = await getClientsByGreenInvoiceIds.run({ greenInvoiceBusinessIds: greenInvoiceIds }, this.dbProvider);
|
|
98
|
-
return greenInvoiceIds.map(id => matches.find(match => match.
|
|
96
|
+
return greenInvoiceIds.map(id => matches.find(match => match.green_invoice_id === id));
|
|
99
97
|
}
|
|
100
98
|
catch (e) {
|
|
101
99
|
console.error(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clients.provider.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/providers/clients.provider.ts"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"clients.provider.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/providers/clients.provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { GraphQLError } from 'graphql';
|
|
2
|
+
import { GreenInvoiceClientProvider } from '../../app-providers/green-invoice-client.js';
|
|
2
3
|
import { BusinessesProvider } from '../../financial-entities/providers/businesses.provider.js';
|
|
3
4
|
import { addGreenInvoiceClient, updateGreenInvoiceClient, } from '../../green-invoice/helpers/green-invoice-clients.helper.js';
|
|
4
|
-
import { validateClientIntegrations } from '../helpers/clients.helper.js';
|
|
5
5
|
import { ClientsProvider } from '../providers/clients.provider.js';
|
|
6
6
|
export const clientsResolvers = {
|
|
7
7
|
Query: {
|
|
@@ -33,25 +33,12 @@ export const clientsResolvers = {
|
|
|
33
33
|
},
|
|
34
34
|
Mutation: {
|
|
35
35
|
updateClient: async (_, { businessId, fields }, { injector }) => {
|
|
36
|
-
let updatedIntegrations = fields.integrations ?? undefined;
|
|
37
|
-
if (updatedIntegrations) {
|
|
38
|
-
const currentClient = await injector
|
|
39
|
-
.get(ClientsProvider)
|
|
40
|
-
.getClientByIdLoader.load(businessId);
|
|
41
|
-
if (!currentClient) {
|
|
42
|
-
throw new GraphQLError(`Client with ID="${businessId}" not found`);
|
|
43
|
-
}
|
|
44
|
-
const currentIntegrations = validateClientIntegrations(currentClient.integrations);
|
|
45
|
-
updatedIntegrations = {
|
|
46
|
-
...currentIntegrations,
|
|
47
|
-
...updatedIntegrations,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
36
|
const adjustedFields = {
|
|
51
37
|
businessId,
|
|
52
38
|
emails: fields.emails ? [...fields.emails] : undefined,
|
|
39
|
+
greenInvoiceId: fields.greenInvoiceId,
|
|
40
|
+
hiveId: fields.hiveId,
|
|
53
41
|
newBusinessId: fields.newBusinessId,
|
|
54
|
-
integrations: updatedIntegrations,
|
|
55
42
|
};
|
|
56
43
|
try {
|
|
57
44
|
const [updatedClient] = await injector
|
|
@@ -81,7 +68,8 @@ export const clientsResolvers = {
|
|
|
81
68
|
const newClient = {
|
|
82
69
|
businessId: fields.businessId,
|
|
83
70
|
emails: fields.emails ? [...fields.emails] : [],
|
|
84
|
-
|
|
71
|
+
greenInvoiceId: fields.greenInvoiceId,
|
|
72
|
+
hiveId: fields.hiveId,
|
|
85
73
|
};
|
|
86
74
|
const [insertClient] = await injector.get(ClientsProvider).insertClient(newClient);
|
|
87
75
|
if (!insertClient) {
|
|
@@ -111,16 +99,26 @@ export const clientsResolvers = {
|
|
|
111
99
|
}
|
|
112
100
|
return businessMatch;
|
|
113
101
|
},
|
|
102
|
+
greenInvoiceId: business => business.green_invoice_id,
|
|
103
|
+
hiveId: business => business.hive_id,
|
|
114
104
|
emails: business => business.emails ?? [],
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
105
|
+
greenInvoiceInfo: async (business, _, { injector }) => {
|
|
106
|
+
if (!business.green_invoice_id) {
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
const client = await injector
|
|
110
|
+
.get(GreenInvoiceClientProvider)
|
|
111
|
+
.clientLoader.load(business.green_invoice_id);
|
|
112
|
+
if (!client) {
|
|
113
|
+
throw new GraphQLError(`Green Invoice client with ID "${business.green_invoice_id}" not found`);
|
|
114
|
+
}
|
|
115
|
+
const emails = client.emails ? client.emails.filter(Boolean) : [];
|
|
116
|
+
return {
|
|
117
|
+
...client,
|
|
118
|
+
emails,
|
|
119
|
+
id: business.green_invoice_id,
|
|
120
|
+
};
|
|
121
|
+
},
|
|
124
122
|
},
|
|
125
123
|
LtdFinancialEntity: {
|
|
126
124
|
clientInfo: async (business, _, { injector }) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clients.resolvers.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/resolvers/clients.resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,EACL,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,gEAAgE,CAAC;AAExE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"clients.resolvers.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/resolvers/clients.resolvers.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,45 +15,29 @@ export default gql `
|
|
|
15
15
|
type Client {
|
|
16
16
|
id: UUID!
|
|
17
17
|
originalBusiness: LtdFinancialEntity!
|
|
18
|
+
greenInvoiceId: UUID
|
|
19
|
+
hiveId: String
|
|
18
20
|
emails: [String!]!
|
|
19
21
|
generatedDocumentType: DocumentType!
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
" integrations associated with a client "
|
|
24
|
-
type ClientIntegrations {
|
|
25
|
-
id: ID!
|
|
26
|
-
hiveId: String
|
|
27
|
-
linearId: String
|
|
28
|
-
slackChannelKey: String
|
|
29
|
-
notionId: String
|
|
30
|
-
workflowyUrl: String
|
|
22
|
+
greenInvoiceInfo: GreenInvoiceClient
|
|
31
23
|
}
|
|
32
24
|
|
|
33
25
|
" fields for inserting a new client "
|
|
34
26
|
input ClientInsertInput {
|
|
35
27
|
businessId: UUID!
|
|
28
|
+
greenInvoiceId: UUID
|
|
29
|
+
hiveId: String
|
|
36
30
|
emails: [String!]
|
|
37
31
|
generatedDocumentType: DocumentType!
|
|
38
|
-
integrations: ClientIntegrationsInput
|
|
39
32
|
}
|
|
40
33
|
|
|
41
34
|
" fields for updating an existing client "
|
|
42
35
|
input ClientUpdateInput {
|
|
43
|
-
newBusinessId: UUID
|
|
44
|
-
emails: [String!]
|
|
45
|
-
generatedDocumentType: DocumentType
|
|
46
|
-
integrations: ClientIntegrationsInput
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
" integrations input for client insert/update "
|
|
50
|
-
input ClientIntegrationsInput {
|
|
51
36
|
greenInvoiceId: UUID
|
|
52
37
|
hiveId: String
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
workflowyUrl: String
|
|
38
|
+
emails: [String!]
|
|
39
|
+
generatedDocumentType: DocumentType
|
|
40
|
+
newBusinessId: UUID
|
|
57
41
|
}
|
|
58
42
|
|
|
59
43
|
" result type for updateClient "
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clients.graphql.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/typeDefs/clients.graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,eAAe,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"clients.graphql.js","sourceRoot":"","sources":["../../../../../../src/modules/financial-entities/typeDefs/clients.graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+CjB,CAAC"}
|