@fiado/type-kit 3.522.0 → 3.523.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_test_/unit/retailWizard/prospectResume.test.ts +49 -0
- package/bin/retailWizard/dtos/responses/ActiveSessionByPhoneResponse.d.ts +9 -1
- package/bin/retailWizard/dtos/responses/ProspectResumeResponse.d.ts +7 -0
- package/bin/retailWizard/dtos/responses/ProspectResumeResponse.js +2 -0
- package/bin/retailWizard/enums/ProspectResumeModeEnum.d.ts +6 -0
- package/bin/retailWizard/enums/ProspectResumeModeEnum.js +10 -0
- package/bin/retailWizard/enums/SystemCancelReasonEnum.d.ts +4 -0
- package/bin/retailWizard/enums/SystemCancelReasonEnum.js +8 -0
- package/bin/retailWizard/index.d.ts +3 -0
- package/bin/retailWizard/index.js +3 -0
- package/package.json +1 -1
- package/src/retailWizard/dtos/responses/ActiveSessionByPhoneResponse.ts +9 -1
- package/src/retailWizard/dtos/responses/ProspectResumeResponse.ts +8 -0
- package/src/retailWizard/enums/ProspectResumeModeEnum.ts +6 -0
- package/src/retailWizard/enums/SystemCancelReasonEnum.ts +4 -0
- package/src/retailWizard/index.ts +3 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import 'reflect-metadata';
|
|
2
|
+
import {
|
|
3
|
+
ProspectResumeModeEnum,
|
|
4
|
+
SystemCancelReasonEnum,
|
|
5
|
+
WizardStateEnum,
|
|
6
|
+
WizardStepEnum,
|
|
7
|
+
type ActiveSessionByPhoneResponse,
|
|
8
|
+
type ProspectResumeResponse,
|
|
9
|
+
} from '../../../src/retailWizard';
|
|
10
|
+
|
|
11
|
+
describe('ProspectResumeModeEnum', () => {
|
|
12
|
+
it('has the three outcomes of «Reabrir»', () => {
|
|
13
|
+
expect(Object.values(ProspectResumeModeEnum)).toEqual(['EXACT', 'CHECKPOINT', 'NEW']);
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
describe('SystemCancelReasonEnum', () => {
|
|
18
|
+
it('names the saga cancel when loan-credit discards the quote', () => {
|
|
19
|
+
expect(SystemCancelReasonEnum.SWEEP_CREDIT_DISCARDED).toBe('SWEEP_CREDIT_DISCARDED');
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
describe('ProspectResumeResponse', () => {
|
|
24
|
+
it('NEW carries no session; EXACT and CHECKPOINT carry the session to resume', () => {
|
|
25
|
+
const responses: ProspectResumeResponse[] = [
|
|
26
|
+
{ sessionId: null, mode: ProspectResumeModeEnum.NEW },
|
|
27
|
+
{ sessionId: 'S1', mode: ProspectResumeModeEnum.EXACT },
|
|
28
|
+
{ sessionId: 'S1', mode: ProspectResumeModeEnum.CHECKPOINT },
|
|
29
|
+
];
|
|
30
|
+
expect(responses.map((r) => r.mode)).toEqual(['NEW', 'EXACT', 'CHECKPOINT']);
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
describe('ActiveSessionByPhoneResponse', () => {
|
|
35
|
+
it('carries the entry screen, the entry step, the exact window and money at stake', () => {
|
|
36
|
+
const res: ActiveSessionByPhoneResponse = {
|
|
37
|
+
found: true,
|
|
38
|
+
sessionId: 'S1',
|
|
39
|
+
currentStep: WizardStepEnum.S04,
|
|
40
|
+
state: WizardStateEnum.PAUSED_EXTERNAL_REFERRAL,
|
|
41
|
+
blocked: null,
|
|
42
|
+
resumeSlug: null,
|
|
43
|
+
resumeTargetStep: WizardStepEnum.S02,
|
|
44
|
+
exactUntil: null,
|
|
45
|
+
moneyAtStake: false,
|
|
46
|
+
};
|
|
47
|
+
expect(res.resumeTargetStep).toBe(WizardStepEnum.S02);
|
|
48
|
+
});
|
|
49
|
+
});
|
|
@@ -17,11 +17,19 @@ export interface ActiveSessionByPhoneResponse {
|
|
|
17
17
|
sessionId: string | null;
|
|
18
18
|
/** Paso en el que se quedo la venta. `null` cuando `found` es `false`. */
|
|
19
19
|
currentStep: WizardStepEnum | null;
|
|
20
|
-
/**
|
|
20
|
+
/** ACTIVE o una PAUSED_* de la tienda del caller. `null` cuando `found` es `false`. */
|
|
21
21
|
state: WizardStateEnum | null;
|
|
22
22
|
/**
|
|
23
23
|
* El bloqueo de la venta, para pintar la etiqueta y el «hace N dias». `null` cuando la venta va
|
|
24
24
|
* bien o cuando `found` es `false`.
|
|
25
25
|
*/
|
|
26
26
|
blocked?: WizardBlockedSummary | null;
|
|
27
|
+
/** Pantalla exacta a la que entra «Reabrir» (slug del front). `null` = entra por `resumeTargetStep`. */
|
|
28
|
+
resumeSlug?: string | null;
|
|
29
|
+
/** Paso al que entra «Reabrir» sin pantalla exacta (checkpoint del silo). */
|
|
30
|
+
resumeTargetStep?: WizardStepEnum | null;
|
|
31
|
+
/** Hasta cuándo se retoma en la pantalla exacta (ISO). `null` = no vence por inactividad. */
|
|
32
|
+
exactUntil?: string | null;
|
|
33
|
+
/** La venta movió dinero u originó crédito: siempre se retoma la misma. */
|
|
34
|
+
moneyAtStake?: boolean;
|
|
27
35
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ProspectResumeModeEnum } from '../../enums/ProspectResumeModeEnum';
|
|
2
|
+
/** POST /prospects/{id}/resume. La pantalla de entrada sale de GET /wizard/sessions/{id} tras el OTP. */
|
|
3
|
+
export interface ProspectResumeResponse {
|
|
4
|
+
/** `null` solo con `mode = NEW`: el front arranca la venta con POST /wizard/sessions. */
|
|
5
|
+
sessionId: string | null;
|
|
6
|
+
mode: ProspectResumeModeEnum;
|
|
7
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProspectResumeModeEnum = void 0;
|
|
4
|
+
/** Cómo entra «Reabrir». EXACT = pantalla guardada; CHECKPOINT = destino del silo; NEW = sin venta viva. */
|
|
5
|
+
var ProspectResumeModeEnum;
|
|
6
|
+
(function (ProspectResumeModeEnum) {
|
|
7
|
+
ProspectResumeModeEnum["EXACT"] = "EXACT";
|
|
8
|
+
ProspectResumeModeEnum["CHECKPOINT"] = "CHECKPOINT";
|
|
9
|
+
ProspectResumeModeEnum["NEW"] = "NEW";
|
|
10
|
+
})(ProspectResumeModeEnum || (exports.ProspectResumeModeEnum = ProspectResumeModeEnum = {}));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SystemCancelReasonEnum = void 0;
|
|
4
|
+
/** `cancelReason` que escribe el sistema (no el vendedor). La saga cierra la venta cuyo crédito se descartó. */
|
|
5
|
+
var SystemCancelReasonEnum;
|
|
6
|
+
(function (SystemCancelReasonEnum) {
|
|
7
|
+
SystemCancelReasonEnum["SWEEP_CREDIT_DISCARDED"] = "SWEEP_CREDIT_DISCARDED";
|
|
8
|
+
})(SystemCancelReasonEnum || (exports.SystemCancelReasonEnum = SystemCancelReasonEnum = {}));
|
|
@@ -17,6 +17,8 @@ export * from './enums/AccountVerdictEnum';
|
|
|
17
17
|
export * from './enums/AccountOutcomeEnum';
|
|
18
18
|
export * from './enums/AccountStepStatusEnum';
|
|
19
19
|
export * from './enums/ResumeReasonEnum';
|
|
20
|
+
export * from './enums/ProspectResumeModeEnum';
|
|
21
|
+
export * from './enums/SystemCancelReasonEnum';
|
|
20
22
|
export * from './enums/AppOnboardingStepEnum';
|
|
21
23
|
export * from './enums/AppOnboardingStepStatusEnum';
|
|
22
24
|
export * from './enums/BlockedReasonEnum';
|
|
@@ -101,6 +103,7 @@ export * from './dtos/responses/SignatureSignResponse';
|
|
|
101
103
|
export * from './dtos/responses/RegisterDeviceResponse';
|
|
102
104
|
export * from './dtos/responses/AccountStatusResponse';
|
|
103
105
|
export * from './dtos/responses/ActiveSessionByPhoneResponse';
|
|
106
|
+
export * from './dtos/responses/ProspectResumeResponse';
|
|
104
107
|
export * from './dtos/responses/ProspectByPhoneResponse';
|
|
105
108
|
export * from './dtos/responses/AppOnboardingResponse';
|
|
106
109
|
export * from './enums/SaleFinancierEnum';
|
|
@@ -36,6 +36,8 @@ __exportStar(require("./enums/AccountVerdictEnum"), exports);
|
|
|
36
36
|
__exportStar(require("./enums/AccountOutcomeEnum"), exports);
|
|
37
37
|
__exportStar(require("./enums/AccountStepStatusEnum"), exports);
|
|
38
38
|
__exportStar(require("./enums/ResumeReasonEnum"), exports);
|
|
39
|
+
__exportStar(require("./enums/ProspectResumeModeEnum"), exports);
|
|
40
|
+
__exportStar(require("./enums/SystemCancelReasonEnum"), exports);
|
|
39
41
|
__exportStar(require("./enums/AppOnboardingStepEnum"), exports);
|
|
40
42
|
__exportStar(require("./enums/AppOnboardingStepStatusEnum"), exports);
|
|
41
43
|
__exportStar(require("./enums/BlockedReasonEnum"), exports);
|
|
@@ -127,6 +129,7 @@ __exportStar(require("./dtos/responses/SignatureSignResponse"), exports);
|
|
|
127
129
|
__exportStar(require("./dtos/responses/RegisterDeviceResponse"), exports);
|
|
128
130
|
__exportStar(require("./dtos/responses/AccountStatusResponse"), exports);
|
|
129
131
|
__exportStar(require("./dtos/responses/ActiveSessionByPhoneResponse"), exports);
|
|
132
|
+
__exportStar(require("./dtos/responses/ProspectResumeResponse"), exports);
|
|
130
133
|
__exportStar(require("./dtos/responses/ProspectByPhoneResponse"), exports);
|
|
131
134
|
__exportStar(require("./dtos/responses/AppOnboardingResponse"), exports);
|
|
132
135
|
// ── F3 · Backoffice VentasLuga ────────────────────────────────────────────────
|
package/package.json
CHANGED
|
@@ -18,11 +18,19 @@ export interface ActiveSessionByPhoneResponse {
|
|
|
18
18
|
sessionId: string | null;
|
|
19
19
|
/** Paso en el que se quedo la venta. `null` cuando `found` es `false`. */
|
|
20
20
|
currentStep: WizardStepEnum | null;
|
|
21
|
-
/**
|
|
21
|
+
/** ACTIVE o una PAUSED_* de la tienda del caller. `null` cuando `found` es `false`. */
|
|
22
22
|
state: WizardStateEnum | null;
|
|
23
23
|
/**
|
|
24
24
|
* El bloqueo de la venta, para pintar la etiqueta y el «hace N dias». `null` cuando la venta va
|
|
25
25
|
* bien o cuando `found` es `false`.
|
|
26
26
|
*/
|
|
27
27
|
blocked?: WizardBlockedSummary | null;
|
|
28
|
+
/** Pantalla exacta a la que entra «Reabrir» (slug del front). `null` = entra por `resumeTargetStep`. */
|
|
29
|
+
resumeSlug?: string | null;
|
|
30
|
+
/** Paso al que entra «Reabrir» sin pantalla exacta (checkpoint del silo). */
|
|
31
|
+
resumeTargetStep?: WizardStepEnum | null;
|
|
32
|
+
/** Hasta cuándo se retoma en la pantalla exacta (ISO). `null` = no vence por inactividad. */
|
|
33
|
+
exactUntil?: string | null;
|
|
34
|
+
/** La venta movió dinero u originó crédito: siempre se retoma la misma. */
|
|
35
|
+
moneyAtStake?: boolean;
|
|
28
36
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ProspectResumeModeEnum } from '../../enums/ProspectResumeModeEnum';
|
|
2
|
+
|
|
3
|
+
/** POST /prospects/{id}/resume. La pantalla de entrada sale de GET /wizard/sessions/{id} tras el OTP. */
|
|
4
|
+
export interface ProspectResumeResponse {
|
|
5
|
+
/** `null` solo con `mode = NEW`: el front arranca la venta con POST /wizard/sessions. */
|
|
6
|
+
sessionId: string | null;
|
|
7
|
+
mode: ProspectResumeModeEnum;
|
|
8
|
+
}
|
|
@@ -20,6 +20,8 @@ export * from './enums/AccountVerdictEnum';
|
|
|
20
20
|
export * from './enums/AccountOutcomeEnum';
|
|
21
21
|
export * from './enums/AccountStepStatusEnum';
|
|
22
22
|
export * from './enums/ResumeReasonEnum';
|
|
23
|
+
export * from './enums/ProspectResumeModeEnum';
|
|
24
|
+
export * from './enums/SystemCancelReasonEnum';
|
|
23
25
|
export * from './enums/AppOnboardingStepEnum';
|
|
24
26
|
export * from './enums/AppOnboardingStepStatusEnum';
|
|
25
27
|
export * from './enums/BlockedReasonEnum';
|
|
@@ -114,6 +116,7 @@ export * from './dtos/responses/SignatureSignResponse';
|
|
|
114
116
|
export * from './dtos/responses/RegisterDeviceResponse';
|
|
115
117
|
export * from './dtos/responses/AccountStatusResponse';
|
|
116
118
|
export * from './dtos/responses/ActiveSessionByPhoneResponse';
|
|
119
|
+
export * from './dtos/responses/ProspectResumeResponse';
|
|
117
120
|
export * from './dtos/responses/ProspectByPhoneResponse';
|
|
118
121
|
export * from './dtos/responses/AppOnboardingResponse';
|
|
119
122
|
|