shopify 3.93.1 → 3.94.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 (94) hide show
  1. package/dist/assets/dev-console/extensions/dev-console/assets/index-Bm_GpKQW.js +51 -0
  2. package/dist/assets/dev-console/index.html +1 -1
  3. package/dist/chunk-52KHWFYF.js +1 -0
  4. package/dist/chunk-7F3HZJH4.js +3 -0
  5. package/dist/{chunk-TCRHJ3ZH.js → chunk-7JFIBCHH.js} +66 -66
  6. package/dist/{chunk-PB3UDYWH.js → chunk-AQOYGO3U.js} +16 -16
  7. package/dist/{chunk-T57REQVZ.js → chunk-DBDY2YEY.js} +1 -1
  8. package/dist/chunk-DEW5QFGH.js +415 -0
  9. package/dist/chunk-FU2Y2M3M.js +5 -0
  10. package/dist/chunk-JBSYWYIP.js +2 -0
  11. package/dist/chunk-QYR5VPQA.js +4 -0
  12. package/dist/{chunk-SVYSLNQH.js → chunk-R6N4NGU6.js} +178 -182
  13. package/dist/{chunk-P3ASN7B5.js → chunk-SVA22NZQ.js} +209 -211
  14. package/dist/cli/commands/config/autoupgrade/constants.d.ts +5 -0
  15. package/dist/cli/commands/config/autoupgrade/constants.js +6 -0
  16. package/dist/cli/commands/config/autoupgrade/off.d.ts +7 -0
  17. package/dist/cli/commands/config/autoupgrade/off.js +22 -0
  18. package/dist/cli/commands/config/autoupgrade/on.d.ts +7 -0
  19. package/dist/cli/commands/config/autoupgrade/on.js +22 -0
  20. package/dist/cli/commands/config/autoupgrade/status.d.ts +7 -0
  21. package/dist/cli/commands/config/autoupgrade/status.js +30 -0
  22. package/dist/cli/commands/docs/generate.d.ts +1 -1
  23. package/dist/cli/commands/docs/generate.js +6 -3
  24. package/dist/cli/commands/upgrade.js +3 -1
  25. package/dist/cli/services/kitchen-sink/static.js +1 -1
  26. package/dist/configs/all.yml +3 -0
  27. package/dist/configs/recommended.yml +3 -0
  28. package/dist/data/filters.json +30 -0
  29. package/dist/data/objects.json +17 -1
  30. package/dist/data/setting.json +25 -0
  31. package/dist/data/shopify_system_translations.json +29 -6
  32. package/dist/error-handler-JHFQZGYG.js +1 -0
  33. package/dist/hooks/postrun.js +1 -1
  34. package/dist/hooks/prerun.js +1 -1
  35. package/dist/{http-proxy-node16-KBILO6A6.js → http-proxy-node16-TTURN6MD.js} +1 -1
  36. package/dist/index.js +1117 -1121
  37. package/dist/lib-3WHF5XD3.js +1 -0
  38. package/dist/{local-JCUIPKND.js → local-4PW2CHVR.js} +1 -1
  39. package/dist/{morph-6DCXNO2H.js → morph-DQREIZD2.js} +1 -1
  40. package/dist/node-package-manager-NTQEYCSE.js +1 -0
  41. package/dist/path-HUAU3YBW.js +1 -0
  42. package/dist/tsconfig.tsbuildinfo +1 -1
  43. package/dist/{ui-XTVYPIVY.js → ui-7Z2HOOEO.js} +1 -1
  44. package/dist/{workerd-3GJRSBJN.js → workerd-VL54JTEU.js} +1 -1
  45. package/oclif.manifest.json +63 -3
  46. package/package.json +7 -6
  47. package/dist/assets/dev-console/extensions/dev-console/assets/index-BnXVL6nA.js +0 -78
  48. package/dist/chunk-NOSKVZWJ.js +0 -2
  49. package/dist/chunk-QJEBL3WX.js +0 -4
  50. package/dist/chunk-VLDSGLBP.js +0 -1
  51. package/dist/chunk-WOERFYNW.js +0 -415
  52. package/dist/chunk-XV44IQDO.js +0 -5
  53. package/dist/cli/commands/store/auth.d.ts +0 -15
  54. package/dist/cli/commands/store/auth.js +0 -46
  55. package/dist/cli/commands/store/execute.d.ts +0 -21
  56. package/dist/cli/commands/store/execute.js +0 -89
  57. package/dist/cli/services/store/auth/callback.d.ts +0 -8
  58. package/dist/cli/services/store/auth/callback.js +0 -140
  59. package/dist/cli/services/store/auth/config.d.ts +0 -6
  60. package/dist/cli/services/store/auth/config.js +0 -15
  61. package/dist/cli/services/store/auth/existing-scopes.d.ts +0 -5
  62. package/dist/cli/services/store/auth/existing-scopes.js +0 -40
  63. package/dist/cli/services/store/auth/index.d.ts +0 -18
  64. package/dist/cli/services/store/auth/index.js +0 -88
  65. package/dist/cli/services/store/auth/pkce.d.ts +0 -36
  66. package/dist/cli/services/store/auth/pkce.js +0 -49
  67. package/dist/cli/services/store/auth/recovery.d.ts +0 -4
  68. package/dist/cli/services/store/auth/recovery.js +0 -17
  69. package/dist/cli/services/store/auth/result.d.ts +0 -24
  70. package/dist/cli/services/store/auth/result.js +0 -39
  71. package/dist/cli/services/store/auth/scopes.d.ts +0 -4
  72. package/dist/cli/services/store/auth/scopes.js +0 -53
  73. package/dist/cli/services/store/auth/session-lifecycle.d.ts +0 -3
  74. package/dist/cli/services/store/auth/session-lifecycle.js +0 -69
  75. package/dist/cli/services/store/auth/session-store.d.ts +0 -32
  76. package/dist/cli/services/store/auth/session-store.js +0 -127
  77. package/dist/cli/services/store/auth/token-client.d.ts +0 -40
  78. package/dist/cli/services/store/auth/token-client.js +0 -95
  79. package/dist/cli/services/store/execute/admin-context.d.ts +0 -11
  80. package/dist/cli/services/store/execute/admin-context.js +0 -41
  81. package/dist/cli/services/store/execute/admin-transport.d.ts +0 -6
  82. package/dist/cli/services/store/execute/admin-transport.js +0 -42
  83. package/dist/cli/services/store/execute/index.d.ts +0 -13
  84. package/dist/cli/services/store/execute/index.js +0 -22
  85. package/dist/cli/services/store/execute/request.d.ts +0 -21
  86. package/dist/cli/services/store/execute/request.js +0 -88
  87. package/dist/cli/services/store/execute/result.d.ts +0 -3
  88. package/dist/cli/services/store/execute/result.js +0 -29
  89. package/dist/cli/services/store/execute/targets.d.ts +0 -18
  90. package/dist/cli/services/store/execute/targets.js +0 -21
  91. package/dist/error-handler-54XVSWV5.js +0 -1
  92. package/dist/lib-EN3PX6IK.js +0 -1
  93. package/dist/node-package-manager-P7JQBCHZ.js +0 -1
  94. package/dist/path-IT7KPARG.js +0 -1
@@ -0,0 +1,5 @@
1
+ export declare const autoUpgradeStatus: {
2
+ readonly on: "Auto-upgrade on. Shopify CLI will update automatically after each command.";
3
+ readonly off: "Auto-upgrade off. You'll need to run `shopify upgrade` to update manually.";
4
+ readonly notConfigured: "Auto-upgrade not configured. Run `shopify config autoupgrade on` to enable it.";
5
+ };
@@ -0,0 +1,6 @@
1
+ export const autoUpgradeStatus = {
2
+ on: 'Auto-upgrade on. Shopify CLI will update automatically after each command.',
3
+ off: "Auto-upgrade off. You'll need to run `shopify upgrade` to update manually.",
4
+ notConfigured: 'Auto-upgrade not configured. Run `shopify config autoupgrade on` to enable it.',
5
+ };
6
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1,7 @@
1
+ import Command from '@shopify/cli-kit/node/base-command';
2
+ export default class AutoupgradeOff extends Command {
3
+ static summary: string;
4
+ static descriptionWithMarkdown: string;
5
+ static description: string | undefined;
6
+ run(): Promise<void>;
7
+ }
@@ -0,0 +1,22 @@
1
+ var _a;
2
+ import { autoUpgradeStatus } from './constants.js';
3
+ import { setAutoUpgradeEnabled } from '@shopify/cli-kit/node/upgrade';
4
+ import Command from '@shopify/cli-kit/node/base-command';
5
+ import { renderInfo } from '@shopify/cli-kit/node/ui';
6
+ class AutoupgradeOff extends Command {
7
+ async run() {
8
+ setAutoUpgradeEnabled(false);
9
+ renderInfo({ body: autoUpgradeStatus.off });
10
+ }
11
+ }
12
+ _a = AutoupgradeOff;
13
+ AutoupgradeOff.summary = 'Disable automatic upgrades for Shopify CLI.';
14
+ AutoupgradeOff.descriptionWithMarkdown = `Disable automatic upgrades for Shopify CLI.
15
+
16
+ When auto-upgrade is disabled, Shopify CLI won't automatically update. Run \`shopify upgrade\` to update manually.
17
+
18
+ To enable auto-upgrade, run \`shopify config autoupgrade on\`.
19
+ `;
20
+ AutoupgradeOff.description = _a.descriptionWithoutMarkdown();
21
+ export default AutoupgradeOff;
22
+ //# sourceMappingURL=off.js.map
@@ -0,0 +1,7 @@
1
+ import Command from '@shopify/cli-kit/node/base-command';
2
+ export default class AutoupgradeOn extends Command {
3
+ static summary: string;
4
+ static descriptionWithMarkdown: string;
5
+ static description: string | undefined;
6
+ run(): Promise<void>;
7
+ }
@@ -0,0 +1,22 @@
1
+ var _a;
2
+ import { autoUpgradeStatus } from './constants.js';
3
+ import { setAutoUpgradeEnabled } from '@shopify/cli-kit/node/upgrade';
4
+ import Command from '@shopify/cli-kit/node/base-command';
5
+ import { renderInfo } from '@shopify/cli-kit/node/ui';
6
+ class AutoupgradeOn extends Command {
7
+ async run() {
8
+ setAutoUpgradeEnabled(true);
9
+ renderInfo({ body: autoUpgradeStatus.on });
10
+ }
11
+ }
12
+ _a = AutoupgradeOn;
13
+ AutoupgradeOn.summary = 'Enable automatic upgrades for Shopify CLI.';
14
+ AutoupgradeOn.descriptionWithMarkdown = `Enable automatic upgrades for Shopify CLI.
15
+
16
+ When auto-upgrade is enabled, Shopify CLI automatically updates to the latest version once per day. Major version upgrades are skipped and must be done manually.
17
+
18
+ To disable auto-upgrade, run \`shopify config autoupgrade off\`.
19
+ `;
20
+ AutoupgradeOn.description = _a.descriptionWithoutMarkdown();
21
+ export default AutoupgradeOn;
22
+ //# sourceMappingURL=on.js.map
@@ -0,0 +1,7 @@
1
+ import Command from '@shopify/cli-kit/node/base-command';
2
+ export default class AutoupgradeStatus extends Command {
3
+ static summary: string;
4
+ static descriptionWithMarkdown: string;
5
+ static description: string | undefined;
6
+ run(): Promise<void>;
7
+ }
@@ -0,0 +1,30 @@
1
+ var _a;
2
+ import { autoUpgradeStatus } from './constants.js';
3
+ import { getAutoUpgradeEnabled } from '@shopify/cli-kit/node/upgrade';
4
+ import Command from '@shopify/cli-kit/node/base-command';
5
+ import { renderInfo } from '@shopify/cli-kit/node/ui';
6
+ class AutoupgradeStatus extends Command {
7
+ async run() {
8
+ const enabled = getAutoUpgradeEnabled();
9
+ if (enabled === undefined) {
10
+ renderInfo({ body: autoUpgradeStatus.notConfigured });
11
+ }
12
+ else if (enabled) {
13
+ renderInfo({ body: autoUpgradeStatus.on });
14
+ }
15
+ else {
16
+ renderInfo({ body: autoUpgradeStatus.off });
17
+ }
18
+ }
19
+ }
20
+ _a = AutoupgradeStatus;
21
+ AutoupgradeStatus.summary = 'Check whether auto-upgrade is enabled, disabled, or not yet configured.';
22
+ AutoupgradeStatus.descriptionWithMarkdown = `Check whether auto-upgrade is enabled, disabled, or not yet configured.
23
+
24
+ When auto-upgrade is enabled, Shopify CLI automatically updates to the latest version after each command.
25
+
26
+ Run \`shopify config autoupgrade on\` or \`shopify config autoupgrade off\` to configure it.
27
+ `;
28
+ AutoupgradeStatus.description = _a.descriptionWithoutMarkdown();
29
+ export default AutoupgradeStatus;
30
+ //# sourceMappingURL=status.js.map
@@ -25,5 +25,5 @@ export declare function extractCommandData(command: CommandWithMarkdown): {
25
25
  hasFlags: boolean;
26
26
  };
27
27
  export declare function writeCommandDocumentation(command: CommandWithMarkdown, { commandName, fileName, interfaceName, hasTopic, topic, hasFlags }: CommandData): Promise<void>;
28
- export declare function writeCommandFlagInterface(command: oclifCommand.Loadable, { fileName, interfaceName }: CommandData): Promise<void>;
28
+ export declare function writeCommandFlagInterface(command: oclifCommand.Loadable, { commandName, fileName, interfaceName }: CommandData): Promise<void>;
29
29
  export declare function writeCommandUsageExampleFile(command: CommandWithMarkdown, { fileName, commandName }: CommandData): Promise<void>;
@@ -63,7 +63,6 @@ export async function writeCommandDocumentation(command, { commandName, fileName
63
63
  const cleanDescription = description?.replace(/`/g, '\\`').replace(/https:\/\/shopify\.dev/g, '');
64
64
  const previewDescription = command.summary ?? description ?? '';
65
65
  const cleanPreview = previewDescription.replace(/`/g, '\\`').replace(/https:\/\/shopify\.dev/g, '');
66
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
67
66
  const category = hasTopic && !generalTopics.includes(topic) ? topic : 'general commands';
68
67
  const docString = `// This is an autogenerated file. Don't edit this file manually.
69
68
  import {ReferenceEntityTemplateSchema} from '@shopify/generate-docs'
@@ -99,7 +98,7 @@ export default data`;
99
98
  outputInfo(`Generated docs for ${commandName}`);
100
99
  }
101
100
  // Generates an interface for the flags of a command and writes it to a file
102
- export async function writeCommandFlagInterface(command, { fileName, interfaceName }) {
101
+ export async function writeCommandFlagInterface(command, { commandName, fileName, interfaceName }) {
103
102
  const flagsDetails = Object.keys(command.flags)
104
103
  .map((flagName) => {
105
104
  const flag = command.flags[flagName];
@@ -107,7 +106,7 @@ export async function writeCommandFlagInterface(command, { fileName, interfaceNa
107
106
  return;
108
107
  if (flag.hidden)
109
108
  return;
110
- const flagDescription = flag.description || '';
109
+ const flagDescription = flag.description ?? '';
111
110
  const char = flag.char ? `-${flag.char}, ` : '';
112
111
  const type = flag.type === 'option' ? 'string' : "''";
113
112
  const value = flag.type === 'option' ? ' <value>' : '';
@@ -125,6 +124,10 @@ export async function writeCommandFlagInterface(command, { fileName, interfaceNa
125
124
  .filter((str) => str && str?.length > 0)
126
125
  .join('\n\n');
127
126
  const commandContent = `// This is an autogenerated file. Don't edit this file manually.
127
+ /**
128
+ * The following flags are available for the \`${commandName}\` command:
129
+ * @publicDocs
130
+ */
128
131
  export interface ${interfaceName} {
129
132
  ${flagsDetails}
130
133
  }
@@ -1,9 +1,11 @@
1
1
  var _a;
2
2
  import Command from '@shopify/cli-kit/node/base-command';
3
3
  import { promptAutoUpgrade, runCLIUpgrade } from '@shopify/cli-kit/node/upgrade';
4
+ import { addPublicMetadata } from '@shopify/cli-kit/node/metadata';
4
5
  class Upgrade extends Command {
5
6
  async run() {
6
- await promptAutoUpgrade();
7
+ const accepted = await promptAutoUpgrade();
8
+ await addPublicMetadata(() => ({ env_auto_upgrade_accepted: accepted }));
7
9
  await runCLIUpgrade();
8
10
  }
9
11
  }
@@ -25,7 +25,7 @@ export async function staticService() {
25
25
  ],
26
26
  });
27
27
  renderInfo({
28
- headline: 'About your app',
28
+ headline: 'About your app.',
29
29
  customSections: [
30
30
  {
31
31
  body: {
@@ -196,6 +196,9 @@ ValidSchemaName:
196
196
  ValidSchemaTranslations:
197
197
  enabled: true
198
198
  severity: 0
199
+ ValidScopedCSSClass:
200
+ enabled: true
201
+ severity: 1
199
202
  ValidSettingsKey:
200
203
  enabled: true
201
204
  severity: 0
@@ -174,6 +174,9 @@ ValidSchemaName:
174
174
  ValidSchemaTranslations:
175
175
  enabled: true
176
176
  severity: 0
177
+ ValidScopedCSSClass:
178
+ enabled: true
179
+ severity: 1
177
180
  ValidSettingsKey:
178
181
  enabled: true
179
182
  severity: 0
@@ -4338,6 +4338,36 @@
4338
4338
  "syntax": "number | money",
4339
4339
  "name": "money"
4340
4340
  },
4341
+ {
4342
+ "category": "money",
4343
+ "deprecated": false,
4344
+ "deprecation_reason": "",
4345
+ "description": "",
4346
+ "parameters": [],
4347
+ "return_type": [
4348
+ {
4349
+ "type": "string",
4350
+ "name": "",
4351
+ "description": "",
4352
+ "array_value": ""
4353
+ }
4354
+ ],
4355
+ "examples": [
4356
+ {
4357
+ "name": "",
4358
+ "description": "",
4359
+ "syntax": "",
4360
+ "path": "/products/health-potion",
4361
+ "raw_liquid": "{{ product.price | money_amount }}",
4362
+ "parameter": false,
4363
+ "display_type": "text",
4364
+ "show_data_tab": true
4365
+ }
4366
+ ],
4367
+ "summary": "Formats a given price as a plain decimal string, without currency symbols, thousand separators, or locale formatting.",
4368
+ "syntax": "number | money_amount",
4369
+ "name": "money_amount"
4370
+ },
4341
4371
  {
4342
4372
  "category": "money",
4343
4373
  "deprecated": false,
@@ -13371,7 +13371,7 @@
13371
13371
  {
13372
13372
  "deprecated": false,
13373
13373
  "deprecation_reason": "",
13374
- "description": "&gt; Note:\n&gt; In a cart context, the title of a remote product is appended with \"Sold by {store name}\".",
13374
+ "description": "&gt; Note:\n&gt; In a cart or search suggestions context, the title of a remote product is appended with \"Sold by {store name}\".",
13375
13375
  "examples": [],
13376
13376
  "return_type": [
13377
13377
  {
@@ -16812,6 +16812,22 @@
16812
16812
  "summary": "All of the product types in the store.",
16813
16813
  "name": "types"
16814
16814
  },
16815
+ {
16816
+ "deprecated": false,
16817
+ "deprecation_reason": "",
16818
+ "description": "Search types are `[\"article\", \"page\", \"product\"]` by default, and can be configured in the Search &amp; Discovery app.\nThese search types are used when a search query is performed without a `?type=` parameter.\n\n&gt; Tip:\n&gt; A search with a `?type=` parameter value not in the `shop.search_types` list will still return results for the specified type, if they exist.",
16819
+ "examples": [],
16820
+ "return_type": [
16821
+ {
16822
+ "type": "array",
16823
+ "name": "",
16824
+ "description": "",
16825
+ "array_value": "string"
16826
+ }
16827
+ ],
16828
+ "summary": "The resource types searched for by default when no `type` parameter is specified.",
16829
+ "name": "search_types"
16830
+ },
16815
16831
  {
16816
16832
  "deprecated": false,
16817
16833
  "deprecation_reason": "",
@@ -14,6 +14,7 @@
14
14
  "collection_list",
15
15
  "color",
16
16
  "color_background",
17
+ "color_palette",
17
18
  "color_scheme",
18
19
  "color_scheme_group",
19
20
  "font_picker",
@@ -86,6 +87,10 @@
86
87
  "if": { "required": ["type"], "properties": { "type": { "const": "color_background" } } },
87
88
  "then": { "$ref": "#/definitions/color_background" }
88
89
  },
90
+ {
91
+ "if": { "required": ["type"], "properties": { "type": { "const": "color_palette" } } },
92
+ "then": { "$ref": "#/definitions/color_palette" }
93
+ },
89
94
  {
90
95
  "if": { "required": ["type"], "properties": { "type": { "const": "color_scheme" } } },
91
96
  "then": { "$ref": "#/definitions/color_scheme" }
@@ -339,6 +344,26 @@
339
344
  "additionalProperties": false
340
345
  },
341
346
 
347
+ "color_palette": {
348
+ "allOf": [
349
+ { "$ref": "#/definitions/inputSettingsStandardAttributes" },
350
+ { "$ref": "#/definitions/conditionalSetting" }
351
+ ],
352
+ "properties": {
353
+ "type": {
354
+ "const": "color_palette",
355
+ "description": "A setting of type color_palette outputs a picker with all of the available theme palette colors.",
356
+ "markdownDescription": "A setting of type `color_palette` outputs a picker with all of the available theme palette colors.\n\n---\n\n[Shopify reference](https://shopify.dev/docs/themes/architecture/settings/input-settings#color_palette)"
357
+ },
358
+ "default": { "type": "object", "additionalProperties": { "type": "string" } },
359
+ "label": true,
360
+ "info": true,
361
+ "id": true,
362
+ "visible_if": true
363
+ },
364
+ "additionalProperties": false
365
+ },
366
+
342
367
  "color_scheme": {
343
368
  "allOf": [
344
369
  { "$ref": "#/definitions/inputSettingsStandardAttributes" },
@@ -9,6 +9,7 @@
9
9
  "shopify.checkout.general.continue_button_label": "Continue",
10
10
  "shopify.checkout.general.complete_purchase_button_label": "Complete order",
11
11
  "shopify.checkout.general.pay_now_button_label": "Pay now",
12
+ "shopify.checkout.general.finalize_order_accessibility_label": "Finalize order",
12
13
  "shopify.checkout.general.authenticate_purchase_button_label": "Authenticate payment",
13
14
  "shopify.checkout.general.edit_link_label": "Edit",
14
15
  "shopify.checkout.general.all_rights_reserved": "All rights reserved %{shop_name}",
@@ -70,6 +71,7 @@
70
71
  "shopify.checkout.general.errors.merchandise.quantity_increment_not_met": "The quantity of some items doesn't meet the order limits.",
71
72
  "shopify.checkout.general.errors.merchandise.quantity_rules_not_met": "The quantity of some items doesn't meet the order limits.",
72
73
  "shopify.checkout.general.errors.merchandise.bundle_requires_components": "This bundle merchandise has no components.",
74
+ "shopify.checkout.general.errors.merchandise.combined_listing_parent_not_purchasable": "Combined listing parent products cannot be purchased directly.",
73
75
  "shopify.checkout.general.errors.merchandise.title_too_long": "Merchandise title is too long.",
74
76
  "shopify.checkout.general.errors.merchandise.title_empty": "Merchandise title is empty.",
75
77
  "shopify.checkout.general.errors.buyer_identity.business_customer_does_not_match_company": "Company contact does not have access to company.",
@@ -535,6 +537,12 @@
535
537
  "shopify.checkout.order_summary.shipping_pending_message": "Not yet available",
536
538
  "shopify.checkout.order_summary.shipping_policy_link": "Shipping costs",
537
539
  "shopify.checkout.order_summary.taxes_label": "Taxes",
540
+ "shopify.checkout.order_summary.tax_line.hst": "HST",
541
+ "shopify.checkout.order_summary.tax_line.gst": "GST",
542
+ "shopify.checkout.order_summary.tax_line.pst": "PST",
543
+ "shopify.checkout.order_summary.tax_line.rst": "RST",
544
+ "shopify.checkout.order_summary.tax_line.qst": "QST",
545
+ "shopify.checkout.order_summary.tax_line.vpt": "VPT",
538
546
  "shopify.checkout.order_summary.estimated_taxes_label": "Estimated taxes",
539
547
  "shopify.checkout.order_summary.estimated_taxes_label_short": "Estimated",
540
548
  "shopify.checkout.order_summary.information_estimated_taxes_label": "Taxes (estimated)",
@@ -639,9 +647,11 @@
639
647
  "shopify.checkout.order_summary.collapse_component_information.other": "Hide %{count} items",
640
648
  "shopify.checkout.order_summary.component_quantity_title": "%{quantity} × %{product_title}",
641
649
  "shopify.checkout.order_summary.discount_discovery.add_code": "Add discount",
650
+ "shopify.checkout.order_summary.discount_discovery.back_to_finalize_order": "Back to finalize order",
642
651
  "shopify.checkout.order_summary.discount_discovery.merchandise_quantity_label.one": "%{count} item",
643
652
  "shopify.checkout.order_summary.discount_discovery.merchandise_quantity_label.other": "%{count} items",
644
653
  "shopify.checkout.order_summary.alternative_payment_currency_total": "Charged as %{amount_due}",
654
+ "shopify.checkout.order_summary.pay_merchant_label": "Pay %{merchant_name}",
645
655
  "shopify.checkout.order_summary.discount_applies_to_subscription_items_only": "This discount only applies to subscription items",
646
656
  "shopify.checkout.shipping.title": "Shipping",
647
657
  "shopify.checkout.shipping.delivery_title": "Delivery",
@@ -927,8 +937,10 @@
927
937
  "shopify.checkout.payment.bank_account_vaulted_company_location": "Bank account saved for this location",
928
938
  "shopify.checkout.payment.expiry_long": "(Expires %{month}\/%{year})",
929
939
  "shopify.checkout.payment.expiry_short": "(Exp %{month}\/%{year})",
930
- "shopify.checkout.payment.crypto_payment_method.description": "Securely connect to your wallet on the Base network",
940
+ "shopify.checkout.payment.crypto_payment_method.description": "Securely connect your wallet. Your balance and address will not be shared.",
931
941
  "shopify.checkout.payment.crypto_payment_method.tooltip": "Your wallet balance and address will not be shared and only the requested amount can be deducted",
942
+ "shopify.checkout.payment.crypto_payment_method.cashback_descriptor.one": "You'll receive your cashback after %{count} day.",
943
+ "shopify.checkout.payment.crypto_payment_method.cashback_descriptor.other": "You'll receive your cashback after %{count} days.",
932
944
  "shopify.checkout.payment.crypto_modal.header": "Pay %{shop_name} %{total_price} USDC",
933
945
  "shopify.checkout.payment.crypto_modal.error.refresh": "Refresh",
934
946
  "shopify.checkout.payment.crypto_modal.error.close": "close",
@@ -997,8 +1009,8 @@
997
1009
  "shopify.checkout.payment.kcp_creditcard_label": "KCP Credit Card",
998
1010
  "shopify.checkout.payment.usdc_label": "USDC",
999
1011
  "shopify.checkout.payment.usdc_cashback_title": "%{incentive_percentage}% cashback",
1000
- "shopify.checkout.payment.usdc_cashback_additional_info": "Get %{incentive_percentage}% back in USDC on Base in 30 days.",
1001
- "shopify.checkout.payment.usdc_cashback_terms": "Terms Apply",
1012
+ "shopify.checkout.payment.usdc_cashback_additional_info": "Pay with USDC on Base and get %{incentive_percentage}% back in your wallet in 30 days, up to 100 USDC.",
1013
+ "shopify.checkout.payment.usdc_cashback_terms": "Terms apply",
1002
1014
  "shopify.checkout.payment.purchase_options_card_update_agreement_label_html": "By updating your payment method, you authorize payments for any recurring or deferred purchase according to this store's <a class=\"link--small\" data-modal=\"true\" data-title-text=\"%{cancellation_policy}\" href=\"%{policy_href}\">cancellation policy<\/a>.",
1003
1015
  "shopify.checkout.payment.subscription_card_update_agreement_label": "Changing the payment method will update your subscription and future recurring payments.",
1004
1016
  "shopify.checkout.payment.subscription_agreement_label": "One or more items in your cart is a deferred or subscription purchase. By continuing with your payment, you agree that your payment method will automatically be charged at the price and frequency listed on this page until it ends or you cancel. All cancellations are subject to the %{cancelled}.",
@@ -1335,6 +1347,7 @@
1335
1347
  "shopify.checkout.payment_errors.shipping_must_match_billing": "Billing address must match shipping address. Use a different payment method.",
1336
1348
  "shopify.checkout.payment_errors.shipping_company_required_error": "{{shopName}} requires a company name for the shipping address.",
1337
1349
  "shopify.checkout.payment_errors.decision_rule_block": "There was an issue processing your payment. Contact the store owner.",
1350
+ "shopify.checkout.payment_errors.cancelled_payment": "Your payment was canceled. Try again or use a different payment method.",
1338
1351
  "shopify.checkout.payment_errors.pick_up_card": "Your card was declined. Try again or use a different payment method.",
1339
1352
  "shopify.checkout.payment_errors.cannot_verify": "Your payment details couldn’t be verified. Check your card details and try again.",
1340
1353
  "shopify.checkout.payment_errors.invalid_number": "Enter a valid card number",
@@ -1346,7 +1359,7 @@
1346
1359
  "shopify.checkout.payment_errors.processing_error": "There was an issue processing your payment. Try again or use a different payment method.",
1347
1360
  "shopify.checkout.payment_errors.processing_error_checkout_as_guest": "There was an issue processing your payment. Try again with a different payment method or {{checkout_as_guest_link}}.",
1348
1361
  "shopify.checkout.payment_errors.selected_payment_method": "There was an issue with your selected payment method and you haven't been charged. Try again or use a different payment method.",
1349
- "shopify.checkout.payment_errors.payment_method_billing_address": "There was an issue with your selected payment method's billing address and you haven't been charged. Check the address and try again or use a different payment method.",
1362
+ "shopify.checkout.payment_errors.payment_method_billing_address": "There was an issue with your selected payment method's billing address. Check the address and try again or use a different payment method.",
1350
1363
  "shopify.checkout.payment_errors.call_issuer": "Your card was declined. Use a different payment method or contact your bank for more information.",
1351
1364
  "shopify.checkout.payment_errors.test_mode_live_card": "This store can’t accept real orders or real payments.",
1352
1365
  "shopify.checkout.payment_errors.test_mode_enabled_only_test_cards": "Test mode is enabled, only test credit cards can be added.",
@@ -1767,8 +1780,8 @@
1767
1780
  "shopify.checkout.review.blocks.review_title_free_order": "Review and complete your order",
1768
1781
  "shopify.checkout.review.blocks.payment_method_saved_company_location": "Save card for this location",
1769
1782
  "shopify.checkout.review.blocks.company_location": "Company location",
1770
- "shopify.checkout.review.blocks.pickup_items_at.one": "Pick up %{count} item at",
1771
- "shopify.checkout.review.blocks.pickup_items_at.other": "Pick up %{count} items at",
1783
+ "shopify.checkout.review.blocks.pickup_items_at.one": "Pickup %{count} item at",
1784
+ "shopify.checkout.review.blocks.pickup_items_at.other": "Pickup %{count} items at",
1772
1785
  "shopify.checkout.review.blocks.ship_items_to.one": "Ship %{count} item to",
1773
1786
  "shopify.checkout.review.blocks.ship_items_to.other": "Ship %{count} items to",
1774
1787
  "shopify.checkout.review.block_title": "Review your information",
@@ -1843,6 +1856,7 @@
1843
1856
  "shopify.checkout.tips.message": "Thank you, we appreciate it.",
1844
1857
  "shopify.checkout.tips.preset_label": "%{tip_percent}%",
1845
1858
  "shopify.checkout.tips.no_tip_label": "None",
1859
+ "shopify.checkout.tips.not_available_with_spi": "Not available with Shop Pay Installments",
1846
1860
  "shopify.checkout.open_graph_meta_tag.title_with_products.zero": "Purchase %{product_name}",
1847
1861
  "shopify.checkout.open_graph_meta_tag.title_with_products.one": "Purchase %{product_name} and %{count} other item",
1848
1862
  "shopify.checkout.open_graph_meta_tag.title_with_products.other": "Purchase %{product_name} and %{count} other items",
@@ -1970,6 +1984,14 @@
1970
1984
  "shopify.checkout.notice_banner.contact_information.title": "Contact information is invalid",
1971
1985
  "shopify.checkout.notice_banner.contact_information.header": "To update your information, {{emailLink}}.",
1972
1986
  "shopify.checkout.notice_banner.contact_information.email_link": "contact us",
1987
+ "shopify.checkout.notice_banner.validation_errors_banner.heading.one": "There is {{count}} error:",
1988
+ "shopify.checkout.notice_banner.validation_errors_banner.heading.other": "There are {{count}} errors:",
1989
+ "shopify.checkout.notice_banner.validation_errors_banner.section_label.delivery": "Delivery",
1990
+ "shopify.checkout.notice_banner.validation_errors_banner.section_label.contact": "Contact",
1991
+ "shopify.checkout.notice_banner.validation_errors_banner.section_label.payment": "Payment",
1992
+ "shopify.checkout.notice_banner.validation_errors_banner.section_label.billing": "Billing",
1993
+ "shopify.checkout.notice_banner.validation_errors_banner.errors_in_section.one": "{{count}} error in {{section}}",
1994
+ "shopify.checkout.notice_banner.validation_errors_banner.errors_in_section.other": "{{count}} errors in {{section}}",
1973
1995
  "shopify.checkout.review_address_modal.title": "Review address",
1974
1996
  "shopify.checkout.review_address_modal.subtitle.one": "This order will be shipped to the address provided by {{merchant}}.",
1975
1997
  "shopify.checkout.review_address_modal.subtitle.other": "This order will be shipped to an address provided by {{merchant}}. Select a shipping address.",
@@ -2173,6 +2195,7 @@
2173
2195
  "shopify.checkout.tooltip.additional_payment_methods": "Additional payment methods",
2174
2196
  "shopify.checkout.too_many_requests.title": "Too many checkout attempts",
2175
2197
  "shopify.checkout.too_many_requests.body": "Please wait a few minutes and try again from your cart.",
2198
+ "shopify.checkout.too_many_requests.body_no_cart": "Please wait a few minutes and try again.",
2176
2199
  "shopify.checkout.too_many_requests.return_to_cart": "Return to cart",
2177
2200
  "shopify.checkout.required_extensions.errors.interaction_required": "An extension interaction is required to complete the checkout.",
2178
2201
  "shopify.checkout.taxes.tax_details": "Additional tax details",
@@ -0,0 +1 @@
1
+ import{Na as a,Oa as b,Pa as c,Qa as d,Ra as e}from"./chunk-7JFIBCHH.js";import"./chunk-PRKBO42R.js";import"./chunk-AQOYGO3U.js";import"./chunk-DEW5QFGH.js";import"./chunk-SVA22NZQ.js";import"./chunk-FU2Y2M3M.js";import"./chunk-QYR5VPQA.js";import"./chunk-EENHXSWU.js";import"./chunk-JBSYWYIP.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-QUTQDXSL.js";import"./chunk-VPRTJUIN.js";export{e as addBugsnagMetadata,c as cleanStackFrameFilePath,a as errorHandler,d as registerCleanBugsnagErrorsFromWithinPlugins,b as sendErrorToBugsnag};
@@ -1 +1 @@
1
- import{d as a}from"../chunk-VLDSGLBP.js";import"../chunk-TCRHJ3ZH.js";import"../chunk-PRKBO42R.js";import"../chunk-PB3UDYWH.js";import"../chunk-WOERFYNW.js";import"../chunk-P3ASN7B5.js";import"../chunk-XV44IQDO.js";import"../chunk-QJEBL3WX.js";import"../chunk-EENHXSWU.js";import"../chunk-NOSKVZWJ.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-QUTQDXSL.js";import{g as o}from"../chunk-VPRTJUIN.js";o();export{a as default};
1
+ import{d as a}from"../chunk-7F3HZJH4.js";import"../chunk-7JFIBCHH.js";import"../chunk-PRKBO42R.js";import"../chunk-AQOYGO3U.js";import"../chunk-DEW5QFGH.js";import"../chunk-SVA22NZQ.js";import"../chunk-FU2Y2M3M.js";import"../chunk-QYR5VPQA.js";import"../chunk-EENHXSWU.js";import"../chunk-JBSYWYIP.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-QUTQDXSL.js";import{g as o}from"../chunk-VPRTJUIN.js";o();export{a as default};
@@ -1 +1 @@
1
- import{e as c}from"../chunk-T57REQVZ.js";import{Ca as s,a}from"../chunk-TCRHJ3ZH.js";import"../chunk-PRKBO42R.js";import{N as i}from"../chunk-PB3UDYWH.js";import{Ed as m,lb as t}from"../chunk-WOERFYNW.js";import"../chunk-P3ASN7B5.js";import"../chunk-XV44IQDO.js";import"../chunk-QJEBL3WX.js";import"../chunk-EENHXSWU.js";import"../chunk-NOSKVZWJ.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-QUTQDXSL.js";import{g as e}from"../chunk-VPRTJUIN.js";e();e();var d=async n=>{let r=f({id:n.Command.id,aliases:n.Command.aliases,pluginAlias:n.Command.plugin?.alias}),o=n.argv;h(),m(`Running command ${r.command}`),await s({commandContent:r,args:o,commandClass:n.Command}),c(n.Command.id)};function f(n){let r=p(n.pluginAlias);return r??(r=l(n.id,n.aliases)),r}function l(n,r){return{command:n.replace(/:/g," "),topic:C(n),alias:g(r)}}function p(n){if(n?.startsWith("@shopify/create-"))return{command:n.substring(n.indexOf("/")+1)}}function C(n){if(n.lastIndexOf(":")!==-1)return n.slice(0,n.lastIndexOf(":")).replace(/:/g," ")}function g(n){let r=n.find(o=>o.split(":").every(u=>process.argv.includes(u)));if(r)return r.replace(/:/g," ")}function h(){let n=a;t(n)||i("@shopify/cli",n,{cacheExpiryInHours:24})}export{d as default};
1
+ import{e as c}from"../chunk-DBDY2YEY.js";import{Ca as s,a}from"../chunk-7JFIBCHH.js";import"../chunk-PRKBO42R.js";import{O as i}from"../chunk-AQOYGO3U.js";import{Ed as m,lb as t}from"../chunk-DEW5QFGH.js";import"../chunk-SVA22NZQ.js";import"../chunk-FU2Y2M3M.js";import"../chunk-QYR5VPQA.js";import"../chunk-EENHXSWU.js";import"../chunk-JBSYWYIP.js";import"../chunk-T4M5CWAO.js";import"../chunk-PRVQAHWI.js";import"../chunk-QUTQDXSL.js";import{g as e}from"../chunk-VPRTJUIN.js";e();e();var d=async n=>{let r=f({id:n.Command.id,aliases:n.Command.aliases,pluginAlias:n.Command.plugin?.alias}),o=n.argv;h(),m(`Running command ${r.command}`),await s({commandContent:r,args:o,commandClass:n.Command}),c(n.Command.id)};function f(n){let r=p(n.pluginAlias);return r??(r=l(n.id,n.aliases)),r}function l(n,r){return{command:n.replace(/:/g," "),topic:C(n),alias:g(r)}}function p(n){if(n?.startsWith("@shopify/create-"))return{command:n.substring(n.indexOf("/")+1)}}function C(n){if(n.lastIndexOf(":")!==-1)return n.slice(0,n.lastIndexOf(":")).replace(/:/g," ")}function g(n){let r=n.find(o=>o.split(":").every(u=>process.argv.includes(u)));if(r)return r.replace(/:/g," ")}function h(){let n=a;t(n)||i("@shopify/cli",n,{cacheExpiryInHours:24})}export{d as default};
@@ -1,4 +1,4 @@
1
- import{d as Ae}from"./chunk-XV44IQDO.js";import{a as w,c as g,g as l}from"./chunk-VPRTJUIN.js";var re=g((ft,D)=>{"use strict";l();var qe=Object.prototype.hasOwnProperty,_="~";function C(){}Object.create&&(C.prototype=Object.create(null),new C().__proto__||(_=!1));function Be(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function te(e,t,r,s,o){if(typeof r!="function")throw new TypeError("The listener must be a function");var n=new Be(r,s||e,o),i=_?_+t:t;return e._events[i]?e._events[i].fn?e._events[i]=[e._events[i],n]:e._events[i].push(n):(e._events[i]=n,e._eventsCount++),e}function j(e,t){--e._eventsCount===0?e._events=new C:delete e._events[t]}function v(){this._events=new C,this._eventsCount=0}v.prototype.eventNames=function(){var t=[],r,s;if(this._eventsCount===0)return t;for(s in r=this._events)qe.call(r,s)&&t.push(_?s.slice(1):s);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};v.prototype.listeners=function(t){var r=_?_+t:t,s=this._events[r];if(!s)return[];if(s.fn)return[s.fn];for(var o=0,n=s.length,i=new Array(n);o<n;o++)i[o]=s[o].fn;return i};v.prototype.listenerCount=function(t){var r=_?_+t:t,s=this._events[r];return s?s.fn?1:s.length:0};v.prototype.emit=function(t,r,s,o,n,i){var c=_?_+t:t;if(!this._events[c])return!1;var a=this._events[c],h=arguments.length,u,f;if(a.fn){switch(a.once&&this.removeListener(t,a.fn,void 0,!0),h){case 1:return a.fn.call(a.context),!0;case 2:return a.fn.call(a.context,r),!0;case 3:return a.fn.call(a.context,r,s),!0;case 4:return a.fn.call(a.context,r,s,o),!0;case 5:return a.fn.call(a.context,r,s,o,n),!0;case 6:return a.fn.call(a.context,r,s,o,n,i),!0}for(f=1,u=new Array(h-1);f<h;f++)u[f-1]=arguments[f];a.fn.apply(a.context,u)}else{var d=a.length,p;for(f=0;f<d;f++)switch(a[f].once&&this.removeListener(t,a[f].fn,void 0,!0),h){case 1:a[f].fn.call(a[f].context);break;case 2:a[f].fn.call(a[f].context,r);break;case 3:a[f].fn.call(a[f].context,r,s);break;case 4:a[f].fn.call(a[f].context,r,s,o);break;default:if(!u)for(p=1,u=new Array(h-1);p<h;p++)u[p-1]=arguments[p];a[f].fn.apply(a[f].context,u)}}return!0};v.prototype.on=function(t,r,s){return te(this,t,r,s,!1)};v.prototype.once=function(t,r,s){return te(this,t,r,s,!0)};v.prototype.removeListener=function(t,r,s,o){var n=_?_+t:t;if(!this._events[n])return this;if(!r)return j(this,n),this;var i=this._events[n];if(i.fn)i.fn===r&&(!o||i.once)&&(!s||i.context===s)&&j(this,n);else{for(var c=0,a=[],h=i.length;c<h;c++)(i[c].fn!==r||o&&!i[c].once||s&&i[c].context!==s)&&a.push(i[c]);a.length?this._events[n]=a.length===1?a[0]:a:j(this,n)}return this};v.prototype.removeAllListeners=function(t){var r;return t?(r=_?_+t:t,this._events[r]&&j(this,r)):(this._events=new C,this._eventsCount=0),this};v.prototype.off=v.prototype.removeListener;v.prototype.addListener=v.prototype.on;v.prefixed=_;v.EventEmitter=v;typeof D<"u"&&(D.exports=v)});var ne=g((ct,se)=>{"use strict";l();se.exports=function(t,r){if(r=r.split(":")[0],t=+t,!t)return!1;switch(r){case"http":case"ws":return t!==80;case"https":case"wss":return t!==443;case"ftp":return t!==21;case"gopher":return t!==70;case"file":return!1}return t!==0}});var N=g(oe=>{l();var E=oe,Ue=w("url"),ie=Object.assign,je=ne(),Ne=/(^|,)\s*upgrade\s*($|,)/i,k=/^https|wss/;E.isSSL=k;E.setupOutgoing=function(e,t,r,s){e.port=t[s||"target"].port||(k.test(t[s||"target"].protocol)?443:80),["host","hostname","socketPath","pfx","key","passphrase","cert","ca","ciphers","secureProtocol"].forEach(function(c){e[c]=t[s||"target"][c]}),e.method=t.method||r.method,e.headers=ie({},r.headers),t.headers&&ie(e.headers,t.headers),t.auth&&(e.auth=t.auth),t.ca&&(e.ca=t.ca),k.test(t[s||"target"].protocol)&&(e.rejectUnauthorized=typeof t.secure>"u"?!0:t.secure),e.agent=t.agent||!1,e.localAddress=t.localAddress,e.agent||(e.headers=e.headers||{},(typeof e.headers.connection!="string"||!Ne.test(e.headers.connection))&&(e.headers.connection="close"));var o=t[s||"target"],n=o&&t.prependPath!==!1&&o.path||"",i=t.toProxy?r.url:Ue.parse(r.url).path||"";return i=t.ignorePath?"":i,e.path=E.urlJoin(n,i),t.changeOrigin&&(e.headers.host=je(e.port,t[s||"target"].protocol)&&!Me(e.host)?e.host+":"+e.port:e.host),e};E.setupSocket=function(e){return e.setTimeout(0),e.setNoDelay(!0),e.setKeepAlive(!0,0),e};E.getPort=function(e){var t=e.headers.host?e.headers.host.match(/:(\d+)/):"";return t?t[1]:E.hasEncryptedConnection(e)?"443":"80"};E.hasEncryptedConnection=function(e){return!!(e.connection.encrypted||e.connection.pair)};E.urlJoin=function(){var e=Array.prototype.slice.call(arguments),t=[],r="",s;return e.forEach((o,n)=>{var i=o.indexOf("?");i!==-1&&(t.push(o.substring(i+1)),e[n]=o.substring(0,i))}),r=t.filter(Boolean).join("&"),s=e.filter(Boolean).join("/").replace(/\/+/g,"/").replace("http:/","http://").replace("https:/","https://"),r?s+"?"+r:s};E.rewriteCookieProperty=function e(t,r,s){return Array.isArray(t)?t.map(function(o){return e(o,r,s)}):t.replace(new RegExp("(;\\s*"+s+"=)([^;]+)","i"),function(o,n,i){var c;if(i in r)c=r[i];else if("*"in r)c=r["*"];else return o;return c?n+c:""})};function Me(e){return!!~e.indexOf(":")}});var he=g((vt,fe)=>{l();var ae=w("url"),ue=N(),De=/^201|30(1|2|7|8)$/;fe.exports={removeChunked:function(t,r,s){t.httpVersion==="1.0"&&delete s.headers["transfer-encoding"]},setConnection:function(t,r,s){t.httpVersion==="1.0"?s.headers.connection=t.headers.connection||"close":t.httpVersion!=="2.0"&&!s.headers.connection&&(s.headers.connection=t.headers.connection||"keep-alive")},setRedirectHostRewrite:function(t,r,s,o){if((o.hostRewrite||o.autoRewrite||o.protocolRewrite)&&s.headers.location&&De.test(s.statusCode)){var n=ae.parse(o.target),i=ae.parse(s.headers.location);if(n.host!=i.host)return;o.hostRewrite?i.host=o.hostRewrite:o.autoRewrite&&(i.host=t.headers.host),o.protocolRewrite&&(i.protocol=o.protocolRewrite),s.headers.location=i.format()}},writeHeaders:function(t,r,s,o){var n=o.cookieDomainRewrite,i=o.cookiePathRewrite,c=o.preserveHeaderKeyCase,a,h=function(d,p){p!=null&&(n&&d.toLowerCase()==="set-cookie"&&(p=ue.rewriteCookieProperty(p,n,"domain")),i&&d.toLowerCase()==="set-cookie"&&(p=ue.rewriteCookieProperty(p,i,"path")),r.setHeader(String(d).trim(),p))};if(typeof n=="string"&&(n={"*":n}),typeof i=="string"&&(i={"*":i}),c&&s.rawHeaders!=null){a={};for(var u=0;u<s.rawHeaders.length;u+=2){var f=s.rawHeaders[u];a[f.toLowerCase()]=f}}Object.keys(s.headers).forEach(function(d){var p=s.headers[d];c&&a&&(d=a[d]||d),h(d,p)})},writeStatusCode:function(t,r,s){s.statusMessage?(r.statusCode=s.statusCode,r.statusMessage=s.statusMessage):r.statusCode=s.statusCode}}});var de=g((wt,ce)=>{l();var T;ce.exports=function(){if(!T){try{T=Ae()("follow-redirects")}catch{}typeof T!="function"&&(T=function(){})}T.apply(null,arguments)}});var we=g((yt,Q)=>{l();var S=w("url"),H=S.URL,ke=w("http"),Ie=w("https"),$=w("stream").Writable,X=w("assert"),le=de();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",s=x(Error.captureStackTrace);!t&&(r||!s)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var z=!1;try{X(new H(""))}catch(e){z=e.code==="ERR_INVALID_URL"}var Fe=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],K=["abort","aborted","connect","error","socket","timeout"],G=Object.create(null);K.forEach(function(e){G[e]=function(t,r,s){this._redirectable.emit(e,t,r,s)}});var F=A("ERR_INVALID_URL","Invalid URL",TypeError),V=A("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),Ve=A("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",V),We=A("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),$e=A("ERR_STREAM_WRITE_AFTER_END","write after end"),Xe=$.prototype.destroy||ve;function y(e,t){$.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(s){try{r._processResponse(s)}catch(o){r.emit("error",o instanceof V?o:new V({cause:o}))}},this._performRequest()}y.prototype=Object.create($.prototype);y.prototype.abort=function(){Y(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};y.prototype.destroy=function(e){return Y(this._currentRequest,e),Xe.call(this,e),this};y.prototype.write=function(e,t,r){if(this._ending)throw new $e;if(!P(e)&&!Ge(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(x(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new We),this.abort())};y.prototype.end=function(e,t,r){if(x(e)?(r=e,e=t=null):x(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var s=this,o=this._currentRequest;this.write(e,t,function(){s._ended=!0,o.end(null,null,r)}),this._ending=!0}};y.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};y.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};y.prototype.setTimeout=function(e,t){var r=this;function s(i){i.setTimeout(e),i.removeListener("timeout",i.destroy),i.addListener("timeout",i.destroy)}function o(i){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),n()},e),s(i)}function n(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",n),r.removeListener("error",n),r.removeListener("response",n),r.removeListener("close",n),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",o)}return t&&this.on("timeout",t),this.socket?o(this.socket):this._currentRequest.once("socket",o),this.on("socket",s),this.on("abort",n),this.on("error",n),this.on("response",n),this.on("close",n),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){y.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(y.prototype,e,{get:function(){return this._currentRequest[e]}})});y.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};y.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var s=this._currentRequest=t.request(this._options,this._onNativeResponse);s._redirectable=this;for(var o of K)s.on(o,G[o]);if(this._currentUrl=/^\//.test(this._options.path)?S.format(this._options):this._options.path,this._isRedirect){var n=0,i=this,c=this._requestBodyBuffers;(function a(h){if(s===i._currentRequest)if(h)i.emit("error",h);else if(n<c.length){var u=c[n++];s.finished||s.write(u.data,u.encoding,a)}else i._ended&&s.end()})()}};y.prototype._processResponse=function(e){var t=e.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:e.headers,statusCode:t});var r=e.headers.location;if(!r||this._options.followRedirects===!1||t<300||t>=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(Y(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new Ve;var s,o=this._options.beforeRedirect;o&&(s=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var n=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],I(/^content-/i,this._options.headers));var i=I(/^host$/i,this._options.headers),c=J(this._currentUrl),a=i||c.host,h=/^\w+:/.test(r)?this._currentUrl:S.format(Object.assign(c,{host:a})),u=ze(r,h);if(le("redirecting to",u.href),this._isRedirect=!0,W(u,this._options),(u.protocol!==c.protocol&&u.protocol!=="https:"||u.host!==a&&!Ke(u.host,a))&&I(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),x(o)){var f={headers:e.headers,statusCode:t},d={url:h,method:n,headers:s};o(this._options,f,d),this._sanitizeOptions(this._options)}this._performRequest()};function pe(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(s){var o=s+":",n=r[o]=e[s],i=t[s]=Object.create(n);function c(h,u,f){return Je(h)?h=W(h):P(h)?h=W(J(h)):(f=u,u=me(h),h={protocol:o}),x(u)&&(f=u,u=null),u=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},h,u),u.nativeProtocols=r,!P(u.host)&&!P(u.hostname)&&(u.hostname="::1"),X.equal(u.protocol,o,"protocol mismatch"),le("options",u),new y(u,f)}function a(h,u,f){var d=i.request(h,u,f);return d.end(),d}Object.defineProperties(i,{request:{value:c,configurable:!0,enumerable:!0,writable:!0},get:{value:a,configurable:!0,enumerable:!0,writable:!0}})}),t}function ve(){}function J(e){var t;if(z)t=new H(e);else if(t=me(S.parse(e)),!P(t.protocol))throw new F({input:e});return t}function ze(e,t){return z?new H(e,t):J(S.resolve(t,e))}function me(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new F({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new F({input:e.href||e});return e}function W(e,t){var r=t||{};for(var s of Fe)r[s]=e[s];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function I(e,t){var r;for(var s in t)e.test(s)&&(r=t[s],delete t[s]);return r===null||typeof r>"u"?void 0:String(r).trim()}function A(e,t,r){function s(o){x(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,o||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return s.prototype=new(r||Error),Object.defineProperties(s.prototype,{constructor:{value:s,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),s}function Y(e,t){for(var r of K)e.removeListener(r,G[r]);e.on("error",ve),e.destroy(t)}function Ke(e,t){X(P(e)&&P(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function P(e){return typeof e=="string"||e instanceof String}function x(e){return typeof e=="function"}function Ge(e){return typeof e=="object"&&"length"in e}function Je(e){return H&&e instanceof H}Q.exports=pe({http:ke,https:Ie});Q.exports.wrap=pe});var ye=g((Et,_e)=>{l();var Ye=w("http"),Qe=w("https"),q=he(),M=N(),Ze=we();q=Object.keys(q).map(function(e){return q[e]});var et={http:Ye,https:Qe};var tt=(function(){var e=process.versions.node.split(".").map(Number);return e[0]<=14||e[0]===15&&e[1]<=4})();_e.exports={deleteLength:function(t,r,s){(t.method==="DELETE"||t.method==="OPTIONS")&&!t.headers["content-length"]&&(t.headers["content-length"]="0",delete t.headers["transfer-encoding"])},timeout:function(t,r,s){s.timeout&&t.socket.setTimeout(s.timeout)},XHeaders:function(t,r,s){if(s.xfwd){var o=t.isSpdy||M.hasEncryptedConnection(t),n={for:t.connection.remoteAddress||t.socket.remoteAddress,port:M.getPort(t),proto:o?"https":"http"};["for","port","proto"].forEach(function(i){t.headers["x-forwarded-"+i]=(t.headers["x-forwarded-"+i]||"")+(t.headers["x-forwarded-"+i]?",":"")+n[i]}),t.headers["x-forwarded-host"]=t.headers["x-forwarded-host"]||t.headers.host||""}},stream:function(t,r,s,o,n,i){n.emit("start",t,r,s.target||s.forward);var c=s.followRedirects?Ze:et,a=c.http,h=c.https;if(s.forward){var u=(s.forward.protocol==="https:"?h:a).request(M.setupOutgoing(s.ssl||{},s,t,"forward")),f=R(u,s.forward);if(t.on("error",f),u.on("error",f),(s.buffer||t).pipe(u),!s.target)return r.end()}var d=(s.target.protocol==="https:"?h:a).request(M.setupOutgoing(s.ssl||{},s,t));d.on("socket",function(m){n&&!d.getHeader("expect")&&n.emit("proxyReq",d,t,r,s)}),s.proxyTimeout&&d.setTimeout(s.proxyTimeout,function(){d.abort()}),tt?t.on("aborted",function(){d.abort()}):r.on("close",function(){var m=!r.writableFinished;m&&d.abort()});var p=R(d,s.target);t.on("error",p),d.on("error",p);function R(m,b){return function(U){if(t.socket.destroyed&&U.code==="ECONNRESET")return n.emit("econnreset",U,t,r,b),m.abort();i?i(U,t,r,b):n.emit("error",U,t,r,b)}}(s.buffer||t).pipe(d),d.on("response",function(m){if(n&&n.emit("proxyRes",m,t,r),!r.headersSent&&!s.selfHandleResponse)for(var b=0;b<q.length&&!q[b](t,r,m,s);b++);r.finished?n&&n.emit("end",t,r,m):(m.on("end",function(){n&&n.emit("end",t,r,m)}),s.selfHandleResponse||m.pipe(r))})}}});var Ee=g((bt,ge)=>{l();var rt=w("http"),st=w("https"),O=N();ge.exports={checkMethodAndHeader:function(t,r){if(t.method!=="GET"||!t.headers.upgrade||t.headers.upgrade.toLowerCase()!=="websocket")return r.destroy(),!0},XHeaders:function(t,r,s){if(s.xfwd){var o={for:t.connection.remoteAddress||t.socket.remoteAddress,port:O.getPort(t),proto:O.hasEncryptedConnection(t)?"wss":"ws"};["for","port","proto"].forEach(function(n){t.headers["x-forwarded-"+n]=(t.headers["x-forwarded-"+n]||"")+(t.headers["x-forwarded-"+n]?",":"")+o[n]})}},stream:function(t,r,s,o,n,i){var c=function(u,f){return Object.keys(f).reduce(function(d,p){var R=f[p];if(!Array.isArray(R))return d.push(p+": "+R),d;for(var m=0;m<R.length;m++)d.push(p+": "+R[m]);return d},[u]).join(`\r
1
+ import{d as Ae}from"./chunk-FU2Y2M3M.js";import{a as w,c as g,g as l}from"./chunk-VPRTJUIN.js";var re=g((ft,D)=>{"use strict";l();var qe=Object.prototype.hasOwnProperty,_="~";function C(){}Object.create&&(C.prototype=Object.create(null),new C().__proto__||(_=!1));function Be(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function te(e,t,r,s,o){if(typeof r!="function")throw new TypeError("The listener must be a function");var n=new Be(r,s||e,o),i=_?_+t:t;return e._events[i]?e._events[i].fn?e._events[i]=[e._events[i],n]:e._events[i].push(n):(e._events[i]=n,e._eventsCount++),e}function j(e,t){--e._eventsCount===0?e._events=new C:delete e._events[t]}function v(){this._events=new C,this._eventsCount=0}v.prototype.eventNames=function(){var t=[],r,s;if(this._eventsCount===0)return t;for(s in r=this._events)qe.call(r,s)&&t.push(_?s.slice(1):s);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};v.prototype.listeners=function(t){var r=_?_+t:t,s=this._events[r];if(!s)return[];if(s.fn)return[s.fn];for(var o=0,n=s.length,i=new Array(n);o<n;o++)i[o]=s[o].fn;return i};v.prototype.listenerCount=function(t){var r=_?_+t:t,s=this._events[r];return s?s.fn?1:s.length:0};v.prototype.emit=function(t,r,s,o,n,i){var c=_?_+t:t;if(!this._events[c])return!1;var a=this._events[c],h=arguments.length,u,f;if(a.fn){switch(a.once&&this.removeListener(t,a.fn,void 0,!0),h){case 1:return a.fn.call(a.context),!0;case 2:return a.fn.call(a.context,r),!0;case 3:return a.fn.call(a.context,r,s),!0;case 4:return a.fn.call(a.context,r,s,o),!0;case 5:return a.fn.call(a.context,r,s,o,n),!0;case 6:return a.fn.call(a.context,r,s,o,n,i),!0}for(f=1,u=new Array(h-1);f<h;f++)u[f-1]=arguments[f];a.fn.apply(a.context,u)}else{var d=a.length,p;for(f=0;f<d;f++)switch(a[f].once&&this.removeListener(t,a[f].fn,void 0,!0),h){case 1:a[f].fn.call(a[f].context);break;case 2:a[f].fn.call(a[f].context,r);break;case 3:a[f].fn.call(a[f].context,r,s);break;case 4:a[f].fn.call(a[f].context,r,s,o);break;default:if(!u)for(p=1,u=new Array(h-1);p<h;p++)u[p-1]=arguments[p];a[f].fn.apply(a[f].context,u)}}return!0};v.prototype.on=function(t,r,s){return te(this,t,r,s,!1)};v.prototype.once=function(t,r,s){return te(this,t,r,s,!0)};v.prototype.removeListener=function(t,r,s,o){var n=_?_+t:t;if(!this._events[n])return this;if(!r)return j(this,n),this;var i=this._events[n];if(i.fn)i.fn===r&&(!o||i.once)&&(!s||i.context===s)&&j(this,n);else{for(var c=0,a=[],h=i.length;c<h;c++)(i[c].fn!==r||o&&!i[c].once||s&&i[c].context!==s)&&a.push(i[c]);a.length?this._events[n]=a.length===1?a[0]:a:j(this,n)}return this};v.prototype.removeAllListeners=function(t){var r;return t?(r=_?_+t:t,this._events[r]&&j(this,r)):(this._events=new C,this._eventsCount=0),this};v.prototype.off=v.prototype.removeListener;v.prototype.addListener=v.prototype.on;v.prefixed=_;v.EventEmitter=v;typeof D<"u"&&(D.exports=v)});var ne=g((ct,se)=>{"use strict";l();se.exports=function(t,r){if(r=r.split(":")[0],t=+t,!t)return!1;switch(r){case"http":case"ws":return t!==80;case"https":case"wss":return t!==443;case"ftp":return t!==21;case"gopher":return t!==70;case"file":return!1}return t!==0}});var N=g(oe=>{l();var E=oe,Ue=w("url"),ie=Object.assign,je=ne(),Ne=/(^|,)\s*upgrade\s*($|,)/i,k=/^https|wss/;E.isSSL=k;E.setupOutgoing=function(e,t,r,s){e.port=t[s||"target"].port||(k.test(t[s||"target"].protocol)?443:80),["host","hostname","socketPath","pfx","key","passphrase","cert","ca","ciphers","secureProtocol"].forEach(function(c){e[c]=t[s||"target"][c]}),e.method=t.method||r.method,e.headers=ie({},r.headers),t.headers&&ie(e.headers,t.headers),t.auth&&(e.auth=t.auth),t.ca&&(e.ca=t.ca),k.test(t[s||"target"].protocol)&&(e.rejectUnauthorized=typeof t.secure>"u"?!0:t.secure),e.agent=t.agent||!1,e.localAddress=t.localAddress,e.agent||(e.headers=e.headers||{},(typeof e.headers.connection!="string"||!Ne.test(e.headers.connection))&&(e.headers.connection="close"));var o=t[s||"target"],n=o&&t.prependPath!==!1&&o.path||"",i=t.toProxy?r.url:Ue.parse(r.url).path||"";return i=t.ignorePath?"":i,e.path=E.urlJoin(n,i),t.changeOrigin&&(e.headers.host=je(e.port,t[s||"target"].protocol)&&!Me(e.host)?e.host+":"+e.port:e.host),e};E.setupSocket=function(e){return e.setTimeout(0),e.setNoDelay(!0),e.setKeepAlive(!0,0),e};E.getPort=function(e){var t=e.headers.host?e.headers.host.match(/:(\d+)/):"";return t?t[1]:E.hasEncryptedConnection(e)?"443":"80"};E.hasEncryptedConnection=function(e){return!!(e.connection.encrypted||e.connection.pair)};E.urlJoin=function(){var e=Array.prototype.slice.call(arguments),t=[],r="",s;return e.forEach((o,n)=>{var i=o.indexOf("?");i!==-1&&(t.push(o.substring(i+1)),e[n]=o.substring(0,i))}),r=t.filter(Boolean).join("&"),s=e.filter(Boolean).join("/").replace(/\/+/g,"/").replace("http:/","http://").replace("https:/","https://"),r?s+"?"+r:s};E.rewriteCookieProperty=function e(t,r,s){return Array.isArray(t)?t.map(function(o){return e(o,r,s)}):t.replace(new RegExp("(;\\s*"+s+"=)([^;]+)","i"),function(o,n,i){var c;if(i in r)c=r[i];else if("*"in r)c=r["*"];else return o;return c?n+c:""})};function Me(e){return!!~e.indexOf(":")}});var he=g((vt,fe)=>{l();var ae=w("url"),ue=N(),De=/^201|30(1|2|7|8)$/;fe.exports={removeChunked:function(t,r,s){t.httpVersion==="1.0"&&delete s.headers["transfer-encoding"]},setConnection:function(t,r,s){t.httpVersion==="1.0"?s.headers.connection=t.headers.connection||"close":t.httpVersion!=="2.0"&&!s.headers.connection&&(s.headers.connection=t.headers.connection||"keep-alive")},setRedirectHostRewrite:function(t,r,s,o){if((o.hostRewrite||o.autoRewrite||o.protocolRewrite)&&s.headers.location&&De.test(s.statusCode)){var n=ae.parse(o.target),i=ae.parse(s.headers.location);if(n.host!=i.host)return;o.hostRewrite?i.host=o.hostRewrite:o.autoRewrite&&(i.host=t.headers.host),o.protocolRewrite&&(i.protocol=o.protocolRewrite),s.headers.location=i.format()}},writeHeaders:function(t,r,s,o){var n=o.cookieDomainRewrite,i=o.cookiePathRewrite,c=o.preserveHeaderKeyCase,a,h=function(d,p){p!=null&&(n&&d.toLowerCase()==="set-cookie"&&(p=ue.rewriteCookieProperty(p,n,"domain")),i&&d.toLowerCase()==="set-cookie"&&(p=ue.rewriteCookieProperty(p,i,"path")),r.setHeader(String(d).trim(),p))};if(typeof n=="string"&&(n={"*":n}),typeof i=="string"&&(i={"*":i}),c&&s.rawHeaders!=null){a={};for(var u=0;u<s.rawHeaders.length;u+=2){var f=s.rawHeaders[u];a[f.toLowerCase()]=f}}Object.keys(s.headers).forEach(function(d){var p=s.headers[d];c&&a&&(d=a[d]||d),h(d,p)})},writeStatusCode:function(t,r,s){s.statusMessage?(r.statusCode=s.statusCode,r.statusMessage=s.statusMessage):r.statusCode=s.statusCode}}});var de=g((wt,ce)=>{l();var T;ce.exports=function(){if(!T){try{T=Ae()("follow-redirects")}catch{}typeof T!="function"&&(T=function(){})}T.apply(null,arguments)}});var we=g((yt,Q)=>{l();var S=w("url"),H=S.URL,ke=w("http"),Ie=w("https"),$=w("stream").Writable,X=w("assert"),le=de();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",s=x(Error.captureStackTrace);!t&&(r||!s)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var z=!1;try{X(new H(""))}catch(e){z=e.code==="ERR_INVALID_URL"}var Fe=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],K=["abort","aborted","connect","error","socket","timeout"],G=Object.create(null);K.forEach(function(e){G[e]=function(t,r,s){this._redirectable.emit(e,t,r,s)}});var F=A("ERR_INVALID_URL","Invalid URL",TypeError),V=A("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),Ve=A("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",V),We=A("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),$e=A("ERR_STREAM_WRITE_AFTER_END","write after end"),Xe=$.prototype.destroy||ve;function y(e,t){$.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(s){try{r._processResponse(s)}catch(o){r.emit("error",o instanceof V?o:new V({cause:o}))}},this._performRequest()}y.prototype=Object.create($.prototype);y.prototype.abort=function(){Y(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};y.prototype.destroy=function(e){return Y(this._currentRequest,e),Xe.call(this,e),this};y.prototype.write=function(e,t,r){if(this._ending)throw new $e;if(!P(e)&&!Ge(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(x(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new We),this.abort())};y.prototype.end=function(e,t,r){if(x(e)?(r=e,e=t=null):x(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var s=this,o=this._currentRequest;this.write(e,t,function(){s._ended=!0,o.end(null,null,r)}),this._ending=!0}};y.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};y.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};y.prototype.setTimeout=function(e,t){var r=this;function s(i){i.setTimeout(e),i.removeListener("timeout",i.destroy),i.addListener("timeout",i.destroy)}function o(i){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),n()},e),s(i)}function n(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",n),r.removeListener("error",n),r.removeListener("response",n),r.removeListener("close",n),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",o)}return t&&this.on("timeout",t),this.socket?o(this.socket):this._currentRequest.once("socket",o),this.on("socket",s),this.on("abort",n),this.on("error",n),this.on("response",n),this.on("close",n),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){y.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(y.prototype,e,{get:function(){return this._currentRequest[e]}})});y.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};y.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var s=this._currentRequest=t.request(this._options,this._onNativeResponse);s._redirectable=this;for(var o of K)s.on(o,G[o]);if(this._currentUrl=/^\//.test(this._options.path)?S.format(this._options):this._options.path,this._isRedirect){var n=0,i=this,c=this._requestBodyBuffers;(function a(h){if(s===i._currentRequest)if(h)i.emit("error",h);else if(n<c.length){var u=c[n++];s.finished||s.write(u.data,u.encoding,a)}else i._ended&&s.end()})()}};y.prototype._processResponse=function(e){var t=e.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:e.headers,statusCode:t});var r=e.headers.location;if(!r||this._options.followRedirects===!1||t<300||t>=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(Y(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new Ve;var s,o=this._options.beforeRedirect;o&&(s=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var n=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],I(/^content-/i,this._options.headers));var i=I(/^host$/i,this._options.headers),c=J(this._currentUrl),a=i||c.host,h=/^\w+:/.test(r)?this._currentUrl:S.format(Object.assign(c,{host:a})),u=ze(r,h);if(le("redirecting to",u.href),this._isRedirect=!0,W(u,this._options),(u.protocol!==c.protocol&&u.protocol!=="https:"||u.host!==a&&!Ke(u.host,a))&&I(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),x(o)){var f={headers:e.headers,statusCode:t},d={url:h,method:n,headers:s};o(this._options,f,d),this._sanitizeOptions(this._options)}this._performRequest()};function pe(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(s){var o=s+":",n=r[o]=e[s],i=t[s]=Object.create(n);function c(h,u,f){return Je(h)?h=W(h):P(h)?h=W(J(h)):(f=u,u=me(h),h={protocol:o}),x(u)&&(f=u,u=null),u=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},h,u),u.nativeProtocols=r,!P(u.host)&&!P(u.hostname)&&(u.hostname="::1"),X.equal(u.protocol,o,"protocol mismatch"),le("options",u),new y(u,f)}function a(h,u,f){var d=i.request(h,u,f);return d.end(),d}Object.defineProperties(i,{request:{value:c,configurable:!0,enumerable:!0,writable:!0},get:{value:a,configurable:!0,enumerable:!0,writable:!0}})}),t}function ve(){}function J(e){var t;if(z)t=new H(e);else if(t=me(S.parse(e)),!P(t.protocol))throw new F({input:e});return t}function ze(e,t){return z?new H(e,t):J(S.resolve(t,e))}function me(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new F({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new F({input:e.href||e});return e}function W(e,t){var r=t||{};for(var s of Fe)r[s]=e[s];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function I(e,t){var r;for(var s in t)e.test(s)&&(r=t[s],delete t[s]);return r===null||typeof r>"u"?void 0:String(r).trim()}function A(e,t,r){function s(o){x(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,o||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return s.prototype=new(r||Error),Object.defineProperties(s.prototype,{constructor:{value:s,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),s}function Y(e,t){for(var r of K)e.removeListener(r,G[r]);e.on("error",ve),e.destroy(t)}function Ke(e,t){X(P(e)&&P(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function P(e){return typeof e=="string"||e instanceof String}function x(e){return typeof e=="function"}function Ge(e){return typeof e=="object"&&"length"in e}function Je(e){return H&&e instanceof H}Q.exports=pe({http:ke,https:Ie});Q.exports.wrap=pe});var ye=g((Et,_e)=>{l();var Ye=w("http"),Qe=w("https"),q=he(),M=N(),Ze=we();q=Object.keys(q).map(function(e){return q[e]});var et={http:Ye,https:Qe};var tt=(function(){var e=process.versions.node.split(".").map(Number);return e[0]<=14||e[0]===15&&e[1]<=4})();_e.exports={deleteLength:function(t,r,s){(t.method==="DELETE"||t.method==="OPTIONS")&&!t.headers["content-length"]&&(t.headers["content-length"]="0",delete t.headers["transfer-encoding"])},timeout:function(t,r,s){s.timeout&&t.socket.setTimeout(s.timeout)},XHeaders:function(t,r,s){if(s.xfwd){var o=t.isSpdy||M.hasEncryptedConnection(t),n={for:t.connection.remoteAddress||t.socket.remoteAddress,port:M.getPort(t),proto:o?"https":"http"};["for","port","proto"].forEach(function(i){t.headers["x-forwarded-"+i]=(t.headers["x-forwarded-"+i]||"")+(t.headers["x-forwarded-"+i]?",":"")+n[i]}),t.headers["x-forwarded-host"]=t.headers["x-forwarded-host"]||t.headers.host||""}},stream:function(t,r,s,o,n,i){n.emit("start",t,r,s.target||s.forward);var c=s.followRedirects?Ze:et,a=c.http,h=c.https;if(s.forward){var u=(s.forward.protocol==="https:"?h:a).request(M.setupOutgoing(s.ssl||{},s,t,"forward")),f=R(u,s.forward);if(t.on("error",f),u.on("error",f),(s.buffer||t).pipe(u),!s.target)return r.end()}var d=(s.target.protocol==="https:"?h:a).request(M.setupOutgoing(s.ssl||{},s,t));d.on("socket",function(m){n&&!d.getHeader("expect")&&n.emit("proxyReq",d,t,r,s)}),s.proxyTimeout&&d.setTimeout(s.proxyTimeout,function(){d.abort()}),tt?t.on("aborted",function(){d.abort()}):r.on("close",function(){var m=!r.writableFinished;m&&d.abort()});var p=R(d,s.target);t.on("error",p),d.on("error",p);function R(m,b){return function(U){if(t.socket.destroyed&&U.code==="ECONNRESET")return n.emit("econnreset",U,t,r,b),m.abort();i?i(U,t,r,b):n.emit("error",U,t,r,b)}}(s.buffer||t).pipe(d),d.on("response",function(m){if(n&&n.emit("proxyRes",m,t,r),!r.headersSent&&!s.selfHandleResponse)for(var b=0;b<q.length&&!q[b](t,r,m,s);b++);r.finished?n&&n.emit("end",t,r,m):(m.on("end",function(){n&&n.emit("end",t,r,m)}),s.selfHandleResponse||m.pipe(r))})}}});var Ee=g((bt,ge)=>{l();var rt=w("http"),st=w("https"),O=N();ge.exports={checkMethodAndHeader:function(t,r){if(t.method!=="GET"||!t.headers.upgrade||t.headers.upgrade.toLowerCase()!=="websocket")return r.destroy(),!0},XHeaders:function(t,r,s){if(s.xfwd){var o={for:t.connection.remoteAddress||t.socket.remoteAddress,port:O.getPort(t),proto:O.hasEncryptedConnection(t)?"wss":"ws"};["for","port","proto"].forEach(function(n){t.headers["x-forwarded-"+n]=(t.headers["x-forwarded-"+n]||"")+(t.headers["x-forwarded-"+n]?",":"")+o[n]})}},stream:function(t,r,s,o,n,i){var c=function(u,f){return Object.keys(f).reduce(function(d,p){var R=f[p];if(!Array.isArray(R))return d.push(p+": "+R),d;for(var m=0;m<R.length;m++)d.push(p+": "+R[m]);return d},[u]).join(`\r
2
2
  `)+`\r
3
3
  \r
4
4
  `};O.setupSocket(r),o&&o.length&&r.unshift(o);var a=(O.isSSL.test(s.target.protocol)?st:rt).request(O.setupOutgoing(s.ssl||{},s,t));return n&&n.emit("proxyReqWs",a,t,r,s,o),a.on("error",h),a.on("response",function(u){u.upgrade||(r.write(c("HTTP/"+u.httpVersion+" "+u.statusCode+" "+u.statusMessage,u.headers)),u.pipe(r))}),a.on("upgrade",function(u,f,d){f.on("error",h),f.on("end",function(){n.emit("close",u,f,d)}),r.on("error",function(){f.destroy()}),O.setupSocket(f),d&&d.length&&f.unshift(d),r.write(c("HTTP/1.1 101 Switching Protocols",u.headers)),f.pipe(r).pipe(f),n.emit("open",f),n.emit("proxySocket",f)}),a.end();function h(u){i?i(u,t,r):n.emit("error",u,t,r),r.end()}}}});var Ce=g((xt,Oe)=>{l();var xe=Oe.exports,Re=Object.assign,nt=w("url").parse,Le=re(),it=w("http"),ot=w("https"),be=ye(),Pe=Ee();xe.Server=L;function Z(e){return function(t){return function(r,s){var o=e==="ws"?this.wsPasses:this.webPasses,n=[].slice.call(arguments),i=n.length-1,c,a;typeof n[i]=="function"&&(a=n[i],i--);var h=t;if(!(n[i]instanceof Buffer)&&n[i]!==s&&(h=Re({},t),Re(h,n[i]),i--),n[i]instanceof Buffer&&(c=n[i]),["target","forward"].forEach(function(f){typeof h[f]=="string"&&(h[f]=nt(h[f]))}),!h.target&&!h.forward)return this.emit("error",new Error("Must provide a proper URL as target"));for(var u=0;u<o.length&&!o[u](r,s,h,c,this,a);u++);}}}xe.createRightProxy=Z;function L(e){Le.call(this),e=e||{},e.prependPath=e.prependPath!==!1,this.web=this.proxyRequest=Z("web")(e),this.ws=this.proxyWebsocketRequest=Z("ws")(e),this.options=e,this.webPasses=Object.keys(be).map(function(t){return be[t]}),this.wsPasses=Object.keys(Pe).map(function(t){return Pe[t]}),this.on("error",this.onError,this)}w("util").inherits(L,Le);L.prototype.onError=function(e){if(this.listeners("error").length===1)throw e};L.prototype.listen=function(e,t){var r=this,s=function(o,n){r.web(o,n)};return this._server=this.options.ssl?ot.createServer(this.options.ssl,s):it.createServer(s),this.options.ws&&this._server.on("upgrade",function(o,n,i){r.ws(o,n,i)}),this._server.listen(e,t),this};L.prototype.close=function(e){var t=this;this._server&&this._server.close(r);function r(){t._server=null,e&&e.apply(null,arguments)}};L.prototype.before=function(e,t,r){if(e!=="ws"&&e!=="web")throw new Error("type must be `web` or `ws`");var s=e==="ws"?this.wsPasses:this.webPasses,o=!1;if(s.forEach(function(n,i){n.name===t&&(o=i)}),o===!1)throw new Error("No such pass");s.splice(o,0,r)};L.prototype.after=function(e,t,r){if(e!=="ws"&&e!=="web")throw new Error("type must be `web` or `ws`");var s=e==="ws"?this.wsPasses:this.webPasses,o=!1;if(s.forEach(function(n,i){n.name===t&&(o=i)}),o===!1)throw new Error("No such pass");s.splice(o++,0,r)}});var He=g((Ot,Te)=>{l();var B=Ce().Server;function ee(e){return new B(e)}B.createProxyServer=ee;B.createServer=ee;B.createProxy=ee;Te.exports=B});var at=g((Tt,Se)=>{l();Se.exports=He()});export default at();