sfdx-browserforce-plugin 5.1.2 → 5.2.0-next.2

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 (120) hide show
  1. package/README.md +54 -16
  2. package/lib/browserforce-command.js +2 -2
  3. package/lib/browserforce-command.js.map +1 -1
  4. package/lib/browserforce.d.ts +5 -5
  5. package/lib/browserforce.js +56 -54
  6. package/lib/browserforce.js.map +1 -1
  7. package/lib/pages/login.d.ts +1 -2
  8. package/lib/pages/login.js +6 -20
  9. package/lib/pages/login.js.map +1 -1
  10. package/lib/plugins/activity-settings/index.js +10 -10
  11. package/lib/plugins/activity-settings/index.js.map +1 -1
  12. package/lib/plugins/company-information/index.js +22 -20
  13. package/lib/plugins/company-information/index.js.map +1 -1
  14. package/lib/plugins/customer-portal/available-custom-objects/index.js +5 -5
  15. package/lib/plugins/customer-portal/available-custom-objects/index.js.map +1 -1
  16. package/lib/plugins/customer-portal/enabled/index.js +6 -7
  17. package/lib/plugins/customer-portal/enabled/index.js.map +1 -1
  18. package/lib/plugins/customer-portal/index.e2e-spec.js +6 -13
  19. package/lib/plugins/customer-portal/index.e2e-spec.js.map +1 -1
  20. package/lib/plugins/customer-portal/portals/index.js +66 -35
  21. package/lib/plugins/customer-portal/portals/index.js.map +1 -1
  22. package/lib/plugins/density-settings/index.d.ts +1 -8
  23. package/lib/plugins/density-settings/index.js +42 -29
  24. package/lib/plugins/density-settings/index.js.map +1 -1
  25. package/lib/plugins/email-deliverability/index.js +8 -10
  26. package/lib/plugins/email-deliverability/index.js.map +1 -1
  27. package/lib/plugins/high-velocity-sales-settings/page.d.ts +1 -1
  28. package/lib/plugins/high-velocity-sales-settings/page.js +9 -11
  29. package/lib/plugins/high-velocity-sales-settings/page.js.map +1 -1
  30. package/lib/plugins/history-tracking/index.e2e-spec.js +5 -0
  31. package/lib/plugins/history-tracking/index.e2e-spec.js.map +1 -1
  32. package/lib/plugins/history-tracking/index.js +32 -20
  33. package/lib/plugins/history-tracking/index.js.map +1 -1
  34. package/lib/plugins/home-page-layouts/index.js +18 -11
  35. package/lib/plugins/home-page-layouts/index.js.map +1 -1
  36. package/lib/plugins/lightning-experience-settings/index.d.ts +2 -3
  37. package/lib/plugins/lightning-experience-settings/index.e2e-spec.js +8 -0
  38. package/lib/plugins/lightning-experience-settings/index.e2e-spec.js.map +1 -1
  39. package/lib/plugins/lightning-experience-settings/index.js +48 -60
  40. package/lib/plugins/lightning-experience-settings/index.js.map +1 -1
  41. package/lib/plugins/linkedin-sales-navigator-settings/page.d.ts +1 -1
  42. package/lib/plugins/linkedin-sales-navigator-settings/page.js +17 -12
  43. package/lib/plugins/linkedin-sales-navigator-settings/page.js.map +1 -1
  44. package/lib/plugins/omni-channel-settings/index.e2e-spec.js +4 -0
  45. package/lib/plugins/omni-channel-settings/index.e2e-spec.js.map +1 -1
  46. package/lib/plugins/omni-channel-settings/index.js +9 -14
  47. package/lib/plugins/omni-channel-settings/index.js.map +1 -1
  48. package/lib/plugins/opportunity-splits/index.js +4 -4
  49. package/lib/plugins/opportunity-splits/index.js.map +1 -1
  50. package/lib/plugins/opportunity-splits/pages/layout-selection.d.ts +1 -1
  51. package/lib/plugins/opportunity-splits/pages/layout-selection.js +2 -4
  52. package/lib/plugins/opportunity-splits/pages/layout-selection.js.map +1 -1
  53. package/lib/plugins/opportunity-splits/pages/overview.d.ts +1 -1
  54. package/lib/plugins/opportunity-splits/pages/overview.js +6 -11
  55. package/lib/plugins/opportunity-splits/pages/overview.js.map +1 -1
  56. package/lib/plugins/opportunity-splits/pages/setup.d.ts +1 -1
  57. package/lib/plugins/opportunity-splits/pages/setup.js +2 -4
  58. package/lib/plugins/opportunity-splits/pages/setup.js.map +1 -1
  59. package/lib/plugins/permission-sets/index.e2e-spec.js +16 -5
  60. package/lib/plugins/permission-sets/index.e2e-spec.js.map +1 -1
  61. package/lib/plugins/permission-sets/index.js +2 -2
  62. package/lib/plugins/permission-sets/index.js.map +1 -1
  63. package/lib/plugins/permission-sets/service-presence-status/index.js +35 -24
  64. package/lib/plugins/permission-sets/service-presence-status/index.js.map +1 -1
  65. package/lib/plugins/picklists/field-dependencies/pages.d.ts +2 -2
  66. package/lib/plugins/picklists/field-dependencies/pages.js +19 -18
  67. package/lib/plugins/picklists/field-dependencies/pages.js.map +1 -1
  68. package/lib/plugins/picklists/index.e2e-spec.js +38 -32
  69. package/lib/plugins/picklists/index.e2e-spec.js.map +1 -1
  70. package/lib/plugins/picklists/pages.d.ts +5 -4
  71. package/lib/plugins/picklists/pages.js +59 -66
  72. package/lib/plugins/picklists/pages.js.map +1 -1
  73. package/lib/plugins/record-types/index.d.ts +1 -0
  74. package/lib/plugins/record-types/index.e2e-spec.js +4 -0
  75. package/lib/plugins/record-types/index.e2e-spec.js.map +1 -1
  76. package/lib/plugins/record-types/index.js +7 -5
  77. package/lib/plugins/record-types/index.js.map +1 -1
  78. package/lib/plugins/record-types/pages.d.ts +2 -3
  79. package/lib/plugins/record-types/pages.js +17 -28
  80. package/lib/plugins/record-types/pages.js.map +1 -1
  81. package/lib/plugins/relate-contact-to-multiple-accounts/index.d.ts +1 -1
  82. package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js +1 -0
  83. package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js.map +1 -1
  84. package/lib/plugins/relate-contact-to-multiple-accounts/index.js +33 -44
  85. package/lib/plugins/relate-contact-to-multiple-accounts/index.js.map +1 -1
  86. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js +16 -13
  87. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js.map +1 -1
  88. package/lib/plugins/salesforce-cpq-config/formConfig.js +12 -12
  89. package/lib/plugins/salesforce-cpq-config/formConfig.js.map +1 -1
  90. package/lib/plugins/salesforce-cpq-config/index.js +77 -68
  91. package/lib/plugins/salesforce-cpq-config/index.js.map +1 -1
  92. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js +1 -0
  93. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js.map +1 -1
  94. package/lib/plugins/salesforce-to-salesforce/index.js +8 -16
  95. package/lib/plugins/salesforce-to-salesforce/index.js.map +1 -1
  96. package/lib/plugins/security/authentication-configuration/index.e2e-spec.js +3 -11
  97. package/lib/plugins/security/authentication-configuration/index.e2e-spec.js.map +1 -1
  98. package/lib/plugins/security/authentication-configuration/index.js +14 -13
  99. package/lib/plugins/security/authentication-configuration/index.js.map +1 -1
  100. package/lib/plugins/security/certificate-and-key-management/index.e2e-spec.js +23 -6
  101. package/lib/plugins/security/certificate-and-key-management/index.e2e-spec.js.map +1 -1
  102. package/lib/plugins/security/certificate-and-key-management/index.js +26 -28
  103. package/lib/plugins/security/certificate-and-key-management/index.js.map +1 -1
  104. package/lib/plugins/service-channels/capacity/index.js +66 -38
  105. package/lib/plugins/service-channels/capacity/index.js.map +1 -1
  106. package/lib/plugins/service-channels/index.e2e-spec.js +11 -0
  107. package/lib/plugins/service-channels/index.e2e-spec.js.map +1 -1
  108. package/lib/plugins/service-channels/index.js +2 -2
  109. package/lib/plugins/service-channels/index.js.map +1 -1
  110. package/lib/plugins/slack/index.js +12 -18
  111. package/lib/plugins/slack/index.js.map +1 -1
  112. package/lib/plugins/user-access-policies/index.e2e-spec.js +4 -2
  113. package/lib/plugins/user-access-policies/index.e2e-spec.js.map +1 -1
  114. package/lib/plugins/user-access-policies/index.js +4 -2
  115. package/lib/plugins/user-access-policies/index.js.map +1 -1
  116. package/lib/plugins/user-access-policies/page.d.ts +2 -2
  117. package/lib/plugins/user-access-policies/page.js +34 -54
  118. package/lib/plugins/user-access-policies/page.js.map +1 -1
  119. package/oclif.manifest.json +1 -11
  120. package/package.json +2 -2
@@ -12,21 +12,21 @@ export class OpportunitySplits extends BrowserforcePlugin {
12
12
  return response;
13
13
  }
14
14
  async apply(config) {
15
- let page;
16
15
  if (config.enabled) {
17
- page = await this.browserforce.openPage(SetupPage.PATH);
16
+ const page = await this.browserforce.openPage(SetupPage.PATH);
18
17
  const setupPage = new SetupPage(page);
19
18
  const layoutSelectionPage = await setupPage.enable();
20
19
  const overviewPage = await layoutSelectionPage.choose();
21
20
  await overviewPage.waitUntilCompleted();
21
+ await page.close();
22
22
  }
23
23
  else {
24
- page = await this.browserforce.openPage(OverviewPage.PATH);
24
+ const page = await this.browserforce.openPage(OverviewPage.PATH);
25
25
  const overviewPage = new OverviewPage(page);
26
26
  await overviewPage.disable();
27
27
  await overviewPage.waitUntilCompleted();
28
+ await page.close();
28
29
  }
29
- await page.close();
30
30
  }
31
31
  }
32
32
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/opportunity-splits/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAM7C,MAAM,OAAO,iBAAkB,SAAQ,kBAAkB;IAChD,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,MAAM,YAAY,CAAC,SAAS,EAAE;SACxC,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,IAAU,CAAC;QACf,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,mBAAmB,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC;YACrD,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC;YACxD,MAAM,YAAY,CAAC,kBAAkB,EAAE,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC3D,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;YAC7B,MAAM,YAAY,CAAC,kBAAkB,EAAE,CAAC;QAC1C,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/opportunity-splits/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAM7C,MAAM,OAAO,iBAAkB,SAAQ,kBAAkB;IAChD,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,MAAM,YAAY,CAAC,SAAS,EAAE;SACxC,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,mBAAmB,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC;YACrD,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC;YACxD,MAAM,YAAY,CAAC,kBAAkB,EAAE,CAAC;YACxC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACjE,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;YAC7B,MAAM,YAAY,CAAC,kBAAkB,EAAE,CAAC;YACxC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import type { Page } from 'playwright';
2
2
  import { OverviewPage } from './overview.js';
3
3
  export declare class LayoutSelectionPage {
4
4
  static PATH: string;
@@ -7,10 +7,8 @@ export class LayoutSelectionPage {
7
7
  this.page = page;
8
8
  }
9
9
  async choose() {
10
- await Promise.all([
11
- this.page.waitForNavigation(),
12
- this.page.locator(SAVE_BUTTON).click(),
13
- ]);
10
+ await this.page.locator(SAVE_BUTTON).click();
11
+ await this.page.waitForURL((url) => url.pathname === '/opp/opportunitySplitSetupOverview.apexp');
14
12
  return new OverviewPage(this.page);
15
13
  }
16
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"layout-selection.js","sourceRoot":"","sources":["../../../../src/plugins/opportunity-splits/pages/layout-selection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAEzC,MAAM,OAAO,mBAAmB;IAC9B,MAAM,CAAC,IAAI,GACT,qEAAqE,CAAC;IAChE,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE;SACvC,CAAC,CAAC;QACH,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC"}
1
+ {"version":3,"file":"layout-selection.js","sourceRoot":"","sources":["../../../../src/plugins/opportunity-splits/pages/layout-selection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAEzC,MAAM,OAAO,mBAAmB;IAC9B,MAAM,CAAC,IAAI,GACT,qEAAqE,CAAC;IAChE,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CACxB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,0CAA0C,CACrE,CAAC;QACF,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import type { Page } from 'playwright';
2
2
  export declare class OverviewPage {
3
3
  static PATH: string;
4
4
  private page;
@@ -11,27 +11,22 @@ export class OverviewPage {
11
11
  }
12
12
  async isEnabled() {
13
13
  await this.waitUntilCompleted();
14
- return ((await this.page.url()).includes(OverviewPage.PATH) &&
15
- (await this.page.$(DISABLE_LINK)) !== null);
14
+ return (this.page.url().includes(OverviewPage.PATH) &&
15
+ (await this.page.locator(DISABLE_LINK).count()) > 0);
16
16
  }
17
17
  async waitUntilCompleted() {
18
18
  if (await this.isInProgress()) {
19
- await this.page
20
- .locator(COMPLETED)
21
- .setTimeout(10 * 60 * 1000) // 10 minutes
22
- .wait();
19
+ await this.page.locator(COMPLETED).waitFor({ timeout: 10 * 60 * 1000 }); // 10 minutes
23
20
  }
24
21
  }
25
22
  async isInProgress() {
26
- return (await this.page.$(IN_PROGRESS)) !== null;
23
+ return (await this.page.locator(IN_PROGRESS).count()) > 0;
27
24
  }
28
25
  async disable() {
29
26
  await this.page.locator(DISABLE_LINK).click();
30
27
  await this.page.locator(DISABLE_CONFIRM_CHECKBOX).click();
31
- await Promise.all([
32
- this.page.waitForNavigation(),
33
- this.page.locator(DISABLE_CONFIRM_BUTTON).click(),
34
- ]);
28
+ await this.page.locator(DISABLE_CONFIRM_BUTTON).click();
29
+ await this.page.waitForURL((url) => url.pathname === '/opp/opportunitySplitSetupLanding.apexp');
35
30
  return this;
36
31
  }
37
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"overview.js","sourceRoot":"","sources":["../../../../src/plugins/opportunity-splits/pages/overview.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,2CAA2C,CAAC;AAChE,MAAM,SAAS,GAAG,uBAAuB,CAAC;AAC1C,MAAM,YAAY,GAAG,6BAA6B,CAAC;AACnD,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AACrD,MAAM,sBAAsB,GAC1B,uDAAuD,CAAC;AAE1D,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,IAAI,GACT,uEAAuE,CAAC;IAClE,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,SAAS;QACpB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,OAAO,CACL,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;YACnD,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI,CAC3C,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,kBAAkB;QAC7B,IAAI,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,IAAI;iBACZ,OAAO,CAAC,SAAS,CAAC;iBAClB,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;iBACxC,IAAI,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC;IACnD,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1D,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE;SAClD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC"}
1
+ {"version":3,"file":"overview.js","sourceRoot":"","sources":["../../../../src/plugins/opportunity-splits/pages/overview.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,2CAA2C,CAAC;AAChE,MAAM,SAAS,GAAG,uBAAuB,CAAC;AAC1C,MAAM,YAAY,GAAG,6BAA6B,CAAC;AACnD,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AACrD,MAAM,sBAAsB,GAC1B,uDAAuD,CAAC;AAE1D,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,IAAI,GACT,uEAAuE,CAAC;IAClE,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,SAAS;QACpB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,OAAO,CACL,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;YAC3C,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CACpD,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,kBAAkB;QAC7B,IAAI,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa;QACxF,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1D,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC;QACxD,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CACxB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,yCAAyC,CACpE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import type { Page } from 'playwright';
2
2
  import { LayoutSelectionPage } from './layout-selection.js';
3
3
  export declare class SetupPage {
4
4
  static PATH: string;
@@ -9,10 +9,8 @@ export class SetupPage {
9
9
  }
10
10
  async enable() {
11
11
  await this.page.locator(SAVE_BUTTON).click();
12
- await Promise.all([
13
- this.page.waitForNavigation(),
14
- this.page.locator(MODAL_CONFIRM_BUTTON).click(),
15
- ]);
12
+ await this.page.locator(MODAL_CONFIRM_BUTTON).click();
13
+ await this.page.waitForURL((url) => url.pathname === '/opp/opportunitySplitSetupLayout.apexp');
16
14
  return new LayoutSelectionPage(this.page);
17
15
  }
18
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../../src/plugins/opportunity-splits/pages/setup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,GAAG,+BAA+B,CAAC;AACpD,MAAM,oBAAoB,GACxB,mEAAmE,CAAC;AAEtE,MAAM,OAAO,SAAS;IACpB,MAAM,CAAC,IAAI,GACT,mEAAmE,CAAC;IAC9D,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7C,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE;SAChD,CAAC,CAAC;QACH,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../../src/plugins/opportunity-splits/pages/setup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,GAAG,+BAA+B,CAAC;AACpD,MAAM,oBAAoB,GACxB,mEAAmE,CAAC;AAEtE,MAAM,OAAO,SAAS;IACpB,MAAM,CAAC,IAAI,GACT,mEAAmE,CAAC;IAC9D,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC;QACtD,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CACxB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,wCAAwC,CACnE,CAAC;QACF,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC"}
@@ -10,12 +10,18 @@ describe(PermissionSets.name, function () {
10
10
  before(() => {
11
11
  plugin = new PermissionSets(global.bf);
12
12
  });
13
- const configurePermissionSet = [
13
+ const addConfigurePermissionSet = [
14
14
  {
15
15
  permissionSetName: 'ServicePresenceTest',
16
16
  servicePresenceStatuses: ['TestStatus', 'TestStatus3'],
17
17
  },
18
18
  ];
19
+ const removeConfigurePermissionSet = [
20
+ {
21
+ permissionSetName: 'ServicePresenceTest',
22
+ servicePresenceStatuses: [],
23
+ },
24
+ ];
19
25
  it('should create permission set and service presence status as a prerequisite', () => {
20
26
  const sourceDeployCmd = child.spawnSync('sf', [
21
27
  'project',
@@ -27,10 +33,15 @@ describe(PermissionSets.name, function () {
27
33
  ]);
28
34
  assert.deepStrictEqual(sourceDeployCmd.status, 0, sourceDeployCmd.output.toString());
29
35
  });
30
- it('should configure permission set presence status', async () => {
31
- await plugin.run(configurePermissionSet);
32
- const res = await plugin.retrieve(configurePermissionSet);
33
- assert.deepStrictEqual(res, configurePermissionSet);
36
+ it('should add permission set presence status', async () => {
37
+ await plugin.run(addConfigurePermissionSet);
38
+ const res = await plugin.retrieve(addConfigurePermissionSet);
39
+ assert.deepStrictEqual(res, addConfigurePermissionSet);
40
+ });
41
+ it('should remove permission set presence status', async () => {
42
+ await plugin.run(removeConfigurePermissionSet);
43
+ const res = await plugin.retrieve(removeConfigurePermissionSet);
44
+ assert.deepStrictEqual(res, removeConfigurePermissionSet);
34
45
  });
35
46
  });
36
47
  //# sourceMappingURL=index.e2e-spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/permission-sets/index.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE;IAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,IAAI,MAAsB,CAAC;IAC3B,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG;QAC7B;YACE,iBAAiB,EAAE,qBAAqB;YACxC,uBAAuB,EAAE,CAAC,YAAY,EAAE,aAAa,CAAC;SACvD;KACF,CAAC;IAEF,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;QACpF,MAAM,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;YAC5C,SAAS;YACT,QAAQ;YACR,OAAO;YACP,IAAI;YACJ,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC;YACnC,QAAQ;SACT,CAAC,CAAC;QACH,MAAM,CAAC,eAAe,CACpB,eAAe,CAAC,MAAM,EACtB,CAAC,EACD,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,CAClC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC1D,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/permission-sets/index.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE;IAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,IAAI,MAAsB,CAAC;IAC3B,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,MAAM,yBAAyB,GAAG;QAChC;YACE,iBAAiB,EAAE,qBAAqB;YACxC,uBAAuB,EAAE,CAAC,YAAY,EAAE,aAAa,CAAC;SACvD;KACF,CAAC;IAEF,MAAM,4BAA4B,GAAG;QACnC;YACE,iBAAiB,EAAE,qBAAqB;YACxC,uBAAuB,EAAE,EAAE;SAC5B;KACF,CAAC;IAEF,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;QACpF,MAAM,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;YAC5C,SAAS;YACT,QAAQ;YACR,OAAO;YACP,IAAI;YACJ,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC;YACnC,QAAQ;SACT,CAAC,CAAC;QACH,MAAM,CAAC,eAAe,CACpB,eAAe,CAAC,MAAM,EACtB,CAAC,EACD,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,CAClC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAC7D,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;QAChE,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -4,7 +4,7 @@ export class PermissionSets extends BrowserforcePlugin {
4
4
  async retrieve(definition) {
5
5
  const pluginServicePresenceStatus = new ServicePresenceStatus(this.browserforce);
6
6
  const permissionSets = [];
7
- for await (const permissionSet of definition) {
7
+ for (const permissionSet of definition) {
8
8
  permissionSets.push({
9
9
  permissionSetName: permissionSet.permissionSetName,
10
10
  servicePresenceStatuses: await pluginServicePresenceStatus.retrieve(permissionSet),
@@ -14,7 +14,7 @@ export class PermissionSets extends BrowserforcePlugin {
14
14
  }
15
15
  async apply(plan) {
16
16
  const pluginServicePresenceStatus = new ServicePresenceStatus(this.browserforce);
17
- for await (const permissionSet of plan) {
17
+ for (const permissionSet of plan) {
18
18
  await pluginServicePresenceStatus.apply(permissionSet);
19
19
  }
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/permission-sets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAO3E,MAAM,OAAO,cAAe,SAAQ,kBAAkB;IAC7C,KAAK,CAAC,QAAQ,CACnB,UAA4B;QAE5B,MAAM,2BAA2B,GAAG,IAAI,qBAAqB,CAC3D,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,MAAM,cAAc,GAAoB,EAAE,CAAC;QAE3C,IAAI,KAAK,EAAE,MAAM,aAAa,IAAI,UAAU,EAAE,CAAC;YAC7C,cAAc,CAAC,IAAI,CAAC;gBAClB,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;gBAClD,uBAAuB,EAAE,MAAM,2BAA2B,CAAC,QAAQ,CACjE,aAAa,CACd;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,IAAqB;QACtC,MAAM,2BAA2B,GAAG,IAAI,qBAAqB,CAC3D,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,IAAI,KAAK,EAAE,MAAM,aAAa,IAAI,IAAI,EAAE,CAAC;YACvC,MAAM,2BAA2B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/permission-sets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAO3E,MAAM,OAAO,cAAe,SAAQ,kBAAkB;IAC7C,KAAK,CAAC,QAAQ,CACnB,UAA4B;QAE5B,MAAM,2BAA2B,GAAG,IAAI,qBAAqB,CAC3D,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,MAAM,cAAc,GAAoB,EAAE,CAAC;QAE3C,KAAK,MAAM,aAAa,IAAI,UAAU,EAAE,CAAC;YACvC,cAAc,CAAC,IAAI,CAAC;gBAClB,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;gBAClD,uBAAuB,EAAE,MAAM,2BAA2B,CAAC,QAAQ,CACjE,aAAa,CACd;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,IAAqB;QACtC,MAAM,2BAA2B,GAAG,IAAI,qBAAqB,CAC3D,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,KAAK,MAAM,aAAa,IAAI,IAAI,EAAE,CAAC;YACjC,MAAM,2BAA2B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;CACF"}
@@ -1,9 +1,10 @@
1
+ import { waitForPageErrors } from '../../../browserforce.js';
1
2
  import { BrowserforcePlugin } from '../../../plugin.js';
2
3
  const ADD_BUTTON_SELECTOR = 'a[id$=":duelingListBox:backingList_add"]';
3
4
  const REMOVE_BUTTON_SELECTOR = 'a[id$=":duelingListBox:backingList_remove"]';
4
5
  const SAVE_BUTTON_SELECTOR = 'input[id$=":button_pc_save"]';
5
- const VALUES_AVAILABLE_SELECTOR = 'select[id$=":duelingListBox:backingList_a"]:not([disabled="disabled"])';
6
- const VALUES_ENABLED_SELECTOR = 'select[id$=":duelingListBox:backingList_s"]:not([disabled="disabled"])';
6
+ const VALUES_AVAILABLE_SELECTOR = 'select[id$=":duelingListBox:backingList_a"]';
7
+ const VALUES_ENABLED_SELECTOR = 'select[id$=":duelingListBox:backingList_s"]';
7
8
  export class ServicePresenceStatus extends BrowserforcePlugin {
8
9
  async retrieve(definition) {
9
10
  // Query for the permission set
@@ -13,9 +14,12 @@ export class ServicePresenceStatus extends BrowserforcePlugin {
13
14
  .singleRecordQuery(`SELECT Id FROM PermissionSet WHERE Name='${permissionSetName}'`);
14
15
  // Open the permission set setup page
15
16
  const page = await this.browserforce.openPage(`${permissionSet.Id}/e?s=ServicePresenceStatusAccess`);
16
- const enabledServicePresenceStatuses = await page.$$eval(`${VALUES_ENABLED_SELECTOR} > option`, (options) => {
17
- return options.map((option) => option.title ?? '');
17
+ const enabledServicePresenceStatuses = await page
18
+ .locator(`${VALUES_ENABLED_SELECTOR} > option:not(:disabled)`)
19
+ .evaluateAll((options) => {
20
+ return options.map((option) => option.title);
18
21
  });
22
+ await page.close();
19
23
  return enabledServicePresenceStatuses;
20
24
  }
21
25
  async apply(config) {
@@ -24,34 +28,41 @@ export class ServicePresenceStatus extends BrowserforcePlugin {
24
28
  const permissionSet = await this.org
25
29
  .getConnection()
26
30
  .singleRecordQuery(`SELECT Id FROM PermissionSet WHERE Name='${permissionSetName}'`);
27
- // Open the permission set setup page
28
31
  const page = await this.browserforce.openPage(`${permissionSet.Id}/e?s=ServicePresenceStatusAccess`);
29
32
  if (config?.servicePresenceStatuses) {
30
- await page.waitForSelector(`${VALUES_AVAILABLE_SELECTOR} > option`);
31
- const availableElements = await page.$$(`${VALUES_AVAILABLE_SELECTOR} > option`);
32
- for (const availableElement of availableElements) {
33
- const optionTitle = (await availableElement.evaluate((node) => node.getAttribute('title')))?.toString();
34
- if (optionTitle &&
35
- config.servicePresenceStatuses.includes(optionTitle)) {
36
- await availableElement.click();
37
- await page.click(ADD_BUTTON_SELECTOR);
33
+ const availableOptions = await page
34
+ .locator(`${VALUES_AVAILABLE_SELECTOR} > option:not(:disabled)`)
35
+ .evaluateAll((options) => {
36
+ return options.map((option) => option.title);
37
+ });
38
+ const enabledOptions = await page
39
+ .locator(`${VALUES_ENABLED_SELECTOR} > option:not(:disabled)`)
40
+ .evaluateAll((options) => {
41
+ return options.map((option) => option.title);
42
+ });
43
+ for (const optionTitle of availableOptions) {
44
+ if (config.servicePresenceStatuses.includes(optionTitle)) {
45
+ await page
46
+ .getByRole('option', { name: optionTitle, exact: true })
47
+ .click();
48
+ await page.locator(ADD_BUTTON_SELECTOR).click();
38
49
  }
39
50
  }
40
- await page.waitForSelector(`${VALUES_ENABLED_SELECTOR} > option`);
41
- const enabledElements = await page.$$(`${VALUES_ENABLED_SELECTOR} > option`);
42
- for (const enabledElement of enabledElements) {
43
- const optionTitle = (await enabledElement.evaluate((node) => node.getAttribute('title')))?.toString();
44
- if (optionTitle &&
45
- !config.servicePresenceStatuses.includes(optionTitle)) {
46
- await enabledElement.click();
47
- await page.click(REMOVE_BUTTON_SELECTOR);
51
+ // Find first option that needs to be removed
52
+ for (const optionTitle of enabledOptions) {
53
+ if (!config.servicePresenceStatuses.includes(optionTitle)) {
54
+ await page
55
+ .getByRole('option', { name: optionTitle, exact: true })
56
+ .click();
57
+ await page.locator(REMOVE_BUTTON_SELECTOR).click();
48
58
  }
49
59
  }
50
60
  }
51
61
  // Save the settings and wait for page refresh
52
- await Promise.all([
53
- page.waitForNavigation(),
54
- page.click(SAVE_BUTTON_SELECTOR),
62
+ await page.locator(SAVE_BUTTON_SELECTOR).click();
63
+ await Promise.race([
64
+ page.waitForURL((url) => !url.pathname.endsWith('/e')),
65
+ waitForPageErrors(page),
55
66
  ]);
56
67
  // Close the page
57
68
  await page.close();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/permission-sets/service-presence-status/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/permission-sets/service-presence-status/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import type { Page } from 'playwright';
2
2
  export declare class FieldDependencyPage {
3
3
  private page;
4
4
  constructor(page: Page);
@@ -6,7 +6,7 @@ export declare class FieldDependencyPage {
6
6
  clickDeleteDependencyActionForField(customFieldId: string): Promise<FieldDependencyPage>;
7
7
  }
8
8
  export declare class NewFieldDependencyPage {
9
- protected page: any;
9
+ protected page: Page;
10
10
  protected saveButton: string;
11
11
  constructor(page: Page);
12
12
  static getUrl(customObjectId: string, dependentFieldId: string, controllingFieldId: string): string;
@@ -1,4 +1,4 @@
1
- import { throwPageErrors } from '../../../browserforce.js';
1
+ import { waitForPageErrors } from '../../../browserforce.js';
2
2
  export class FieldDependencyPage {
3
3
  page;
4
4
  constructor(page) {
@@ -9,18 +9,21 @@ export class FieldDependencyPage {
9
9
  }
10
10
  async clickDeleteDependencyActionForField(customFieldId) {
11
11
  // wait for "new" button in field dependencies releated list header
12
- await this.page.waitForSelector('div.listRelatedObject div.pbHeader input[name="new"]');
12
+ await this.page
13
+ .locator('div.listRelatedObject div.pbHeader input[name="new"]')
14
+ .waitFor();
13
15
  const xpath = `//a[contains(@href, "/p/dependency/NewDependencyUI/e") and contains(@href, "delID=${customFieldId.substring(0, 15)}")]`;
14
- const actionLinkHandles = await this.page.$$(`xpath/.${xpath}`);
15
- if (actionLinkHandles.length) {
16
+ const actionLinks = await this.page.locator(`xpath=${xpath}`).all();
17
+ if (actionLinks.length > 0) {
16
18
  this.page.on('dialog', async (dialog) => {
17
19
  await dialog.accept();
18
20
  });
19
- await Promise.all([
20
- this.page.waitForNavigation(),
21
- this.page.evaluate((e) => e.click(), actionLinkHandles[0]),
21
+ const promise = Promise.race([
22
+ this.page.waitForResponse(/setup\/ui\/dependencyList.jsp/),
23
+ waitForPageErrors(this.page),
22
24
  ]);
23
- await throwPageErrors(this.page);
25
+ await actionLinks[0].click();
26
+ await promise;
24
27
  }
25
28
  return new FieldDependencyPage(this.page);
26
29
  }
@@ -35,22 +38,20 @@ export class NewFieldDependencyPage {
35
38
  return `p/dependency/NewDependencyUI/e?tableEnumOrId=${customObjectId.substring(0, 15)}&setupid=CustomObjects&controller=${controllingFieldId.substring(0, 15)}&dependent=${dependentFieldId.substring(0, 15)}&retURL=/${customObjectId.substring(0, 15)}`;
36
39
  }
37
40
  async save() {
38
- await this.page.waitForSelector(this.saveButton);
39
- await Promise.all([
40
- this.page.waitForNavigation(),
41
- this.page.click(this.saveButton),
41
+ await this.page.locator(this.saveButton).first().click();
42
+ await Promise.race([
43
+ this.page.waitForURL((url) => url.pathname === '/p/dependency/EditDependencyUI/e'),
44
+ waitForPageErrors(this.page),
42
45
  ]);
43
- await throwPageErrors(this.page);
44
46
  // second step in wizard
45
47
  this.page.on('dialog', async (dialog) => {
46
48
  await dialog.accept();
47
49
  });
48
- await this.page.waitForSelector(this.saveButton);
49
- await Promise.all([
50
- this.page.waitForNavigation(),
51
- this.page.click(this.saveButton),
50
+ await this.page.locator(this.saveButton).first().click();
51
+ await Promise.race([
52
+ this.page.waitForURL((url) => /\/01I\w{12}/.test(url.pathname)),
53
+ waitForPageErrors(this.page),
52
54
  ]);
53
- await throwPageErrors(this.page);
54
55
  await this.page.close();
55
56
  }
56
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../../src/plugins/picklists/field-dependencies/pages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../../src/plugins/picklists/field-dependencies/pages.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,12 @@ describe(Picklists.name, function () {
15
15
  before(() => {
16
16
  plugin = new Picklists(global.bf);
17
17
  });
18
+ after(() => {
19
+ it('should remove the CustomObject', async () => {
20
+ const conn = global.bf.org.getConnection();
21
+ await conn.metadata.delete('CustomObject', ['Vehicle__c']);
22
+ });
23
+ });
18
24
  const configNew = readJsonFile('./new.json').settings.picklists;
19
25
  const configReplace = readJsonFile('./replace.json').settings.picklists;
20
26
  const configReplaceAndDelete = readJsonFile('./replace-and-delete.json')
@@ -63,38 +69,38 @@ describe(Picklists.name, function () {
63
69
  it('should replace and deactivate a picklist value', async () => {
64
70
  await plugin.run(configReplaceAndDeactivate);
65
71
  });
66
- });
67
- describe(FieldDependencies.name, function () {
68
- this.timeout('10m');
69
- let plugin;
70
- before(() => {
71
- plugin = new FieldDependencies(global.bf);
72
- });
73
- const configSet = readJsonFile('./field-dependencies/set.json').settings
74
- .picklists.fieldDependencies;
75
- const configUnset = readJsonFile('./field-dependencies/unset.json').settings
76
- .picklists.fieldDependencies;
77
- const configChange = readJsonFile('./field-dependencies/change.json').settings
78
- .picklists.fieldDependencies;
79
- it('should not do anything when the dependency is already set', async () => {
80
- const res = await plugin.run(configSet);
81
- assert.deepStrictEqual(res, { message: 'no action necessary' });
82
- });
83
- it('should unset a field dependency', async () => {
84
- await plugin.run(configUnset);
85
- });
86
- it('should not do anything when the dependency is already unset', async () => {
87
- const res = await plugin.run(configUnset);
88
- assert.deepStrictEqual(res, { message: 'no action necessary' });
89
- });
90
- it('should set a field dependency', async () => {
91
- await plugin.run(configSet);
92
- });
93
- it('should change a field dependency', async () => {
94
- await plugin.run(configChange);
95
- });
96
- it('should change back a field dependency', async () => {
97
- await plugin.run(configSet);
72
+ describe(FieldDependencies.name, function () {
73
+ this.timeout('10m');
74
+ let plugin;
75
+ before(() => {
76
+ plugin = new FieldDependencies(global.bf);
77
+ });
78
+ const configSet = readJsonFile('./field-dependencies/set.json').settings
79
+ .picklists.fieldDependencies;
80
+ const configUnset = readJsonFile('./field-dependencies/unset.json').settings
81
+ .picklists.fieldDependencies;
82
+ const configChange = readJsonFile('./field-dependencies/change.json')
83
+ .settings.picklists.fieldDependencies;
84
+ it('should not do anything when the dependency is already set', async () => {
85
+ const res = await plugin.run(configSet);
86
+ assert.deepStrictEqual(res, { message: 'no action necessary' });
87
+ });
88
+ it('should unset a field dependency', async () => {
89
+ await plugin.run(configUnset);
90
+ });
91
+ it('should not do anything when the dependency is already unset', async () => {
92
+ const res = await plugin.run(configUnset);
93
+ assert.deepStrictEqual(res, { message: 'no action necessary' });
94
+ });
95
+ it('should set a field dependency', async () => {
96
+ await plugin.run(configSet);
97
+ });
98
+ it('should change a field dependency', async () => {
99
+ await plugin.run(configChange);
100
+ });
101
+ it('should change back a field dependency', async () => {
102
+ await plugin.run(configSet);
103
+ });
98
104
  });
99
105
  });
100
106
  //# sourceMappingURL=index.e2e-spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/picklists/index.e2e-spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/picklists/index.e2e-spec.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import type { Page } from 'playwright';
2
2
  type PicklistValue = {
3
3
  value: string;
4
4
  active: boolean;
@@ -13,21 +13,21 @@ export declare class PicklistPage {
13
13
  clickActivateDeactivateActionForValue(picklistValueApiName: string, active: boolean): Promise<PicklistPage>;
14
14
  }
15
15
  export declare class DefaultPicklistAddPage {
16
- protected page: any;
16
+ protected page: Page;
17
17
  protected saveButton: string;
18
18
  constructor(page: Page);
19
19
  add(newValue: string): Promise<void>;
20
20
  save(): Promise<void>;
21
21
  }
22
22
  export declare class StatusPicklistAddPage {
23
- protected page: any;
23
+ protected page: Page;
24
24
  protected saveButton: string;
25
25
  constructor(page: Page);
26
26
  add(newValue: string, statusCategory: string): Promise<void>;
27
27
  save(): Promise<void>;
28
28
  }
29
29
  export declare class PicklistReplacePage {
30
- protected page: any;
30
+ protected page: Page;
31
31
  protected saveButton: string;
32
32
  constructor(page: Page);
33
33
  replace(value: string, newValue: string, replaceAllBlankValues?: boolean): Promise<void>;
@@ -36,5 +36,6 @@ export declare class PicklistReplacePage {
36
36
  export declare class PicklistReplaceAndDeletePage extends PicklistReplacePage {
37
37
  constructor(page: Page);
38
38
  replaceAndDelete(newValue?: string): Promise<void>;
39
+ save(): Promise<void>;
39
40
  }
40
41
  export {};