sfdx-browserforce-plugin 2.11.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/README.md +10 -10
  2. package/lib/browserforce-command.js +25 -19
  3. package/lib/browserforce-command.js.map +1 -1
  4. package/lib/browserforce.js +11 -28
  5. package/lib/browserforce.js.map +1 -1
  6. package/lib/commands/browserforce/apply.js +14 -14
  7. package/lib/commands/browserforce/apply.js.map +1 -1
  8. package/lib/commands/browserforce/plan.js +16 -15
  9. package/lib/commands/browserforce/plan.js.map +1 -1
  10. package/lib/config-parser.js +1 -1
  11. package/lib/config-parser.js.map +1 -1
  12. package/lib/jsforce-utils.js.map +1 -1
  13. package/lib/plugin.js +11 -30
  14. package/lib/plugin.js.map +1 -1
  15. package/lib/plugins/activity-settings/index.e2e-spec.js +41 -0
  16. package/lib/plugins/activity-settings/index.e2e-spec.js.map +1 -0
  17. package/lib/plugins/activity-settings/index.js +1 -4
  18. package/lib/plugins/activity-settings/index.js.map +1 -1
  19. package/lib/plugins/communities/index.e2e-spec.js +39 -0
  20. package/lib/plugins/communities/index.e2e-spec.js.map +1 -0
  21. package/lib/plugins/communities/index.js +2 -7
  22. package/lib/plugins/communities/index.js.map +1 -1
  23. package/lib/plugins/company-information/index.e2e-spec.js +42 -0
  24. package/lib/plugins/company-information/index.e2e-spec.js.map +1 -0
  25. package/lib/plugins/company-information/index.js +8 -12
  26. package/lib/plugins/company-information/index.js.map +1 -1
  27. package/lib/plugins/customer-portal/available-custom-objects/index.js +20 -48
  28. package/lib/plugins/customer-portal/available-custom-objects/index.js.map +1 -1
  29. package/lib/plugins/customer-portal/available-custom-objects/index.test.js +44 -0
  30. package/lib/plugins/customer-portal/available-custom-objects/index.test.js.map +1 -0
  31. package/lib/plugins/customer-portal/enabled/index.js +3 -11
  32. package/lib/plugins/customer-portal/enabled/index.js.map +1 -1
  33. package/lib/plugins/customer-portal/enabled/index.test.js +39 -0
  34. package/lib/plugins/customer-portal/enabled/index.test.js.map +1 -0
  35. package/lib/plugins/customer-portal/index.e2e-spec.js +222 -0
  36. package/lib/plugins/customer-portal/index.e2e-spec.js.map +1 -0
  37. package/lib/plugins/customer-portal/index.js +17 -13
  38. package/lib/plugins/customer-portal/index.js.map +1 -1
  39. package/lib/plugins/customer-portal/index.test.js +89 -0
  40. package/lib/plugins/customer-portal/index.test.js.map +1 -0
  41. package/lib/plugins/customer-portal/portals/index.js +17 -25
  42. package/lib/plugins/customer-portal/portals/index.js.map +1 -1
  43. package/lib/plugins/customer-portal/portals/index.test.js +145 -0
  44. package/lib/plugins/customer-portal/portals/index.test.js.map +1 -0
  45. package/lib/plugins/defer-sharing-calculation/index.e2e-spec.js +96 -0
  46. package/lib/plugins/defer-sharing-calculation/index.e2e-spec.js.map +1 -0
  47. package/lib/plugins/defer-sharing-calculation/index.js +2 -7
  48. package/lib/plugins/defer-sharing-calculation/index.js.map +1 -1
  49. package/lib/plugins/density-settings/index.e2e-spec.js +44 -0
  50. package/lib/plugins/density-settings/index.e2e-spec.js.map +1 -0
  51. package/lib/plugins/density-settings/index.js +8 -6
  52. package/lib/plugins/density-settings/index.js.map +1 -1
  53. package/lib/plugins/email-deliverability/index.e2e-spec.js +60 -0
  54. package/lib/plugins/email-deliverability/index.e2e-spec.js.map +1 -0
  55. package/lib/plugins/email-deliverability/index.js +7 -10
  56. package/lib/plugins/email-deliverability/index.js.map +1 -1
  57. package/lib/plugins/high-velocity-sales-settings/index.e2e-spec.js +34 -0
  58. package/lib/plugins/high-velocity-sales-settings/index.e2e-spec.js.map +1 -0
  59. package/lib/plugins/high-velocity-sales-settings/index.js +1 -2
  60. package/lib/plugins/high-velocity-sales-settings/index.js.map +1 -1
  61. package/lib/plugins/high-velocity-sales-settings/page.js +13 -4
  62. package/lib/plugins/high-velocity-sales-settings/page.js.map +1 -1
  63. package/lib/plugins/home-page-layouts/index.e2e-spec.js +52 -0
  64. package/lib/plugins/home-page-layouts/index.e2e-spec.js.map +1 -0
  65. package/lib/plugins/home-page-layouts/index.js +14 -32
  66. package/lib/plugins/home-page-layouts/index.js.map +1 -1
  67. package/lib/plugins/home-page-layouts/index.test.js +109 -0
  68. package/lib/plugins/home-page-layouts/index.test.js.map +1 -0
  69. package/lib/plugins/lightning-experience-settings/index.e2e-spec.js +44 -0
  70. package/lib/plugins/lightning-experience-settings/index.e2e-spec.js.map +1 -0
  71. package/lib/plugins/lightning-experience-settings/index.js +11 -9
  72. package/lib/plugins/lightning-experience-settings/index.js.map +1 -1
  73. package/lib/plugins/opportunity-splits/index.e2e-spec.js +70 -0
  74. package/lib/plugins/opportunity-splits/index.e2e-spec.js.map +1 -0
  75. package/lib/plugins/opportunity-splits/pages/layout-selection.js +1 -4
  76. package/lib/plugins/opportunity-splits/pages/layout-selection.js.map +1 -1
  77. package/lib/plugins/opportunity-splits/pages/overview.js +1 -4
  78. package/lib/plugins/opportunity-splits/pages/overview.js.map +1 -1
  79. package/lib/plugins/opportunity-splits/pages/setup.js +1 -4
  80. package/lib/plugins/opportunity-splits/pages/setup.js.map +1 -1
  81. package/lib/plugins/picklists/field-dependencies/index.js +15 -10
  82. package/lib/plugins/picklists/field-dependencies/index.js.map +1 -1
  83. package/lib/plugins/picklists/field-dependencies/index.test.js +69 -0
  84. package/lib/plugins/picklists/field-dependencies/index.test.js.map +1 -0
  85. package/lib/plugins/picklists/field-dependencies/pages.js +3 -12
  86. package/lib/plugins/picklists/field-dependencies/pages.js.map +1 -1
  87. package/lib/plugins/picklists/index.e2e-spec.js +118 -0
  88. package/lib/plugins/picklists/index.e2e-spec.js.map +1 -0
  89. package/lib/plugins/picklists/index.js +36 -27
  90. package/lib/plugins/picklists/index.js.map +1 -1
  91. package/lib/plugins/picklists/pages.js +7 -28
  92. package/lib/plugins/picklists/pages.js.map +1 -1
  93. package/lib/plugins/picklists/standard-value-set.js +1 -1
  94. package/lib/plugins/picklists/standard-value-set.js.map +1 -1
  95. package/lib/plugins/record-types/index.e2e-spec.js +99 -0
  96. package/lib/plugins/record-types/index.e2e-spec.js.map +1 -0
  97. package/lib/plugins/record-types/index.js +1 -2
  98. package/lib/plugins/record-types/index.js.map +1 -1
  99. package/lib/plugins/record-types/pages.js +4 -10
  100. package/lib/plugins/record-types/pages.js.map +1 -1
  101. package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js +34 -0
  102. package/lib/plugins/relate-contact-to-multiple-accounts/index.e2e-spec.js.map +1 -0
  103. package/lib/plugins/relate-contact-to-multiple-accounts/index.js +3 -12
  104. package/lib/plugins/relate-contact-to-multiple-accounts/index.js.map +1 -1
  105. package/lib/plugins/reports-and-dashboards/folder-sharing/index.e2e-spec.js +3 -0
  106. package/lib/plugins/reports-and-dashboards/folder-sharing/index.e2e-spec.js.map +1 -0
  107. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js +1 -4
  108. package/lib/plugins/reports-and-dashboards/folder-sharing/index.js.map +1 -1
  109. package/lib/plugins/reports-and-dashboards/index.e2e-spec.js +3 -0
  110. package/lib/plugins/reports-and-dashboards/index.e2e-spec.js.map +1 -0
  111. package/lib/plugins/reports-and-dashboards/index.js +6 -6
  112. package/lib/plugins/reports-and-dashboards/index.js.map +1 -1
  113. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js +39 -0
  114. package/lib/plugins/salesforce-to-salesforce/index.e2e-spec.js.map +1 -0
  115. package/lib/plugins/salesforce-to-salesforce/index.js +1 -4
  116. package/lib/plugins/salesforce-to-salesforce/index.js.map +1 -1
  117. package/lib/plugins/security/certificate-and-key-management/index.js +25 -36
  118. package/lib/plugins/security/certificate-and-key-management/index.js.map +1 -1
  119. package/lib/plugins/security/certificate-and-key-management/index.test.js +66 -0
  120. package/lib/plugins/security/certificate-and-key-management/index.test.js.map +1 -0
  121. package/lib/plugins/security/identity-provider/index.js +13 -24
  122. package/lib/plugins/security/identity-provider/index.js.map +1 -1
  123. package/lib/plugins/security/index.e2e-spec.js +86 -0
  124. package/lib/plugins/security/index.e2e-spec.js.map +1 -0
  125. package/lib/plugins/security/index.js +24 -15
  126. package/lib/plugins/security/index.js.map +1 -1
  127. package/lib/plugins/security/login-access-policies/index.e2e-spec.js +32 -0
  128. package/lib/plugins/security/login-access-policies/index.e2e-spec.js.map +1 -0
  129. package/lib/plugins/security/login-access-policies/index.js +2 -5
  130. package/lib/plugins/security/login-access-policies/index.js.map +1 -1
  131. package/lib/plugins/security/sharing/index.e2e-spec.js +34 -0
  132. package/lib/plugins/security/sharing/index.e2e-spec.js.map +1 -0
  133. package/lib/plugins/security/sharing/index.js +5 -11
  134. package/lib/plugins/security/sharing/index.js.map +1 -1
  135. package/lib/plugins/utils.js +38 -41
  136. package/lib/plugins/utils.js.map +1 -1
  137. package/oclif.manifest.json +104 -112
  138. package/package.json +12 -10
  139. package/lib/browserforce-command.d.ts +0 -15
  140. package/lib/browserforce.d.ts +0 -26
  141. package/lib/commands/browserforce/apply.d.ts +0 -6
  142. package/lib/commands/browserforce/plan.d.ts +0 -6
  143. package/lib/config-parser.d.ts +0 -16
  144. package/lib/index.d.ts +0 -1
  145. package/lib/jsforce-utils.d.ts +0 -5
  146. package/lib/plugin.d.ts +0 -11
  147. package/lib/plugins/activity-settings/index.d.ts +0 -9
  148. package/lib/plugins/communities/index.d.ts +0 -10
  149. package/lib/plugins/company-information/index.d.ts +0 -9
  150. package/lib/plugins/customer-portal/available-custom-objects/index.d.ts +0 -14
  151. package/lib/plugins/customer-portal/enabled/index.d.ts +0 -7
  152. package/lib/plugins/customer-portal/index.d.ts +0 -15
  153. package/lib/plugins/customer-portal/portals/index.d.ts +0 -25
  154. package/lib/plugins/defer-sharing-calculation/index.d.ts +0 -9
  155. package/lib/plugins/density-settings/index.d.ts +0 -17
  156. package/lib/plugins/email-deliverability/index.d.ts +0 -9
  157. package/lib/plugins/high-velocity-sales-settings/index.d.ts +0 -11
  158. package/lib/plugins/high-velocity-sales-settings/page.d.ts +0 -7
  159. package/lib/plugins/home-page-layouts/index.d.ts +0 -14
  160. package/lib/plugins/index.d.ts +0 -18
  161. package/lib/plugins/lightning-experience-settings/index.d.ts +0 -17
  162. package/lib/plugins/opportunity-splits/index.d.ts +0 -9
  163. package/lib/plugins/opportunity-splits/pages/layout-selection.d.ts +0 -8
  164. package/lib/plugins/opportunity-splits/pages/overview.d.ts +0 -10
  165. package/lib/plugins/opportunity-splits/pages/setup.d.ts +0 -8
  166. package/lib/plugins/picklists/field-dependencies/index.d.ts +0 -11
  167. package/lib/plugins/picklists/field-dependencies/pages.d.ts +0 -14
  168. package/lib/plugins/picklists/index.d.ts +0 -23
  169. package/lib/plugins/picklists/pages.d.ts +0 -40
  170. package/lib/plugins/picklists/standard-value-set.d.ts +0 -1
  171. package/lib/plugins/record-types/index.d.ts +0 -13
  172. package/lib/plugins/record-types/pages.d.ts +0 -15
  173. package/lib/plugins/relate-contact-to-multiple-accounts/index.d.ts +0 -9
  174. package/lib/plugins/reports-and-dashboards/folder-sharing/index.d.ts +0 -8
  175. package/lib/plugins/reports-and-dashboards/index.d.ts +0 -11
  176. package/lib/plugins/salesforce-to-salesforce/index.d.ts +0 -9
  177. package/lib/plugins/security/certificate-and-key-management/index.d.ts +0 -23
  178. package/lib/plugins/security/identity-provider/index.d.ts +0 -10
  179. package/lib/plugins/security/index.d.ts +0 -17
  180. package/lib/plugins/security/login-access-policies/index.d.ts +0 -8
  181. package/lib/plugins/security/sharing/index.d.ts +0 -8
  182. package/lib/plugins/utils.d.ts +0 -4
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  [![Actions Status](https://github.com/amtrack/sfdx-browserforce-plugin/workflows/Test%20and%20Release/badge.svg)](https://github.com/amtrack/sfdx-browserforce-plugin/actions)
6
6
 
7
7
  Unlike the [Scratch Org Definition Configuration](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_scratch_orgs_def_file.htm) which can only be used **on the creation of a scratch org** (`sfdx force:org:create -f config/scratch-def.json`),
8
- the _Browserforce Configuration_ allows to "shape" **any org**, (e.g. scratch org, sandbox or production org) with **similar preferences and unofficial preferences** that are not (yet) available in the _Scratch Org Definition Configuration_ or as _Metadata_ (`sfdx browserforce:apply -f config/setup-admin-login-as-any.json -u myOrg@example.com`).
8
+ the _Browserforce Configuration_ allows to "shape" **any org**, (e.g. scratch org, sandbox or production org) with **similar preferences and unofficial preferences** that are not (yet) available in the _Scratch Org Definition Configuration_ or as _Metadata_ (`sf browserforce apply -f config/setup-admin-login-as-any.json -u myOrg@example.com`).
9
9
 
10
10
  Further benefits:
11
11
 
@@ -19,8 +19,8 @@ Further benefits:
19
19
  There are several different methods to install `sfdx-browserforce-plugin`:
20
20
 
21
21
  ```console
22
- # as an sfdx plugin globally
23
- sfdx plugins:install sfdx-browserforce-plugin
22
+ # as an sf plugin globally
23
+ sf plugins install sfdx-browserforce-plugin
24
24
 
25
25
  # or standalone globally
26
26
  npm install --global sfdx-browserforce-plugin
@@ -34,8 +34,8 @@ npm install --save-dev sfdx-browserforce-plugin
34
34
  Depending on your choice of installation, you can find the `browserforce` namespace:
35
35
 
36
36
  ```console
37
- # globally in the sfdx cli
38
- sfdx browserforce
37
+ # globally in the sf cli
38
+ sf browserforce
39
39
 
40
40
  # globally in the sfdx-browserforce-plugin executable
41
41
  sfdx-browserforce-plugin browserforce
@@ -49,14 +49,14 @@ $ sfdx-browserforce browserforce -h
49
49
  browser automation
50
50
 
51
51
  USAGE
52
- $ sfdx-browserforce-plugin browserforce:COMMAND
52
+ $ sfdx-browserforce-plugin browserforce COMMAND
53
53
 
54
54
  COMMANDS
55
- browserforce:apply apply a plan from a definition file
56
- browserforce:plan retrieve state and generate plan file
55
+ browserforce apply apply a plan from a definition file
56
+ browserforce plan retrieve state and generate plan file
57
57
  ```
58
58
 
59
- Both the `browserforce:apply` and `browserforce:plan` commands expect a config file and a target username or alias for the org.
59
+ Both the `browserforce apply` and `browserforce plan` commands expect a config file and a target username or alias for the org.
60
60
 
61
61
  # Example
62
62
 
@@ -80,7 +80,7 @@ Tip: If you use _Visual Studio Code_, you can leverage tab completion to build t
80
80
  Next apply the config:
81
81
 
82
82
  ```console
83
- $ sfdx browserforce:apply -f ./config/setup-admin-login-as-any.json --targetusername myOrg@example.com
83
+ $ sf browserforce apply -f ./config/setup-admin-login-as-any.json --target-org myOrg@example.com
84
84
  logging in... done
85
85
  Applying definition file ./config/setup-admin-login-as-any.json to org myOrg@example.com
86
86
  [Security] retrieving state... done
@@ -24,8 +24,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.BrowserforceCommand = void 0;
27
- const command_1 = require("@salesforce/command");
28
27
  const core_1 = require("@salesforce/core");
28
+ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
29
29
  const fs_1 = require("fs");
30
30
  const path = __importStar(require("path"));
31
31
  const browserforce_1 = require("./browserforce");
@@ -33,51 +33,57 @@ const config_parser_1 = require("./config-parser");
33
33
  const DRIVERS = __importStar(require("./plugins"));
34
34
  core_1.Messages.importMessagesDirectory(__dirname);
35
35
  const messages = core_1.Messages.loadMessages('sfdx-browserforce-plugin', 'browserforce');
36
- class BrowserforceCommand extends command_1.SfdxCommand {
36
+ class BrowserforceCommand extends sf_plugins_core_1.SfCommand {
37
37
  async init() {
38
+ const { flags } = await this.parse(BrowserforceCommand);
38
39
  await super.init();
39
- const definitionFileData = await fs_1.promises.readFile(path.resolve(this.flags.definitionfile), 'utf8');
40
40
  let definition;
41
- try {
42
- definition = JSON.parse(definitionFileData);
43
- }
44
- catch (err) {
45
- throw new Error('Failed parsing definitionfile');
41
+ if (flags.definitionfile) {
42
+ const definitionFileData = await fs_1.promises.readFile(path.resolve(flags.definitionfile), 'utf8');
43
+ try {
44
+ definition = JSON.parse(definitionFileData);
45
+ }
46
+ catch (err) {
47
+ throw new Error('Failed parsing definitionfile');
48
+ }
46
49
  }
47
50
  // TODO: use require.resolve to dynamically load plugins from npm packages
48
51
  this.settings = config_parser_1.ConfigParser.parse(DRIVERS, definition);
49
- this.bf = new browserforce_1.Browserforce(this.org, this.ux);
50
- this.ux.startSpinner('logging in');
52
+ this.bf = new browserforce_1.Browserforce(flags['target-org'], new sf_plugins_core_1.Ux({ jsonEnabled: this.jsonEnabled() }));
53
+ this.spinner.start('logging in');
51
54
  await this.bf.login();
52
- this.ux.stopSpinner();
55
+ this.spinner.stop();
53
56
  }
54
57
  async run() {
55
58
  throw new Error('BrowserforceCommand should not be run directly');
56
59
  }
57
60
  async finally(err) {
58
- this.ux.stopSpinner();
61
+ this.spinner.stop(err?.message);
59
62
  if (this.bf) {
60
- this.ux.startSpinner('logging out');
63
+ this.spinner.start('logging out');
61
64
  await this.bf.logout();
62
- this.ux.stopSpinner();
65
+ this.spinner.stop();
63
66
  }
64
67
  }
65
68
  }
66
69
  exports.BrowserforceCommand = BrowserforceCommand;
67
- BrowserforceCommand.requiresUsername = true;
68
- BrowserforceCommand.flagsConfig = {
69
- definitionfile: command_1.flags.string({
70
+ BrowserforceCommand.flags = {
71
+ 'target-org': sf_plugins_core_1.requiredOrgFlagWithDeprecations,
72
+ definitionfile: sf_plugins_core_1.Flags.string({
70
73
  char: 'f',
74
+ summary: messages.getMessage('definitionFileDescription'),
71
75
  description: messages.getMessage('definitionFileDescription')
72
76
  }),
73
- planfile: command_1.flags.string({
77
+ planfile: sf_plugins_core_1.Flags.string({
74
78
  char: 'p',
75
79
  name: 'plan',
80
+ summary: messages.getMessage('planFileDescription'),
76
81
  description: messages.getMessage('planFileDescription')
77
82
  }),
78
- statefile: command_1.flags.string({
83
+ statefile: sf_plugins_core_1.Flags.string({
79
84
  char: 's',
80
85
  name: 'state',
86
+ summary: messages.getMessage('stateFileDescription'),
81
87
  description: messages.getMessage('stateFileDescription')
82
88
  })
83
89
  };
@@ -1 +1 @@
1
- {"version":3,"file":"browserforce-command.js","sourceRoot":"","sources":["../src/browserforce-command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAyD;AACzD,2CAA4C;AAC5C,2BAA8B;AAC9B,2CAA6B;AAC7B,iDAA8C;AAC9C,mDAA+C;AAC/C,mDAAqC;AAErC,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CACpC,0BAA0B,EAC1B,cAAc,CACf,CAAC;AAEF,MAAa,mBAAoB,SAAQ,qBAAW;IAuB3C,KAAK,CAAC,IAAI;QACf,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,kBAAkB,GAAG,MAAM,aAAQ,CAAC,QAAQ,CAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EACvC,MAAM,CACP,CAAC;QACF,IAAI,UAAU,CAAC;QACf,IAAI;YACF,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;SAC7C;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SAClD;QACD,0EAA0E;QAC1E,IAAI,CAAC,QAAQ,GAAG,4BAAY,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,EAAE,GAAG,IAAI,2BAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,GAAU;QAC7B,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YACpC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;YACvB,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;SACvB;IACH,CAAC;;AAtDH,kDAuDC;AAtDkB,oCAAgB,GAAG,IAAI,CAAC;AAExB,+BAAW,GAAG;IAC7B,cAAc,EAAE,eAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,EAAE,GAAG;QACT,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,2BAA2B,CAAC;KAC9D,CAAC;IACF,QAAQ,EAAE,eAAK,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,GAAG;QACT,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;KACxD,CAAC;IACF,SAAS,EAAE,eAAK,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,GAAG;QACT,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,sBAAsB,CAAC;KACzD,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"browserforce-command.js","sourceRoot":"","sources":["../src/browserforce-command.ts"],"names":[],"mappings":"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"}
@@ -57,10 +57,7 @@ class Browserforce {
57
57
  }
58
58
  async resolveDomains() {
59
59
  // resolve ip addresses of both LEX and classic domains
60
- const salesforceUrls = [
61
- this.getInstanceUrl(),
62
- this.getLightningUrl()
63
- ].filter((u) => u);
60
+ const salesforceUrls = [this.getInstanceUrl(), this.getLightningUrl()].filter((u) => u);
64
61
  for (const salesforceUrl of salesforceUrls) {
65
62
  const resolver = await core_1.MyDomainResolver.create({
66
63
  url: new url_1.URL(salesforceUrl)
@@ -78,7 +75,7 @@ class Browserforce {
78
75
  // there seems to be an issue with Enhanced Domains
79
76
  // await this.resolveDomains();
80
77
  page = await this.browser.newPage();
81
- page.setDefaultNavigationTimeout(parseInt(process.env.BROWSERFORCE_NAVIGATION_TIMEOUT_MS, 10) || 90000);
78
+ page.setDefaultNavigationTimeout(parseInt(process.env.BROWSERFORCE_NAVIGATION_TIMEOUT_MS ?? '90000', 10));
82
79
  await page.setViewport({ width: 1024, height: 768 });
83
80
  const url = `${this.getInstanceUrl()}/${urlPath}`;
84
81
  const parsedUrl = (0, url_1.parse)(urlPath);
@@ -89,24 +86,18 @@ class Browserforce {
89
86
  throw new Error(`${response.status()}: ${response.statusText()}`);
90
87
  }
91
88
  if (response.url().indexOf('/?ec=302') > 0) {
92
- const salesforceUrls = [
93
- this.getInstanceUrl(),
94
- this.getLightningUrl()
95
- ].filter((u) => u);
89
+ const salesforceUrls = [this.getInstanceUrl(), this.getLightningUrl()].filter((u) => u);
96
90
  if (salesforceUrls.some((salesforceUrl) => response.url().startsWith(salesforceUrl))) {
97
91
  // the url looks ok so it is a login error
98
92
  throw new p_retry_1.AbortError('login failed');
99
93
  }
100
- else if (parsedUrl.pathname === 'secur/frontdoor.jsp' &&
101
- parsedUrl.query.includes('retURL=')) {
94
+ else if (parsedUrl.pathname === 'secur/frontdoor.jsp' && parsedUrl.query?.includes('retURL=')) {
102
95
  if (this.logger) {
103
96
  this.logger.warn('trying frontdoor workaround...');
104
97
  }
105
98
  // try opening page directly without frontdoor as login might have already been successful
106
99
  const qsUrl = querystring.parse(parsedUrl.query);
107
- urlPath = Array.isArray(qsUrl.retURL)
108
- ? qsUrl.retURL[0]
109
- : qsUrl.retURL;
100
+ urlPath = Array.isArray(qsUrl.retURL) ? qsUrl.retURL[0] : qsUrl.retURL;
110
101
  throw new Error('frontdoor error');
111
102
  }
112
103
  else {
@@ -139,12 +130,8 @@ class Browserforce {
139
130
  }
140
131
  }
141
132
  },
142
- retries: process.env.BROWSERFORCE_RETRY_MAX_RETRIES
143
- ? parseInt(process.env.BROWSERFORCE_RETRY_MAX_RETRIES, 10)
144
- : 4,
145
- minTimeout: process.env.BROWSERFORCE_RETRY_TIMEOUT_MS
146
- ? parseInt(process.env.BROWSERFORCE_RETRY_TIMEOUT_MS, 10)
147
- : 4000
133
+ retries: parseInt(process.env.BROWSERFORCE_RETRY_MAX_RETRIES ?? '4', 10),
134
+ minTimeout: parseInt(process.env.BROWSERFORCE_RETRY_TIMEOUT_MS ?? '4000', 10)
148
135
  });
149
136
  return result;
150
137
  }
@@ -189,7 +176,7 @@ class Browserforce {
189
176
  return parts[0];
190
177
  }
191
178
  }
192
- return null;
179
+ throw new Error(`Could not determine the instance URL from: ${instanceUrl}`);
193
180
  }
194
181
  getInstanceUrl() {
195
182
  // sometimes the instanceUrl includes a trailing slash
@@ -202,7 +189,7 @@ class Browserforce {
202
189
  if (myDomainOrInstance) {
203
190
  return `https://${myDomainOrInstance}.lightning.force.com`;
204
191
  }
205
- return null;
192
+ throw new Error(`Could not determine the lightning URL from: ${myDomainOrInstance} and ${instanceDomain}`);
206
193
  }
207
194
  }
208
195
  exports.Browserforce = Browserforce;
@@ -235,12 +222,8 @@ async function retry(input) {
235
222
  onFailedAttempt: (error) => {
236
223
  console.warn(`retrying ${error.retriesLeft} more time(s) because of "${error}"`);
237
224
  },
238
- retries: process.env.BROWSERFORCE_RETRY_MAX_RETRIES
239
- ? parseInt(process.env.BROWSERFORCE_RETRY_MAX_RETRIES, 10)
240
- : 6,
241
- minTimeout: process.env.BROWSERFORCE_RETRY_TIMEOUT_MS
242
- ? parseInt(process.env.BROWSERFORCE_RETRY_TIMEOUT_MS, 10)
243
- : 4000
225
+ retries: parseInt(process.env.BROWSERFORCE_RETRY_MAX_RETRIES ?? '6', 10),
226
+ minTimeout: parseInt(process.env.BROWSERFORCE_RETRY_TIMEOUT_MS ?? '4000', 10)
244
227
  });
245
228
  return res;
246
229
  }
@@ -1 +1 @@
1
- {"version":3,"file":"browserforce.js","sourceRoot":"","sources":["../src/browserforce.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browserforce.js","sourceRoot":"","sources":["../src/browserforce.ts"],"names":[],"mappings":"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"}
@@ -7,39 +7,39 @@ core_1.Messages.importMessagesDirectory(__dirname);
7
7
  const messages = core_1.Messages.loadMessages('sfdx-browserforce-plugin', 'browserforce');
8
8
  class BrowserforceApply extends browserforce_command_1.BrowserforceCommand {
9
9
  async run() {
10
- this.ux.log(`Applying definition file ${this.flags.definitionfile} to org ${this.org.getUsername()}`);
10
+ const { flags } = await this.parse(BrowserforceApply);
11
+ this.log(`Applying definition file ${flags.definitionfile} to org ${flags['target-org'].getUsername()}`);
11
12
  for (const setting of this.settings) {
12
13
  const driver = setting.Driver;
13
14
  const instance = new driver(this.bf);
14
- this.ux.startSpinner(`[${driver.name}] retrieving state`);
15
+ this.spinner.start(`[${driver.name}] retrieving state`);
15
16
  let state;
16
17
  try {
17
18
  state = await instance.retrieve(setting.value);
18
19
  }
19
20
  catch (err) {
20
- this.ux.stopSpinner('failed');
21
+ this.spinner.stop('failed');
21
22
  throw err;
22
23
  }
23
- this.ux.stopSpinner();
24
- const action = instance.diff(state, setting.value);
25
- this.ux.stopSpinner();
26
- if (action && Object.keys(action).length) {
27
- this.ux.startSpinner(`[${driver.name}] ${Object.keys(action)
24
+ this.spinner.stop();
25
+ const diff = instance.diff(state, setting.value);
26
+ if (diff !== undefined) {
27
+ this.spinner.start(`[${driver.name}] ${Object.keys(diff)
28
28
  .map((key) => {
29
- return `changing '${key}' to '${JSON.stringify(action[key])}'`;
29
+ return `changing '${key}' to '${JSON.stringify(diff[key])}'`;
30
30
  })
31
31
  .join('\n')}`);
32
32
  try {
33
- await instance.apply(action);
33
+ await instance.apply(diff);
34
34
  }
35
35
  catch (err) {
36
- this.ux.stopSpinner('failed');
36
+ this.spinner.stop('failed');
37
37
  throw err;
38
38
  }
39
- this.ux.stopSpinner();
39
+ this.spinner.stop();
40
40
  }
41
41
  else {
42
- this.ux.log(`[${driver.name}] no action necessary`);
42
+ this.log(`[${driver.name}] no action necessary`);
43
43
  }
44
44
  }
45
45
  return { success: true };
@@ -48,7 +48,7 @@ class BrowserforceApply extends browserforce_command_1.BrowserforceCommand {
48
48
  exports.BrowserforceApply = BrowserforceApply;
49
49
  BrowserforceApply.description = messages.getMessage('applyCommandDescription');
50
50
  BrowserforceApply.examples = [
51
- `$ sfdx <%= command.id %> -f ./config/setup-admin-login-as-any.json --targetusername myOrg@example.com
51
+ `$ <%= config.bin %> <%= command.id %> -f ./config/setup-admin-login-as-any.json --target-org myOrg@example.com
52
52
  logging in... done
53
53
  Applying definition file ./config/setup-admin-login-as-any.json to org myOrg@example.com
54
54
  [Security] retrieving state... done
@@ -1 +1 @@
1
- {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/commands/browserforce/apply.ts"],"names":[],"mappings":";;;AAAA,2CAA4C;AAC5C,qEAAiE;AAEjE,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CACpC,0BAA0B,EAC1B,cAAc,CACf,CAAC;AAEF,MAAa,iBAAkB,SAAQ,0CAAmB;IAajD,KAAK,CAAC,GAAG;QACd,IAAI,CAAC,EAAE,CAAC,GAAG,CACT,4BACE,IAAI,CAAC,KAAK,CAAC,cACb,WAAW,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CACpC,CAAC;QACF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,IAAI,oBAAoB,CAAC,CAAC;YAC1D,IAAI,KAAK,CAAC;YACV,IAAI;gBACF,KAAK,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aAChD;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC9B,MAAM,GAAG,CAAC;aACX;YACD,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACnD,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE;gBACxC,IAAI,CAAC,EAAE,CAAC,YAAY,CAClB,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;qBACpC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBACX,OAAO,aAAa,GAAG,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;gBACjE,CAAC,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;gBACF,IAAI;oBACF,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBAC9B;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;oBAC9B,MAAM,GAAG,CAAC;iBACX;gBACD,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;aACvB;iBAAM;gBACL,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,uBAAuB,CAAC,CAAC;aACrD;SACF;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;;AArDH,8CAsDC;AArDe,6BAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;AAE7D,0BAAQ,GAAG;IACvB;;;;;;GAMD;CACA,CAAC"}
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/commands/browserforce/apply.ts"],"names":[],"mappings":";;;AAAA,2CAA4C;AAC5C,qEAAiE;AAEjE,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAC;AAEnF,MAAa,iBAAkB,SAAQ,0CAAmB;IAajD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACtD,IAAI,CAAC,GAAG,CAAC,4BAA4B,KAAK,CAAC,cAAc,WAAW,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACzG,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,oBAAoB,CAAC,CAAC;YACxD,IAAI,KAAK,CAAC;YACV,IAAI;gBACF,KAAK,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aAChD;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,MAAM,GAAG,CAAC;aACX;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;qBAClC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBACX,OAAO,aAAa,GAAG,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;gBAC/D,CAAC,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;gBACF,IAAI;oBACF,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBAC5B;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC5B,MAAM,GAAG,CAAC;iBACX;gBACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;aACrB;iBAAM;gBACL,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,uBAAuB,CAAC,CAAC;aAClD;SACF;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;;AAjDH,8CAkDC;AAjDe,6BAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;AAE7D,0BAAQ,GAAG;IACvB;;;;;;GAMD;CACA,CAAC"}
@@ -32,7 +32,8 @@ core_1.Messages.importMessagesDirectory(__dirname);
32
32
  const messages = core_1.Messages.loadMessages('sfdx-browserforce-plugin', 'browserforce');
33
33
  class BrowserforcePlanCommand extends browserforce_command_1.BrowserforceCommand {
34
34
  async run() {
35
- this.ux.log(`Generating plan with definition file ${this.flags.definitionfile} from org ${this.org.getUsername()}`);
35
+ const { flags } = await this.parse(BrowserforcePlanCommand);
36
+ this.log(`Generating plan with definition file ${flags.definitionfile} from org ${flags['target-org'].getUsername()}`);
36
37
  const state = {
37
38
  settings: {}
38
39
  };
@@ -42,31 +43,31 @@ class BrowserforcePlanCommand extends browserforce_command_1.BrowserforceCommand
42
43
  for (const setting of this.settings) {
43
44
  const driver = setting.Driver;
44
45
  const instance = new driver(this.bf);
45
- this.ux.startSpinner(`[${driver.name}] retrieving state`);
46
+ this.spinner.start(`[${driver.name}] retrieving state`);
46
47
  let driverState;
47
48
  try {
48
49
  driverState = await instance.retrieve(setting.value);
49
50
  state.settings[setting.key] = driverState;
50
51
  }
51
52
  catch (err) {
52
- this.ux.stopSpinner('failed');
53
+ this.spinner.stop('failed');
53
54
  throw err;
54
55
  }
55
- this.ux.stopSpinner();
56
- this.ux.startSpinner(`[${driver.name}] generating plan`);
56
+ this.spinner.stop();
57
+ this.spinner.start(`[${driver.name}] generating plan`);
57
58
  const driverPlan = instance.diff(driverState, setting.value);
58
59
  plan.settings[setting.key] = driverPlan;
59
- this.ux.stopSpinner();
60
+ this.spinner.stop();
60
61
  }
61
- if (this.flags.statefile) {
62
- this.ux.startSpinner('writing state file');
63
- await (0, promises_1.writeFile)(path.resolve(this.flags.statefile), JSON.stringify(state, null, 2));
64
- this.ux.stopSpinner();
62
+ if (flags.statefile) {
63
+ this.spinner.start('writing state file');
64
+ await (0, promises_1.writeFile)(path.resolve(flags.statefile), JSON.stringify(state, null, 2));
65
+ this.spinner.stop();
65
66
  }
66
- if (this.flags.planfile) {
67
- this.ux.startSpinner('writing plan file');
68
- await (0, promises_1.writeFile)(path.resolve(this.flags.planfile), JSON.stringify(plan, null, 2));
69
- this.ux.stopSpinner();
67
+ if (flags.planfile) {
68
+ this.spinner.start('writing plan file');
69
+ await (0, promises_1.writeFile)(path.resolve(flags.planfile), JSON.stringify(plan, null, 2));
70
+ this.spinner.stop();
70
71
  }
71
72
  return { success: true, plan };
72
73
  }
@@ -74,7 +75,7 @@ class BrowserforcePlanCommand extends browserforce_command_1.BrowserforceCommand
74
75
  exports.BrowserforcePlanCommand = BrowserforcePlanCommand;
75
76
  BrowserforcePlanCommand.description = messages.getMessage('planCommandDescription');
76
77
  BrowserforcePlanCommand.examples = [
77
- `$ sfdx <%= command.id %> -f ./config/setup-admin-login-as-any.json --targetusername myOrg@example.com
78
+ `$ <%= config.bin %> <%= command.id %> -f ./config/setup-admin-login-as-any.json --target-org myOrg@example.com
78
79
  logging in... done
79
80
  Generating plan with definition file ./config/setup-admin-login-as-any.json from org myOrg@example.com
80
81
  [Security] retrieving state... done
@@ -1 +1 @@
1
- {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../src/commands/browserforce/plan.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAwC;AACxC,2CAA4C;AAC5C,2CAA6B;AAC7B,qEAAiE;AAEjE,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CACpC,0BAA0B,EAC1B,cAAc,CACf,CAAC;AAEF,MAAa,uBAAwB,SAAQ,0CAAmB;IAavD,KAAK,CAAC,GAAG;QACd,IAAI,CAAC,EAAE,CAAC,GAAG,CACT,wCACE,IAAI,CAAC,KAAK,CAAC,cACb,aAAa,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CACtC,CAAC;QACF,MAAM,KAAK,GAAG;YACZ,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,MAAM,IAAI,GAAG;YACX,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,IAAI,oBAAoB,CAAC,CAAC;YAC1D,IAAI,WAAW,CAAC;YAChB,IAAI;gBACF,WAAW,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACrD,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;aAC3C;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC9B,MAAM,GAAG,CAAC;aACX;YACD,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,IAAI,mBAAmB,CAAC,CAAC;YACzD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC7D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;YACxC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;SACvB;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;YACxB,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;YAC3C,MAAM,IAAA,oBAAS,EACb,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAClC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAC/B,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;SACvB;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACvB,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;YAC1C,MAAM,IAAA,oBAAS,EACb,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EACjC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAC9B,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;SACvB;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;;AA5DH,0DA6DC;AA5De,mCAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;AAE5D,gCAAQ,GAAG;IACvB;;;;;;GAMD;CACA,CAAC"}
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../src/commands/browserforce/plan.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAwC;AACxC,2CAA4C;AAC5C,2CAA6B;AAC7B,qEAAiE;AAEjE,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAC;AAEnF,MAAa,uBAAwB,SAAQ,0CAAmB;IAavD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG,CACN,wCAAwC,KAAK,CAAC,cAAc,aAAa,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,EAAE,CAC7G,CAAC;QACF,MAAM,KAAK,GAAG;YACZ,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,MAAM,IAAI,GAAG;YACX,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,oBAAoB,CAAC,CAAC;YACxD,IAAI,WAAW,CAAC;YAChB,IAAI;gBACF,WAAW,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACrD,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;aAC3C;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,MAAM,GAAG,CAAC;aACX;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,mBAAmB,CAAC,CAAC;YACvD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC7D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SACrB;QACD,IAAI,KAAK,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACzC,MAAM,IAAA,oBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SACrB;QACD,IAAI,KAAK,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACxC,MAAM,IAAA,oBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7E,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SACrB;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;;AArDH,0DAsDC;AArDe,mCAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;AAE5D,gCAAQ,GAAG;IACvB;;;;;;GAMD;CACA,CAAC"}
@@ -4,7 +4,7 @@ exports.ConfigParser = void 0;
4
4
  class ConfigParser {
5
5
  static parse(drivers, data) {
6
6
  const settings = [];
7
- if (data && data.settings) {
7
+ if (data?.settings) {
8
8
  for (const driverName of Object.keys(data.settings)) {
9
9
  if (drivers[driverName]) {
10
10
  settings.push({
@@ -1 +1 @@
1
- {"version":3,"file":"config-parser.js","sourceRoot":"","sources":["../src/config-parser.ts"],"names":[],"mappings":";;;AAgBA,MAAa,YAAY;IAChB,MAAM,CAAC,KAAK,CAAC,OAAgB,EAAE,IAAU;QAC9C,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;YACzB,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBACnD,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;oBACvB,QAAQ,CAAC,IAAI,CAAC;wBACZ,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC;wBAC3B,GAAG,EAAE,UAAU;wBACf,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;qBACjC,CAAC,CAAC;iBACJ;qBAAM;oBACL,MAAM,IAAI,KAAK,CACb,gCAAgC,UAAU,oBAAoB,IAAI,CAAC,SAAS,CAC1E,IAAI,CACL,EAAE,CACJ,CAAC;iBACH;aACF;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CACb,+CAA+C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CACtE,CAAC;SACH;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AA1BD,oCA0BC"}
1
+ {"version":3,"file":"config-parser.js","sourceRoot":"","sources":["../src/config-parser.ts"],"names":[],"mappings":";;;AAgBA,MAAa,YAAY;IAChB,MAAM,CAAC,KAAK,CAAC,OAAgB,EAAE,IAAU;QAC9C,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,EAAE,QAAQ,EAAE;YAClB,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBACnD,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;oBACvB,QAAQ,CAAC,IAAI,CAAC;wBACZ,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC;wBAC3B,GAAG,EAAE,UAAU;wBACf,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;qBACjC,CAAC,CAAC;iBACJ;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,oBAAoB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACvG;aACF;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,+CAA+C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACxF;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AApBD,oCAoBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"jsforce-utils.js","sourceRoot":"","sources":["../src/jsforce-utils.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,WAAW,CACzB,IAAO;IAEP,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;QACvC,OAAO,EAAE,CAAC;KACX;IACD,OAAO,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAVD,kCAUC"}
1
+ {"version":3,"file":"jsforce-utils.js","sourceRoot":"","sources":["../src/jsforce-utils.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,WAAW,CAAI,IAAa;IAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;QACvC,OAAO,EAAE,CAAC;KACX;IACD,OAAO,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AARD,kCAQC"}
package/lib/plugin.js CHANGED
@@ -1,44 +1,25 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
3
  exports.BrowserforcePlugin = void 0;
27
- const jsonMergePatch = __importStar(require("json-merge-patch"));
28
4
  const utils_1 = require("./plugins/utils");
29
5
  class BrowserforcePlugin {
30
6
  constructor(browserforce) {
31
7
  this.browserforce = browserforce;
32
8
  this.org = browserforce?.org;
33
9
  }
10
+ /**
11
+ * deep diff
12
+ * @param state
13
+ * @param definition
14
+ * @returns undefined when there is no diff
15
+ */
34
16
  diff(state, definition) {
35
- return jsonMergePatch.generate(state, definition);
17
+ return (0, utils_1.deepDiff)(state, definition);
36
18
  }
37
- async run(plan) {
38
- const state = await this.retrieve(plan);
39
- const diff = this.diff(state, plan);
40
- const needsAction = !(0, utils_1.isEmpty)(diff);
41
- if (needsAction) {
19
+ async run(definition) {
20
+ const state = await this.retrieve(definition);
21
+ const diff = this.diff(state, definition);
22
+ if (diff !== undefined) {
42
23
  const result = await this.apply(diff);
43
24
  return result;
44
25
  }
package/lib/plugin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iEAAmD;AAEnD,2CAA0C;AAE1C,MAAsB,kBAAkB;IAItC,YAAmB,YAA0B;QAC3C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,GAAG,YAAY,EAAE,GAAG,CAAC;IAC/B,CAAC;IAEM,IAAI,CAAC,KAAc,EAAE,UAAmB;QAC7C,OAAO,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,IAAa;QAC5B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,WAAW,GAAG,CAAC,IAAA,eAAO,EAAC,IAAI,CAAC,CAAC;QACnC,IAAI,WAAW,EAAE;YACf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC;SACf;QACD,OAAO;YACL,OAAO,EAAE,qBAAqB;SAC/B,CAAC;IACJ,CAAC;CACF;AAzBD,gDAyBC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":";;;AAEA,2CAA2C;AAE3C,MAAsB,kBAAkB;IAItC,YAAmB,YAA0B;QAC3C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,GAAG,YAAY,EAAE,GAAG,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACI,IAAI,CAAC,KAAc,EAAE,UAAmB;QAC7C,OAAO,IAAA,gBAAQ,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,UAAmB;QAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC;SACf;QACD,OAAO;YACL,OAAO,EAAE,qBAAqB;SAC/B,CAAC;IACJ,CAAC;CACF;AA9BD,gDA8BC"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const assert_1 = __importDefault(require("assert"));
7
+ const _1 = require(".");
8
+ describe(_1.ActivitySettings.name, function () {
9
+ let plugin;
10
+ before(() => {
11
+ plugin = new _1.ActivitySettings(global.bf);
12
+ });
13
+ describe('allowUsersToRelateMultipleContactsToTasksAndEvents', () => {
14
+ const configEnabled = {
15
+ allowUsersToRelateMultipleContactsToTasksAndEvents: true
16
+ };
17
+ const configDisabled = {
18
+ allowUsersToRelateMultipleContactsToTasksAndEvents: false
19
+ };
20
+ it('should enable', async () => {
21
+ await plugin.run(configEnabled);
22
+ });
23
+ it('should be enabled', async () => {
24
+ const res = await plugin.retrieve();
25
+ assert_1.default.deepStrictEqual(res, configEnabled);
26
+ });
27
+ it('should fail to disable', async () => {
28
+ let err;
29
+ try {
30
+ await plugin.apply(configDisabled);
31
+ }
32
+ catch (e) {
33
+ err = e;
34
+ }
35
+ assert_1.default.throws(() => {
36
+ throw err;
37
+ }, /can only be disabled/);
38
+ });
39
+ });
40
+ });
41
+ //# sourceMappingURL=index.e2e-spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.e2e-spec.js","sourceRoot":"","sources":["../../../src/plugins/activity-settings/index.e2e-spec.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAC5B,wBAAqC;AAErC,QAAQ,CAAC,mBAAgB,CAAC,IAAI,EAAE;IAC9B,IAAI,MAAM,CAAC;IACX,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,GAAG,IAAI,mBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAClE,MAAM,aAAa,GAAG;YACpB,kDAAkD,EAAE,IAAI;SACzD,CAAC;QACF,MAAM,cAAc,GAAG;YACrB,kDAAkD,EAAE,KAAK;SAC1D,CAAC;QAEF,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YAC7B,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;YACjC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpC,gBAAM,CAAC,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;YACtC,IAAI,GAAG,CAAC;YACR,IAAI;gBACF,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;aACpC;YAAC,OAAO,CAAC,EAAE;gBACV,GAAG,GAAG,CAAC,CAAC;aACT;YACD,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE;gBACjB,MAAM,GAAG,CAAC;YACZ,CAAC,EAAE,sBAAsB,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -28,10 +28,7 @@ class ActivitySettings extends plugin_1.BrowserforcePlugin {
28
28
  await page.$eval(SELECTORS.MANY_WHO_PREF_INPUT, (e, v) => {
29
29
  e.checked = v;
30
30
  }, config.allowUsersToRelateMultipleContactsToTasksAndEvents);
31
- await Promise.all([
32
- page.waitForNavigation(),
33
- page.click(SELECTORS.SUBMIT_BUTTON)
34
- ]);
31
+ await Promise.all([page.waitForNavigation(), page.click(SELECTORS.SUBMIT_BUTTON)]);
35
32
  await page.close();
36
33
  }
37
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/activity-settings/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,iCAAiC;CACxC,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,mBAAmB,EAAE,kDAAkD;IACvE,aAAa,EAAE,qDAAqD;CACrE,CAAC;AAMF,MAAa,gBAAiB,SAAQ,2BAAkB;IAC/C,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG;YACf,kDAAkD,EAAE,MAAM,IAAI,CAAC,KAAK,CAClE,SAAS,CAAC,mBAAmB,EAC7B,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CACrC;SACF,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,kDAAkD,KAAK,KAAK,EAAE;YACvE,MAAM,IAAI,KAAK,CACb,wHAAwH,CACzH,CAAC;SACH;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,KAAK,CACd,SAAS,CAAC,mBAAmB,EAC7B,CAAC,CAAmB,EAAE,CAAU,EAAE,EAAE;YAClC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;QAChB,CAAC,EACD,MAAM,CAAC,kDAAkD,CAC1D,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC;SACpC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AAnCD,4CAmCC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/activity-settings/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAElD,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,iCAAiC;CACxC,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,mBAAmB,EAAE,kDAAkD;IACvE,aAAa,EAAE,qDAAqD;CACrE,CAAC;AAMF,MAAa,gBAAiB,SAAQ,2BAAkB;IAC/C,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG;YACf,kDAAkD,EAAE,MAAM,IAAI,CAAC,KAAK,CAClE,SAAS,CAAC,mBAAmB,EAC7B,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CACrC;SACF,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,kDAAkD,KAAK,KAAK,EAAE;YACvE,MAAM,IAAI,KAAK,CACb,wHAAwH,CACzH,CAAC;SACH;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,KAAK,CACd,SAAS,CAAC,mBAAmB,EAC7B,CAAC,CAAmB,EAAE,CAAU,EAAE,EAAE;YAClC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;QAChB,CAAC,EACD,MAAM,CAAC,kDAAkD,CAC1D,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AAhCD,4CAgCC"}