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

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 (99) 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 +7 -3
  5. package/lib/browserforce.js +57 -32
  6. package/lib/browserforce.js.map +1 -1
  7. package/lib/pages/login.d.ts +1 -1
  8. package/lib/pages/login.js +5 -5
  9. package/lib/pages/login.js.map +1 -1
  10. package/lib/plugins/activity-settings/index.js +9 -6
  11. package/lib/plugins/activity-settings/index.js.map +1 -1
  12. package/lib/plugins/company-information/index.js +26 -16
  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 +5 -6
  17. package/lib/plugins/customer-portal/enabled/index.js.map +1 -1
  18. package/lib/plugins/customer-portal/portals/index.js +68 -32
  19. package/lib/plugins/customer-portal/portals/index.js.map +1 -1
  20. package/lib/plugins/density-settings/index.d.ts +1 -8
  21. package/lib/plugins/density-settings/index.js +37 -29
  22. package/lib/plugins/density-settings/index.js.map +1 -1
  23. package/lib/plugins/email-deliverability/index.js +11 -8
  24. package/lib/plugins/email-deliverability/index.js.map +1 -1
  25. package/lib/plugins/high-velocity-sales-settings/page.d.ts +1 -1
  26. package/lib/plugins/high-velocity-sales-settings/page.js +7 -8
  27. package/lib/plugins/high-velocity-sales-settings/page.js.map +1 -1
  28. package/lib/plugins/history-tracking/index.js +21 -14
  29. package/lib/plugins/history-tracking/index.js.map +1 -1
  30. package/lib/plugins/home-page-layouts/index.js +16 -12
  31. package/lib/plugins/home-page-layouts/index.js.map +1 -1
  32. package/lib/plugins/lightning-experience-settings/index.d.ts +2 -2
  33. package/lib/plugins/lightning-experience-settings/index.js +42 -38
  34. package/lib/plugins/lightning-experience-settings/index.js.map +1 -1
  35. package/lib/plugins/linkedin-sales-navigator-settings/index.js +2 -2
  36. package/lib/plugins/linkedin-sales-navigator-settings/index.js.map +1 -1
  37. package/lib/plugins/linkedin-sales-navigator-settings/page.d.ts +4 -2
  38. package/lib/plugins/linkedin-sales-navigator-settings/page.js +18 -8
  39. package/lib/plugins/linkedin-sales-navigator-settings/page.js.map +1 -1
  40. package/lib/plugins/omni-channel-settings/index.e2e-spec.js +4 -0
  41. package/lib/plugins/omni-channel-settings/index.e2e-spec.js.map +1 -1
  42. package/lib/plugins/omni-channel-settings/index.js +6 -14
  43. package/lib/plugins/omni-channel-settings/index.js.map +1 -1
  44. package/lib/plugins/opportunity-splits/index.js +4 -4
  45. package/lib/plugins/opportunity-splits/index.js.map +1 -1
  46. package/lib/plugins/opportunity-splits/pages/layout-selection.d.ts +1 -1
  47. package/lib/plugins/opportunity-splits/pages/layout-selection.js +2 -4
  48. package/lib/plugins/opportunity-splits/pages/layout-selection.js.map +1 -1
  49. package/lib/plugins/opportunity-splits/pages/overview.d.ts +1 -1
  50. package/lib/plugins/opportunity-splits/pages/overview.js +6 -11
  51. package/lib/plugins/opportunity-splits/pages/overview.js.map +1 -1
  52. package/lib/plugins/opportunity-splits/pages/setup.d.ts +1 -1
  53. package/lib/plugins/opportunity-splits/pages/setup.js +2 -4
  54. package/lib/plugins/opportunity-splits/pages/setup.js.map +1 -1
  55. package/lib/plugins/permission-sets/index.e2e-spec.js +16 -5
  56. package/lib/plugins/permission-sets/index.e2e-spec.js.map +1 -1
  57. package/lib/plugins/permission-sets/service-presence-status/index.js +32 -25
  58. package/lib/plugins/permission-sets/service-presence-status/index.js.map +1 -1
  59. package/lib/plugins/picklists/field-dependencies/pages.d.ts +1 -1
  60. package/lib/plugins/picklists/field-dependencies/pages.js +9 -17
  61. package/lib/plugins/picklists/field-dependencies/pages.js.map +1 -1
  62. package/lib/plugins/picklists/pages.d.ts +2 -1
  63. package/lib/plugins/picklists/pages.js +35 -63
  64. package/lib/plugins/picklists/pages.js.map +1 -1
  65. package/lib/plugins/record-types/pages.d.ts +1 -1
  66. package/lib/plugins/record-types/pages.js +15 -23
  67. package/lib/plugins/record-types/pages.js.map +1 -1
  68. package/lib/plugins/relate-contact-to-multiple-accounts/index.d.ts +1 -1
  69. package/lib/plugins/relate-contact-to-multiple-accounts/index.js +32 -42
  70. package/lib/plugins/relate-contact-to-multiple-accounts/index.js.map +1 -1
  71. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js +18 -13
  72. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js.map +1 -1
  73. package/lib/plugins/salesforce-cpq-config/formConfig.js +12 -12
  74. package/lib/plugins/salesforce-cpq-config/formConfig.js.map +1 -1
  75. package/lib/plugins/salesforce-cpq-config/index.js +87 -68
  76. package/lib/plugins/salesforce-cpq-config/index.js.map +1 -1
  77. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js +1 -0
  78. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js.map +1 -1
  79. package/lib/plugins/salesforce-to-salesforce/index.js +8 -16
  80. package/lib/plugins/salesforce-to-salesforce/index.js.map +1 -1
  81. package/lib/plugins/security/authentication-configuration/index.js +18 -13
  82. package/lib/plugins/security/authentication-configuration/index.js.map +1 -1
  83. package/lib/plugins/security/certificate-and-key-management/index.js +16 -21
  84. package/lib/plugins/security/certificate-and-key-management/index.js.map +1 -1
  85. package/lib/plugins/service-channels/capacity/index.js +64 -35
  86. package/lib/plugins/service-channels/capacity/index.js.map +1 -1
  87. package/lib/plugins/service-channels/index.e2e-spec.js +4 -0
  88. package/lib/plugins/service-channels/index.e2e-spec.js.map +1 -1
  89. package/lib/plugins/slack/index.js +13 -14
  90. package/lib/plugins/slack/index.js.map +1 -1
  91. package/lib/plugins/user-access-policies/index.e2e-spec.js +4 -2
  92. package/lib/plugins/user-access-policies/index.e2e-spec.js.map +1 -1
  93. package/lib/plugins/user-access-policies/index.js +4 -2
  94. package/lib/plugins/user-access-policies/index.js.map +1 -1
  95. package/lib/plugins/user-access-policies/page.d.ts +2 -2
  96. package/lib/plugins/user-access-policies/page.js +34 -51
  97. package/lib/plugins/user-access-policies/page.js.map +1 -1
  98. package/oclif.manifest.json +1 -11
  99. package/package.json +2 -2
@@ -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 { Page } from 'playwright';
2
2
  export declare class FieldDependencyPage {
3
3
  private page;
4
4
  constructor(page: Page);
@@ -9,17 +9,17 @@ 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]),
22
- ]);
21
+ await actionLinks[0].click();
22
+ await this.page.waitForLoadState('networkidle');
23
23
  await throwPageErrors(this.page);
24
24
  }
25
25
  return new FieldDependencyPage(this.page);
@@ -35,21 +35,13 @@ export class NewFieldDependencyPage {
35
35
  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
36
  }
37
37
  async save() {
38
- await this.page.waitForSelector(this.saveButton);
39
- await Promise.all([
40
- this.page.waitForNavigation(),
41
- this.page.click(this.saveButton),
42
- ]);
38
+ await this.page.locator(this.saveButton).first().click();
43
39
  await throwPageErrors(this.page);
44
40
  // second step in wizard
45
41
  this.page.on('dialog', async (dialog) => {
46
42
  await dialog.accept();
47
43
  });
48
- await this.page.waitForSelector(this.saveButton);
49
- await Promise.all([
50
- this.page.waitForNavigation(),
51
- this.page.click(this.saveButton),
52
- ]);
44
+ await this.page.locator(this.saveButton).first().click();
53
45
  await throwPageErrors(this.page);
54
46
  await this.page.close();
55
47
  }
@@ -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":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,MAAM,OAAO,mBAAmB;IACtB,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,cAAsB;QACzC,OAAO,6CAA6C,cAAc,CAAC,SAAS,CAC1E,CAAC,EACD,EAAE,CACH,wBAAwB,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,mCAAmC,CAC9C,aAAqB;QAErB,mEAAmE;QACnE,MAAM,IAAI,CAAC,IAAI;aACZ,OAAO,CAAC,sDAAsD,CAAC;aAC/D,OAAO,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,qFAAqF,aAAa,CAAC,SAAS,CACxH,CAAC,EACD,EAAE,CACH,KAAK,CAAC;QACP,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;QACpE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YAChD,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;CACF;AAED,MAAM,OAAO,sBAAsB;IACvB,IAAI,CAAC;IACL,UAAU,GAAG,oBAAoB,CAAC;IAE5C,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,MAAM,CAAC,MAAM,CAClB,cAAsB,EACtB,gBAAwB,EACxB,kBAA0B;QAE1B,OAAO,gDAAgD,cAAc,CAAC,SAAS,CAC7E,CAAC,EACD,EAAE,CACH,qCAAqC,kBAAkB,CAAC,SAAS,CAChE,CAAC,EACD,EAAE,CACH,cAAc,gBAAgB,CAAC,SAAS,CACvC,CAAC,EACD,EAAE,CACH,YAAY,cAAc,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QACzD,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,wBAAwB;QACxB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QACzD,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import { Page } from 'playwright';
2
2
  type PicklistValue = {
3
3
  value: string;
4
4
  active: boolean;
@@ -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 {};
@@ -4,11 +4,13 @@ export class PicklistPage {
4
4
  this.page = page;
5
5
  }
6
6
  async getPicklistValues() {
7
- // wait for New button in any related list
8
- await this.page.waitForSelector('body table input[name="new"]');
7
+ // wait for New button for picklist values specifically
8
+ await this.page
9
+ .locator('input[name="new"][onclick*="picklist_masteredit"]')
10
+ .waitFor();
9
11
  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
+ const elements = await this.page.locator(`xpath=${xpath}`).all();
13
+ const fullNames = await Promise.all(elements.map((el) => el.innerText()));
12
14
  return fullNames;
13
15
  };
14
16
  const active = await resolvePicklistValueNames(`//tr[td[1]//a[contains(@href, "/setup/ui/picklist_masteredit")]]//td[2]`);
@@ -24,35 +26,22 @@ export class PicklistPage {
24
26
  }
25
27
  async clickNewActionButton() {
26
28
  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
- ]);
29
+ await this.page.locator(`xpath=${NEW_ACTION_BUTTON_XPATH}`).first().click();
30
+ await this.page.waitForLoadState('networkidle');
33
31
  }
34
32
  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
- ]);
33
+ const REPLACE_ACTION_BUTTON = 'input[name="replace"][type="button"]';
34
+ await this.page.locator(REPLACE_ACTION_BUTTON).click();
41
35
  return new PicklistReplacePage(this.page);
42
36
  }
43
37
  async clickDeleteActionForValue(picklistValueApiName) {
44
38
  // deactivate: deleteType=1
45
39
  // delete: deleteType=0 or no deleteType=1
46
40
  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
41
  this.page.on('dialog', async (dialog) => {
50
42
  await dialog.accept();
51
43
  });
52
- await Promise.all([
53
- this.page.waitForNavigation(),
54
- this.page.evaluate((e) => e.click(), deleteLink),
55
- ]);
44
+ await this.page.locator(`xpath=${xpath}`).first().click();
56
45
  await throwPageErrors(this.page);
57
46
  return new PicklistReplaceAndDeletePage(this.page);
58
47
  }
@@ -66,15 +55,10 @@ export class PicklistPage {
66
55
  // delete: deleteType=0 or no deleteType=1
67
56
  xpath = `//tr[td[2][text() = "${picklistValueApiName}"]]//td[1]//a[contains(@href, "/setup/ui/picklist_masterdelete.jsp") and contains(@href, "deleteType=1")]`;
68
57
  }
69
- await this.page.waitForSelector(`::-p-xpath(${xpath})`);
70
- const actionLink = (await this.page.$$(`xpath/.${xpath}`))[0];
71
58
  this.page.on('dialog', async (dialog) => {
72
59
  await dialog.accept();
73
60
  });
74
- await Promise.all([
75
- this.page.waitForNavigation(),
76
- this.page.evaluate((e) => e.click(), actionLink),
77
- ]);
61
+ await this.page.locator(`xpath=${xpath}`).first().click();
78
62
  await throwPageErrors(this.page);
79
63
  return new PicklistPage(this.page);
80
64
  }
@@ -88,17 +72,13 @@ export class DefaultPicklistAddPage {
88
72
  async add(newValue) {
89
73
  const TEXT_AREA = 'textarea';
90
74
  if (newValue !== undefined && newValue !== null) {
91
- await this.page.waitForSelector(TEXT_AREA);
92
- await this.page.type(TEXT_AREA, newValue);
75
+ await this.page.locator(TEXT_AREA).fill(newValue);
93
76
  }
94
77
  await this.save();
95
78
  }
96
79
  async save() {
97
- await this.page.waitForSelector(this.saveButton);
98
- await Promise.all([
99
- this.page.waitForNavigation(),
100
- this.page.click(this.saveButton),
101
- ]);
80
+ await this.page.locator(this.saveButton).click();
81
+ await this.page.waitForLoadState('load');
102
82
  await throwPageErrors(this.page);
103
83
  }
104
84
  }
@@ -113,19 +93,17 @@ export class StatusPicklistAddPage {
113
93
  const API_NAME_INPUT = 'input#p3';
114
94
  const STATUS_CATEGORY_SELECTOR = 'select#p5';
115
95
  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);
96
+ await this.page.locator(LABEL_INPUT).fill(newValue);
97
+ await this.page.locator(API_NAME_INPUT).fill(newValue);
98
+ await this.page
99
+ .locator(STATUS_CATEGORY_SELECTOR)
100
+ .pressSequentially(statusCategory);
120
101
  }
121
102
  await this.save();
122
103
  }
123
104
  async save() {
124
- await this.page.waitForSelector(this.saveButton);
125
- await Promise.all([
126
- this.page.waitForNavigation(),
127
- this.page.click(this.saveButton),
128
- ]);
105
+ await this.page.locator(this.saveButton).click();
106
+ await this.page.waitForLoadState('load');
129
107
  await throwPageErrors(this.page);
130
108
  }
131
109
  }
@@ -140,25 +118,18 @@ export class PicklistReplacePage {
140
118
  const NEW_VALUE_SELECTOR = 'select#nv';
141
119
  const REPLACE_ALL_BLANK_VALUES_CHECKBOX = 'input#fnv';
142
120
  if (value !== undefined && value !== null) {
143
- await this.page.waitForSelector(OLD_VALUE_SELECTOR);
144
- await this.page.type(OLD_VALUE_SELECTOR, value);
121
+ await this.page.locator(OLD_VALUE_SELECTOR).fill(value);
145
122
  }
146
123
  if (replaceAllBlankValues) {
147
- await this.page.waitForSelector(REPLACE_ALL_BLANK_VALUES_CHECKBOX);
148
- await this.page.click(REPLACE_ALL_BLANK_VALUES_CHECKBOX);
124
+ await this.page.locator(REPLACE_ALL_BLANK_VALUES_CHECKBOX).check();
149
125
  }
150
126
  if (newValue !== undefined && newValue !== null) {
151
- await this.page.waitForSelector(NEW_VALUE_SELECTOR);
152
- await this.page.type(NEW_VALUE_SELECTOR, newValue);
127
+ await this.page.locator(NEW_VALUE_SELECTOR).pressSequentially(newValue);
153
128
  }
154
129
  await this.save();
155
130
  }
156
131
  async save() {
157
- await this.page.waitForSelector(this.saveButton);
158
- await Promise.all([
159
- this.page.waitForNavigation(),
160
- this.page.click(this.saveButton),
161
- ]);
132
+ await this.page.locator(this.saveButton).click();
162
133
  await throwPageErrors(this.page);
163
134
  }
164
135
  }
@@ -172,20 +143,21 @@ export class PicklistReplaceAndDeletePage extends PicklistReplacePage {
172
143
  const REPLACE_WITH_BLANK_VALUE_RADIO_INPUT = 'input#ReplaceValueWithNullValue';
173
144
  // select option value
174
145
  if (newValue !== undefined && newValue !== null) {
175
- await this.page.waitForSelector(NEW_VALUE_SELECTOR);
176
- await this.page.type(NEW_VALUE_SELECTOR, newValue);
146
+ await this.page.locator(NEW_VALUE_SELECTOR).pressSequentially(newValue);
177
147
  }
178
148
  else {
179
- await this.page.waitForSelector(REPLACE_WITH_BLANK_VALUE_RADIO_INPUT);
180
- await this.page.click(REPLACE_WITH_BLANK_VALUE_RADIO_INPUT);
149
+ await this.page.locator(REPLACE_WITH_BLANK_VALUE_RADIO_INPUT).check();
181
150
  }
182
151
  }
152
+ async save() {
153
+ await this.page.locator(this.saveButton).click({ timeout: 180000 });
154
+ await throwPageErrors(this.page);
155
+ }
183
156
  }
184
157
  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();
158
+ const errorElement = page.locator('div#validationError div.messageText');
159
+ if ((await errorElement.count()) > 0) {
160
+ const errorMsg = await errorElement.innerText();
189
161
  if (errorMsg && errorMsg.trim()) {
190
162
  throw new Error(errorMsg.trim());
191
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/picklists/pages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/picklists/pages.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import { Page } from 'playwright';
2
2
  export declare class RecordTypePage {
3
3
  private page;
4
4
  constructor(page: Page);
@@ -5,12 +5,8 @@ export class RecordTypePage {
5
5
  }
6
6
  async clickDeleteAction(recordTypeId) {
7
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
- ]);
8
+ await this.page.locator(`xpath=${xpath}`).first().click();
9
+ await this.page.waitForLoadState('networkidle');
14
10
  return new RecordTypeDeletePage(this.page);
15
11
  }
16
12
  }
@@ -24,26 +20,23 @@ export class RecordTypeDeletePage {
24
20
  await this.throwOnMissingSaveButton();
25
21
  const NEW_VALUE_SELECTOR = 'select#p2';
26
22
  if (newRecordTypeId) {
27
- await this.page.waitForSelector(NEW_VALUE_SELECTOR);
28
- await this.page.select(NEW_VALUE_SELECTOR, newRecordTypeId.slice(0, 15));
23
+ await this.page
24
+ .locator(NEW_VALUE_SELECTOR)
25
+ .selectOption(newRecordTypeId.slice(0, 15));
29
26
  }
30
27
  await this.save();
31
28
  }
32
29
  async save() {
33
- await this.page.waitForSelector(this.saveButton);
34
- await Promise.all([
35
- this.page.waitForNavigation(),
36
- this.page.click(this.saveButton),
37
- ]);
30
+ await this.page.locator(this.saveButton).click();
31
+ await this.page.waitForLoadState('load');
38
32
  await this.throwPageErrors();
39
33
  }
40
34
  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();
35
+ const saveButtonCount = await this.page.locator(this.saveButton).count();
36
+ if (saveButtonCount === 0) {
37
+ const bodyElement = this.page.locator('div.pbBody');
38
+ if ((await bodyElement.count()) > 0) {
39
+ const errorMsg = await bodyElement.textContent();
47
40
  if (errorMsg?.trim()) {
48
41
  throw new Error(errorMsg.trim());
49
42
  }
@@ -51,10 +44,9 @@ export class RecordTypeDeletePage {
51
44
  }
52
45
  }
53
46
  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();
47
+ const errorElement = this.page.locator('div#validationError div.messageText');
48
+ if ((await errorElement.count()) > 0) {
49
+ const errorMsg = await errorElement.innerText();
58
50
  if (errorMsg?.trim()) {
59
51
  throw new Error(errorMsg.trim());
60
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/record-types/pages.ts"],"names":[],"mappings":"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"}
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,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QAC1D,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChD,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;iBACZ,OAAO,CAAC,kBAAkB,CAAC;iBAC3B,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,wBAAwB;QAC5B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QACzE,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;gBACjD,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,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CACpC,qCAAqC,CACtC,CAAC;QACF,IAAI,CAAC,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;YAChD,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,4 +1,4 @@
1
- import { Page } from 'puppeteer';
1
+ import { Page } from 'playwright';
2
2
  import { BrowserforcePlugin } from '../../plugin.js';
3
3
  type Config = {
4
4
  enabled: boolean;
@@ -1,19 +1,13 @@
1
1
  import { retry, throwPageErrors } from '../../browserforce.js';
2
2
  import { BrowserforcePlugin } from '../../plugin.js';
3
3
  const BASE_PATH = 'accounts/accountSetup.apexp';
4
- const ENABLED_SELECTOR = 'input[id$=":sharedContactsCheckBox"]';
5
- const EDIT_BUTTON_SELECTOR = 'input[id$=":edit"]';
6
- const SAVE_BUTTON_SELECTOR = 'input[id$=":save"]';
7
- const DISABLE_CONFIRM_CHECKBOX_SELECTOR = 'input#disable_confirm';
8
- const DISABLE_CONFIRM_BUTTON_SELECTOR = 'input#sharedContactsDisableConfirmButton';
9
- const ENABLING_IN_PROGRESS_SELECTOR = '#enablingInProgress';
10
- const DISABLING_IN_PROGRESS_SELECTOR = '#disablingInProgress';
11
4
  export class RelateContactToMultipleAccounts extends BrowserforcePlugin {
12
5
  async retrieve(definition) {
13
6
  const page = await this.browserforce.openPage(BASE_PATH);
14
- await page.waitForSelector(ENABLED_SELECTOR, { visible: true });
15
7
  const response = {
16
- enabled: await page.$eval(ENABLED_SELECTOR, (el) => el.checked),
8
+ enabled: await page
9
+ .getByRole('checkbox', { name: 'Allow users to relate a' })
10
+ .isChecked(),
17
11
  };
18
12
  await page.close();
19
13
  return response;
@@ -22,48 +16,44 @@ export class RelateContactToMultipleAccounts extends BrowserforcePlugin {
22
16
  const page = await this.browserforce.openPage(BASE_PATH);
23
17
  await this.waitForProcessFinished(page);
24
18
  // First we have to click the 'Edit' button, to make the checkbox editable
25
- await page.waitForSelector(EDIT_BUTTON_SELECTOR);
26
- await Promise.all([
27
- page.waitForNavigation(),
28
- page.click(EDIT_BUTTON_SELECTOR),
29
- ]);
19
+ await page.getByRole('button', { name: 'edit' }).first().click();
30
20
  // Change the value of the checkbox
31
- await page.waitForSelector(ENABLED_SELECTOR, { visible: true });
32
- await page.click(ENABLED_SELECTOR);
33
- // Save
34
- if (config.enabled) {
35
- await page.waitForSelector(SAVE_BUTTON_SELECTOR);
36
- await Promise.all([
37
- page.waitForNavigation(),
38
- page.click(SAVE_BUTTON_SELECTOR),
39
- ]);
40
- }
41
- else {
42
- await page.waitForSelector(SAVE_BUTTON_SELECTOR);
43
- await page.click(SAVE_BUTTON_SELECTOR);
44
- await page.waitForSelector(DISABLE_CONFIRM_CHECKBOX_SELECTOR, {
45
- visible: true,
46
- });
47
- await page.click(DISABLE_CONFIRM_CHECKBOX_SELECTOR);
48
- await page.waitForSelector(DISABLE_CONFIRM_BUTTON_SELECTOR);
49
- await Promise.all([
50
- page.waitForNavigation(),
51
- page.click(DISABLE_CONFIRM_BUTTON_SELECTOR),
52
- ]);
21
+ await page
22
+ .getByRole('checkbox', { name: 'Allow users to relate a' })
23
+ .click();
24
+ await page
25
+ .getByRole('button', { name: 'save' })
26
+ .first()
27
+ .click({ timeout: 90_000 });
28
+ if (await page
29
+ .getByRole('heading', { name: 'Disable Contacts to Multiple' })
30
+ .isVisible()) {
31
+ await page
32
+ .getByRole('checkbox', { name: 'Yes, I understand that this' })
33
+ .click();
34
+ await page.getByRole('button', { name: 'Disable' }).click();
53
35
  }
54
36
  await throwPageErrors(page);
55
37
  await page.close();
56
38
  }
57
39
  async waitForProcessFinished(page) {
58
40
  await retry(async () => {
59
- const enabling = await page.$(ENABLING_IN_PROGRESS_SELECTOR);
60
- if (enabling) {
61
- const message = await enabling.evaluate((div) => div.innerText);
41
+ const enablingCount = await page
42
+ .getByText("In progress: We're enabling")
43
+ .count();
44
+ if (enablingCount > 0) {
45
+ const message = await page
46
+ .getByText("In progress: We're enabling")
47
+ .innerText();
62
48
  throw new Error(message);
63
49
  }
64
- const disabling = await page.$(DISABLING_IN_PROGRESS_SELECTOR);
65
- if (disabling) {
66
- const message = await disabling.evaluate((div) => div.innerText);
50
+ const disablingCount = await page
51
+ .getByText("In progress: We're disabling")
52
+ .count();
53
+ if (disablingCount > 0) {
54
+ const message = await page
55
+ .getByText("In progress: We're disabling")
56
+ .innerText();
67
57
  throw new Error(message);
68
58
  }
69
59
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/relate-contact-to-multiple-accounts/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/relate-contact-to-multiple-accounts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,SAAS,GAAG,6BAA6B,CAAC;AAMhD,MAAM,OAAO,+BAAgC,SAAQ,kBAAkB;IAC9D,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,MAAM,IAAI;iBAChB,SAAS,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC;iBAC1D,SAAS,EAAE;SACf,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACxC,0EAA0E;QAC1E,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QACjE,mCAAmC;QACnC,MAAM,IAAI;aACP,SAAS,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC;aAC1D,KAAK,EAAE,CAAC;QACX,MAAM,IAAI;aACP,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;aACrC,KAAK,EAAE;aACP,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAE9B,IACE,MAAM,IAAI;aACP,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC;aAC9D,SAAS,EAAE,EACd,CAAC;YACD,MAAM,IAAI;iBACP,SAAS,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC;iBAC9D,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9D,CAAC;QAED,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAU;QACrC,MAAM,KAAK,CAAC,KAAK,IAAI,EAAE;YACrB,MAAM,aAAa,GAAG,MAAM,IAAI;iBAC7B,SAAS,CAAC,6BAA6B,CAAC;iBACxC,KAAK,EAAE,CAAC;YACX,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,MAAM,IAAI;qBACvB,SAAS,CAAC,6BAA6B,CAAC;qBACxC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;YACD,MAAM,cAAc,GAAG,MAAM,IAAI;iBAC9B,SAAS,CAAC,8BAA8B,CAAC;iBACzC,KAAK,EAAE,CAAC;YACX,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,OAAO,GAAG,MAAM,IAAI;qBACvB,SAAS,CAAC,8BAA8B,CAAC;qBACzC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -8,13 +8,16 @@ export class FolderSharing extends BrowserforcePlugin {
8
8
  const response = {
9
9
  enableEnhancedFolderSharing: true,
10
10
  };
11
- let page;
11
+ const page = await this.browserforce.openPage(BASE_PATH);
12
12
  try {
13
- page = await this.browserforce.openPage(BASE_PATH);
14
13
  const frameOrPage = await this.browserforce.waitForSelectorInFrameOrPage(page, BASE_SELECTOR);
15
- const inputEnable = await frameOrPage.$(ENABLE_CHECKBOX_SELECTOR);
16
- if (inputEnable) {
17
- response.enableEnhancedFolderSharing = await frameOrPage.$eval(ENABLE_CHECKBOX_SELECTOR, (el) => el.checked);
14
+ const inputEnable = await frameOrPage
15
+ .locator(ENABLE_CHECKBOX_SELECTOR)
16
+ .count();
17
+ if (inputEnable > 0) {
18
+ response.enableEnhancedFolderSharing = await frameOrPage
19
+ .locator(ENABLE_CHECKBOX_SELECTOR)
20
+ .evaluate((el) => el.checked);
18
21
  }
19
22
  else {
20
23
  // already enabled
@@ -22,9 +25,11 @@ export class FolderSharing extends BrowserforcePlugin {
22
25
  }
23
26
  }
24
27
  catch (e) {
25
- if (e.message.match('Insufficient Privileges')) {
28
+ if (e instanceof Error && e.message.match('Insufficient Privileges')) {
29
+ await page.close();
26
30
  return response;
27
31
  }
32
+ await page.close();
28
33
  throw e;
29
34
  }
30
35
  await page.close();
@@ -35,15 +40,15 @@ export class FolderSharing extends BrowserforcePlugin {
35
40
  throw new Error('`enableEnhancedFolderSharing` cannot be disabled once enabled');
36
41
  }
37
42
  const page = await this.browserforce.openPage(BASE_PATH);
38
- await page.waitForSelector(ENABLE_CHECKBOX_SELECTOR);
39
- await page.$eval(ENABLE_CHECKBOX_SELECTOR, (e, v) => {
43
+ await page.locator(ENABLE_CHECKBOX_SELECTOR).waitFor();
44
+ await page
45
+ .locator(ENABLE_CHECKBOX_SELECTOR)
46
+ .evaluate((e, v) => {
40
47
  e.checked = v;
41
48
  }, config.enableEnhancedFolderSharing);
42
- await page.waitForSelector(SAVE_BUTTON_SELECTOR);
43
- await Promise.all([
44
- page.waitForNavigation(),
45
- page.click(SAVE_BUTTON_SELECTOR),
46
- ]);
49
+ await page.locator(SAVE_BUTTON_SELECTOR).waitFor();
50
+ await page.locator(SAVE_BUTTON_SELECTOR).click();
51
+ await page.waitForLoadState('load');
47
52
  await page.close();
48
53
  }
49
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/reports-and-dashboards/folder-sharing/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,SAAS,GAAG,uCAAuC,CAAC;AAE1D,MAAM,aAAa,GAAG,YAAY,CAAC;AACnC,MAAM,wBAAwB,GAAG,eAAe,CAAC;AACjD,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AAMtD,MAAM,OAAO,aAAc,SAAQ,kBAAkB;IAC5C,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,QAAQ,GAAG;YACf,2BAA2B,EAAE,IAAI;SAClC,CAAC;QACF,IAAI,IAAU,CAAC;QACf,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACnD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,4BAA4B,CACtE,IAAI,EACJ,aAAa,CACd,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;YAClE,IAAI,WAAW,EAAE,CAAC;gBAChB,QAAQ,CAAC,2BAA2B,GAAG,MAAM,WAAW,CAAC,KAAK,CAC5D,wBAAwB,EACxB,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CACrC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,kBAAkB;gBAClB,QAAQ,CAAC,2BAA2B,GAAG,IAAI,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBAC/C,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,MAAM,CAAC,2BAA2B,KAAK,KAAK,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,KAAK,CACd,wBAAwB,EACxB,CAAC,CAAmB,EAAE,CAAU,EAAE,EAAE;YAClC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;QAChB,CAAC,EACD,MAAM,CAAC,2BAA2B,CACnC,CAAC;QACF,MAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;QACjD,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC;SACjC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/reports-and-dashboards/folder-sharing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,SAAS,GAAG,uCAAuC,CAAC;AAE1D,MAAM,aAAa,GAAG,YAAY,CAAC;AACnC,MAAM,wBAAwB,GAAG,eAAe,CAAC;AACjD,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AAMtD,MAAM,OAAO,aAAc,SAAQ,kBAAkB;IAC5C,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,QAAQ,GAAG;YACf,2BAA2B,EAAE,IAAI;SAClC,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,4BAA4B,CACtE,IAAI,EACJ,aAAa,CACd,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,WAAW;iBAClC,OAAO,CAAC,wBAAwB,CAAC;iBACjC,KAAK,EAAE,CAAC;YACX,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,QAAQ,CAAC,2BAA2B,GAAG,MAAM,WAAW;qBACrD,OAAO,CAAC,wBAAwB,CAAC;qBACjC,QAAQ,CAAC,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACN,kBAAkB;gBAClB,QAAQ,CAAC,2BAA2B,GAAG,IAAI,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACnB,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,CAAC,CAAC;QACV,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,MAAM,CAAC,2BAA2B,KAAK,KAAK,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,OAAO,EAAE,CAAC;QACvD,MAAM,IAAI;aACP,OAAO,CAAC,wBAAwB,CAAC;aACjC,QAAQ,CAAC,CAAC,CAAmB,EAAE,CAAU,EAAE,EAAE;YAC5C,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;QAChB,CAAC,EAAE,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,EAAE,CAAC;QACnD,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF"}