@veloceapps/sdk 11.0.0-104 → 11.0.0-106

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.
@@ -1,3 +1,4 @@
1
+ import { SalesforceApiService } from '@veloceapps/api/v2';
1
2
  import { UIDefinitionContainer } from '@veloceapps/core';
2
3
  import { Observable } from 'rxjs';
3
4
  import { FlowInfoService, RuntimeSettingsService, SalesTransactionService } from '../../../services';
@@ -11,11 +12,13 @@ export declare class TestModeConfigurationService {
11
12
  private configurationRuntimeService;
12
13
  private salesTransactionService;
13
14
  private runtimeSettingsService;
15
+ private sfApiService;
14
16
  private isInitialized;
15
17
  private pcmModel?;
16
- constructor(flowInfoService: FlowInfoService, configurationService: ConfigurationService, configurationRuntimeService: ConfigurationRuntimeService, salesTransactionService: SalesTransactionService, runtimeSettingsService: RuntimeSettingsService);
18
+ constructor(flowInfoService: FlowInfoService, configurationService: ConfigurationService, configurationRuntimeService: ConfigurationRuntimeService, salesTransactionService: SalesTransactionService, runtimeSettingsService: RuntimeSettingsService, sfApiService: SalesforceApiService);
17
19
  initTestMode$(uiDefinitionContainer: UIDefinitionContainer, options?: TestModeConfigurationOptions): Observable<void>;
18
20
  private initConfiguration$;
21
+ private getPriceBookId;
19
22
  private getTestTransactionContext;
20
23
  private checkInitialized;
21
24
  static ɵfac: i0.ɵɵFactoryDeclaration<TestModeConfigurationService, never>;
@@ -1,5 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { UUID, } from '@veloceapps/core';
2
+ import { SalesforceApiService } from '@veloceapps/api/v2';
3
+ import { UUID } from '@veloceapps/core';
3
4
  import { map, noop, of, switchMap, tap, throwError } from 'rxjs';
4
5
  import { FlowInfoService, RuntimeSettingsService, SalesTransactionService } from '../../../services';
5
6
  import { ConfigurationRuntimeService } from './configuration-runtime.service';
@@ -8,13 +9,15 @@ import * as i0 from "@angular/core";
8
9
  import * as i1 from "../../../services";
9
10
  import * as i2 from "./configuration.service";
10
11
  import * as i3 from "./configuration-runtime.service";
12
+ import * as i4 from "@veloceapps/api/v2";
11
13
  export class TestModeConfigurationService {
12
- constructor(flowInfoService, configurationService, configurationRuntimeService, salesTransactionService, runtimeSettingsService) {
14
+ constructor(flowInfoService, configurationService, configurationRuntimeService, salesTransactionService, runtimeSettingsService, sfApiService) {
13
15
  this.flowInfoService = flowInfoService;
14
16
  this.configurationService = configurationService;
15
17
  this.configurationRuntimeService = configurationRuntimeService;
16
18
  this.salesTransactionService = salesTransactionService;
17
19
  this.runtimeSettingsService = runtimeSettingsService;
20
+ this.sfApiService = sfApiService;
18
21
  this.isInitialized = false;
19
22
  }
20
23
  initTestMode$(uiDefinitionContainer, options) {
@@ -34,7 +37,7 @@ export class TestModeConfigurationService {
34
37
  if (!flowId) {
35
38
  return throwError(() => `Unable to start the Configuration Preview: Flow is missing.`);
36
39
  }
37
- return this.runtimeSettingsService.create().pipe(switchMap(() => this.flowInfoService.init$(flowId, { productId, headerId: quoteId })), switchMap(() => this.configurationRuntimeService.init$({ productId })), tap(pcmModel => (this.pcmModel = pcmModel)), switchMap(() => {
40
+ return this.runtimeSettingsService.create().pipe(switchMap(() => this.flowInfoService.init$(flowId, { productId, headerId: quoteId, testMode: true })), switchMap(() => this.configurationRuntimeService.init$({ productId })), tap(pcmModel => (this.pcmModel = pcmModel)), switchMap(() => {
38
41
  if (options?.customizationMode) {
39
42
  return of(undefined);
40
43
  }
@@ -42,17 +45,37 @@ export class TestModeConfigurationService {
42
45
  }), tap(() => (this.isInitialized = true)), map(noop));
43
46
  }
44
47
  initConfiguration$(quoteId) {
45
- this.salesTransactionService.setState(this.getTestTransactionContext(quoteId));
46
- return this.configurationService.init$().pipe(switchMap(() => this.configurationService.state
48
+ return this.getPriceBookId(quoteId).pipe(map(priceBookId => this.getTestTransactionContext(quoteId, priceBookId)), tap(state => this.salesTransactionService.setState(state)), switchMap(() => this.configurationService.init$()), switchMap(() => this.configurationService.state
47
49
  ? this.configurationService.configure$(this.configurationService.state)
48
50
  : of(undefined)), map(noop));
49
51
  }
50
- getTestTransactionContext(quoteId) {
52
+ getPriceBookId(quoteId) {
53
+ return this.sfApiService
54
+ .query({ count: 1, fields: ['Pricebook2Id'], rawCondition: `Id = '${quoteId}'` }, 'Quote')
55
+ .pipe(map(r => r?.[0]?.Pricebook2Id ?? null));
56
+ }
57
+ getTestTransactionContext(quoteId, priceBookId) {
58
+ const dateStr = new Date().toISOString().split('T')[0] ?? '';
51
59
  const testTransaction = {
52
60
  id: quoteId,
53
61
  businessObjectType: 'Quote',
54
62
  salesTransactionItems: [],
63
+ salesTransactionName: 'Test Quote',
64
+ account: '',
65
+ quoteAccount: '',
66
+ pricebook: '',
67
+ status: 'Draft',
68
+ totalAmount: 0,
69
+ subtotal: 0,
70
+ activatedDate: dateStr,
71
+ effectiveDate: dateStr,
72
+ startDate: dateStr,
73
+ attributes: {},
74
+ nodes: {},
55
75
  };
76
+ if (priceBookId) {
77
+ testTransaction.pricebook = priceBookId;
78
+ }
56
79
  return {
57
80
  salesTransaction: testTransaction,
58
81
  transactionId: quoteId,
@@ -66,9 +89,9 @@ export class TestModeConfigurationService {
66
89
  return this.isInitialized && !!uiDefinitionContainer.source.properties?.persistTestState;
67
90
  }
68
91
  }
69
- TestModeConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, deps: [{ token: i1.FlowInfoService }, { token: i2.ConfigurationService }, { token: i3.ConfigurationRuntimeService }, { token: i1.SalesTransactionService }, { token: i1.RuntimeSettingsService }], target: i0.ɵɵFactoryTarget.Injectable });
92
+ TestModeConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, deps: [{ token: i1.FlowInfoService }, { token: i2.ConfigurationService }, { token: i3.ConfigurationRuntimeService }, { token: i1.SalesTransactionService }, { token: i1.RuntimeSettingsService }, { token: i4.SalesforceApiService }], target: i0.ɵɵFactoryTarget.Injectable });
70
93
  TestModeConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService });
71
94
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, decorators: [{
72
95
  type: Injectable
73
- }], ctorParameters: function () { return [{ type: i1.FlowInfoService }, { type: i2.ConfigurationService }, { type: i3.ConfigurationRuntimeService }, { type: i1.SalesTransactionService }, { type: i1.RuntimeSettingsService }]; } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1tb2RlLWNvbmZpZ3VyYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2NvcmUvbW9kdWxlcy9jb25maWd1cmF0aW9uL3NlcnZpY2VzL3Rlc3QtbW9kZS1jb25maWd1cmF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBTUwsSUFBSSxHQUNMLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVyRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7QUFHL0QsTUFBTSxPQUFPLDRCQUE0QjtJQUl2QyxZQUNVLGVBQWdDLEVBQ2hDLG9CQUEwQyxFQUMxQywyQkFBd0QsRUFDeEQsdUJBQWdELEVBQ2hELHNCQUE4QztRQUo5QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQTZCO1FBQ3hELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFDaEQsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQVJoRCxrQkFBYSxHQUFHLEtBQUssQ0FBQztJQVMzQixDQUFDO0lBRUcsYUFBYSxDQUNsQixxQkFBNEMsRUFDNUMsT0FBc0M7UUFFdEMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLHFC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QUU7WUFDZixVQUFVLEVBQUUsRUFBRTtTQUNmLENBQUM7SUFDSixDQUFDO0lBRU8sZ0JBQWdCLENBQUMscUJBQTRDO1FBQ25FLE9BQU8sSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQztJQUMzRixDQUFDOzt5SEFwRlUsNEJBQTRCOzZIQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFBDTU1vZGVsLFxuICBTYWxlc1RyYW5zYWN0aW9uLFxuICBTYWxlc1RyYW5zYWN0aW9uSXRlbSxcbiAgVHJhbnNhY3Rpb25Db250ZXh0LFxuICBVSURlZmluaXRpb25Db250YWluZXIsXG4gIFVVSUQsXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgbWFwLCBub29wLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwLCB0YXAsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZsb3dJbmZvU2VydmljZSwgUnVudGltZVNldHRpbmdzU2VydmljZSwgU2FsZXNUcmFuc2FjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBUZXN0TW9kZUNvbmZpZ3VyYXRpb25PcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWd1cmF0aW9uLXJ1bnRpbWUuc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRlc3RNb2RlQ29uZmlndXJhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBwY21Nb2RlbD86IFBDTU1vZGVsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmxvd0luZm9TZXJ2aWNlOiBGbG93SW5mb1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2U6IENvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZSxcbiAgICBwcml2YXRlIHNhbGVzVHJhbnNhY3Rpb25TZXJ2aWNlOiBTYWxlc1RyYW5zYWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJ1bnRpbWVTZXR0aW5nc1NlcnZpY2U6IFJ1bnRpbWVTZXR0aW5nc1NlcnZpY2UsXG4gICkge31cblxuICBwdWJsaWMgaW5pdFRlc3RNb2RlJChcbiAgICB1aURlZmluaXRpb25Db250YWluZXI6IFVJRGVmaW5pdGlvbkNvbnRhaW5lcixcbiAgICBvcHRpb25zPzogVGVzdE1vZGVDb25maWd1cmF0aW9uT3B0aW9ucyxcbiAgKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UudWlEZWZpbml0aW9uQ29udGFpbmVyID0gdWlEZWZpbml0aW9uQ29udGFpbmVyO1xuXG4gICAgaWYgKHRoaXMuY2hlY2tJbml0aWFsaXplZCh1aURlZmluaXRpb25Db250YWluZXIpKSB7XG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZS5wY21Nb2RlbCA9IHRoaXMucGNtTW9kZWw7XG4gICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICB9XG4gICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5yZXNldCgpO1xuXG4gICAgY29uc3QgeyBwcm9kdWN0SWQsIHF1b3RlSWQsIGZsb3dJZCB9ID0gdWlEZWZpbml0aW9uQ29udGFpbmVyLnNvdXJjZS5wcm9wZXJ0aWVzID8/IHt9O1xuXG4gICAgaWYgKCFwcm9kdWN0SWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogUHJvZHVjdCBpcyBtaXNzaW5nLicpO1xuICAgIH1cbiAgICBpZiAoIXF1b3RlSWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGBVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogUXVvdGUgaXMgbWlzc2luZy5gKTtcbiAgICB9XG4gICAgaWYgKCFmbG93SWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGBVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogRmxvdyBpcyBtaXNzaW5nLmApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJ1bnRpbWVTZXR0aW5nc1NlcnZpY2UuY3JlYXRlKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmZsb3dJbmZvU2VydmljZS5pbml0JChmbG93SWQsIHsgcHJvZHVjdElkLCBoZWFkZXJJZDogcXVvdGVJZCB9KSksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UuaW5pdCQoeyBwcm9kdWN0SWQgfSkpLFxuICAgICAgdGFwKHBjbU1vZGVsID0+ICh0aGlzLnBjbU1vZGVsID0gcGNtTW9kZWwpKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XG4gICAgICAgIGlmIChvcHRpb25zPy5jdXN0b21pemF0aW9uTW9kZSkge1xuICAgICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaW5pdENvbmZpZ3VyYXRpb24kKHF1b3RlSWQpO1xuICAgICAgfSksXG4gICAgICB0YXAoKCkgPT4gKHRoaXMuaXNJbml0aWFsaXplZCA9IHRydWUpKSxcbiAgICAgIG1hcChub29wKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q29uZmlndXJhdGlvbiQocXVvdGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5zYWxlc1RyYW5zYWN0aW9uU2VydmljZS5zZXRTdGF0ZSh0aGlzLmdldFRlc3RUcmFuc2FjdGlvbkNvbnRleHQocXVvdGVJZCkpO1xuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuaW5pdCQoKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2Uuc3RhdGVcbiAgICAgICAgICA/IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuY29uZmlndXJlJCh0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLnN0YXRlKVxuICAgICAgICAgIDogb2YodW5kZWZpbmVkKSxcbiAgICAgICksXG4gICAgICBtYXAobm9vcCksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VGVzdFRyYW5zYWN0aW9uQ29udGV4dChxdW90ZUlkOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkNvbnRleHQge1xuICAgIGNvbnN0IHRlc3RUcmFuc2FjdGlvbiA9IHtcbiAgICAgIGlkOiBxdW90ZUlkLFxuICAgICAgYnVzaW5lc3NPYmplY3RUeXBlOiAnUXVvdGUnLFxuICAgICAgc2FsZXNUcmFuc2FjdGlvbkl0ZW1zOiBbXSBhcyBTYWxlc1RyYW5zYWN0aW9uSXRlbVtdLFxuICAgIH0gYXMgU2FsZXNUcmFuc2FjdGlvbjtcblxuICAgIHJldHVybiB7XG4gICAgICBzYWxlc1RyYW5zYWN0aW9uOiB0ZXN0VHJhbnNhY3Rpb24sXG4gICAgICB0cmFuc2FjdGlvbklkOiBxdW90ZUlkLFxuICAgICAgYnVzaW5lc3NPYmplY3RUeXBlOiAnUXVvdGUnLFxuICAgICAgbm9kZXM6IHt9LFxuICAgICAgaWQ6IFVVSUQuVVVJRCgpLFxuICAgICAgYXR0cmlidXRlczoge30sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tJbml0aWFsaXplZCh1aURlZmluaXRpb25Db250YWluZXI6IFVJRGVmaW5pdGlvbkNvbnRhaW5lcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzSW5pdGlhbGl6ZWQgJiYgISF1aURlZmluaXRpb25Db250YWluZXIuc291cmNlLnByb3BlcnRpZXM/LnBlcnNpc3RUZXN0U3RhdGU7XG4gIH1cbn1cbiJdfQ==
96
+ }], ctorParameters: function () { return [{ type: i1.FlowInfoService }, { type: i2.ConfigurationService }, { type: i3.ConfigurationRuntimeService }, { type: i1.SalesTransactionService }, { type: i1.RuntimeSettingsService }, { type: i4.SalesforceApiService }]; } });
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1tb2RlLWNvbmZpZ3VyYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2NvcmUvbW9kdWxlcy9jb25maWd1cmF0aW9uL3NlcnZpY2VzL3Rlc3QtbW9kZS1jb25maWd1cmF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRCxPQUFPLEVBQXVELElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdGLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFckcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQUcvRCxNQUFNLE9BQU8sNEJBQTRCO0lBSXZDLFlBQ1UsZUFBZ0MsRUFDaEMsb0JBQTBDLEVBQzFDLDJCQUF3RCxFQUN4RCx1QkFBZ0QsRUFDaEQsc0JBQThDLEVBQzlDLFlBQWtDO1FBTGxDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBNkI7UUFDeEQsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLGlCQUFZLEdBQVosWUFBWSxDQUFzQjtRQVRwQyxrQkFBYSxHQUFH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QUFFLE9BQU87WUFDM0IsS0FBSyxFQUFFLEVBQUU7WUFDVCxFQUFFLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNmLFVBQVUsRUFBRSxFQUFFO1NBQ2YsQ0FBQztJQUNKLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxxQkFBNEM7UUFDbkUsT0FBTyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGdCQUFnQixDQUFDO0lBQzNGLENBQUM7O3lIQWpIVSw0QkFBNEI7NkhBQTVCLDRCQUE0QjsyRkFBNUIsNEJBQTRCO2tCQUR4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2FsZXNmb3JjZUFwaVNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9hcGkvdjInO1xuaW1wb3J0IHsgUENNTW9kZWwsIFRyYW5zYWN0aW9uQ29udGV4dCwgVUlEZWZpbml0aW9uQ29udGFpbmVyLCBVVUlEIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBtYXAsIG5vb3AsIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAsIHRhcCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmxvd0luZm9TZXJ2aWNlLCBSdW50aW1lU2V0dGluZ3NTZXJ2aWNlLCBTYWxlc1RyYW5zYWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFRlc3RNb2RlQ29uZmlndXJhdGlvbk9wdGlvbnMgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb24tcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGVzdE1vZGVDb25maWd1cmF0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgaXNJbml0aWFsaXplZCA9IGZhbHNlO1xuICBwcml2YXRlIHBjbU1vZGVsPzogUENNTW9kZWw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmbG93SW5mb1NlcnZpY2U6IEZsb3dJbmZvU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZTogQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2FsZXNUcmFuc2FjdGlvblNlcnZpY2U6IFNhbGVzVHJhbnNhY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcnVudGltZVNldHRpbmdzU2VydmljZTogUnVudGltZVNldHRpbmdzU2VydmljZSxcbiAgICBwcml2YXRlIHNmQXBpU2VydmljZTogU2FsZXNmb3JjZUFwaVNlcnZpY2UsXG4gICkge31cblxuICBwdWJsaWMgaW5pdFRlc3RNb2RlJChcbiAgICB1aURlZmluaXRpb25Db250YWluZXI6IFVJRGVmaW5pdGlvbkNvbnRhaW5lcixcbiAgICBvcHRpb25zPzogVGVzdE1vZGVDb25maWd1cmF0aW9uT3B0aW9ucyxcbiAgKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UudWlEZWZpbml0aW9uQ29udGFpbmVyID0gdWlEZWZpbml0aW9uQ29udGFpbmVyO1xuXG4gICAgaWYgKHRoaXMuY2hlY2tJbml0aWFsaXplZCh1aURlZmluaXRpb25Db250YWluZXIpKSB7XG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZS5wY21Nb2RlbCA9IHRoaXMucGNtTW9kZWw7XG4gICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICB9XG4gICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5yZXNldCgpO1xuXG4gICAgY29uc3QgeyBwcm9kdWN0SWQsIHF1b3RlSWQsIGZsb3dJZCB9ID0gdWlEZWZpbml0aW9uQ29udGFpbmVyLnNvdXJjZS5wcm9wZXJ0aWVzID8/IHt9O1xuXG4gICAgaWYgKCFwcm9kdWN0SWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogUHJvZHVjdCBpcyBtaXNzaW5nLicpO1xuICAgIH1cbiAgICBpZiAoIXF1b3RlSWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGBVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogUXVvdGUgaXMgbWlzc2luZy5gKTtcbiAgICB9XG4gICAgaWYgKCFmbG93SWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGBVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogRmxvdyBpcyBtaXNzaW5nLmApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJ1bnRpbWVTZXR0aW5nc1NlcnZpY2UuY3JlYXRlKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmZsb3dJbmZvU2VydmljZS5pbml0JChmbG93SWQsIHsgcHJvZHVjdElkLCBoZWFkZXJJZDogcXVvdGVJZCwgdGVzdE1vZGU6IHRydWUgfSkpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLmluaXQkKHsgcHJvZHVjdElkIH0pKSxcbiAgICAgIHRhcChwY21Nb2RlbCA9PiAodGhpcy5wY21Nb2RlbCA9IHBjbU1vZGVsKSksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xuICAgICAgICBpZiAob3B0aW9ucz8uY3VzdG9taXphdGlvbk1vZGUpIHtcbiAgICAgICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmluaXRDb25maWd1cmF0aW9uJChxdW90ZUlkKTtcbiAgICAgIH0pLFxuICAgICAgdGFwKCgpID0+ICh0aGlzLmlzSW5pdGlhbGl6ZWQgPSB0cnVlKSksXG4gICAgICBtYXAobm9vcCksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdENvbmZpZ3VyYXRpb24kKHF1b3RlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmdldFByaWNlQm9va0lkKHF1b3RlSWQpLnBpcGUoXG4gICAgICBtYXAocHJpY2VCb29rSWQgPT4gdGhpcy5nZXRUZXN0VHJhbnNhY3Rpb25Db250ZXh0KHF1b3RlSWQsIHByaWNlQm9va0lkKSksXG4gICAgICB0YXAoc3RhdGUgPT4gdGhpcy5zYWxlc1RyYW5zYWN0aW9uU2VydmljZS5zZXRTdGF0ZShzdGF0ZSkpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuaW5pdCQoKSksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5zdGF0ZVxuICAgICAgICAgID8gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5jb25maWd1cmUkKHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2Uuc3RhdGUpXG4gICAgICAgICAgOiBvZih1bmRlZmluZWQpLFxuICAgICAgKSxcbiAgICAgIG1hcChub29wKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRQcmljZUJvb2tJZChxdW90ZUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5zZkFwaVNlcnZpY2VcbiAgICAgIC5xdWVyeTx7IFByaWNlYm9vazJJZDogc3RyaW5nIH0+KFxuICAgICAgICB7IGNvdW50OiAxLCBmaWVsZHM6IFsnUHJpY2Vib29rMklkJ10sIHJhd0NvbmRpdGlvbjogYElkID0gJyR7cXVvdGVJZH0nYCB9LFxuICAgICAgICAnUXVvdGUnLFxuICAgICAgKVxuICAgICAgLnBpcGUobWFwKHIgPT4gcj8uWzBdPy5QcmljZWJvb2sySWQgPz8gbnVsbCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUZXN0VHJhbnNhY3Rpb25Db250ZXh0KHF1b3RlSWQ6IHN0cmluZywgcHJpY2VCb29rSWQ6IHN0cmluZyB8IG51bGwpOiBUcmFuc2FjdGlvbkNvbnRleHQge1xuICAgIGNvbnN0IGRhdGVTdHIgPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkuc3BsaXQoJ1QnKVswXSA/PyAnJztcblxuICAgIGNvbnN0IHRlc3RUcmFuc2FjdGlvbjogVHJhbnNhY3Rpb25Db250ZXh0WydzYWxlc1RyYW5zYWN0aW9uJ10gPSB7XG4gICAgICBpZDogcXVvdGVJZCxcbiAgICAgIGJ1c2luZXNzT2JqZWN0VHlwZTogJ1F1b3RlJyxcbiAgICAgIHNhbGVzVHJhbnNhY3Rpb25JdGVtczogW10sXG4gICAgICBzYWxlc1RyYW5zYWN0aW9uTmFtZTogJ1Rlc3QgUXVvdGUnLFxuICAgICAgYWNjb3VudDogJycsXG4gICAgICBxdW90ZUFjY291bnQ6ICcnLFxuICAgICAgcHJpY2Vib29rOiAnJyxcbiAgICAgIHN0YXR1czogJ0RyYWZ0JyxcbiAgICAgIHRvdGFsQW1vdW50OiAwLFxuICAgICAgc3VidG90YWw6IDAsXG4gICAgICBhY3RpdmF0ZWREYXRlOiBkYXRlU3RyLFxuICAgICAgZWZmZWN0aXZlRGF0ZTogZGF0ZVN0cixcbiAgICAgIHN0YXJ0RGF0ZTogZGF0ZVN0cixcbiAgICAgIGF0dHJpYnV0ZXM6IHt9LFxuICAgICAgbm9kZXM6IHt9LFxuICAgIH07XG5cbiAgICBpZiAocHJpY2VCb29rSWQpIHtcbiAgICAgIHRlc3RUcmFuc2FjdGlvbi5wcmljZWJvb2sgPSBwcmljZUJvb2tJZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgc2FsZXNUcmFuc2FjdGlvbjogdGVzdFRyYW5zYWN0aW9uLFxuICAgICAgdHJhbnNhY3Rpb25JZDogcXVvdGVJZCxcbiAgICAgIGJ1c2luZXNzT2JqZWN0VHlwZTogJ1F1b3RlJyxcbiAgICAgIG5vZGVzOiB7fSxcbiAgICAgIGlkOiBVVUlELlVVSUQoKSxcbiAgICAgIGF0dHJpYnV0ZXM6IHt9LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGNoZWNrSW5pdGlhbGl6ZWQodWlEZWZpbml0aW9uQ29udGFpbmVyOiBVSURlZmluaXRpb25Db250YWluZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0luaXRpYWxpemVkICYmICEhdWlEZWZpbml0aW9uQ29udGFpbmVyLnNvdXJjZS5wcm9wZXJ0aWVzPy5wZXJzaXN0VGVzdFN0YXRlO1xuICB9XG59XG4iXX0=
@@ -356,12 +356,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
356
356
  } });
357
357
 
358
358
  class TestModeConfigurationService {
359
- constructor(flowInfoService, configurationService, configurationRuntimeService, salesTransactionService, runtimeSettingsService) {
359
+ constructor(flowInfoService, configurationService, configurationRuntimeService, salesTransactionService, runtimeSettingsService, sfApiService) {
360
360
  this.flowInfoService = flowInfoService;
361
361
  this.configurationService = configurationService;
362
362
  this.configurationRuntimeService = configurationRuntimeService;
363
363
  this.salesTransactionService = salesTransactionService;
364
364
  this.runtimeSettingsService = runtimeSettingsService;
365
+ this.sfApiService = sfApiService;
365
366
  this.isInitialized = false;
366
367
  }
367
368
  initTestMode$(uiDefinitionContainer, options) {
@@ -382,7 +383,7 @@ class TestModeConfigurationService {
382
383
  if (!flowId) {
383
384
  return throwError(() => `Unable to start the Configuration Preview: Flow is missing.`);
384
385
  }
385
- return this.runtimeSettingsService.create().pipe(switchMap(() => this.flowInfoService.init$(flowId, { productId, headerId: quoteId })), switchMap(() => this.configurationRuntimeService.init$({ productId })), tap(pcmModel => (this.pcmModel = pcmModel)), switchMap(() => {
386
+ return this.runtimeSettingsService.create().pipe(switchMap(() => this.flowInfoService.init$(flowId, { productId, headerId: quoteId, testMode: true })), switchMap(() => this.configurationRuntimeService.init$({ productId })), tap(pcmModel => (this.pcmModel = pcmModel)), switchMap(() => {
386
387
  if (options === null || options === void 0 ? void 0 : options.customizationMode) {
387
388
  return of(undefined);
388
389
  }
@@ -390,17 +391,38 @@ class TestModeConfigurationService {
390
391
  }), tap(() => (this.isInitialized = true)), map(noop));
391
392
  }
392
393
  initConfiguration$(quoteId) {
393
- this.salesTransactionService.setState(this.getTestTransactionContext(quoteId));
394
- return this.configurationService.init$().pipe(switchMap(() => this.configurationService.state
394
+ return this.getPriceBookId(quoteId).pipe(map(priceBookId => this.getTestTransactionContext(quoteId, priceBookId)), tap(state => this.salesTransactionService.setState(state)), switchMap(() => this.configurationService.init$()), switchMap(() => this.configurationService.state
395
395
  ? this.configurationService.configure$(this.configurationService.state)
396
396
  : of(undefined)), map(noop));
397
397
  }
398
- getTestTransactionContext(quoteId) {
398
+ getPriceBookId(quoteId) {
399
+ return this.sfApiService
400
+ .query({ count: 1, fields: ['Pricebook2Id'], rawCondition: `Id = '${quoteId}'` }, 'Quote')
401
+ .pipe(map(r => { var _a, _b; return (_b = (_a = r === null || r === void 0 ? void 0 : r[0]) === null || _a === void 0 ? void 0 : _a.Pricebook2Id) !== null && _b !== void 0 ? _b : null; }));
402
+ }
403
+ getTestTransactionContext(quoteId, priceBookId) {
404
+ var _a;
405
+ const dateStr = (_a = new Date().toISOString().split('T')[0]) !== null && _a !== void 0 ? _a : '';
399
406
  const testTransaction = {
400
407
  id: quoteId,
401
408
  businessObjectType: 'Quote',
402
409
  salesTransactionItems: [],
410
+ salesTransactionName: 'Test Quote',
411
+ account: '',
412
+ quoteAccount: '',
413
+ pricebook: '',
414
+ status: 'Draft',
415
+ totalAmount: 0,
416
+ subtotal: 0,
417
+ activatedDate: dateStr,
418
+ effectiveDate: dateStr,
419
+ startDate: dateStr,
420
+ attributes: {},
421
+ nodes: {},
403
422
  };
423
+ if (priceBookId) {
424
+ testTransaction.pricebook = priceBookId;
425
+ }
404
426
  return {
405
427
  salesTransaction: testTransaction,
406
428
  transactionId: quoteId,
@@ -415,11 +437,11 @@ class TestModeConfigurationService {
415
437
  return this.isInitialized && !!((_a = uiDefinitionContainer.source.properties) === null || _a === void 0 ? void 0 : _a.persistTestState);
416
438
  }
417
439
  }
418
- TestModeConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, deps: [{ token: FlowInfoService }, { token: ConfigurationService }, { token: ConfigurationRuntimeService }, { token: SalesTransactionService }, { token: RuntimeSettingsService }], target: i0.ɵɵFactoryTarget.Injectable });
440
+ TestModeConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, deps: [{ token: FlowInfoService }, { token: ConfigurationService }, { token: ConfigurationRuntimeService }, { token: SalesTransactionService }, { token: RuntimeSettingsService }, { token: i1.SalesforceApiService }], target: i0.ɵɵFactoryTarget.Injectable });
419
441
  TestModeConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService });
420
442
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, decorators: [{
421
443
  type: Injectable
422
- }], ctorParameters: function () { return [{ type: FlowInfoService }, { type: ConfigurationService }, { type: ConfigurationRuntimeService }, { type: SalesTransactionService }, { type: RuntimeSettingsService }]; } });
444
+ }], ctorParameters: function () { return [{ type: FlowInfoService }, { type: ConfigurationService }, { type: ConfigurationRuntimeService }, { type: SalesTransactionService }, { type: RuntimeSettingsService }, { type: i1.SalesforceApiService }]; } });
423
445
 
424
446
  class GuidedSellingService {
425
447
  constructor(orchestrationsApiService) {