sfdx-browserforce-plugin 5.0.1 → 5.1.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.
Files changed (254) hide show
  1. package/package.json +2 -5
  2. package/lib/browserforce-command.d.ts +0 -15
  3. package/lib/browserforce-command.js +0 -61
  4. package/lib/browserforce-command.js.map +0 -1
  5. package/lib/browserforce.d.ts +0 -25
  6. package/lib/browserforce.js +0 -169
  7. package/lib/browserforce.js.map +0 -1
  8. package/lib/commands/browserforce/apply.d.ts +0 -10
  9. package/lib/commands/browserforce/apply.js +0 -54
  10. package/lib/commands/browserforce/apply.js.map +0 -1
  11. package/lib/commands/browserforce/plan.d.ts +0 -10
  12. package/lib/commands/browserforce/plan.js +0 -56
  13. package/lib/commands/browserforce/plan.js.map +0 -1
  14. package/lib/config-parser.d.ts +0 -16
  15. package/lib/config-parser.js +0 -24
  16. package/lib/config-parser.js.map +0 -1
  17. package/lib/index.d.ts +0 -1
  18. package/lib/index.js +0 -2
  19. package/lib/index.js.map +0 -1
  20. package/lib/jsforce-utils.d.ts +0 -5
  21. package/lib/jsforce-utils.js +0 -14
  22. package/lib/jsforce-utils.js.map +0 -1
  23. package/lib/pages/login.d.ts +0 -8
  24. package/lib/pages/login.js +0 -39
  25. package/lib/pages/login.js.map +0 -1
  26. package/lib/plugin.d.ts +0 -17
  27. package/lib/plugin.js +0 -30
  28. package/lib/plugin.js.map +0 -1
  29. package/lib/plugins/activity-settings/index.d.ts +0 -9
  30. package/lib/plugins/activity-settings/index.e2e-spec.d.ts +0 -1
  31. package/lib/plugins/activity-settings/index.e2e-spec.js +0 -36
  32. package/lib/plugins/activity-settings/index.e2e-spec.js.map +0 -1
  33. package/lib/plugins/activity-settings/index.js +0 -31
  34. package/lib/plugins/activity-settings/index.js.map +0 -1
  35. package/lib/plugins/company-information/index.d.ts +0 -8
  36. package/lib/plugins/company-information/index.e2e-spec.d.ts +0 -1
  37. package/lib/plugins/company-information/index.e2e-spec.js +0 -37
  38. package/lib/plugins/company-information/index.e2e-spec.js.map +0 -1
  39. package/lib/plugins/company-information/index.js +0 -50
  40. package/lib/plugins/company-information/index.js.map +0 -1
  41. package/lib/plugins/customer-portal/available-custom-objects/index.d.ts +0 -14
  42. package/lib/plugins/customer-portal/available-custom-objects/index.js +0 -114
  43. package/lib/plugins/customer-portal/available-custom-objects/index.js.map +0 -1
  44. package/lib/plugins/customer-portal/available-custom-objects/index.test.d.ts +0 -1
  45. package/lib/plugins/customer-portal/available-custom-objects/index.test.js +0 -39
  46. package/lib/plugins/customer-portal/available-custom-objects/index.test.js.map +0 -1
  47. package/lib/plugins/customer-portal/enabled/index.d.ts +0 -6
  48. package/lib/plugins/customer-portal/enabled/index.js +0 -27
  49. package/lib/plugins/customer-portal/enabled/index.js.map +0 -1
  50. package/lib/plugins/customer-portal/enabled/index.test.d.ts +0 -1
  51. package/lib/plugins/customer-portal/enabled/index.test.js +0 -34
  52. package/lib/plugins/customer-portal/enabled/index.test.js.map +0 -1
  53. package/lib/plugins/customer-portal/index.d.ts +0 -15
  54. package/lib/plugins/customer-portal/index.e2e-spec.d.ts +0 -1
  55. package/lib/plugins/customer-portal/index.e2e-spec.js +0 -202
  56. package/lib/plugins/customer-portal/index.e2e-spec.js.map +0 -1
  57. package/lib/plugins/customer-portal/index.js +0 -59
  58. package/lib/plugins/customer-portal/index.js.map +0 -1
  59. package/lib/plugins/customer-portal/index.test.d.ts +0 -1
  60. package/lib/plugins/customer-portal/index.test.js +0 -84
  61. package/lib/plugins/customer-portal/index.test.js.map +0 -1
  62. package/lib/plugins/customer-portal/portals/index.d.ts +0 -25
  63. package/lib/plugins/customer-portal/portals/index.js +0 -180
  64. package/lib/plugins/customer-portal/portals/index.js.map +0 -1
  65. package/lib/plugins/customer-portal/portals/index.test.d.ts +0 -1
  66. package/lib/plugins/customer-portal/portals/index.test.js +0 -140
  67. package/lib/plugins/customer-portal/portals/index.test.js.map +0 -1
  68. package/lib/plugins/density-settings/index.d.ts +0 -17
  69. package/lib/plugins/density-settings/index.e2e-spec.d.ts +0 -1
  70. package/lib/plugins/density-settings/index.e2e-spec.js +0 -39
  71. package/lib/plugins/density-settings/index.e2e-spec.js.map +0 -1
  72. package/lib/plugins/density-settings/index.js +0 -46
  73. package/lib/plugins/density-settings/index.js.map +0 -1
  74. package/lib/plugins/deprecated.d.ts +0 -4
  75. package/lib/plugins/deprecated.js +0 -28
  76. package/lib/plugins/deprecated.js.map +0 -1
  77. package/lib/plugins/email-deliverability/index.d.ts +0 -9
  78. package/lib/plugins/email-deliverability/index.e2e-spec.d.ts +0 -1
  79. package/lib/plugins/email-deliverability/index.e2e-spec.js +0 -55
  80. package/lib/plugins/email-deliverability/index.e2e-spec.js.map +0 -1
  81. package/lib/plugins/email-deliverability/index.js +0 -39
  82. package/lib/plugins/email-deliverability/index.js.map +0 -1
  83. package/lib/plugins/high-velocity-sales-settings/index.d.ts +0 -10
  84. package/lib/plugins/high-velocity-sales-settings/index.e2e-spec.d.ts +0 -1
  85. package/lib/plugins/high-velocity-sales-settings/index.e2e-spec.js +0 -29
  86. package/lib/plugins/high-velocity-sales-settings/index.e2e-spec.js.map +0 -1
  87. package/lib/plugins/high-velocity-sales-settings/index.js +0 -42
  88. package/lib/plugins/high-velocity-sales-settings/index.js.map +0 -1
  89. package/lib/plugins/high-velocity-sales-settings/page.d.ts +0 -7
  90. package/lib/plugins/high-velocity-sales-settings/page.js +0 -29
  91. package/lib/plugins/high-velocity-sales-settings/page.js.map +0 -1
  92. package/lib/plugins/history-tracking/index.d.ts +0 -17
  93. package/lib/plugins/history-tracking/index.e2e-spec.d.ts +0 -1
  94. package/lib/plugins/history-tracking/index.e2e-spec.js +0 -106
  95. package/lib/plugins/history-tracking/index.e2e-spec.js.map +0 -1
  96. package/lib/plugins/history-tracking/index.js +0 -169
  97. package/lib/plugins/history-tracking/index.js.map +0 -1
  98. package/lib/plugins/home-page-layouts/index.d.ts +0 -14
  99. package/lib/plugins/home-page-layouts/index.e2e-spec.d.ts +0 -1
  100. package/lib/plugins/home-page-layouts/index.e2e-spec.js +0 -47
  101. package/lib/plugins/home-page-layouts/index.e2e-spec.js.map +0 -1
  102. package/lib/plugins/home-page-layouts/index.js +0 -90
  103. package/lib/plugins/home-page-layouts/index.js.map +0 -1
  104. package/lib/plugins/home-page-layouts/index.test.d.ts +0 -1
  105. package/lib/plugins/home-page-layouts/index.test.js +0 -104
  106. package/lib/plugins/home-page-layouts/index.test.js.map +0 -1
  107. package/lib/plugins/index.d.ts +0 -23
  108. package/lib/plugins/index.js +0 -24
  109. package/lib/plugins/index.js.map +0 -1
  110. package/lib/plugins/lightning-experience-settings/index.d.ts +0 -17
  111. package/lib/plugins/lightning-experience-settings/index.e2e-spec.d.ts +0 -1
  112. package/lib/plugins/lightning-experience-settings/index.e2e-spec.js +0 -39
  113. package/lib/plugins/lightning-experience-settings/index.e2e-spec.js.map +0 -1
  114. package/lib/plugins/lightning-experience-settings/index.js +0 -61
  115. package/lib/plugins/lightning-experience-settings/index.js.map +0 -1
  116. package/lib/plugins/linkedin-sales-navigator-settings/index.d.ts +0 -8
  117. package/lib/plugins/linkedin-sales-navigator-settings/index.e2e-spec.d.ts +0 -1
  118. package/lib/plugins/linkedin-sales-navigator-settings/index.e2e-spec.js +0 -29
  119. package/lib/plugins/linkedin-sales-navigator-settings/index.e2e-spec.js.map +0 -1
  120. package/lib/plugins/linkedin-sales-navigator-settings/index.js +0 -15
  121. package/lib/plugins/linkedin-sales-navigator-settings/index.js.map +0 -1
  122. package/lib/plugins/linkedin-sales-navigator-settings/page.d.ts +0 -8
  123. package/lib/plugins/linkedin-sales-navigator-settings/page.js +0 -32
  124. package/lib/plugins/linkedin-sales-navigator-settings/page.js.map +0 -1
  125. package/lib/plugins/omni-channel-settings/index.d.ts +0 -9
  126. package/lib/plugins/omni-channel-settings/index.e2e-spec.d.ts +0 -1
  127. package/lib/plugins/omni-channel-settings/index.e2e-spec.js +0 -26
  128. package/lib/plugins/omni-channel-settings/index.e2e-spec.js.map +0 -1
  129. package/lib/plugins/omni-channel-settings/index.js +0 -29
  130. package/lib/plugins/omni-channel-settings/index.js.map +0 -1
  131. package/lib/plugins/opportunity-splits/index.d.ts +0 -9
  132. package/lib/plugins/opportunity-splits/index.e2e-spec.d.ts +0 -1
  133. package/lib/plugins/opportunity-splits/index.e2e-spec.js +0 -46
  134. package/lib/plugins/opportunity-splits/index.e2e-spec.js.map +0 -1
  135. package/lib/plugins/opportunity-splits/index.js +0 -32
  136. package/lib/plugins/opportunity-splits/index.js.map +0 -1
  137. package/lib/plugins/opportunity-splits/pages/layout-selection.d.ts +0 -8
  138. package/lib/plugins/opportunity-splits/pages/layout-selection.js +0 -17
  139. package/lib/plugins/opportunity-splits/pages/layout-selection.js.map +0 -1
  140. package/lib/plugins/opportunity-splits/pages/overview.d.ts +0 -10
  141. package/lib/plugins/opportunity-splits/pages/overview.js +0 -38
  142. package/lib/plugins/opportunity-splits/pages/overview.js.map +0 -1
  143. package/lib/plugins/opportunity-splits/pages/setup.d.ts +0 -8
  144. package/lib/plugins/opportunity-splits/pages/setup.js +0 -19
  145. package/lib/plugins/opportunity-splits/pages/setup.js.map +0 -1
  146. package/lib/plugins/permission-sets/index.d.ts +0 -10
  147. package/lib/plugins/permission-sets/index.e2e-spec.d.ts +0 -1
  148. package/lib/plugins/permission-sets/index.e2e-spec.js +0 -36
  149. package/lib/plugins/permission-sets/index.e2e-spec.js.map +0 -1
  150. package/lib/plugins/permission-sets/index.js +0 -22
  151. package/lib/plugins/permission-sets/index.js.map +0 -1
  152. package/lib/plugins/permission-sets/service-presence-status/index.d.ts +0 -10
  153. package/lib/plugins/permission-sets/service-presence-status/index.js +0 -60
  154. package/lib/plugins/permission-sets/service-presence-status/index.js.map +0 -1
  155. package/lib/plugins/picklists/field-dependencies/index.d.ts +0 -11
  156. package/lib/plugins/picklists/field-dependencies/index.js +0 -56
  157. package/lib/plugins/picklists/field-dependencies/index.js.map +0 -1
  158. package/lib/plugins/picklists/field-dependencies/index.test.d.ts +0 -1
  159. package/lib/plugins/picklists/field-dependencies/index.test.js +0 -64
  160. package/lib/plugins/picklists/field-dependencies/index.test.js.map +0 -1
  161. package/lib/plugins/picklists/field-dependencies/pages.d.ts +0 -14
  162. package/lib/plugins/picklists/field-dependencies/pages.js +0 -57
  163. package/lib/plugins/picklists/field-dependencies/pages.js.map +0 -1
  164. package/lib/plugins/picklists/index.d.ts +0 -23
  165. package/lib/plugins/picklists/index.e2e-spec.d.ts +0 -1
  166. package/lib/plugins/picklists/index.e2e-spec.js +0 -100
  167. package/lib/plugins/picklists/index.e2e-spec.js.map +0 -1
  168. package/lib/plugins/picklists/index.js +0 -153
  169. package/lib/plugins/picklists/index.js.map +0 -1
  170. package/lib/plugins/picklists/pages.d.ts +0 -40
  171. package/lib/plugins/picklists/pages.js +0 -194
  172. package/lib/plugins/picklists/pages.js.map +0 -1
  173. package/lib/plugins/picklists/standard-value-set.d.ts +0 -1
  174. package/lib/plugins/picklists/standard-value-set.js +0 -80
  175. package/lib/plugins/picklists/standard-value-set.js.map +0 -1
  176. package/lib/plugins/record-types/index.d.ts +0 -13
  177. package/lib/plugins/record-types/index.e2e-spec.d.ts +0 -1
  178. package/lib/plugins/record-types/index.e2e-spec.js +0 -73
  179. package/lib/plugins/record-types/index.e2e-spec.js.map +0 -1
  180. package/lib/plugins/record-types/index.js +0 -70
  181. package/lib/plugins/record-types/index.js.map +0 -1
  182. package/lib/plugins/record-types/pages.d.ts +0 -15
  183. package/lib/plugins/record-types/pages.js +0 -64
  184. package/lib/plugins/record-types/pages.js.map +0 -1
  185. package/lib/plugins/relate-contact-to-multiple-accounts/index.d.ts +0 -11
  186. package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.d.ts +0 -1
  187. package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js +0 -29
  188. package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js.map +0 -1
  189. package/lib/plugins/relate-contact-to-multiple-accounts/index.js +0 -72
  190. package/lib/plugins/relate-contact-to-multiple-accounts/index.js.map +0 -1
  191. package/lib/plugins/reports-and-dashboards/folder-sharing/index.d.ts +0 -8
  192. package/lib/plugins/reports-and-dashboards/folder-sharing/index.e2e-spec.d.ts +0 -1
  193. package/lib/plugins/reports-and-dashboards/folder-sharing/index.e2e-spec.js +0 -3
  194. package/lib/plugins/reports-and-dashboards/folder-sharing/index.e2e-spec.js.map +0 -1
  195. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js +0 -50
  196. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js.map +0 -1
  197. package/lib/plugins/reports-and-dashboards/index.d.ts +0 -11
  198. package/lib/plugins/reports-and-dashboards/index.e2e-spec.d.ts +0 -1
  199. package/lib/plugins/reports-and-dashboards/index.e2e-spec.js +0 -3
  200. package/lib/plugins/reports-and-dashboards/index.e2e-spec.js.map +0 -1
  201. package/lib/plugins/reports-and-dashboards/index.js +0 -29
  202. package/lib/plugins/reports-and-dashboards/index.js.map +0 -1
  203. package/lib/plugins/salesforce-cpq-config/formConfig.d.ts +0 -17
  204. package/lib/plugins/salesforce-cpq-config/formConfig.js +0 -649
  205. package/lib/plugins/salesforce-cpq-config/formConfig.js.map +0 -1
  206. package/lib/plugins/salesforce-cpq-config/index.d.ts +0 -7
  207. package/lib/plugins/salesforce-cpq-config/index.e2e-spec.d.ts +0 -1
  208. package/lib/plugins/salesforce-cpq-config/index.e2e-spec.js +0 -37
  209. package/lib/plugins/salesforce-cpq-config/index.e2e-spec.js.map +0 -1
  210. package/lib/plugins/salesforce-cpq-config/index.js +0 -195
  211. package/lib/plugins/salesforce-cpq-config/index.js.map +0 -1
  212. package/lib/plugins/salesforce-to-salesforce/index.d.ts +0 -9
  213. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.d.ts +0 -1
  214. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js +0 -34
  215. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js.map +0 -1
  216. package/lib/plugins/salesforce-to-salesforce/index.js +0 -44
  217. package/lib/plugins/salesforce-to-salesforce/index.js.map +0 -1
  218. package/lib/plugins/security/authentication-configuration/index.d.ts +0 -11
  219. package/lib/plugins/security/authentication-configuration/index.e2e-spec.d.ts +0 -1
  220. package/lib/plugins/security/authentication-configuration/index.e2e-spec.js +0 -101
  221. package/lib/plugins/security/authentication-configuration/index.e2e-spec.js.map +0 -1
  222. package/lib/plugins/security/authentication-configuration/index.js +0 -62
  223. package/lib/plugins/security/authentication-configuration/index.js.map +0 -1
  224. package/lib/plugins/security/certificate-and-key-management/index.d.ts +0 -23
  225. package/lib/plugins/security/certificate-and-key-management/index.e2e-spec.d.ts +0 -1
  226. package/lib/plugins/security/certificate-and-key-management/index.e2e-spec.js +0 -63
  227. package/lib/plugins/security/certificate-and-key-management/index.e2e-spec.js.map +0 -1
  228. package/lib/plugins/security/certificate-and-key-management/index.js +0 -159
  229. package/lib/plugins/security/certificate-and-key-management/index.js.map +0 -1
  230. package/lib/plugins/security/certificate-and-key-management/index.test.d.ts +0 -1
  231. package/lib/plugins/security/certificate-and-key-management/index.test.js +0 -61
  232. package/lib/plugins/security/certificate-and-key-management/index.test.js.map +0 -1
  233. package/lib/plugins/security/index.d.ts +0 -13
  234. package/lib/plugins/security/index.js +0 -42
  235. package/lib/plugins/security/index.js.map +0 -1
  236. package/lib/plugins/service-channels/capacity/index.d.ts +0 -18
  237. package/lib/plugins/service-channels/capacity/index.js +0 -133
  238. package/lib/plugins/service-channels/capacity/index.js.map +0 -1
  239. package/lib/plugins/service-channels/index.d.ts +0 -12
  240. package/lib/plugins/service-channels/index.e2e-spec.d.ts +0 -1
  241. package/lib/plugins/service-channels/index.e2e-spec.js +0 -57
  242. package/lib/plugins/service-channels/index.e2e-spec.js.map +0 -1
  243. package/lib/plugins/service-channels/index.js +0 -38
  244. package/lib/plugins/service-channels/index.js.map +0 -1
  245. package/lib/plugins/slack/index.d.ts +0 -9
  246. package/lib/plugins/slack/index.e2e-spec.d.ts +0 -1
  247. package/lib/plugins/slack/index.e2e-spec.js +0 -47
  248. package/lib/plugins/slack/index.e2e-spec.js.map +0 -1
  249. package/lib/plugins/slack/index.js +0 -47
  250. package/lib/plugins/slack/index.js.map +0 -1
  251. package/lib/plugins/utils.d.ts +0 -3
  252. package/lib/plugins/utils.js +0 -47
  253. package/lib/plugins/utils.js.map +0 -1
  254. package/oclif.manifest.json +0 -163
@@ -1,40 +0,0 @@
1
- import { Page } from 'puppeteer';
2
- type PicklistValue = {
3
- value: string;
4
- active: boolean;
5
- };
6
- export declare class PicklistPage {
7
- private page;
8
- constructor(page: Page);
9
- getPicklistValues(): Promise<PicklistValue[]>;
10
- clickNewActionButton(): Promise<void>;
11
- clickReplaceActionButton(): Promise<PicklistReplacePage>;
12
- clickDeleteActionForValue(picklistValueApiName: string): Promise<PicklistReplaceAndDeletePage>;
13
- clickActivateDeactivateActionForValue(picklistValueApiName: string, active: boolean): Promise<PicklistPage>;
14
- }
15
- export declare class DefaultPicklistAddPage {
16
- protected page: any;
17
- protected saveButton: string;
18
- constructor(page: Page);
19
- add(newValue: string): Promise<void>;
20
- save(): Promise<void>;
21
- }
22
- export declare class StatusPicklistAddPage {
23
- protected page: any;
24
- protected saveButton: string;
25
- constructor(page: Page);
26
- add(newValue: string, statusCategory: string): Promise<void>;
27
- save(): Promise<void>;
28
- }
29
- export declare class PicklistReplacePage {
30
- protected page: any;
31
- protected saveButton: string;
32
- constructor(page: Page);
33
- replace(value: string, newValue: string, replaceAllBlankValues?: boolean): Promise<void>;
34
- save(): Promise<void>;
35
- }
36
- export declare class PicklistReplaceAndDeletePage extends PicklistReplacePage {
37
- constructor(page: Page);
38
- replaceAndDelete(newValue?: string): Promise<void>;
39
- }
40
- export {};
@@ -1,194 +0,0 @@
1
- export class PicklistPage {
2
- page;
3
- constructor(page) {
4
- this.page = page;
5
- }
6
- async getPicklistValues() {
7
- // wait for New button in any related list
8
- await this.page.waitForSelector('body table input[name="new"]');
9
- const resolvePicklistValueNames = async (xpath) => {
10
- const fullNameHandles = await this.page.$$(`xpath/.${xpath}`);
11
- const fullNames = await Promise.all(fullNameHandles.map((handle) => handle.evaluate((el) => el.innerText)));
12
- return fullNames;
13
- };
14
- const active = await resolvePicklistValueNames(`//tr[td[1]//a[contains(@href, "/setup/ui/picklist_masteredit")]]//td[2]`);
15
- const inactive = await resolvePicklistValueNames(`//tr[td[1]//a[contains(@href, "/setup/ui/picklist_masteractivate")]]//td[2]`);
16
- return [
17
- ...active.map((x) => {
18
- return { value: x, active: true };
19
- }),
20
- ...inactive.map((x) => {
21
- return { value: x, active: false };
22
- }),
23
- ];
24
- }
25
- async clickNewActionButton() {
26
- const NEW_ACTION_BUTTON_XPATH = '//tr[td[2]]//input[contains(@onclick, "/setup/ui/picklist_masteredit")][@value=" New "]';
27
- await this.page.waitForSelector(`::-p-xpath(${NEW_ACTION_BUTTON_XPATH})`);
28
- const newActionButton = (await this.page.$$(`xpath/.${NEW_ACTION_BUTTON_XPATH}`))[0];
29
- await Promise.all([
30
- this.page.waitForNavigation(),
31
- this.page.evaluate((e) => e.click(), newActionButton),
32
- ]);
33
- }
34
- async clickReplaceActionButton() {
35
- const REPLACE_ACTION_BUTTON = 'input[name="replace"]';
36
- await this.page.waitForSelector(REPLACE_ACTION_BUTTON);
37
- await Promise.all([
38
- this.page.waitForNavigation(),
39
- this.page.click(REPLACE_ACTION_BUTTON),
40
- ]);
41
- return new PicklistReplacePage(this.page);
42
- }
43
- async clickDeleteActionForValue(picklistValueApiName) {
44
- // deactivate: deleteType=1
45
- // delete: deleteType=0 or no deleteType=1
46
- const xpath = `//tr[td[2][text() = "${picklistValueApiName}"]]//td[1]//a[contains(@href, "/setup/ui/picklist_masterdelete.jsp") and not(contains(@href, "deleteType=1"))]`;
47
- await this.page.waitForSelector(`::-p-xpath(${xpath})`);
48
- const deleteLink = (await this.page.$$(`xpath/.${xpath}`))[0];
49
- this.page.on('dialog', async (dialog) => {
50
- await dialog.accept();
51
- });
52
- await Promise.all([
53
- this.page.waitForNavigation(),
54
- this.page.evaluate((e) => e.click(), deleteLink),
55
- ]);
56
- await throwPageErrors(this.page);
57
- return new PicklistReplaceAndDeletePage(this.page);
58
- }
59
- async clickActivateDeactivateActionForValue(picklistValueApiName, active) {
60
- let xpath;
61
- if (active) {
62
- xpath = `//tr[td[2][text() = "${picklistValueApiName}"]]//td[1]//a[contains(@href, "/setup/ui/picklist_masteractivate.jsp")]`;
63
- }
64
- else {
65
- // deactivate: deleteType=1
66
- // delete: deleteType=0 or no deleteType=1
67
- xpath = `//tr[td[2][text() = "${picklistValueApiName}"]]//td[1]//a[contains(@href, "/setup/ui/picklist_masterdelete.jsp") and contains(@href, "deleteType=1")]`;
68
- }
69
- await this.page.waitForSelector(`::-p-xpath(${xpath})`);
70
- const actionLink = (await this.page.$$(`xpath/.${xpath}`))[0];
71
- this.page.on('dialog', async (dialog) => {
72
- await dialog.accept();
73
- });
74
- await Promise.all([
75
- this.page.waitForNavigation(),
76
- this.page.evaluate((e) => e.click(), actionLink),
77
- ]);
78
- await throwPageErrors(this.page);
79
- return new PicklistPage(this.page);
80
- }
81
- }
82
- export class DefaultPicklistAddPage {
83
- page;
84
- saveButton = 'input.btn[name="save"]';
85
- constructor(page) {
86
- this.page = page;
87
- }
88
- async add(newValue) {
89
- const TEXT_AREA = 'textarea';
90
- if (newValue !== undefined && newValue !== null) {
91
- await this.page.waitForSelector(TEXT_AREA);
92
- await this.page.type(TEXT_AREA, newValue);
93
- }
94
- await this.save();
95
- }
96
- async save() {
97
- await this.page.waitForSelector(this.saveButton);
98
- await Promise.all([
99
- this.page.waitForNavigation(),
100
- this.page.click(this.saveButton),
101
- ]);
102
- await throwPageErrors(this.page);
103
- }
104
- }
105
- export class StatusPicklistAddPage {
106
- page;
107
- saveButton = 'input.btn[name="save"]';
108
- constructor(page) {
109
- this.page = page;
110
- }
111
- async add(newValue, statusCategory) {
112
- const LABEL_INPUT = 'input#p1';
113
- const API_NAME_INPUT = 'input#p3';
114
- const STATUS_CATEGORY_SELECTOR = 'select#p5';
115
- if (newValue !== undefined && newValue !== null) {
116
- await this.page.waitForSelector(STATUS_CATEGORY_SELECTOR);
117
- await this.page.type(LABEL_INPUT, newValue);
118
- await this.page.type(API_NAME_INPUT, newValue);
119
- await this.page.type(STATUS_CATEGORY_SELECTOR, statusCategory);
120
- }
121
- await this.save();
122
- }
123
- async save() {
124
- await this.page.waitForSelector(this.saveButton);
125
- await Promise.all([
126
- this.page.waitForNavigation(),
127
- this.page.click(this.saveButton),
128
- ]);
129
- await throwPageErrors(this.page);
130
- }
131
- }
132
- export class PicklistReplacePage {
133
- page;
134
- saveButton = 'input[name="save"]';
135
- constructor(page) {
136
- this.page = page;
137
- }
138
- async replace(value, newValue, replaceAllBlankValues) {
139
- const OLD_VALUE_SELECTOR = 'input#nf';
140
- const NEW_VALUE_SELECTOR = 'select#nv';
141
- const REPLACE_ALL_BLANK_VALUES_CHECKBOX = 'input#fnv';
142
- if (value !== undefined && value !== null) {
143
- await this.page.waitForSelector(OLD_VALUE_SELECTOR);
144
- await this.page.type(OLD_VALUE_SELECTOR, value);
145
- }
146
- if (replaceAllBlankValues) {
147
- await this.page.waitForSelector(REPLACE_ALL_BLANK_VALUES_CHECKBOX);
148
- await this.page.click(REPLACE_ALL_BLANK_VALUES_CHECKBOX);
149
- }
150
- if (newValue !== undefined && newValue !== null) {
151
- await this.page.waitForSelector(NEW_VALUE_SELECTOR);
152
- await this.page.type(NEW_VALUE_SELECTOR, newValue);
153
- }
154
- await this.save();
155
- }
156
- async save() {
157
- await this.page.waitForSelector(this.saveButton);
158
- await Promise.all([
159
- this.page.waitForNavigation(),
160
- this.page.click(this.saveButton),
161
- ]);
162
- await throwPageErrors(this.page);
163
- }
164
- }
165
- export class PicklistReplaceAndDeletePage extends PicklistReplacePage {
166
- constructor(page) {
167
- super(page);
168
- this.saveButton = 'input[name="delID"][type="submit"]';
169
- }
170
- async replaceAndDelete(newValue) {
171
- const NEW_VALUE_SELECTOR = 'select#p13';
172
- const REPLACE_WITH_BLANK_VALUE_RADIO_INPUT = 'input#ReplaceValueWithNullValue';
173
- // select option value
174
- if (newValue !== undefined && newValue !== null) {
175
- await this.page.waitForSelector(NEW_VALUE_SELECTOR);
176
- await this.page.type(NEW_VALUE_SELECTOR, newValue);
177
- }
178
- else {
179
- await this.page.waitForSelector(REPLACE_WITH_BLANK_VALUE_RADIO_INPUT);
180
- await this.page.click(REPLACE_WITH_BLANK_VALUE_RADIO_INPUT);
181
- }
182
- }
183
- }
184
- async function throwPageErrors(page) {
185
- const errorHandle = await page.$('div#validationError div.messageText');
186
- if (errorHandle) {
187
- const errorMsg = await page.evaluate((div) => div.innerText, errorHandle);
188
- await errorHandle.dispose();
189
- if (errorMsg && errorMsg.trim()) {
190
- throw new Error(errorMsg.trim());
191
- }
192
- }
193
- }
194
- //# sourceMappingURL=pages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/picklists/pages.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare function determineStandardValueSetEditUrl(standardValueSet: string): string;
@@ -1,80 +0,0 @@
1
- import { MAPPING as STANDARDVALUESET_MAPPING } from '@mdapi-issues/listmetadata-standardvalueset';
2
- const editUrl = (id, type) => `_ui/common/config/field/StandardFieldAttributes/d?id=${id}&type=${type}`;
3
- const editUrlMasterDetail = (tid, pt) => `setup/ui/picklist_masterdetail.jsp?tid=${tid}&pt=${pt}`;
4
- const mapping = {
5
- AccountContactMultiRoles: editUrl('Roles', 'AccountContactRelation'),
6
- AccountContactRole: editUrlMasterDetail('02Z', '38'),
7
- AccountOwnership: editUrl('Ownership', 'Account'),
8
- AccountRating: editUrl('Rating', 'Account'),
9
- AccountType: editUrl('Type', 'Account'),
10
- AssetStatus: editUrl('Status', 'Asset'),
11
- CampaignMemberStatus: editUrl('Status', 'CampaignMember'),
12
- CampaignStatus: editUrl('Status', 'Campaign'),
13
- CampaignType: editUrl('Type', 'Campaign'),
14
- CareItemStatus2: '',
15
- CaseContactRole: editUrlMasterDetail('03j', '45'),
16
- CaseOrigin: editUrl('Origin', 'Case'),
17
- CasePriority: editUrl('Priority', 'Case'),
18
- CaseReason: editUrl('Reason', 'Case'),
19
- CaseStatus: editUrl('Status', 'Case'),
20
- CaseType: editUrl('Type', 'Case'),
21
- ContactRole: editUrlMasterDetail('00K', '11'),
22
- ContractContactRole: editUrlMasterDetail('021', '39'),
23
- ContractStatus: editUrl('Status', 'Contract'),
24
- EntitlementType: editUrl('Type', 'Entitlement'),
25
- EventSubject: editUrl('Subject', 'Event'),
26
- EventType: editUrl('Type', 'Event'),
27
- FiscalYearPeriodName: '',
28
- FiscalYearPeriodPrefix: '',
29
- FiscalYearQuarterName: '',
30
- FiscalYearQuarterPrefix: '',
31
- ForecastCategoryName: editUrl('ForecastCategoryName', 'Opportunity'),
32
- IdeaMultiCategory: editUrl('Categories', 'Idea'),
33
- IdeaStatus: editUrl('Status', 'Idea'),
34
- IdeaThemeStatus: editUrl('Status', 'IdeaTheme'),
35
- Industry: editUrl('Industry', 'Lead'),
36
- LeadSource: editUrl('LeadSource', 'Lead'),
37
- LeadStatus: editUrl('Status', 'Lead'),
38
- OpportunityCompetitor: editUrlMasterDetail('00J', '35'),
39
- OpportunityStage: editUrl('StageName', 'Opportunity'),
40
- OpportunityType: editUrl('Type', 'Opportunity'),
41
- OrderType: editUrl('Type', 'Order'),
42
- PartnerRole: editUrlMasterDetail('00I', '17'),
43
- Product2Family: editUrl('Family', 'Product2'),
44
- QuickTextCategory: editUrl('Category', 'QuickText'),
45
- QuickTextChannel: editUrl('Channel', 'QuickText'),
46
- QuoteStatus: editUrl('Status', 'Quote'),
47
- RoleInTerritory2: '',
48
- ResourceAbsenceType: editUrl('Type', 'ResourceAbsence'),
49
- SalesTeamRole: editUrl('TeamMemberRole', 'OpportunityTeamMember'),
50
- Salutation: editUrlMasterDetail('003', '8'),
51
- ServiceAppointmentStatus: editUrl('Status', 'ServiceAppointment'),
52
- ServiceContractApprovalStatus: editUrl('ApprovalStatus', 'ServiceContract'),
53
- ServTerrMemRoleType: '',
54
- SocialPostClassification: '',
55
- SocialPostEngagementLevel: '',
56
- SocialPostReviewedStatus: '',
57
- SolutionStatus: editUrl('Status', 'Solution'),
58
- TaskPriority: editUrl('Priority', 'Task'),
59
- TaskStatus: editUrl('Status', 'Task'),
60
- TaskSubject: editUrl('Subject', 'Task'),
61
- TaskType: editUrl('Type', 'Task'),
62
- WorkOrderLineItemStatus: editUrl('Status', 'WorkOrderLineItem'),
63
- WorkOrderPriority: editUrl('Priority', 'WorkOrder'),
64
- WorkOrderStatus: editUrl('Status', 'WorkOrder'),
65
- WorkTypeDefApptType: '',
66
- WorkTypeGroupAddInfo: '',
67
- };
68
- export function determineStandardValueSetEditUrl(standardValueSet) {
69
- if (mapping[standardValueSet] !== '') {
70
- return mapping[standardValueSet];
71
- }
72
- else {
73
- const standardField = Object.keys(STANDARDVALUESET_MAPPING).find((key) => STANDARDVALUESET_MAPPING[key] === standardValueSet);
74
- if (!standardField) {
75
- throw new Error(`Could not determine Edit URL for StandardValueSet:${standardValueSet}`);
76
- }
77
- return editUrl(standardValueSet, standardField.split('.')[0]);
78
- }
79
- }
80
- //# sourceMappingURL=standard-value-set.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standard-value-set.js","sourceRoot":"","sources":["../../../src/plugins/picklists/standard-value-set.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import { BrowserforcePlugin } from '../../plugin.js';
2
- type Config = {
3
- deletions: RecordTypeConfig[];
4
- };
5
- type RecordTypeConfig = {
6
- fullName: string;
7
- replacement?: string;
8
- };
9
- export declare class RecordTypes extends BrowserforcePlugin {
10
- retrieve(definition: Config): Promise<Config>;
11
- apply(config: Config): Promise<void>;
12
- }
13
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,73 +0,0 @@
1
- import assert from 'assert';
2
- import * as child from 'child_process';
3
- import { fileURLToPath } from 'node:url';
4
- import * as path from 'path';
5
- import { RecordTypes } from './index.js';
6
- const __dirname = fileURLToPath(new URL('.', import.meta.url));
7
- describe(RecordTypes.name, function () {
8
- this.timeout('10m');
9
- let plugin;
10
- before(() => {
11
- plugin = new RecordTypes(global.bf);
12
- });
13
- const configDelete = {
14
- deletions: [
15
- {
16
- fullName: 'Vehicle__c.SUV',
17
- },
18
- ],
19
- };
20
- const configDeleteActive = {
21
- deletions: [
22
- {
23
- fullName: 'Vehicle__c.CUV',
24
- },
25
- ],
26
- };
27
- const configDeleteAndReplace = {
28
- deletions: [
29
- {
30
- fullName: 'Vehicle__c.SportsCar',
31
- replacement: 'Vehicle__c.Bicycle',
32
- },
33
- ],
34
- };
35
- it('should deploy a CustomObject for testing', () => {
36
- const sourceDeployCmd = child.spawnSync('sf', [
37
- 'project',
38
- 'deploy',
39
- 'start',
40
- '-d',
41
- path.join(__dirname, 'sfdx-source'),
42
- '--json',
43
- ]);
44
- assert.deepStrictEqual(sourceDeployCmd.status, 0, sourceDeployCmd.output.toString());
45
- });
46
- it('should delete a record type', async () => {
47
- await plugin.run(configDelete);
48
- });
49
- it('should not do anything when the record type does not exist', async () => {
50
- const res = await plugin.run(configDelete);
51
- assert.deepStrictEqual(res, { message: 'no action necessary' });
52
- });
53
- it('should fail deleting an active record type', async () => {
54
- let err;
55
- try {
56
- await plugin.run(configDeleteActive);
57
- }
58
- catch (e) {
59
- err = e;
60
- }
61
- assert.throws(() => {
62
- throw err;
63
- }, /Cannot delete active RecordType/);
64
- });
65
- it('should delete and replace a record type', async () => {
66
- await plugin.run(configDeleteAndReplace);
67
- });
68
- it('should not need to do anything for non-existent picklists', async () => {
69
- const res = await plugin.run(configDeleteAndReplace);
70
- assert.deepStrictEqual(res, { message: 'no action necessary' });
71
- });
72
- });
73
- //# sourceMappingURL=index.e2e-spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/record-types/index.e2e-spec.ts"],"names":[],"mappings":"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"}
@@ -1,70 +0,0 @@
1
- import { BrowserforcePlugin } from '../../plugin.js';
2
- import { RecordTypePage } from './pages.js';
3
- export class RecordTypes extends BrowserforcePlugin {
4
- async retrieve(definition) {
5
- const conn = this.org.getConnection();
6
- const response = {
7
- deletions: [],
8
- };
9
- const recordTypeFileProperties = await listRecordTypes(conn);
10
- const recordTypes = await queryRecordTypes(conn);
11
- for (const deletion of definition.deletions) {
12
- const recordType = getRecordType(deletion.fullName, recordTypeFileProperties, recordTypes);
13
- if (recordType) {
14
- if (recordType.IsActive) {
15
- throw new Error(`Cannot delete active RecordType: ${deletion.fullName}`);
16
- }
17
- if (deletion.replacement) {
18
- const replacementRecordType = getRecordType(deletion.replacement, recordTypeFileProperties, recordTypes);
19
- if (!replacementRecordType) {
20
- throw new Error(`Could not find replacement RecordType: ${deletion.replacement}`);
21
- }
22
- }
23
- response.deletions.push({
24
- ...deletion,
25
- });
26
- }
27
- else {
28
- response.deletions.push(deletion);
29
- }
30
- }
31
- return response;
32
- }
33
- async apply(config) {
34
- const conn = this.org.getConnection();
35
- const recordTypeFileProperties = await listRecordTypes(conn);
36
- const recordTypes = await queryRecordTypes(conn);
37
- for (const deletion of config.deletions) {
38
- const recordType = getRecordType(deletion.fullName, recordTypeFileProperties, recordTypes);
39
- const page = await this.browserforce.openPage(`ui/setup/rectype/RecordTypes?type=${recordType.EntityDefinitionId}`);
40
- const recordTypePage = new RecordTypePage(page);
41
- const deletePage = await recordTypePage.clickDeleteAction(recordType.Id);
42
- let newRecordTypeId;
43
- if (deletion.replacement) {
44
- const replacementRecordType = getRecordType(deletion.replacement, recordTypeFileProperties, recordTypes);
45
- newRecordTypeId = replacementRecordType.Id;
46
- }
47
- await deletePage.replace(newRecordTypeId);
48
- await page.close();
49
- }
50
- }
51
- }
52
- async function listRecordTypes(conn) {
53
- const recordTypes = await conn.metadata.list({
54
- type: 'RecordType',
55
- });
56
- return recordTypes;
57
- }
58
- async function queryRecordTypes(conn) {
59
- const recordTypesResult = await conn.tooling.query(`SELECT Id, EntityDefinitionId, IsActive FROM RecordType`);
60
- const recordTypes = recordTypesResult.records;
61
- return recordTypes;
62
- }
63
- function getRecordType(fullName, fileProperties, recordTypes) {
64
- const recordTypeFileProperty = fileProperties.find((fp) => fp.fullName === fullName);
65
- if (recordTypeFileProperty) {
66
- return recordTypes.find((x) => x.Id === recordTypeFileProperty.id);
67
- }
68
- return undefined;
69
- }
70
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/record-types/index.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { Page } from 'puppeteer';
2
- export declare class RecordTypePage {
3
- private page;
4
- constructor(page: Page);
5
- clickDeleteAction(recordTypeId: string): Promise<RecordTypeDeletePage>;
6
- }
7
- export declare class RecordTypeDeletePage {
8
- protected page: any;
9
- protected saveButton: string;
10
- constructor(page: Page);
11
- replace(newRecordTypeId?: string): Promise<void>;
12
- save(): Promise<void>;
13
- throwOnMissingSaveButton(): Promise<void>;
14
- throwPageErrors(): Promise<void>;
15
- }
@@ -1,64 +0,0 @@
1
- export class RecordTypePage {
2
- page;
3
- constructor(page) {
4
- this.page = page;
5
- }
6
- async clickDeleteAction(recordTypeId) {
7
- const xpath = `//a[contains(@href, "setup/ui/recordtypedelete.jsp?id=${recordTypeId.slice(0, 15)}")]`;
8
- await this.page.waitForSelector(`::-p-xpath(${xpath})`);
9
- const deleteLink = (await this.page.$$(`xpath/.${xpath}`))[0];
10
- await Promise.all([
11
- this.page.waitForNavigation(),
12
- this.page.evaluate((e) => e.click(), deleteLink),
13
- ]);
14
- return new RecordTypeDeletePage(this.page);
15
- }
16
- }
17
- export class RecordTypeDeletePage {
18
- page;
19
- saveButton = 'input[name="save"]';
20
- constructor(page) {
21
- this.page = page;
22
- }
23
- async replace(newRecordTypeId) {
24
- await this.throwOnMissingSaveButton();
25
- const NEW_VALUE_SELECTOR = 'select#p2';
26
- if (newRecordTypeId) {
27
- await this.page.waitForSelector(NEW_VALUE_SELECTOR);
28
- await this.page.select(NEW_VALUE_SELECTOR, newRecordTypeId.slice(0, 15));
29
- }
30
- await this.save();
31
- }
32
- async save() {
33
- await this.page.waitForSelector(this.saveButton);
34
- await Promise.all([
35
- this.page.waitForNavigation(),
36
- this.page.click(this.saveButton),
37
- ]);
38
- await this.throwPageErrors();
39
- }
40
- async throwOnMissingSaveButton() {
41
- const saveButton = await this.page.$(this.saveButton);
42
- if (!saveButton) {
43
- const bodyHandle = await this.page.$('div.pbBody');
44
- if (bodyHandle) {
45
- const errorMsg = await this.page.evaluate((div) => div.textContent, bodyHandle);
46
- await bodyHandle.dispose();
47
- if (errorMsg?.trim()) {
48
- throw new Error(errorMsg.trim());
49
- }
50
- }
51
- }
52
- }
53
- async throwPageErrors() {
54
- const errorHandle = await this.page.$('div#validationError div.messageText');
55
- if (errorHandle) {
56
- const errorMsg = await this.page.evaluate((div) => div.innerText, errorHandle);
57
- await errorHandle.dispose();
58
- if (errorMsg?.trim()) {
59
- throw new Error(errorMsg.trim());
60
- }
61
- }
62
- }
63
- }
64
- //# sourceMappingURL=pages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/record-types/pages.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,cAAc;IACjB,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC5B,YAAoB;QAEpB,MAAM,KAAK,GAAG,yDAAyD,YAAY,CAAC,KAAK,CACvF,CAAC,EACD,EAAE,CACH,KAAK,CAAC;QACP,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,KAAK,GAAG,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,UAAU,CAAC;SACpE,CAAC,CAAC;QACH,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,oBAAoB;IACrB,IAAI,CAAC;IACL,UAAU,GAAG,oBAAoB,CAAC;IAE5C,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,eAAwB;QACpC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACtC,MAAM,kBAAkB,GAAG,WAAW,CAAC;QACvC,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;SACjC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,wBAAwB;QAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CACvC,CAAC,GAAmB,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EACxC,UAAU,CACX,CAAC;gBACF,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;gBAC3B,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CACnC,qCAAqC,CACtC,CAAC;QACF,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CACvC,CAAC,GAAmB,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EACtC,WAAW,CACZ,CAAC;YACF,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;YAC5B,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -1,11 +0,0 @@
1
- import { Page } from 'puppeteer';
2
- import { BrowserforcePlugin } from '../../plugin.js';
3
- type Config = {
4
- enabled: boolean;
5
- };
6
- export declare class RelateContactToMultipleAccounts extends BrowserforcePlugin {
7
- retrieve(definition?: Config): Promise<Config>;
8
- apply(config: Config): Promise<void>;
9
- waitForProcessFinished(page: Page): Promise<void>;
10
- }
11
- export {};
@@ -1,29 +0,0 @@
1
- import assert from 'assert';
2
- import { RelateContactToMultipleAccounts } from './index.js';
3
- describe(RelateContactToMultipleAccounts.name, function () {
4
- let plugin;
5
- before(() => {
6
- plugin = new RelateContactToMultipleAccounts(global.bf);
7
- });
8
- const configEnabled = {
9
- enabled: true,
10
- };
11
- const configDisabled = {
12
- enabled: false,
13
- };
14
- it('should enable', async () => {
15
- await plugin.run(configEnabled);
16
- });
17
- it('should be enabled', async () => {
18
- const res = await plugin.run(configEnabled);
19
- assert.deepStrictEqual(res, { message: 'no action necessary' });
20
- });
21
- it('should disable', async () => {
22
- await plugin.run(configDisabled);
23
- });
24
- it('should be disabled', async () => {
25
- const res = await plugin.run(configDisabled);
26
- assert.deepStrictEqual(res, { message: 'no action necessary' });
27
- });
28
- });
29
- //# sourceMappingURL=index.e2e-spec.js.map