sfdx-browserforce-plugin 2.11.2 → 3.0.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/README.md +10 -10
- package/lib/browserforce-command.js +25 -19
- package/lib/browserforce-command.js.map +1 -1
- package/lib/browserforce.js +11 -28
- package/lib/browserforce.js.map +1 -1
- package/lib/commands/browserforce/apply.js +14 -14
- package/lib/commands/browserforce/apply.js.map +1 -1
- package/lib/commands/browserforce/plan.js +16 -15
- package/lib/commands/browserforce/plan.js.map +1 -1
- package/lib/config-parser.js +1 -1
- package/lib/config-parser.js.map +1 -1
- package/lib/jsforce-utils.js.map +1 -1
- package/lib/plugin.js +11 -30
- package/lib/plugin.js.map +1 -1
- package/lib/plugins/activity-settings/index.e2e-spec.js +41 -0
- package/lib/plugins/activity-settings/index.e2e-spec.js.map +1 -0
- package/lib/plugins/activity-settings/index.js +1 -4
- package/lib/plugins/activity-settings/index.js.map +1 -1
- package/lib/plugins/communities/index.e2e-spec.js +39 -0
- package/lib/plugins/communities/index.e2e-spec.js.map +1 -0
- package/lib/plugins/communities/index.js +2 -7
- package/lib/plugins/communities/index.js.map +1 -1
- package/lib/plugins/company-information/index.e2e-spec.js +42 -0
- package/lib/plugins/company-information/index.e2e-spec.js.map +1 -0
- package/lib/plugins/company-information/index.js +8 -12
- package/lib/plugins/company-information/index.js.map +1 -1
- package/lib/plugins/customer-portal/available-custom-objects/index.js +20 -48
- package/lib/plugins/customer-portal/available-custom-objects/index.js.map +1 -1
- package/lib/plugins/customer-portal/available-custom-objects/index.test.js +44 -0
- package/lib/plugins/customer-portal/available-custom-objects/index.test.js.map +1 -0
- package/lib/plugins/customer-portal/enabled/index.js +3 -11
- package/lib/plugins/customer-portal/enabled/index.js.map +1 -1
- package/lib/plugins/customer-portal/enabled/index.test.js +39 -0
- package/lib/plugins/customer-portal/enabled/index.test.js.map +1 -0
- package/lib/plugins/customer-portal/index.e2e-spec.js +222 -0
- package/lib/plugins/customer-portal/index.e2e-spec.js.map +1 -0
- package/lib/plugins/customer-portal/index.js +17 -13
- package/lib/plugins/customer-portal/index.js.map +1 -1
- package/lib/plugins/customer-portal/index.test.js +89 -0
- package/lib/plugins/customer-portal/index.test.js.map +1 -0
- package/lib/plugins/customer-portal/portals/index.js +17 -25
- package/lib/plugins/customer-portal/portals/index.js.map +1 -1
- package/lib/plugins/customer-portal/portals/index.test.js +145 -0
- package/lib/plugins/customer-portal/portals/index.test.js.map +1 -0
- package/lib/plugins/defer-sharing-calculation/index.e2e-spec.js +96 -0
- package/lib/plugins/defer-sharing-calculation/index.e2e-spec.js.map +1 -0
- package/lib/plugins/defer-sharing-calculation/index.js +2 -7
- package/lib/plugins/defer-sharing-calculation/index.js.map +1 -1
- package/lib/plugins/density-settings/index.e2e-spec.js +44 -0
- package/lib/plugins/density-settings/index.e2e-spec.js.map +1 -0
- package/lib/plugins/density-settings/index.js +8 -6
- package/lib/plugins/density-settings/index.js.map +1 -1
- package/lib/plugins/email-deliverability/index.e2e-spec.js +60 -0
- package/lib/plugins/email-deliverability/index.e2e-spec.js.map +1 -0
- package/lib/plugins/email-deliverability/index.js +7 -10
- package/lib/plugins/email-deliverability/index.js.map +1 -1
- package/lib/plugins/high-velocity-sales-settings/index.e2e-spec.js +34 -0
- package/lib/plugins/high-velocity-sales-settings/index.e2e-spec.js.map +1 -0
- package/lib/plugins/high-velocity-sales-settings/index.js +1 -2
- package/lib/plugins/high-velocity-sales-settings/index.js.map +1 -1
- package/lib/plugins/high-velocity-sales-settings/page.js +13 -4
- package/lib/plugins/high-velocity-sales-settings/page.js.map +1 -1
- package/lib/plugins/home-page-layouts/index.e2e-spec.js +52 -0
- package/lib/plugins/home-page-layouts/index.e2e-spec.js.map +1 -0
- package/lib/plugins/home-page-layouts/index.js +14 -32
- package/lib/plugins/home-page-layouts/index.js.map +1 -1
- package/lib/plugins/home-page-layouts/index.test.js +109 -0
- package/lib/plugins/home-page-layouts/index.test.js.map +1 -0
- package/lib/plugins/lightning-experience-settings/index.e2e-spec.js +44 -0
- package/lib/plugins/lightning-experience-settings/index.e2e-spec.js.map +1 -0
- package/lib/plugins/lightning-experience-settings/index.js +11 -9
- package/lib/plugins/lightning-experience-settings/index.js.map +1 -1
- package/lib/plugins/opportunity-splits/index.e2e-spec.js +70 -0
- package/lib/plugins/opportunity-splits/index.e2e-spec.js.map +1 -0
- package/lib/plugins/opportunity-splits/pages/layout-selection.js +1 -4
- package/lib/plugins/opportunity-splits/pages/layout-selection.js.map +1 -1
- package/lib/plugins/opportunity-splits/pages/overview.js +1 -4
- package/lib/plugins/opportunity-splits/pages/overview.js.map +1 -1
- package/lib/plugins/opportunity-splits/pages/setup.js +1 -4
- package/lib/plugins/opportunity-splits/pages/setup.js.map +1 -1
- package/lib/plugins/picklists/field-dependencies/index.js +15 -10
- package/lib/plugins/picklists/field-dependencies/index.js.map +1 -1
- package/lib/plugins/picklists/field-dependencies/index.test.js +69 -0
- package/lib/plugins/picklists/field-dependencies/index.test.js.map +1 -0
- package/lib/plugins/picklists/field-dependencies/pages.js +3 -12
- package/lib/plugins/picklists/field-dependencies/pages.js.map +1 -1
- package/lib/plugins/picklists/index.e2e-spec.js +118 -0
- package/lib/plugins/picklists/index.e2e-spec.js.map +1 -0
- package/lib/plugins/picklists/index.js +36 -27
- package/lib/plugins/picklists/index.js.map +1 -1
- package/lib/plugins/picklists/pages.js +7 -28
- package/lib/plugins/picklists/pages.js.map +1 -1
- package/lib/plugins/picklists/standard-value-set.js +1 -1
- package/lib/plugins/picklists/standard-value-set.js.map +1 -1
- package/lib/plugins/record-types/index.e2e-spec.js +99 -0
- package/lib/plugins/record-types/index.e2e-spec.js.map +1 -0
- package/lib/plugins/record-types/index.js +1 -2
- package/lib/plugins/record-types/index.js.map +1 -1
- package/lib/plugins/record-types/pages.js +4 -10
- package/lib/plugins/record-types/pages.js.map +1 -1
- package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js +34 -0
- package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js.map +1 -0
- package/lib/plugins/relate-contact-to-multiple-accounts/index.js +3 -12
- package/lib/plugins/relate-contact-to-multiple-accounts/index.js.map +1 -1
- package/lib/plugins/reports-and-dashboards/folder-sharing/index.e2e-spec.js +3 -0
- package/lib/plugins/reports-and-dashboards/folder-sharing/index.e2e-spec.js.map +1 -0
- package/lib/plugins/reports-and-dashboards/folder-sharing/index.js +1 -4
- package/lib/plugins/reports-and-dashboards/folder-sharing/index.js.map +1 -1
- package/lib/plugins/reports-and-dashboards/index.e2e-spec.js +3 -0
- package/lib/plugins/reports-and-dashboards/index.e2e-spec.js.map +1 -0
- package/lib/plugins/reports-and-dashboards/index.js +6 -6
- package/lib/plugins/reports-and-dashboards/index.js.map +1 -1
- package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js +39 -0
- package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js.map +1 -0
- package/lib/plugins/salesforce-to-salesforce/index.js +1 -4
- package/lib/plugins/salesforce-to-salesforce/index.js.map +1 -1
- package/lib/plugins/security/certificate-and-key-management/index.js +25 -36
- package/lib/plugins/security/certificate-and-key-management/index.js.map +1 -1
- package/lib/plugins/security/certificate-and-key-management/index.test.js +66 -0
- package/lib/plugins/security/certificate-and-key-management/index.test.js.map +1 -0
- package/lib/plugins/security/identity-provider/index.js +13 -24
- package/lib/plugins/security/identity-provider/index.js.map +1 -1
- package/lib/plugins/security/index.e2e-spec.js +86 -0
- package/lib/plugins/security/index.e2e-spec.js.map +1 -0
- package/lib/plugins/security/index.js +24 -15
- package/lib/plugins/security/index.js.map +1 -1
- package/lib/plugins/security/login-access-policies/index.e2e-spec.js +32 -0
- package/lib/plugins/security/login-access-policies/index.e2e-spec.js.map +1 -0
- package/lib/plugins/security/login-access-policies/index.js +2 -5
- package/lib/plugins/security/login-access-policies/index.js.map +1 -1
- package/lib/plugins/security/sharing/index.e2e-spec.js +34 -0
- package/lib/plugins/security/sharing/index.e2e-spec.js.map +1 -0
- package/lib/plugins/security/sharing/index.js +5 -11
- package/lib/plugins/security/sharing/index.js.map +1 -1
- package/lib/plugins/utils.js +38 -41
- package/lib/plugins/utils.js.map +1 -1
- package/oclif.manifest.json +104 -112
- package/package.json +12 -10
- package/lib/browserforce-command.d.ts +0 -15
- package/lib/browserforce.d.ts +0 -26
- package/lib/commands/browserforce/apply.d.ts +0 -6
- package/lib/commands/browserforce/plan.d.ts +0 -6
- package/lib/config-parser.d.ts +0 -16
- package/lib/index.d.ts +0 -1
- package/lib/jsforce-utils.d.ts +0 -5
- package/lib/plugin.d.ts +0 -11
- package/lib/plugins/activity-settings/index.d.ts +0 -9
- package/lib/plugins/communities/index.d.ts +0 -10
- package/lib/plugins/company-information/index.d.ts +0 -9
- package/lib/plugins/customer-portal/available-custom-objects/index.d.ts +0 -14
- package/lib/plugins/customer-portal/enabled/index.d.ts +0 -7
- package/lib/plugins/customer-portal/index.d.ts +0 -15
- package/lib/plugins/customer-portal/portals/index.d.ts +0 -25
- package/lib/plugins/defer-sharing-calculation/index.d.ts +0 -9
- package/lib/plugins/density-settings/index.d.ts +0 -17
- package/lib/plugins/email-deliverability/index.d.ts +0 -9
- package/lib/plugins/high-velocity-sales-settings/index.d.ts +0 -11
- package/lib/plugins/high-velocity-sales-settings/page.d.ts +0 -7
- package/lib/plugins/home-page-layouts/index.d.ts +0 -14
- package/lib/plugins/index.d.ts +0 -18
- package/lib/plugins/lightning-experience-settings/index.d.ts +0 -17
- package/lib/plugins/opportunity-splits/index.d.ts +0 -9
- package/lib/plugins/opportunity-splits/pages/layout-selection.d.ts +0 -8
- package/lib/plugins/opportunity-splits/pages/overview.d.ts +0 -10
- package/lib/plugins/opportunity-splits/pages/setup.d.ts +0 -8
- package/lib/plugins/picklists/field-dependencies/index.d.ts +0 -11
- package/lib/plugins/picklists/field-dependencies/pages.d.ts +0 -14
- package/lib/plugins/picklists/index.d.ts +0 -23
- package/lib/plugins/picklists/pages.d.ts +0 -40
- package/lib/plugins/picklists/standard-value-set.d.ts +0 -1
- package/lib/plugins/record-types/index.d.ts +0 -13
- package/lib/plugins/record-types/pages.d.ts +0 -15
- package/lib/plugins/relate-contact-to-multiple-accounts/index.d.ts +0 -9
- package/lib/plugins/reports-and-dashboards/folder-sharing/index.d.ts +0 -8
- package/lib/plugins/reports-and-dashboards/index.d.ts +0 -11
- package/lib/plugins/salesforce-to-salesforce/index.d.ts +0 -9
- package/lib/plugins/security/certificate-and-key-management/index.d.ts +0 -23
- package/lib/plugins/security/identity-provider/index.d.ts +0 -10
- package/lib/plugins/security/index.d.ts +0 -17
- package/lib/plugins/security/login-access-policies/index.d.ts +0 -8
- package/lib/plugins/security/sharing/index.d.ts +0 -8
- package/lib/plugins/utils.d.ts +0 -4
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const _1 = require(".");
|
|
8
|
+
const tests = [
|
|
9
|
+
{
|
|
10
|
+
description: 'should only return necessary portal fields',
|
|
11
|
+
source: [
|
|
12
|
+
{
|
|
13
|
+
_id: 'p1',
|
|
14
|
+
name: 'Customer Portal',
|
|
15
|
+
description: 'Customer Portal',
|
|
16
|
+
adminUser: 'User User',
|
|
17
|
+
isSelfRegistrationActivated: true,
|
|
18
|
+
selfRegUserDefaultLicense: 'Customer Portal Manager Custom',
|
|
19
|
+
selfRegUserDefaultRole: 'User',
|
|
20
|
+
selfRegUserDefaultProfile: 'Customer Portal Manager Custom'
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
target: [
|
|
24
|
+
{
|
|
25
|
+
name: 'Customer Portal',
|
|
26
|
+
description: 'new description'
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
expected: [
|
|
30
|
+
{
|
|
31
|
+
_id: 'p1',
|
|
32
|
+
name: 'Customer Portal',
|
|
33
|
+
description: 'new description'
|
|
34
|
+
}
|
|
35
|
+
]
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
description: 'should only return portal and portalProfileMemberships fields',
|
|
39
|
+
source: [
|
|
40
|
+
{
|
|
41
|
+
name: 'Customer Portal',
|
|
42
|
+
description: 'Customer Portal',
|
|
43
|
+
adminUser: 'User User',
|
|
44
|
+
portalProfileMemberships: [
|
|
45
|
+
{
|
|
46
|
+
name: 'Customer Portal Manager Standard',
|
|
47
|
+
active: true,
|
|
48
|
+
_id: 'a1'
|
|
49
|
+
}
|
|
50
|
+
],
|
|
51
|
+
_id: 'p1'
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
target: [
|
|
55
|
+
{
|
|
56
|
+
name: 'Customer Portal',
|
|
57
|
+
portalProfileMemberships: [
|
|
58
|
+
{
|
|
59
|
+
name: 'Customer Portal Manager Standard',
|
|
60
|
+
active: false
|
|
61
|
+
}
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
],
|
|
65
|
+
expected: [
|
|
66
|
+
{
|
|
67
|
+
_id: 'p1',
|
|
68
|
+
name: 'Customer Portal',
|
|
69
|
+
portalProfileMemberships: [
|
|
70
|
+
{
|
|
71
|
+
_id: 'a1',
|
|
72
|
+
name: 'Customer Portal Manager Standard',
|
|
73
|
+
active: false
|
|
74
|
+
}
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
]
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
description: 'should detect a renamed portal',
|
|
81
|
+
source: [
|
|
82
|
+
{
|
|
83
|
+
name: 'Customer Portal',
|
|
84
|
+
description: 'Customer Portal',
|
|
85
|
+
adminUser: 'User User',
|
|
86
|
+
portalProfileMemberships: [],
|
|
87
|
+
_id: 'p1'
|
|
88
|
+
}
|
|
89
|
+
],
|
|
90
|
+
target: [
|
|
91
|
+
{
|
|
92
|
+
name: 'Foo Portal',
|
|
93
|
+
oldName: 'Customer Portal'
|
|
94
|
+
}
|
|
95
|
+
],
|
|
96
|
+
expected: [
|
|
97
|
+
{
|
|
98
|
+
_id: 'p1',
|
|
99
|
+
name: 'Foo Portal'
|
|
100
|
+
}
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
description: 'should return no change',
|
|
105
|
+
source: [
|
|
106
|
+
{
|
|
107
|
+
name: 'Customer Portal',
|
|
108
|
+
description: 'Customer Portal',
|
|
109
|
+
adminUser: 'User User',
|
|
110
|
+
portalProfileMemberships: [
|
|
111
|
+
{
|
|
112
|
+
name: 'Customer Portal Manager Standard',
|
|
113
|
+
active: true,
|
|
114
|
+
_id: 'a1'
|
|
115
|
+
}
|
|
116
|
+
],
|
|
117
|
+
_id: 'p1'
|
|
118
|
+
}
|
|
119
|
+
],
|
|
120
|
+
target: [
|
|
121
|
+
{
|
|
122
|
+
name: 'Customer Portal',
|
|
123
|
+
portalProfileMemberships: [
|
|
124
|
+
{
|
|
125
|
+
name: 'Customer Portal Manager Standard',
|
|
126
|
+
active: true
|
|
127
|
+
}
|
|
128
|
+
]
|
|
129
|
+
}
|
|
130
|
+
],
|
|
131
|
+
expected: undefined
|
|
132
|
+
}
|
|
133
|
+
];
|
|
134
|
+
describe('CustomerPortalSetup', () => {
|
|
135
|
+
describe('diff()', () => {
|
|
136
|
+
const p = new _1.CustomerPortalSetup(global.bf);
|
|
137
|
+
for (const t of tests) {
|
|
138
|
+
it(t.description, () => {
|
|
139
|
+
const actual = p.diff(t.source, t.target);
|
|
140
|
+
assert_1.default.deepStrictEqual(actual, t.expected);
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
//# sourceMappingURL=index.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../../src/plugins/customer-portal/portals/index.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const assert_1 = __importDefault(require("assert"));
|
|
30
|
+
const child = __importStar(require("child_process"));
|
|
31
|
+
const path = __importStar(require("path"));
|
|
32
|
+
const _1 = require(".");
|
|
33
|
+
describe(_1.DeferSharingCalculation.name, function () {
|
|
34
|
+
let plugin;
|
|
35
|
+
before(() => {
|
|
36
|
+
plugin = new _1.DeferSharingCalculation(global.bf);
|
|
37
|
+
});
|
|
38
|
+
const configSuspend = {
|
|
39
|
+
suspend: true
|
|
40
|
+
};
|
|
41
|
+
const configResume = {
|
|
42
|
+
suspend: false
|
|
43
|
+
};
|
|
44
|
+
it('should assign the user defer sharing permissions', () => {
|
|
45
|
+
const sourceDeployCmd = child.spawnSync('sf', [
|
|
46
|
+
'project',
|
|
47
|
+
'deploy',
|
|
48
|
+
'start',
|
|
49
|
+
'-d',
|
|
50
|
+
path.join(__dirname, 'sfdx-source'),
|
|
51
|
+
'--json'
|
|
52
|
+
]);
|
|
53
|
+
assert_1.default.deepStrictEqual(sourceDeployCmd.status, 0, sourceDeployCmd.output.toString());
|
|
54
|
+
const permSetAssignCmd = child.spawnSync('sf', ['org', 'assign', 'permset', '-n', 'Defer_Sharing']);
|
|
55
|
+
assert_1.default.deepStrictEqual(permSetAssignCmd.status, 0, permSetAssignCmd.output.toString());
|
|
56
|
+
});
|
|
57
|
+
it('should suspend', async () => {
|
|
58
|
+
await plugin.run(configSuspend);
|
|
59
|
+
});
|
|
60
|
+
it('should already be suspended', async () => {
|
|
61
|
+
const res = await plugin.run(configSuspend);
|
|
62
|
+
assert_1.default.deepStrictEqual(res, { message: 'no action necessary' });
|
|
63
|
+
});
|
|
64
|
+
it('should resume', async () => {
|
|
65
|
+
await plugin.run(configResume);
|
|
66
|
+
});
|
|
67
|
+
it('should already be resumed', async () => {
|
|
68
|
+
let err;
|
|
69
|
+
let res;
|
|
70
|
+
try {
|
|
71
|
+
res = await plugin.run(configResume);
|
|
72
|
+
}
|
|
73
|
+
catch (e) {
|
|
74
|
+
err = e;
|
|
75
|
+
assert_1.default.throws(() => {
|
|
76
|
+
throw err;
|
|
77
|
+
}, /Sharing recalculation is currently in progress, please wait until this has completed to plan/);
|
|
78
|
+
}
|
|
79
|
+
if (!err) {
|
|
80
|
+
assert_1.default.deepStrictEqual(res, { message: 'no action necessary' });
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
it('should delete the PermissionSetAssignment', async () => {
|
|
84
|
+
const permSetUnassignCmd = child.spawnSync('sf', [
|
|
85
|
+
'data',
|
|
86
|
+
'delete',
|
|
87
|
+
'record',
|
|
88
|
+
'-s',
|
|
89
|
+
'PermissionSetAssignment',
|
|
90
|
+
'-w',
|
|
91
|
+
'PermissionSet.Name=Defer_Sharing'
|
|
92
|
+
]);
|
|
93
|
+
assert_1.default.deepStrictEqual(permSetUnassignCmd.status, 0, permSetUnassignCmd.output.toString());
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
//# sourceMappingURL=index.e2e-spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/defer-sharing-calculation/index.e2e-spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,19 +27,14 @@ class DeferSharingCalculation extends plugin_1.BrowserforcePlugin {
|
|
|
27
27
|
}
|
|
28
28
|
async apply(config) {
|
|
29
29
|
const page = await this.browserforce.openPage(PATHS.BASE);
|
|
30
|
-
const button = config.suspend
|
|
31
|
-
? SELECTORS.SUSPEND_BUTTON
|
|
32
|
-
: SELECTORS.RESUME_BUTTON;
|
|
30
|
+
const button = config.suspend ? SELECTORS.SUSPEND_BUTTON : SELECTORS.RESUME_BUTTON;
|
|
33
31
|
await page.waitForSelector(button);
|
|
34
32
|
await Promise.all([page.waitForNavigation(), page.click(button)]);
|
|
35
33
|
await page.close();
|
|
36
34
|
if (!config.suspend) {
|
|
37
35
|
const refreshedPage = await this.browserforce.openPage(PATHS.BASE);
|
|
38
36
|
await refreshedPage.waitForSelector(SELECTORS.RECALCULATE_BUTTON);
|
|
39
|
-
await Promise.all([
|
|
40
|
-
refreshedPage.waitForNavigation(),
|
|
41
|
-
refreshedPage.click(SELECTORS.RECALCULATE_BUTTON)
|
|
42
|
-
]);
|
|
37
|
+
await Promise.all([refreshedPage.waitForNavigation(), refreshedPage.click(SELECTORS.RECALCULATE_BUTTON)]);
|
|
43
38
|
await refreshedPage.close();
|
|
44
39
|
}
|
|
45
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/defer-sharing-calculation/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,6BAA6B;CACpC,CAAC;AACF,MAAM,SAAS,GAAG;IAChB,cAAc,EAAE,4BAA4B;IAC5C,aAAa,EAAE,2BAA2B;IAC1C,kBAAkB,EAAE,2BAA2B;CAChD,CAAC;AAMF,MAAa,uBAAwB,SAAQ,2BAAkB;IACtD,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAEpD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/defer-sharing-calculation/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,6BAA6B;CACpC,CAAC;AACF,MAAM,SAAS,GAAG;IAChB,cAAc,EAAE,4BAA4B;IAC5C,aAAa,EAAE,2BAA2B;IAC1C,kBAAkB,EAAE,2BAA2B;CAChD,CAAC;AAMF,MAAa,uBAAwB,SAAQ,2BAAkB;IACtD,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAEpD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC5G,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC1G,IAAI,iBAAiB,IAAI,gBAAgB,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,8FAA8F,CAAC,CAAC;SACjH;QACD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO;YACL,OAAO,EAAE,iBAAiB;SAC3B,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC;QACnF,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACnB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnE,MAAM,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAClE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,iBAAiB,EAAE,EAAE,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;YAC1G,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;SAC7B;IACH,CAAC;CACF;AA9BD,0DA8BC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const _1 = require(".");
|
|
8
|
+
describe(_1.DensitySettings.name, function () {
|
|
9
|
+
let plugin;
|
|
10
|
+
before(() => {
|
|
11
|
+
plugin = new _1.DensitySettings(global.bf);
|
|
12
|
+
});
|
|
13
|
+
const configComfy = {
|
|
14
|
+
density: 'Comfy'
|
|
15
|
+
};
|
|
16
|
+
const configCompact = { density: 'Compact' };
|
|
17
|
+
it('should set to Compact', async () => {
|
|
18
|
+
await plugin.run(configCompact);
|
|
19
|
+
});
|
|
20
|
+
it('should be set to Compact', async () => {
|
|
21
|
+
const res = await plugin.retrieve();
|
|
22
|
+
assert_1.default.deepStrictEqual(res, configCompact);
|
|
23
|
+
});
|
|
24
|
+
it('should set to Comfy', async () => {
|
|
25
|
+
await plugin.apply(configComfy);
|
|
26
|
+
});
|
|
27
|
+
it('should be set to Comfy', async () => {
|
|
28
|
+
const res = await plugin.retrieve();
|
|
29
|
+
assert_1.default.deepStrictEqual(res, configComfy);
|
|
30
|
+
});
|
|
31
|
+
it('should throw for invalid density', async () => {
|
|
32
|
+
let err;
|
|
33
|
+
try {
|
|
34
|
+
await plugin.run({ density: 'Foo' });
|
|
35
|
+
}
|
|
36
|
+
catch (e) {
|
|
37
|
+
err = e;
|
|
38
|
+
}
|
|
39
|
+
assert_1.default.throws(() => {
|
|
40
|
+
throw err;
|
|
41
|
+
}, /Could not find density/);
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=index.e2e-spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/density-settings/index.e2e-spec.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAC5B,wBAAoC;AAEpC,QAAQ,CAAC,kBAAe,CAAC,IAAI,EAAE;IAC7B,IAAI,MAAM,CAAC;IACX,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,GAAG,IAAI,kBAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG;QAClB,OAAO,EAAE,OAAO;KACjB,CAAC;IACF,MAAM,aAAa,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAE7C,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACrC,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACtC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAChD,IAAI,GAAG,CAAC;QACR,IAAI;YACF,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;SACtC;QAAC,OAAO,CAAC,EAAE;YACV,GAAG,GAAG,CAAC,CAAC;SACT;QACD,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE;YACjB,MAAM,GAAG,CAAC;QACZ,CAAC,EAAE,wBAAwB,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -15,7 +15,7 @@ class DensitySettings extends plugin_1.BrowserforcePlugin {
|
|
|
15
15
|
const selected = densities.find((input) => input.checked);
|
|
16
16
|
await page.close();
|
|
17
17
|
return {
|
|
18
|
-
density: selected
|
|
18
|
+
density: selected.value
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
21
|
async apply(config) {
|
|
@@ -26,7 +26,7 @@ class DensitySettings extends plugin_1.BrowserforcePlugin {
|
|
|
26
26
|
async getDensities(page) {
|
|
27
27
|
await page.waitForSelector(SELECTORS.PICKER_ITEMS);
|
|
28
28
|
const elementHandles = await page.$$(SELECTORS.PICKER_ITEMS);
|
|
29
|
-
const result = await page.$$eval(SELECTORS.PICKER_ITEMS, (radioInputs) => radioInputs.map(input => {
|
|
29
|
+
const result = await page.$$eval(SELECTORS.PICKER_ITEMS, (radioInputs) => radioInputs.map((input) => {
|
|
30
30
|
return {
|
|
31
31
|
value: input.value,
|
|
32
32
|
checked: input.checked
|
|
@@ -38,11 +38,13 @@ class DensitySettings extends plugin_1.BrowserforcePlugin {
|
|
|
38
38
|
}
|
|
39
39
|
async setDensity(page, name) {
|
|
40
40
|
const densities = await this.getDensities(page);
|
|
41
|
-
const densityToSelect = densities.find(input => input.value === name);
|
|
41
|
+
const densityToSelect = densities.find((input) => input.value === name);
|
|
42
|
+
if (!densityToSelect) {
|
|
43
|
+
throw new Error(`Could not find density "${name}" in list of densities: ${densities.map((d) => d.value)}`);
|
|
44
|
+
}
|
|
42
45
|
await Promise.all([
|
|
43
|
-
page.waitForResponse(response => response
|
|
44
|
-
.
|
|
45
|
-
.includes('UserSettings.DensityUserSettings.setDefaultDensitySetting=1') && response.status() === 200),
|
|
46
|
+
page.waitForResponse((response) => response.url().includes('UserSettings.DensityUserSettings.setDefaultDensitySetting=1') &&
|
|
47
|
+
response.status() === 200),
|
|
46
48
|
densityToSelect.elementHandle.evaluate((input) => input.click())
|
|
47
49
|
]);
|
|
48
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/density-settings/index.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,mCAAmC;CAC1C,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,YAAY,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/density-settings/index.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,mCAAmC;CAC1C,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,YAAY,EAAE,uEAAuE;CACtF,CAAC;AAYF,MAAa,eAAgB,SAAQ,2BAAkB;IAC9C,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO;YACL,OAAO,EAAE,QAAS,CAAC,KAAK;SACzB,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAU;QAC3B,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,WAA+B,EAAE,EAAE,CAC3F,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,OAAO;gBACL,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAC7B,OAAO,EAAE,GAAG,KAAK,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAU,EAAE,IAAY;QACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QACxE,IAAI,CAAC,eAAe,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,2BAA2B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SAC5G;QACD,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,eAAe,CAClB,CAAC,QAAQ,EAAE,EAAE,CACX,QAAQ,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;gBACtF,QAAQ,CAAC,MAAM,EAAE,KAAK,GAAG,CAC5B;YACD,eAAe,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,KAAuB,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;SACnF,CAAC,CAAC;IACL,CAAC;CACF;AAhDD,0CAgDC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const _1 = require(".");
|
|
8
|
+
describe(_1.EmailDeliverability.name, function () {
|
|
9
|
+
let plugin;
|
|
10
|
+
before(() => {
|
|
11
|
+
plugin = new _1.EmailDeliverability(global.bf);
|
|
12
|
+
});
|
|
13
|
+
const configNone = {
|
|
14
|
+
accessLevel: 'No access'
|
|
15
|
+
};
|
|
16
|
+
const configAll = {
|
|
17
|
+
accessLevel: 'All email'
|
|
18
|
+
};
|
|
19
|
+
const configSystem = {
|
|
20
|
+
accessLevel: 'System email only'
|
|
21
|
+
};
|
|
22
|
+
const configInvalid = {
|
|
23
|
+
accessLevel: 'Invalid'
|
|
24
|
+
};
|
|
25
|
+
// Note order is important here, the scratch org will be created with all access set, I have placed last so if a scratch is reused at least it is in the same state
|
|
26
|
+
it('should set "no access"', async () => {
|
|
27
|
+
await plugin.run(configNone);
|
|
28
|
+
});
|
|
29
|
+
it('should already be set to "no access"', async () => {
|
|
30
|
+
const res = await plugin.retrieve();
|
|
31
|
+
assert_1.default.deepStrictEqual(res, configNone);
|
|
32
|
+
});
|
|
33
|
+
it('should set "system only"', async () => {
|
|
34
|
+
await plugin.apply(configSystem);
|
|
35
|
+
});
|
|
36
|
+
it('should be set to "system only"', async () => {
|
|
37
|
+
const res = await plugin.retrieve();
|
|
38
|
+
assert_1.default.deepStrictEqual(res, configSystem);
|
|
39
|
+
});
|
|
40
|
+
it('should apply all email', async () => {
|
|
41
|
+
await plugin.apply(configAll);
|
|
42
|
+
});
|
|
43
|
+
it('should already be have all enabled', async () => {
|
|
44
|
+
const res = await plugin.retrieve();
|
|
45
|
+
assert_1.default.deepStrictEqual(res, configAll);
|
|
46
|
+
});
|
|
47
|
+
it('should error on invalid input', async () => {
|
|
48
|
+
let err;
|
|
49
|
+
try {
|
|
50
|
+
await plugin.apply(configInvalid);
|
|
51
|
+
}
|
|
52
|
+
catch (e) {
|
|
53
|
+
err = e;
|
|
54
|
+
}
|
|
55
|
+
assert_1.default.throws(() => {
|
|
56
|
+
throw err;
|
|
57
|
+
}, /Invalid email access level/);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
//# sourceMappingURL=index.e2e-spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/email-deliverability/index.e2e-spec.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAC5B,wBAAwC;AAExC,QAAQ,CAAC,sBAAmB,CAAC,IAAI,EAAE;IACjC,IAAI,MAAM,CAAC;IACX,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,GAAG,IAAI,sBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG;QACjB,WAAW,EAAE,WAAW;KACzB,CAAC;IACF,MAAM,SAAS,GAAG;QAChB,WAAW,EAAE,WAAW;KACzB,CAAC;IACF,MAAM,YAAY,GAAG;QACnB,WAAW,EAAE,mBAAmB;KACjC,CAAC;IACF,MAAM,aAAa,GAAG;QACpB,WAAW,EAAE,SAAS;KACvB,CAAC;IAEF,mKAAmK;IACnK,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACtC,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACtC,MAAM,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,IAAI,GAAG,CAAC;QACR,IAAI;YACF,MAAM,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;SACnC;QAAC,OAAO,CAAC,EAAE;YACV,GAAG,GAAG,CAAC,CAAC;SACT;QACD,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE;YACjB,MAAM,GAAG,CAAC;QACZ,CAAC,EAAE,4BAA4B,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -11,15 +11,15 @@ const SELECTORS = {
|
|
|
11
11
|
SAVE_BUTTON: 'input[id$=":saveBtn"]'
|
|
12
12
|
};
|
|
13
13
|
const ACCESS_LEVEL_VALUES = new Map([
|
|
14
|
-
['No access', '0'
|
|
15
|
-
['System email only', '1'
|
|
14
|
+
['No access', '0'],
|
|
15
|
+
['System email only', '1'],
|
|
16
16
|
['All email', '2']
|
|
17
17
|
]);
|
|
18
18
|
class EmailDeliverability extends plugin_1.BrowserforcePlugin {
|
|
19
19
|
async retrieve(definition) {
|
|
20
20
|
const page = await this.browserforce.openPage(PATHS.BASE);
|
|
21
21
|
await page.waitForSelector(SELECTORS.ACCESS_LEVEL);
|
|
22
|
-
const selectedOptions = await page.$$eval(`${SELECTORS.ACCESS_LEVEL} > option[selected]`, options => options.map(option => option.textContent));
|
|
22
|
+
const selectedOptions = await page.$$eval(`${SELECTORS.ACCESS_LEVEL} > option[selected]`, (options) => options.map((option) => option.textContent ?? ''));
|
|
23
23
|
await page.close();
|
|
24
24
|
if (!selectedOptions) {
|
|
25
25
|
throw new Error('Selected access level not found...');
|
|
@@ -27,19 +27,16 @@ class EmailDeliverability extends plugin_1.BrowserforcePlugin {
|
|
|
27
27
|
return {
|
|
28
28
|
accessLevel: selectedOptions[0]
|
|
29
29
|
};
|
|
30
|
-
;
|
|
31
30
|
}
|
|
32
31
|
async apply(config) {
|
|
33
|
-
|
|
32
|
+
const accessLevelNumber = ACCESS_LEVEL_VALUES.get(config.accessLevel);
|
|
33
|
+
if (accessLevelNumber === undefined) {
|
|
34
34
|
throw new Error(`Invalid email access level ${config.accessLevel}`);
|
|
35
35
|
}
|
|
36
36
|
const page = await this.browserforce.openPage(PATHS.BASE);
|
|
37
37
|
await page.waitForSelector(SELECTORS.ACCESS_LEVEL);
|
|
38
|
-
await page.select(SELECTORS.ACCESS_LEVEL,
|
|
39
|
-
await Promise.all([
|
|
40
|
-
page.waitForSelector(SELECTORS.CONFIRM_MESSAGE),
|
|
41
|
-
page.click(SELECTORS.SAVE_BUTTON)
|
|
42
|
-
]);
|
|
38
|
+
await page.select(SELECTORS.ACCESS_LEVEL, accessLevelNumber);
|
|
39
|
+
await Promise.all([page.waitForSelector(SELECTORS.CONFIRM_MESSAGE), page.click(SELECTORS.SAVE_BUTTON)]);
|
|
43
40
|
await page.close();
|
|
44
41
|
}
|
|
45
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/email-deliverability/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,wCAAwC;CAC/C,CAAC;AACF,MAAM,SAAS,GAAG;IAChB,YAAY,EAAE,6CAA6C;IAC3D,eAAe,EAAE,0BAA0B;IAC3C,WAAW,EAAE,uBAAuB;CACrC,CAAC;AACF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,CAAC,WAAW,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/email-deliverability/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,wCAAwC;CAC/C,CAAC;AACF,MAAM,SAAS,GAAG;IAChB,YAAY,EAAE,6CAA6C;IAC3D,eAAe,EAAE,0BAA0B;IAC3C,WAAW,EAAE,uBAAuB;CACrC,CAAC;AACF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,CAAC,WAAW,EAAE,GAAG,CAAC;IAClB,CAAC,mBAAmB,EAAE,GAAG,CAAC;IAC1B,CAAC,WAAW,EAAE,GAAG,CAAC;CACnB,CAAC,CAAC;AAMH,MAAa,mBAAoB,SAAQ,2BAAkB;IAClD,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,YAAY,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE,CACpG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAClD,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,eAAe,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;SACvD;QACD,OAAO;YACL,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC;SAChC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACtE,IAAI,iBAAiB,KAAK,SAAS,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;SACrE;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;QAC7D,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACxG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AA3BD,kDA2BC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const _1 = require(".");
|
|
8
|
+
describe(_1.HighVelocitySalesSettings.name, function () {
|
|
9
|
+
let plugin;
|
|
10
|
+
before(() => {
|
|
11
|
+
plugin = new _1.HighVelocitySalesSettings(global.bf);
|
|
12
|
+
});
|
|
13
|
+
const configEnabled = {
|
|
14
|
+
setUpAndEnable: true
|
|
15
|
+
};
|
|
16
|
+
const configDisabled = {
|
|
17
|
+
setUpAndEnable: false
|
|
18
|
+
};
|
|
19
|
+
it('should enable', async () => {
|
|
20
|
+
await plugin.run(configEnabled);
|
|
21
|
+
});
|
|
22
|
+
it('should already be enabled', async () => {
|
|
23
|
+
const res = await plugin.run(configEnabled);
|
|
24
|
+
assert_1.default.deepStrictEqual(res, { message: 'no action necessary' });
|
|
25
|
+
});
|
|
26
|
+
it('should disable', async () => {
|
|
27
|
+
await plugin.run(configDisabled);
|
|
28
|
+
});
|
|
29
|
+
it('should already be disabled', async () => {
|
|
30
|
+
const res = await plugin.run(configDisabled);
|
|
31
|
+
assert_1.default.deepStrictEqual(res, { message: 'no action necessary' });
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=index.e2e-spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/high-velocity-sales-settings/index.e2e-spec.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAC5B,wBAAsD;AAEtD,QAAQ,CAAC,4BAAyB,CAAC,IAAI,EAAE;IACvC,IAAI,MAAiC,CAAC;IACtC,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,GAAG,IAAI,4BAAyB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAW;QAC5B,cAAc,EAAE,IAAI;KACrB,CAAC;IACF,MAAM,cAAc,GAAG;QACrB,cAAc,EAAE,KAAK;KACtB,CAAC;IAEF,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAC7B,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5C,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC7C,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -11,8 +11,7 @@ class HighVelocitySalesSettings extends plugin_1.BrowserforcePlugin {
|
|
|
11
11
|
const result = { setUpAndEnable: false };
|
|
12
12
|
try {
|
|
13
13
|
const settings = await conn.metadata.read('HighVelocitySalesSettings', 'HighVelocitySales');
|
|
14
|
-
result.setUpAndEnable =
|
|
15
|
-
settings['enableHighVelocitySalesSetup'] === true;
|
|
14
|
+
result.setUpAndEnable = settings['enableHighVelocitySalesSetup'] === true;
|
|
16
15
|
}
|
|
17
16
|
catch (e) {
|
|
18
17
|
if (/INVALID_TYPE: This type of metadata is not available for this organization/.test(e)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/high-velocity-sales-settings/index.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAClD,iCAAoD;AAEpD,MAAM,iBAAiB,GAAG;mFACyD,CAAC;AAMpF,MAAa,yBAA0B,SAAQ,2BAAkB;IACxD,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;QACzC,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/high-velocity-sales-settings/index.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAClD,iCAAoD;AAEpD,MAAM,iBAAiB,GAAG;mFACyD,CAAC;AAMpF,MAAa,yBAA0B,SAAQ,2BAAkB;IACxD,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;QACzC,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,2BAA2B,EAAE,mBAAmB,CAAC,CAAC;YAC5F,MAAM,CAAC,cAAc,GAAG,QAAQ,CAAC,8BAA8B,CAAC,KAAK,IAAI,CAAC;SAC3E;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,4EAA4E,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBACxF,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;aACpC;iBAAM;gBACL,MAAM,CAAC,CAAC;aACT;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,MAAM,CAAC,cAAc,EAAE;YACzB,MAAM,IAAI,GAAG,IAAI,iCAA0B,CACzC,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,iCAA0B,CAAC,MAAM,EAAE,CAAC,CACtE,CAAC;YACF,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;SAC7B;aAAM;YACL,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACtC,MAAM,qCAAqC,CAAC,IAAI,CAAC,CAAC;SACnD;IACH,CAAC;CACF;AA5BD,8DA4BC;AAEM,KAAK,UAAU,qCAAqC,CAAC,IAAgB;IAC1E,MAAM,QAAQ,GAAG;QACf,QAAQ,EAAE,mBAAmB;QAC7B,4BAA4B,EAAE,KAAK;QACnC,uBAAuB,EAAE,KAAK;KAC/B,CAAC;IACF,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAC;AACpE,CAAC;AAPD,sFAOC"}
|
|
@@ -4,6 +4,7 @@ exports.HighVelocitySalesSetupPage = void 0;
|
|
|
4
4
|
const browserforce_1 = require("../../browserforce");
|
|
5
5
|
const SET_UP_AND_ENABLE_HVS_BUTTON = 'button.setupAndEnableButton';
|
|
6
6
|
const ENABLE_TOGGLE = '#toggleHighVelocitySalesPref';
|
|
7
|
+
const AUTOMATION_TAB_ITEM = 'pierce/#automationTab__item';
|
|
7
8
|
class HighVelocitySalesSetupPage {
|
|
8
9
|
constructor(page) {
|
|
9
10
|
this.page = page;
|
|
@@ -12,12 +13,20 @@ class HighVelocitySalesSetupPage {
|
|
|
12
13
|
return 'lightning/setup/SalesEngagement/home';
|
|
13
14
|
}
|
|
14
15
|
async setUpAndEnable() {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
});
|
|
16
|
+
// starting Winter 24 (v59.0) there is a new tab bar and the item is located in the "Automation" tab
|
|
17
|
+
// wait for tab item or the button directly
|
|
18
|
+
await this.page.waitForSelector(`${AUTOMATION_TAB_ITEM}, ${SET_UP_AND_ENABLE_HVS_BUTTON}`, { timeout: 60000 });
|
|
19
|
+
if (await this.page.$(AUTOMATION_TAB_ITEM)) {
|
|
20
|
+
await Promise.all([
|
|
21
|
+
this.page.waitForSelector(SET_UP_AND_ENABLE_HVS_BUTTON, {
|
|
22
|
+
timeout: 60000
|
|
23
|
+
}),
|
|
24
|
+
this.page.click(AUTOMATION_TAB_ITEM)
|
|
25
|
+
]);
|
|
26
|
+
}
|
|
18
27
|
await Promise.all([
|
|
19
28
|
this.page.waitForSelector(ENABLE_TOGGLE, { timeout: 60000 }),
|
|
20
|
-
|
|
29
|
+
this.page.click(SET_UP_AND_ENABLE_HVS_BUTTON)
|
|
21
30
|
]);
|
|
22
31
|
await (0, browserforce_1.throwPageErrors)(this.page);
|
|
23
32
|
await this.page.close();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../src/plugins/high-velocity-sales-settings/page.ts"],"names":[],"mappings":";;;AACA,qDAAqD;AAErD,MAAM,4BAA4B,GAAG,6BAA6B,CAAC;AACnE,MAAM,aAAa,GAAG,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../src/plugins/high-velocity-sales-settings/page.ts"],"names":[],"mappings":";;;AACA,qDAAqD;AAErD,MAAM,4BAA4B,GAAG,6BAA6B,CAAC;AACnE,MAAM,aAAa,GAAG,8BAA8B,CAAC;AACrD,MAAM,mBAAmB,GAAG,6BAA6B,CAAC;AAE1D,MAAa,0BAA0B;IAGrC,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,MAAM,CAAC,MAAM;QAClB,OAAO,sCAAsC,CAAC;IAChD,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,oGAAoG;QACpG,2CAA2C;QAC3C,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,mBAAmB,KAAK,4BAA4B,EAAE,EAAE,EAAE,OAAO,EAAE,KAAM,EAAE,CAAC,CAAC;QAChH,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE;YAC1C,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,4BAA4B,EAAE;oBACtD,OAAO,EAAE,KAAM;iBAChB,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC;aACrC,CAAC,CAAC;SACJ;QACD,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,KAAM,EAAE,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,IAAA,8BAAe,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;CACF;AA9BD,gEA8BC"}
|