@hed-hog/contact 0.0.279 → 0.0.286

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/README.md +2 -0
  2. package/dist/contact.service.d.ts +2 -148
  3. package/dist/contact.service.d.ts.map +1 -1
  4. package/dist/person/dto/create-followup.dto.d.ts +5 -0
  5. package/dist/person/dto/create-followup.dto.d.ts.map +1 -0
  6. package/dist/person/dto/create-followup.dto.js +31 -0
  7. package/dist/person/dto/create-followup.dto.js.map +1 -0
  8. package/dist/person/dto/create-interaction.dto.d.ts +12 -0
  9. package/dist/person/dto/create-interaction.dto.d.ts.map +1 -0
  10. package/dist/person/dto/create-interaction.dto.js +39 -0
  11. package/dist/person/dto/create-interaction.dto.js.map +1 -0
  12. package/dist/person/dto/create.dto.d.ts +24 -0
  13. package/dist/person/dto/create.dto.d.ts.map +1 -1
  14. package/dist/person/dto/create.dto.js +56 -1
  15. package/dist/person/dto/create.dto.js.map +1 -1
  16. package/dist/person/dto/duplicates-query.dto.d.ts +8 -0
  17. package/dist/person/dto/duplicates-query.dto.d.ts.map +1 -0
  18. package/dist/person/dto/duplicates-query.dto.js +45 -0
  19. package/dist/person/dto/duplicates-query.dto.js.map +1 -0
  20. package/dist/person/dto/merge.dto.d.ts +6 -0
  21. package/dist/person/dto/merge.dto.d.ts.map +1 -0
  22. package/dist/person/dto/merge.dto.js +35 -0
  23. package/dist/person/dto/merge.dto.js.map +1 -0
  24. package/dist/person/dto/update-lifecycle-stage.dto.d.ts +13 -0
  25. package/dist/person/dto/update-lifecycle-stage.dto.d.ts.map +1 -0
  26. package/dist/person/dto/update-lifecycle-stage.dto.js +34 -0
  27. package/dist/person/dto/update-lifecycle-stage.dto.js.map +1 -0
  28. package/dist/person/dto/update.dto.d.ts +8 -1
  29. package/dist/person/dto/update.dto.d.ts.map +1 -1
  30. package/dist/person/dto/update.dto.js +36 -0
  31. package/dist/person/dto/update.dto.js.map +1 -1
  32. package/dist/person/person.controller.d.ts +57 -1
  33. package/dist/person/person.controller.d.ts.map +1 -1
  34. package/dist/person/person.controller.js +85 -3
  35. package/dist/person/person.controller.js.map +1 -1
  36. package/dist/person/person.service.d.ts +79 -0
  37. package/dist/person/person.service.d.ts.map +1 -1
  38. package/dist/person/person.service.js +730 -9
  39. package/dist/person/person.service.js.map +1 -1
  40. package/hedhog/data/route.yaml +18 -0
  41. package/hedhog/frontend/app/_components/crm-coming-soon.tsx.ejs +110 -110
  42. package/hedhog/frontend/app/_components/crm-nav.tsx.ejs +73 -73
  43. package/hedhog/frontend/app/_lib/crm-mocks.ts.ejs +498 -256
  44. package/hedhog/frontend/app/_lib/crm-sections.tsx.ejs +81 -81
  45. package/hedhog/frontend/app/accounts/_components/account-form-sheet.tsx.ejs +477 -0
  46. package/hedhog/frontend/app/accounts/_components/account-types.ts.ejs +62 -0
  47. package/hedhog/frontend/app/accounts/page.tsx.ejs +892 -15
  48. package/hedhog/frontend/app/activities/page.tsx.ejs +812 -15
  49. package/hedhog/frontend/app/contact-type/page.tsx.ejs +105 -91
  50. package/hedhog/frontend/app/dashboard/page.tsx.ejs +491 -573
  51. package/hedhog/frontend/app/document-type/page.tsx.ejs +105 -91
  52. package/hedhog/frontend/app/follow-ups/page.tsx.ejs +696 -15
  53. package/hedhog/frontend/app/page.tsx.ejs +5 -5
  54. package/hedhog/frontend/app/person/_components/person-form-sheet.tsx.ejs +1440 -1103
  55. package/hedhog/frontend/app/person/_components/person-interaction-dialog.tsx.ejs +4 -3
  56. package/hedhog/frontend/app/person/_components/person-types.ts.ejs +14 -0
  57. package/hedhog/frontend/app/person/page.tsx.ejs +112 -190
  58. package/hedhog/frontend/app/pipeline/_components/lead-detail-sheet.tsx.ejs +599 -0
  59. package/hedhog/frontend/app/pipeline/page.tsx.ejs +1048 -299
  60. package/hedhog/frontend/app/reports/page.tsx.ejs +15 -15
  61. package/hedhog/frontend/messages/en.json +268 -0
  62. package/hedhog/frontend/messages/pt.json +233 -0
  63. package/package.json +6 -6
  64. package/src/contact.service.ts +2 -2
  65. package/src/person/dto/create-followup.dto.ts +15 -0
  66. package/src/person/dto/create-interaction.dto.ts +23 -0
  67. package/src/person/dto/create.dto.ts +50 -0
  68. package/src/person/dto/duplicates-query.dto.ts +34 -0
  69. package/src/person/dto/merge.dto.ts +15 -0
  70. package/src/person/dto/update-lifecycle-stage.dto.ts +19 -0
  71. package/src/person/dto/update.dto.ts +31 -1
  72. package/src/person/person.controller.ts +63 -2
  73. package/src/person/person.service.ts +1096 -7
package/README.md CHANGED
@@ -1,3 +1,4 @@
1
+ ```markdown
1
2
  # @hed-hog/contact
2
3
 
3
4
  ## 1. Visão geral do módulo
@@ -482,3 +483,4 @@ Content-Type: application/json
482
483
  ---
483
484
 
484
485
  Este README documenta as funcionalidades principais do módulo `@hed-hog/contact` com base no código e definições atuais. Para detalhes adicionais, consulte o código fonte e as definições de DTOs.
486
+ ```
@@ -10,154 +10,8 @@ export declare class ContactService {
10
10
  private readonly mailService;
11
11
  private readonly jwtService;
12
12
  constructor(configService: ConfigService, prismaService: PrismaService, mailService: MailService, jwtService: JwtService);
13
- getPerson(personId: number): Promise<{
14
- address: {
15
- id: number;
16
- address_type: import("@prisma/client").$Enums.address_address_type_enum;
17
- country_code: string;
18
- state: string;
19
- city: string;
20
- postal_code: string;
21
- line1: string;
22
- line2: string;
23
- is_primary: boolean;
24
- created_at: Date;
25
- updated_at: Date;
26
- }[];
27
- contact: {
28
- value: string;
29
- id: number;
30
- is_primary: boolean;
31
- created_at: Date;
32
- updated_at: Date;
33
- person_id: number;
34
- contact_type_id: number;
35
- }[];
36
- document: {
37
- value: string;
38
- id: number;
39
- created_at: Date;
40
- updated_at: Date;
41
- person_id: number;
42
- document_type_id: number;
43
- }[];
44
- person_metadata: {
45
- value: import("@prisma/client/runtime/library").JsonValue;
46
- id: number;
47
- created_at: Date;
48
- updated_at: Date;
49
- person_id: number;
50
- key: string;
51
- }[];
52
- name: string;
53
- type: import("@prisma/client").$Enums.person_type_enum;
54
- id: number;
55
- created_at: Date;
56
- updated_at: Date;
57
- status: import("@prisma/client").$Enums.person_status_enum;
58
- avatar_id: number | null;
59
- }>;
60
- getPersonOrCreateIfNotExists(type_id: number, name: string, email: string, phone: string, cpf: string, cnpj: string): Promise<{
61
- person: {
62
- address: {
63
- id: number;
64
- address_type: import("@prisma/client").$Enums.address_address_type_enum;
65
- country_code: string;
66
- state: string;
67
- city: string;
68
- postal_code: string;
69
- line1: string;
70
- line2: string;
71
- is_primary: boolean;
72
- created_at: Date;
73
- updated_at: Date;
74
- }[];
75
- contact: {
76
- value: string;
77
- id: number;
78
- is_primary: boolean;
79
- created_at: Date;
80
- updated_at: Date;
81
- person_id: number;
82
- contact_type_id: number;
83
- }[];
84
- document: {
85
- value: string;
86
- id: number;
87
- created_at: Date;
88
- updated_at: Date;
89
- person_id: number;
90
- document_type_id: number;
91
- }[];
92
- person_metadata: {
93
- value: import("@prisma/client/runtime/library").JsonValue;
94
- id: number;
95
- created_at: Date;
96
- updated_at: Date;
97
- person_id: number;
98
- key: string;
99
- }[];
100
- name: string;
101
- type: import("@prisma/client").$Enums.person_type_enum;
102
- id: number;
103
- created_at: Date;
104
- updated_at: Date;
105
- status: import("@prisma/client").$Enums.person_status_enum;
106
- avatar_id: number | null;
107
- };
108
- created: boolean;
109
- code?: undefined;
110
- } | {
111
- person: {
112
- address: {
113
- id: number;
114
- address_type: import("@prisma/client").$Enums.address_address_type_enum;
115
- country_code: string;
116
- state: string;
117
- city: string;
118
- postal_code: string;
119
- line1: string;
120
- line2: string;
121
- is_primary: boolean;
122
- created_at: Date;
123
- updated_at: Date;
124
- }[];
125
- contact: {
126
- value: string;
127
- id: number;
128
- is_primary: boolean;
129
- created_at: Date;
130
- updated_at: Date;
131
- person_id: number;
132
- contact_type_id: number;
133
- }[];
134
- document: {
135
- value: string;
136
- id: number;
137
- created_at: Date;
138
- updated_at: Date;
139
- person_id: number;
140
- document_type_id: number;
141
- }[];
142
- person_metadata: {
143
- value: import("@prisma/client/runtime/library").JsonValue;
144
- id: number;
145
- created_at: Date;
146
- updated_at: Date;
147
- person_id: number;
148
- key: string;
149
- }[];
150
- name: string;
151
- type: import("@prisma/client").$Enums.person_type_enum;
152
- id: number;
153
- created_at: Date;
154
- updated_at: Date;
155
- status: import("@prisma/client").$Enums.person_status_enum;
156
- avatar_id: number | null;
157
- };
158
- created: boolean;
159
- code: string;
160
- }>;
13
+ getPerson(personId: number): Promise<any>;
14
+ getPersonOrCreateIfNotExists(type_id: number, name: string, email: string, phone: string, cpf: string, cnpj: string): Promise<any>;
161
15
  addContactIfNotExists(personId: number, value: string, typeId: number): Promise<{
162
16
  value: string;
163
17
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"contact.service.d.ts","sourceRoot":"","sources":["../src/contact.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAG5E,qBACa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAHV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU;IAGnC,SAAS,CAAC,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6B1B,4BAA4B,CAChC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqGR,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;;;;;;IAsBrE,sBAAsB,CAC1B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM;;;;;;;;IAuBV,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB;;;;;;;;;IAShE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB;;;;;;;;CAQzE"}
1
+ {"version":3,"file":"contact.service.d.ts","sourceRoot":"","sources":["../src/contact.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAG5E,qBACa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAHV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU;IAGnC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IA6BzC,4BAA4B,CAChC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,GAAG,CAAC;IAoGT,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;;;;;;IAsBrE,sBAAsB,CAC1B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM;;;;;;;;IAuBV,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB;;;;;;;;;IAShE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB;;;;;;;;CAQzE"}
@@ -0,0 +1,5 @@
1
+ export declare class CreateFollowupDTO {
2
+ next_action_at: string;
3
+ notes?: string | null;
4
+ }
5
+ //# sourceMappingURL=create-followup.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-followup.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/create-followup.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,iBAAiB;IAI5B,cAAc,EAAE,MAAM,CAAC;IAMvB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateFollowupDTO = void 0;
13
+ const api_locale_1 = require("@hed-hog/api-locale");
14
+ const class_validator_1 = require("class-validator");
15
+ class CreateFollowupDTO {
16
+ }
17
+ exports.CreateFollowupDTO = CreateFollowupDTO;
18
+ __decorate([
19
+ (0, class_validator_1.IsDateString)({}, {
20
+ message: (args) => (0, api_locale_1.getLocaleText)('validation.dateMustBeString', args.value),
21
+ }),
22
+ __metadata("design:type", String)
23
+ ], CreateFollowupDTO.prototype, "next_action_at", void 0);
24
+ __decorate([
25
+ (0, class_validator_1.IsOptional)(),
26
+ (0, class_validator_1.IsString)({
27
+ message: (args) => (0, api_locale_1.getLocaleText)('validation.notesMustBeString', args.value),
28
+ }),
29
+ __metadata("design:type", String)
30
+ ], CreateFollowupDTO.prototype, "notes", void 0);
31
+ //# sourceMappingURL=create-followup.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-followup.dto.js","sourceRoot":"","sources":["../../../src/person/dto/create-followup.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAAqE;AAErE,MAAa,iBAAiB;CAW7B;AAXD,8CAWC;AAPC;IAHC,IAAA,8BAAY,EAAC,EAAE,EAAE;QAChB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC5E,CAAC;;yDACqB;AAMvB;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC;QACR,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,8BAA8B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC7E,CAAC;;gDACoB"}
@@ -0,0 +1,12 @@
1
+ export declare enum PersonInteractionTypeDTO {
2
+ CALL = "call",
3
+ EMAIL = "email",
4
+ WHATSAPP = "whatsapp",
5
+ MEETING = "meeting",
6
+ NOTE = "note"
7
+ }
8
+ export declare class CreateInteractionDTO {
9
+ type: PersonInteractionTypeDTO;
10
+ notes?: string | null;
11
+ }
12
+ //# sourceMappingURL=create-interaction.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-interaction.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/create-interaction.dto.ts"],"names":[],"mappings":"AAGA,oBAAY,wBAAwB;IAClC,IAAI,SAAS;IACb,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,IAAI,SAAS;CACd;AAED,qBAAa,oBAAoB;IAI/B,IAAI,EAAE,wBAAwB,CAAC;IAM/B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateInteractionDTO = exports.PersonInteractionTypeDTO = void 0;
13
+ const api_locale_1 = require("@hed-hog/api-locale");
14
+ const class_validator_1 = require("class-validator");
15
+ var PersonInteractionTypeDTO;
16
+ (function (PersonInteractionTypeDTO) {
17
+ PersonInteractionTypeDTO["CALL"] = "call";
18
+ PersonInteractionTypeDTO["EMAIL"] = "email";
19
+ PersonInteractionTypeDTO["WHATSAPP"] = "whatsapp";
20
+ PersonInteractionTypeDTO["MEETING"] = "meeting";
21
+ PersonInteractionTypeDTO["NOTE"] = "note";
22
+ })(PersonInteractionTypeDTO || (exports.PersonInteractionTypeDTO = PersonInteractionTypeDTO = {}));
23
+ class CreateInteractionDTO {
24
+ }
25
+ exports.CreateInteractionDTO = CreateInteractionDTO;
26
+ __decorate([
27
+ (0, class_validator_1.IsEnum)(PersonInteractionTypeDTO, {
28
+ message: (args) => (0, api_locale_1.getLocaleText)('validation.typeMustBeEnum', args.value),
29
+ }),
30
+ __metadata("design:type", String)
31
+ ], CreateInteractionDTO.prototype, "type", void 0);
32
+ __decorate([
33
+ (0, class_validator_1.IsOptional)(),
34
+ (0, class_validator_1.IsString)({
35
+ message: (args) => (0, api_locale_1.getLocaleText)('validation.notesMustBeString', args.value),
36
+ }),
37
+ __metadata("design:type", String)
38
+ ], CreateInteractionDTO.prototype, "notes", void 0);
39
+ //# sourceMappingURL=create-interaction.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-interaction.dto.js","sourceRoot":"","sources":["../../../src/person/dto/create-interaction.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAA+D;AAE/D,IAAY,wBAMX;AAND,WAAY,wBAAwB;IAClC,yCAAa,CAAA;IACb,2CAAe,CAAA;IACf,iDAAqB,CAAA;IACrB,+CAAmB,CAAA;IACnB,yCAAa,CAAA;AACf,CAAC,EANW,wBAAwB,wCAAxB,wBAAwB,QAMnC;AAED,MAAa,oBAAoB;CAWhC;AAXD,oDAWC;AAPC;IAHC,IAAA,wBAAM,EAAC,wBAAwB,EAAE;QAChC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC1E,CAAC;;kDAC6B;AAM/B;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC;QACR,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,8BAA8B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC7E,CAAC;;mDACoB"}
@@ -11,6 +11,23 @@ export declare enum PersonGender {
11
11
  FEMALE = "female",
12
12
  OTHER = "other"
13
13
  }
14
+ export declare enum PersonSource {
15
+ REFERRAL = "referral",
16
+ WEBSITE = "website",
17
+ SOCIAL = "social",
18
+ INBOUND = "inbound",
19
+ OUTBOUND = "outbound",
20
+ OTHER = "other"
21
+ }
22
+ export declare enum PersonLifecycleStage {
23
+ NEW = "new",
24
+ CONTACTED = "contacted",
25
+ QUALIFIED = "qualified",
26
+ PROPOSAL = "proposal",
27
+ NEGOTIATION = "negotiation",
28
+ CUSTOMER = "customer",
29
+ LOST = "lost"
30
+ }
14
31
  export declare class CreateDTO {
15
32
  name: string;
16
33
  type: PersonType;
@@ -24,5 +41,12 @@ export declare class CreateDTO {
24
41
  legal_nature?: string | null;
25
42
  notes?: string | null;
26
43
  employer_company_id?: number | null;
44
+ owner_user_id?: number | null;
45
+ source?: PersonSource | null;
46
+ lifecycle_stage?: PersonLifecycleStage | null;
47
+ next_action_at?: string | null;
48
+ score?: number | null;
49
+ deal_value?: number | null;
50
+ tags?: string[] | null;
27
51
  }
28
52
  //# sourceMappingURL=create.dto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/create.dto.ts"],"names":[],"mappings":"AASA,oBAAY,UAAU;IACpB,UAAU,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,oBAAY,YAAY;IACtB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,oBAAY,YAAY;IACtB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,qBAAa,SAAS;IAEpB,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,UAAU,CAAC;IAGjB,MAAM,EAAE,YAAY,CAAuB;IAI3C,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAI7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIhC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAItB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC"}
1
+ {"version":3,"file":"create.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/create.dto.ts"],"names":[],"mappings":"AAWA,oBAAY,UAAU;IACpB,UAAU,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,oBAAY,YAAY;IACtB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,oBAAY,YAAY;IACtB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,oBAAY,YAAY;IACtB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,KAAK,UAAU;CAChB;AAED,oBAAY,oBAAoB;IAC9B,GAAG,QAAQ;IACX,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAED,qBAAa,SAAS;IAEpB,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,UAAU,CAAC;IAGjB,MAAM,EAAE,YAAY,CAAuB;IAI3C,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAI7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIhC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAItB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIpC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI9B,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAI7B,eAAe,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAI9C,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI/B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAItB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAK3B,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACxB"}
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.CreateDTO = exports.PersonGender = exports.PersonStatus = exports.PersonType = void 0;
12
+ exports.CreateDTO = exports.PersonLifecycleStage = exports.PersonSource = exports.PersonGender = exports.PersonStatus = exports.PersonType = void 0;
13
13
  const api_locale_1 = require("@hed-hog/api-locale");
14
14
  const class_validator_1 = require("class-validator");
15
15
  var PersonType;
@@ -28,6 +28,25 @@ var PersonGender;
28
28
  PersonGender["FEMALE"] = "female";
29
29
  PersonGender["OTHER"] = "other";
30
30
  })(PersonGender || (exports.PersonGender = PersonGender = {}));
31
+ var PersonSource;
32
+ (function (PersonSource) {
33
+ PersonSource["REFERRAL"] = "referral";
34
+ PersonSource["WEBSITE"] = "website";
35
+ PersonSource["SOCIAL"] = "social";
36
+ PersonSource["INBOUND"] = "inbound";
37
+ PersonSource["OUTBOUND"] = "outbound";
38
+ PersonSource["OTHER"] = "other";
39
+ })(PersonSource || (exports.PersonSource = PersonSource = {}));
40
+ var PersonLifecycleStage;
41
+ (function (PersonLifecycleStage) {
42
+ PersonLifecycleStage["NEW"] = "new";
43
+ PersonLifecycleStage["CONTACTED"] = "contacted";
44
+ PersonLifecycleStage["QUALIFIED"] = "qualified";
45
+ PersonLifecycleStage["PROPOSAL"] = "proposal";
46
+ PersonLifecycleStage["NEGOTIATION"] = "negotiation";
47
+ PersonLifecycleStage["CUSTOMER"] = "customer";
48
+ PersonLifecycleStage["LOST"] = "lost";
49
+ })(PersonLifecycleStage || (exports.PersonLifecycleStage = PersonLifecycleStage = {}));
31
50
  class CreateDTO {
32
51
  constructor() {
33
52
  this.status = PersonStatus.ACTIVE;
@@ -91,4 +110,40 @@ __decorate([
91
110
  (0, class_validator_1.IsInt)({ message: (args) => (0, api_locale_1.getLocaleText)('validation.idMustBeInteger', args.value) }),
92
111
  __metadata("design:type", Number)
93
112
  ], CreateDTO.prototype, "employer_company_id", void 0);
113
+ __decorate([
114
+ (0, class_validator_1.IsOptional)(),
115
+ (0, class_validator_1.IsInt)({ message: (args) => (0, api_locale_1.getLocaleText)('validation.idMustBeInteger', args.value) }),
116
+ __metadata("design:type", Number)
117
+ ], CreateDTO.prototype, "owner_user_id", void 0);
118
+ __decorate([
119
+ (0, class_validator_1.IsOptional)(),
120
+ (0, class_validator_1.IsEnum)(PersonSource, { message: (args) => (0, api_locale_1.getLocaleText)('validation.typeMustBeEnum', args.value) }),
121
+ __metadata("design:type", String)
122
+ ], CreateDTO.prototype, "source", void 0);
123
+ __decorate([
124
+ (0, class_validator_1.IsOptional)(),
125
+ (0, class_validator_1.IsEnum)(PersonLifecycleStage, { message: (args) => (0, api_locale_1.getLocaleText)('validation.typeMustBeEnum', args.value) }),
126
+ __metadata("design:type", String)
127
+ ], CreateDTO.prototype, "lifecycle_stage", void 0);
128
+ __decorate([
129
+ (0, class_validator_1.IsOptional)(),
130
+ (0, class_validator_1.IsDateString)({}, { message: (args) => (0, api_locale_1.getLocaleText)('validation.dateMustBeString', args.value) }),
131
+ __metadata("design:type", String)
132
+ ], CreateDTO.prototype, "next_action_at", void 0);
133
+ __decorate([
134
+ (0, class_validator_1.IsOptional)(),
135
+ (0, class_validator_1.IsNumber)({}, { message: (args) => (0, api_locale_1.getLocaleText)('validation.numberMustBeNumber', args.value) }),
136
+ __metadata("design:type", Number)
137
+ ], CreateDTO.prototype, "score", void 0);
138
+ __decorate([
139
+ (0, class_validator_1.IsOptional)(),
140
+ (0, class_validator_1.IsNumber)({}, { message: (args) => (0, api_locale_1.getLocaleText)('validation.numberMustBeNumber', args.value) }),
141
+ __metadata("design:type", Number)
142
+ ], CreateDTO.prototype, "deal_value", void 0);
143
+ __decorate([
144
+ (0, class_validator_1.IsOptional)(),
145
+ (0, class_validator_1.IsArray)({ message: (args) => (0, api_locale_1.getLocaleText)('validation.tagsMustBeArray', args.value) }),
146
+ (0, class_validator_1.IsString)({ each: true, message: (args) => (0, api_locale_1.getLocaleText)('validation.stringRequired', args.value) }),
147
+ __metadata("design:type", Array)
148
+ ], CreateDTO.prototype, "tags", void 0);
94
149
  //# sourceMappingURL=create.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.dto.js","sourceRoot":"","sources":["../../../src/person/dto/create.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAMyB;AAEzB,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,iCAAmB,CAAA;AACrB,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,qCAAqB,CAAA;AACvB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAED,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,+BAAe,CAAA;AACjB,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB;AAED,MAAa,SAAS;IAAtB;QAQE,WAAM,GAAiB,YAAY,CAAC,MAAM,CAAC;IAqC7C,CAAC;CAAA;AA7CD,8BA6CC;AA3CC;IADC,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;uCAC7E;AAGb;IADC,IAAA,wBAAM,EAAC,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;uCACjF;AAGjB;IADC,IAAA,wBAAM,EAAC,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;yCAC3D;AAI3C;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,4BAA4B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;4CAC5D;AAI1B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,8BAAY,EAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;6CACvE;AAI3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;yCACvE;AAI7B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;4CAC9D;AAI1B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;6CAC7D;AAI3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,8BAAY,EAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;kDAClE;AAIhC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;+CAC3D;AAI7B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,8BAA8B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;wCACrE;AAItB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,4BAA4B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;sDAClD"}
1
+ {"version":3,"file":"create.dto.js","sourceRoot":"","sources":["../../../src/person/dto/create.dto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export declare class CheckPersonDuplicatesQueryDTO {
2
+ person_id?: number;
3
+ email?: string;
4
+ phone?: string;
5
+ document_value?: string;
6
+ document_type_id?: number;
7
+ }
8
+ //# sourceMappingURL=duplicates-query.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duplicates-query.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/duplicates-query.dto.ts"],"names":[],"mappings":"AASA,qBAAa,6BAA6B;IAIxC,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,KAAK,CAAC,EAAE,MAAM,CAAC;IAIf,KAAK,CAAC,EAAE,MAAM,CAAC;IAIf,cAAc,CAAC,EAAE,MAAM,CAAC;IAOxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CheckPersonDuplicatesQueryDTO = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ class CheckPersonDuplicatesQueryDTO {
16
+ }
17
+ exports.CheckPersonDuplicatesQueryDTO = CheckPersonDuplicatesQueryDTO;
18
+ __decorate([
19
+ (0, class_validator_1.IsOptional)(),
20
+ (0, class_transformer_1.Type)(() => Number),
21
+ (0, class_validator_1.IsInt)(),
22
+ __metadata("design:type", Number)
23
+ ], CheckPersonDuplicatesQueryDTO.prototype, "person_id", void 0);
24
+ __decorate([
25
+ (0, class_validator_1.IsOptional)(),
26
+ (0, class_validator_1.IsEmail)(),
27
+ __metadata("design:type", String)
28
+ ], CheckPersonDuplicatesQueryDTO.prototype, "email", void 0);
29
+ __decorate([
30
+ (0, class_validator_1.IsOptional)(),
31
+ (0, class_validator_1.IsString)(),
32
+ __metadata("design:type", String)
33
+ ], CheckPersonDuplicatesQueryDTO.prototype, "phone", void 0);
34
+ __decorate([
35
+ (0, class_validator_1.IsOptional)(),
36
+ (0, class_validator_1.IsString)(),
37
+ __metadata("design:type", String)
38
+ ], CheckPersonDuplicatesQueryDTO.prototype, "document_value", void 0);
39
+ __decorate([
40
+ (0, class_validator_1.ValidateIf)((value) => Boolean(value.document_value)),
41
+ (0, class_transformer_1.Type)(() => Number),
42
+ (0, class_validator_1.IsInt)(),
43
+ __metadata("design:type", Number)
44
+ ], CheckPersonDuplicatesQueryDTO.prototype, "document_type_id", void 0);
45
+ //# sourceMappingURL=duplicates-query.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duplicates-query.dto.js","sourceRoot":"","sources":["../../../src/person/dto/duplicates-query.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAyC;AACzC,qDAMyB;AAEzB,MAAa,6BAA6B;CAwBzC;AAxBD,sEAwBC;AApBC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,IAAA,uBAAK,GAAE;;gEACW;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;;4DACK;AAIf;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;4DACI;AAIf;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;qEACa;AAOxB;IALC,IAAA,4BAAU,EAAC,CAAC,KAAoC,EAAE,EAAE,CACnD,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAC9B;IACA,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,IAAA,uBAAK,GAAE;;uEACkB"}
@@ -0,0 +1,6 @@
1
+ export declare class MergePersonDTO {
2
+ source_person_id: number;
3
+ target_person_id: number;
4
+ strategy: 'contact_only';
5
+ }
6
+ //# sourceMappingURL=merge.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/merge.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,cAAc;IAGzB,gBAAgB,EAAE,MAAM,CAAC;IAIzB,gBAAgB,EAAE,MAAM,CAAC;IAGzB,QAAQ,EAAE,cAAc,CAAkB;CAC3C"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MergePersonDTO = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ class MergePersonDTO {
16
+ constructor() {
17
+ this.strategy = 'contact_only';
18
+ }
19
+ }
20
+ exports.MergePersonDTO = MergePersonDTO;
21
+ __decorate([
22
+ (0, class_transformer_1.Type)(() => Number),
23
+ (0, class_validator_1.IsInt)(),
24
+ __metadata("design:type", Number)
25
+ ], MergePersonDTO.prototype, "source_person_id", void 0);
26
+ __decorate([
27
+ (0, class_transformer_1.Type)(() => Number),
28
+ (0, class_validator_1.IsInt)(),
29
+ __metadata("design:type", Number)
30
+ ], MergePersonDTO.prototype, "target_person_id", void 0);
31
+ __decorate([
32
+ (0, class_validator_1.IsIn)(['contact_only']),
33
+ __metadata("design:type", String)
34
+ ], MergePersonDTO.prototype, "strategy", void 0);
35
+ //# sourceMappingURL=merge.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.dto.js","sourceRoot":"","sources":["../../../src/person/dto/merge.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAyC;AACzC,qDAA8C;AAE9C,MAAa,cAAc;IAA3B;QAUE,aAAQ,GAAmB,cAAc,CAAC;IAC5C,CAAC;CAAA;AAXD,wCAWC;AARC;IAFC,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,IAAA,uBAAK,GAAE;;wDACiB;AAIzB;IAFC,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,IAAA,uBAAK,GAAE;;wDACiB;AAGzB;IADC,IAAA,sBAAI,EAAC,CAAC,cAAc,CAAC,CAAC;;gDACmB"}
@@ -0,0 +1,13 @@
1
+ export declare enum PersonLifecycleStageDTO {
2
+ NEW = "new",
3
+ CONTACTED = "contacted",
4
+ QUALIFIED = "qualified",
5
+ PROPOSAL = "proposal",
6
+ NEGOTIATION = "negotiation",
7
+ CUSTOMER = "customer",
8
+ LOST = "lost"
9
+ }
10
+ export declare class UpdateLifecycleStageDTO {
11
+ lifecycle_stage: PersonLifecycleStageDTO;
12
+ }
13
+ //# sourceMappingURL=update-lifecycle-stage.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-lifecycle-stage.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/update-lifecycle-stage.dto.ts"],"names":[],"mappings":"AAGA,oBAAY,uBAAuB;IACjC,GAAG,QAAQ;IACX,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAED,qBAAa,uBAAuB;IAIlC,eAAe,EAAE,uBAAuB,CAAC;CAC1C"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UpdateLifecycleStageDTO = exports.PersonLifecycleStageDTO = void 0;
13
+ const api_locale_1 = require("@hed-hog/api-locale");
14
+ const class_validator_1 = require("class-validator");
15
+ var PersonLifecycleStageDTO;
16
+ (function (PersonLifecycleStageDTO) {
17
+ PersonLifecycleStageDTO["NEW"] = "new";
18
+ PersonLifecycleStageDTO["CONTACTED"] = "contacted";
19
+ PersonLifecycleStageDTO["QUALIFIED"] = "qualified";
20
+ PersonLifecycleStageDTO["PROPOSAL"] = "proposal";
21
+ PersonLifecycleStageDTO["NEGOTIATION"] = "negotiation";
22
+ PersonLifecycleStageDTO["CUSTOMER"] = "customer";
23
+ PersonLifecycleStageDTO["LOST"] = "lost";
24
+ })(PersonLifecycleStageDTO || (exports.PersonLifecycleStageDTO = PersonLifecycleStageDTO = {}));
25
+ class UpdateLifecycleStageDTO {
26
+ }
27
+ exports.UpdateLifecycleStageDTO = UpdateLifecycleStageDTO;
28
+ __decorate([
29
+ (0, class_validator_1.IsEnum)(PersonLifecycleStageDTO, {
30
+ message: (args) => (0, api_locale_1.getLocaleText)('validation.typeMustBeEnum', args.value),
31
+ }),
32
+ __metadata("design:type", String)
33
+ ], UpdateLifecycleStageDTO.prototype, "lifecycle_stage", void 0);
34
+ //# sourceMappingURL=update-lifecycle-stage.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-lifecycle-stage.dto.js","sourceRoot":"","sources":["../../../src/person/dto/update-lifecycle-stage.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAAyC;AAEzC,IAAY,uBAQX;AARD,WAAY,uBAAuB;IACjC,sCAAW,CAAA;IACX,kDAAuB,CAAA;IACvB,kDAAuB,CAAA;IACvB,gDAAqB,CAAA;IACrB,sDAA2B,CAAA;IAC3B,gDAAqB,CAAA;IACrB,wCAAa,CAAA;AACf,CAAC,EARW,uBAAuB,uCAAvB,uBAAuB,QAQlC;AAED,MAAa,uBAAuB;CAKnC;AALD,0DAKC;AADC;IAHC,IAAA,wBAAM,EAAC,uBAAuB,EAAE;QAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC1E,CAAC;;gEACuC"}
@@ -1,5 +1,5 @@
1
1
  import { AddressTypeEnum } from '../../address-type.enum';
2
- import { PersonGender } from './create.dto';
2
+ import { PersonGender, PersonLifecycleStage, PersonSource } from './create.dto';
3
3
  export declare class UpdateAllContactDTO {
4
4
  id?: number;
5
5
  value: string;
@@ -35,6 +35,13 @@ export declare class UpdateAllPersonDTO {
35
35
  legal_nature?: string | null;
36
36
  notes?: string | null;
37
37
  employer_company_id?: number | null;
38
+ owner_user_id?: number | null;
39
+ source?: PersonSource | null;
40
+ lifecycle_stage?: PersonLifecycleStage | null;
41
+ next_action_at?: string | null;
42
+ score?: number | null;
43
+ deal_value?: number | null;
44
+ tags?: string[] | null;
38
45
  headquarter_id?: number | null;
39
46
  branch_ids?: number[];
40
47
  contacts: UpdateAllContactDTO[];
@@ -1 +1 @@
1
- {"version":3,"file":"update.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/update.dto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAc5C,qBAAa,mBAAmB;IAG9B,EAAE,CAAC,EAAE,MAAM,CAAC;IAGZ,KAAK,EAAE,MAAM,CAAC;IAGd,UAAU,EAAE,OAAO,CAAC;IAGpB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,mBAAmB;IAG9B,EAAE,CAAC,EAAE,MAAM,CAAC;IAGZ,KAAK,EAAE,MAAM,CAAC;IAId,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAId,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,UAAU,EAAE,OAAO,CAAC;IAKpB,YAAY,EAAE,eAAe,CAAC;CAC/B;AAED,qBAAa,oBAAoB;IAG/B,EAAE,CAAC,EAAE,MAAM,CAAC;IAGZ,KAAK,EAAE,MAAM,CAAC;IAGd,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,kBAAkB;IAE7B,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,MAAM,CAAC;IAGb,MAAM,EAAE,MAAM,CAAC;IAIf,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAI7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIhC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAItB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIpC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAM/B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAKtB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAKhC,SAAS,EAAE,mBAAmB,EAAE,CAAC;IAKjC,SAAS,EAAE,oBAAoB,EAAE,CAAC;CACnC"}
1
+ {"version":3,"file":"update.dto.d.ts","sourceRoot":"","sources":["../../../src/person/dto/update.dto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAehF,qBAAa,mBAAmB;IAG9B,EAAE,CAAC,EAAE,MAAM,CAAC;IAGZ,KAAK,EAAE,MAAM,CAAC;IAGd,UAAU,EAAE,OAAO,CAAC;IAGpB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,mBAAmB;IAG9B,EAAE,CAAC,EAAE,MAAM,CAAC;IAGZ,KAAK,EAAE,MAAM,CAAC;IAId,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAId,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,UAAU,EAAE,OAAO,CAAC;IAKpB,YAAY,EAAE,eAAe,CAAC;CAC/B;AAED,qBAAa,oBAAoB;IAG/B,EAAE,CAAC,EAAE,MAAM,CAAC;IAGZ,KAAK,EAAE,MAAM,CAAC;IAGd,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,kBAAkB;IAE7B,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,MAAM,CAAC;IAGb,MAAM,EAAE,MAAM,CAAC;IAIf,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAI7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIhC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAItB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIpC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI9B,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAI7B,eAAe,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAI9C,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI/B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAItB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAK3B,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAIvB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAM/B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAKtB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAKhC,SAAS,EAAE,mBAAmB,EAAE,CAAC;IAKjC,SAAS,EAAE,oBAAoB,EAAE,CAAC;CACnC"}