@shopify/cli-kit 2.0.10 → 2.0.13
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.
- package/CHANGELOG.md +6 -0
- package/dist/{index-8ab5821f.js → index-814fd0de.js} +186 -137
- package/dist/index-814fd0de.js.map +1 -0
- package/dist/index.d.ts +120 -141
- package/dist/index.js +1 -1
- package/dist/{multipart-parser-d7cd777b.js → multipart-parser-2aa3d069.js} +2 -2
- package/dist/{multipart-parser-d7cd777b.js.map → multipart-parser-2aa3d069.js.map} +1 -1
- package/package.json +4 -4
- package/dist/index-8ab5821f.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -8,8 +8,10 @@ import fastGlob from 'fast-glob';
|
|
|
8
8
|
import * as simple_git from 'simple-git';
|
|
9
9
|
import { platform } from 'node:process';
|
|
10
10
|
import { z } from 'zod';
|
|
11
|
+
import * as toml$1 from '@iarna/toml';
|
|
11
12
|
import Conf from 'conf';
|
|
12
|
-
import
|
|
13
|
+
import { RequestDocument, Variables } from 'graphql-request';
|
|
14
|
+
import { RequestInfo, RequestInit } from 'node-fetch';
|
|
13
15
|
import FormData from 'form-data';
|
|
14
16
|
import semver$1 from 'semver/classes/semver';
|
|
15
17
|
import coerce from 'semver/functions/coerce';
|
|
@@ -119,7 +121,9 @@ declare namespace error$1 {
|
|
|
119
121
|
|
|
120
122
|
interface ExecOptions {
|
|
121
123
|
cwd?: string;
|
|
122
|
-
env?:
|
|
124
|
+
env?: {
|
|
125
|
+
[key: string]: string | undefined;
|
|
126
|
+
};
|
|
123
127
|
stdout?: Writable;
|
|
124
128
|
stderr?: Writable;
|
|
125
129
|
stdin?: string;
|
|
@@ -178,7 +182,7 @@ declare function create(templateContent: string): (data: object) => Promise<stri
|
|
|
178
182
|
* @param to {string} Output directory.
|
|
179
183
|
* @param data {string} Data to feed the template engine.
|
|
180
184
|
*/
|
|
181
|
-
declare function recursiveDirectoryCopy(from: string, to: string, data:
|
|
185
|
+
declare function recursiveDirectoryCopy(from: string, to: string, data: object): Promise<void>;
|
|
182
186
|
|
|
183
187
|
declare const template_create: typeof create;
|
|
184
188
|
declare const template_recursiveDirectoryCopy: typeof recursiveDirectoryCopy;
|
|
@@ -381,21 +385,104 @@ declare namespace github {
|
|
|
381
385
|
};
|
|
382
386
|
}
|
|
383
387
|
|
|
384
|
-
declare
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
388
|
+
declare const dependencyManager: readonly ["yarn", "npm", "pnpm"];
|
|
389
|
+
declare type DependencyManager = typeof dependencyManager[number];
|
|
390
|
+
declare const PackageJsonNotFoundError: (directory: string) => Bug;
|
|
391
|
+
/**
|
|
392
|
+
* Returns the dependency manager used to run the create workflow.
|
|
393
|
+
* @param env {Object} The environment variables of the process in which the CLI runs.
|
|
394
|
+
* @returns The dependency manager
|
|
395
|
+
*/
|
|
396
|
+
declare function dependencyManagerUsedForCreating(env?: NodeJS.ProcessEnv): DependencyManager;
|
|
397
|
+
interface InstallNPMDependenciesRecursivelyOptions {
|
|
398
|
+
/**
|
|
399
|
+
* The dependency manager to use to install the dependencies.
|
|
400
|
+
*/
|
|
401
|
+
dependencyManager: DependencyManager;
|
|
402
|
+
/**
|
|
403
|
+
* The directory from where we'll find package.json's recursively
|
|
404
|
+
*/
|
|
405
|
+
directory: string;
|
|
406
|
+
/**
|
|
407
|
+
* Specifies the maximum depth of the glob search.
|
|
408
|
+
*/
|
|
409
|
+
deep?: number;
|
|
395
410
|
}
|
|
396
|
-
|
|
397
|
-
|
|
411
|
+
/**
|
|
412
|
+
* This function traverses down a directory tree to find directories containing a package.json
|
|
413
|
+
* and installs the dependencies if needed. To know if it's needed, it uses the "check" command
|
|
414
|
+
* provided by dependency managers.
|
|
415
|
+
* @param options {InstallNPMDependenciesRecursivelyOptions} Options to install dependencies recursively.
|
|
416
|
+
*/
|
|
417
|
+
declare function installNPMDependenciesRecursively(options: InstallNPMDependenciesRecursivelyOptions): Promise<void>;
|
|
418
|
+
/**
|
|
419
|
+
* Installs the dependencies in the given directory.
|
|
420
|
+
* @param directory {string} The directory that contains the package.json
|
|
421
|
+
* @param dependencyManager {DependencyManager} The dependency manager to use to install the dependencies.
|
|
422
|
+
* @param stdout {Writable} Standard output stream.
|
|
423
|
+
* @param stderr {Writable} Standard error stream.
|
|
424
|
+
* @param signal {AbortSignal} Abort signal.
|
|
425
|
+
* @returns stderr {Writable} Standard error stream.
|
|
426
|
+
*/
|
|
427
|
+
declare function install(directory: string, dependencyManager: DependencyManager, stdout?: Writable, stderr?: Writable, signal?: AbortSignal): Promise<void>;
|
|
428
|
+
/**
|
|
429
|
+
* Returns the name of the package configured in its package.json
|
|
430
|
+
* @param packageJsonPath {string} Path to the package.json file
|
|
431
|
+
* @returns A promise that resolves with the name.
|
|
432
|
+
*/
|
|
433
|
+
declare function getPackageName(packageJsonPath: string): Promise<string>;
|
|
434
|
+
/**
|
|
435
|
+
* Returns the list of production and dev dependencies of a package.json
|
|
436
|
+
* @param packageJsonPath {string} Path to the package.json file
|
|
437
|
+
* @returns A promise that resolves with the list of dependencies.
|
|
438
|
+
*/
|
|
439
|
+
declare function getDependencies(packageJsonPath: string): Promise<{
|
|
440
|
+
[key: string]: string;
|
|
441
|
+
}>;
|
|
442
|
+
interface AddNPMDependenciesIfNeededOptions {
|
|
443
|
+
/** How dependencies should be added */
|
|
444
|
+
type: DependencyType;
|
|
445
|
+
/** The dependency manager to use to add dependencies */
|
|
446
|
+
dependencyManager: DependencyManager;
|
|
447
|
+
/** The directory that contains the package.json where dependencies will be added */
|
|
448
|
+
directory: string;
|
|
449
|
+
/** Standard output coming from the underlying installation process */
|
|
450
|
+
stdout?: Writable;
|
|
451
|
+
/** Standard error coming from the underlying installation process */
|
|
452
|
+
stderr?: Writable;
|
|
453
|
+
/** Abort signal to stop the process */
|
|
454
|
+
signal?: AbortSignal;
|
|
398
455
|
}
|
|
456
|
+
/**
|
|
457
|
+
* Adds dependencies to a Node project (i.e. a project that has a package.json)
|
|
458
|
+
* @param dependencies {string[]} List of dependencies to be added.
|
|
459
|
+
* @param options {AddNPMDependenciesIfNeededOptions} Options for adding dependencies.
|
|
460
|
+
*/
|
|
461
|
+
declare function addNPMDependenciesIfNeeded(dependencies: string[], options: AddNPMDependenciesIfNeededOptions): Promise<void>;
|
|
462
|
+
|
|
463
|
+
declare const dependency_dependencyManager: typeof dependencyManager;
|
|
464
|
+
type dependency_DependencyManager = DependencyManager;
|
|
465
|
+
declare const dependency_PackageJsonNotFoundError: typeof PackageJsonNotFoundError;
|
|
466
|
+
declare const dependency_dependencyManagerUsedForCreating: typeof dependencyManagerUsedForCreating;
|
|
467
|
+
declare const dependency_installNPMDependenciesRecursively: typeof installNPMDependenciesRecursively;
|
|
468
|
+
declare const dependency_install: typeof install;
|
|
469
|
+
declare const dependency_getPackageName: typeof getPackageName;
|
|
470
|
+
declare const dependency_getDependencies: typeof getDependencies;
|
|
471
|
+
declare const dependency_addNPMDependenciesIfNeeded: typeof addNPMDependenciesIfNeeded;
|
|
472
|
+
declare namespace dependency {
|
|
473
|
+
export {
|
|
474
|
+
dependency_dependencyManager as dependencyManager,
|
|
475
|
+
dependency_DependencyManager as DependencyManager,
|
|
476
|
+
dependency_PackageJsonNotFoundError as PackageJsonNotFoundError,
|
|
477
|
+
dependency_dependencyManagerUsedForCreating as dependencyManagerUsedForCreating,
|
|
478
|
+
dependency_installNPMDependenciesRecursively as installNPMDependenciesRecursively,
|
|
479
|
+
dependency_install as install,
|
|
480
|
+
dependency_getPackageName as getPackageName,
|
|
481
|
+
dependency_getDependencies as getDependencies,
|
|
482
|
+
dependency_addNPMDependenciesIfNeeded as addNPMDependenciesIfNeeded,
|
|
483
|
+
};
|
|
484
|
+
}
|
|
485
|
+
|
|
399
486
|
declare class ContentToken {
|
|
400
487
|
type: ContentTokenType;
|
|
401
488
|
value: string;
|
|
@@ -403,7 +490,7 @@ declare class ContentToken {
|
|
|
403
490
|
constructor(value: string, metadata: ContentMetadata | undefined, type: ContentTokenType);
|
|
404
491
|
}
|
|
405
492
|
declare const token: {
|
|
406
|
-
|
|
493
|
+
genericShellCommand: (value: string) => ContentToken;
|
|
407
494
|
path: (value: string) => ContentToken;
|
|
408
495
|
link: (value: string, link: string) => ContentToken;
|
|
409
496
|
heading: (value: string) => ContentToken;
|
|
@@ -413,6 +500,7 @@ declare const token: {
|
|
|
413
500
|
yellow: (value: string) => ContentToken;
|
|
414
501
|
magenta: (value: string) => ContentToken;
|
|
415
502
|
green: (value: string) => ContentToken;
|
|
503
|
+
command: (dependencyManager: DependencyManager, scriptNameAndArgs: string) => ContentToken;
|
|
416
504
|
};
|
|
417
505
|
declare class TokenizedString {
|
|
418
506
|
value: string;
|
|
@@ -542,105 +630,6 @@ declare namespace output {
|
|
|
542
630
|
};
|
|
543
631
|
}
|
|
544
632
|
|
|
545
|
-
declare const dependencyManager: readonly ["yarn", "npm", "pnpm"];
|
|
546
|
-
declare type DependencyManager = typeof dependencyManager[number];
|
|
547
|
-
declare const PackageJsonNotFoundError: (directory: string) => Bug;
|
|
548
|
-
/**
|
|
549
|
-
* Returns the dependency manager used to run the create workflow.
|
|
550
|
-
* @param env {Object} The environment variables of the process in which the CLI runs.
|
|
551
|
-
* @returns The dependency manager
|
|
552
|
-
*/
|
|
553
|
-
declare function dependencyManagerUsedForCreating(env?: NodeJS.ProcessEnv): DependencyManager;
|
|
554
|
-
interface InstallNPMDependenciesRecursivelyOptions {
|
|
555
|
-
/**
|
|
556
|
-
* The dependency manager to use to install the dependencies.
|
|
557
|
-
*/
|
|
558
|
-
dependencyManager: DependencyManager;
|
|
559
|
-
/**
|
|
560
|
-
* The directory from where we'll find package.json's recursively
|
|
561
|
-
*/
|
|
562
|
-
directory: string;
|
|
563
|
-
/**
|
|
564
|
-
* Specifies the maximum depth of the glob search.
|
|
565
|
-
*/
|
|
566
|
-
deep?: number;
|
|
567
|
-
}
|
|
568
|
-
/**
|
|
569
|
-
* This function traverses down a directory tree to find directories containing a package.json
|
|
570
|
-
* and installs the dependencies if needed. To know if it's needed, it uses the "check" command
|
|
571
|
-
* provided by dependency managers.
|
|
572
|
-
* @param options {InstallNPMDependenciesRecursivelyOptions} Options to install dependencies recursively.
|
|
573
|
-
*/
|
|
574
|
-
declare function installNPMDependenciesRecursively(options: InstallNPMDependenciesRecursivelyOptions): Promise<void>;
|
|
575
|
-
/**
|
|
576
|
-
* Installs the dependencies in the given directory.
|
|
577
|
-
* @param directory {string} The directory that contains the package.json
|
|
578
|
-
* @param dependencyManager {DependencyManager} The dependency manager to use to install the dependencies.
|
|
579
|
-
* @param stdout {Writable} Standard output stream.
|
|
580
|
-
* @param stderr {Writable} Standard error stream.
|
|
581
|
-
* @param signal {AbortSignal} Abort signal.
|
|
582
|
-
* @returns stderr {Writable} Standard error stream.
|
|
583
|
-
*/
|
|
584
|
-
declare function install(directory: string, dependencyManager: DependencyManager, stdout?: Writable, stderr?: Writable, signal?: AbortSignal): Promise<void>;
|
|
585
|
-
/**
|
|
586
|
-
* Returns the name of the package configured in its package.json
|
|
587
|
-
* @param packageJsonPath {string} Path to the package.json file
|
|
588
|
-
* @returns A promise that resolves with the name.
|
|
589
|
-
*/
|
|
590
|
-
declare function getPackageName(packageJsonPath: string): Promise<string>;
|
|
591
|
-
/**
|
|
592
|
-
* Returns the list of production and dev dependencies of a package.json
|
|
593
|
-
* @param packageJsonPath {string} Path to the package.json file
|
|
594
|
-
* @returns A promise that resolves with the list of dependencies.
|
|
595
|
-
*/
|
|
596
|
-
declare function getDependencies(packageJsonPath: string): Promise<{
|
|
597
|
-
[key: string]: string;
|
|
598
|
-
}>;
|
|
599
|
-
declare type DependencyType = 'dev' | 'prod' | 'peer';
|
|
600
|
-
interface AddNPMDependenciesIfNeededOptions {
|
|
601
|
-
/** How dependencies should be added */
|
|
602
|
-
type: DependencyType;
|
|
603
|
-
/** The dependency manager to use to add dependencies */
|
|
604
|
-
dependencyManager: DependencyManager;
|
|
605
|
-
/** The directory that contains the package.json where dependencies will be added */
|
|
606
|
-
directory: string;
|
|
607
|
-
/** Standard output coming from the underlying installation process */
|
|
608
|
-
stdout?: Writable;
|
|
609
|
-
/** Standard error coming from the underlying installation process */
|
|
610
|
-
stderr?: Writable;
|
|
611
|
-
/** Abort signal to stop the process */
|
|
612
|
-
signal?: AbortSignal;
|
|
613
|
-
}
|
|
614
|
-
/**
|
|
615
|
-
* Adds dependencies to a Node project (i.e. a project that has a package.json)
|
|
616
|
-
* @param dependencies {string[]} List of dependencies to be added.
|
|
617
|
-
* @param options {AddNPMDependenciesIfNeededOptions} Options for adding dependencies.
|
|
618
|
-
*/
|
|
619
|
-
declare function addNPMDependenciesIfNeeded(dependencies: string[], options: AddNPMDependenciesIfNeededOptions): Promise<void>;
|
|
620
|
-
|
|
621
|
-
declare const dependency_dependencyManager: typeof dependencyManager;
|
|
622
|
-
type dependency_DependencyManager = DependencyManager;
|
|
623
|
-
declare const dependency_PackageJsonNotFoundError: typeof PackageJsonNotFoundError;
|
|
624
|
-
declare const dependency_dependencyManagerUsedForCreating: typeof dependencyManagerUsedForCreating;
|
|
625
|
-
declare const dependency_installNPMDependenciesRecursively: typeof installNPMDependenciesRecursively;
|
|
626
|
-
declare const dependency_install: typeof install;
|
|
627
|
-
declare const dependency_getPackageName: typeof getPackageName;
|
|
628
|
-
declare const dependency_getDependencies: typeof getDependencies;
|
|
629
|
-
declare const dependency_addNPMDependenciesIfNeeded: typeof addNPMDependenciesIfNeeded;
|
|
630
|
-
declare namespace dependency {
|
|
631
|
-
export {
|
|
632
|
-
dependency_dependencyManager as dependencyManager,
|
|
633
|
-
dependency_DependencyManager as DependencyManager,
|
|
634
|
-
dependency_PackageJsonNotFoundError as PackageJsonNotFoundError,
|
|
635
|
-
dependency_dependencyManagerUsedForCreating as dependencyManagerUsedForCreating,
|
|
636
|
-
dependency_installNPMDependenciesRecursively as installNPMDependenciesRecursively,
|
|
637
|
-
dependency_install as install,
|
|
638
|
-
dependency_getPackageName as getPackageName,
|
|
639
|
-
dependency_getDependencies as getDependencies,
|
|
640
|
-
dependency_addNPMDependenciesIfNeeded as addNPMDependenciesIfNeeded,
|
|
641
|
-
};
|
|
642
|
-
}
|
|
643
|
-
|
|
644
633
|
/**
|
|
645
634
|
* Returns the latest available version of an NPM package.
|
|
646
635
|
* @param name {string} The name of the NPM package.
|
|
@@ -816,10 +805,6 @@ declare namespace environment {
|
|
|
816
805
|
};
|
|
817
806
|
}
|
|
818
807
|
|
|
819
|
-
/**
|
|
820
|
-
* A scope supported by the Shopify Admin API.
|
|
821
|
-
*/
|
|
822
|
-
declare type AdminAPIScope = 'graphql' | 'themes' | 'collaborator' | string;
|
|
823
808
|
/**
|
|
824
809
|
* It represents the options to authenticate against the Shopify Admin API.
|
|
825
810
|
*/
|
|
@@ -829,18 +814,10 @@ interface AdminAPIOAuthOptions {
|
|
|
829
814
|
/** List of scopes to request permissions for */
|
|
830
815
|
scopes: AdminAPIScope[];
|
|
831
816
|
}
|
|
832
|
-
/**
|
|
833
|
-
* A scope supported by the Partners API.
|
|
834
|
-
*/
|
|
835
|
-
declare type PartnersAPIScope = 'cli' | string;
|
|
836
817
|
interface PartnersAPIOAuthOptions {
|
|
837
818
|
/** List of scopes to request permissions for */
|
|
838
819
|
scopes: PartnersAPIScope[];
|
|
839
820
|
}
|
|
840
|
-
/**
|
|
841
|
-
* A scope supported by the Storefront Renderer API.
|
|
842
|
-
*/
|
|
843
|
-
declare type StorefrontRendererScope = 'devtools' | string;
|
|
844
821
|
interface StorefrontRendererAPIOAuthOptions {
|
|
845
822
|
/** List of scopes to request permissions for */
|
|
846
823
|
scopes: StorefrontRendererScope[];
|
|
@@ -921,7 +898,7 @@ declare namespace schema {
|
|
|
921
898
|
}
|
|
922
899
|
|
|
923
900
|
declare function decode$1(input: string): object;
|
|
924
|
-
declare function encode$1(content:
|
|
901
|
+
declare function encode$1(content: toml$1.JsonMap): string;
|
|
925
902
|
|
|
926
903
|
declare namespace toml {
|
|
927
904
|
export {
|
|
@@ -930,8 +907,8 @@ declare namespace toml {
|
|
|
930
907
|
};
|
|
931
908
|
}
|
|
932
909
|
|
|
933
|
-
declare function decode(input: string):
|
|
934
|
-
declare function encode(content:
|
|
910
|
+
declare function decode(input: string): unknown;
|
|
911
|
+
declare function encode(content: unknown): string;
|
|
935
912
|
|
|
936
913
|
declare const yaml_decode: typeof decode;
|
|
937
914
|
declare const yaml_encode: typeof encode;
|
|
@@ -943,6 +920,7 @@ declare namespace yaml {
|
|
|
943
920
|
}
|
|
944
921
|
|
|
945
922
|
interface CachedAppInfo {
|
|
923
|
+
directory: string;
|
|
946
924
|
appId: string;
|
|
947
925
|
orgId?: string;
|
|
948
926
|
storeFqdn?: string;
|
|
@@ -952,12 +930,14 @@ interface ConfSchema {
|
|
|
952
930
|
themeStore: string;
|
|
953
931
|
}
|
|
954
932
|
declare const cliKit: Conf<ConfSchema>;
|
|
955
|
-
declare function getAppInfo(
|
|
956
|
-
declare function setAppInfo(
|
|
933
|
+
declare function getAppInfo(directory: string): CachedAppInfo | undefined;
|
|
934
|
+
declare function setAppInfo(options: {
|
|
935
|
+
directory: string;
|
|
936
|
+
appId: string;
|
|
957
937
|
storeFqdn?: string;
|
|
958
938
|
orgId?: string;
|
|
959
939
|
}): void;
|
|
960
|
-
declare function clearAppInfo(
|
|
940
|
+
declare function clearAppInfo(directory: string): void;
|
|
961
941
|
declare function getThemeStore(): string | undefined;
|
|
962
942
|
declare function setThemeStore(store: string): void;
|
|
963
943
|
|
|
@@ -980,7 +960,7 @@ declare namespace store {
|
|
|
980
960
|
};
|
|
981
961
|
}
|
|
982
962
|
|
|
983
|
-
declare function request$1<T>(query:
|
|
963
|
+
declare function request$1<T>(query: RequestDocument, session: AdminSession, variables?: Variables): Promise<T>;
|
|
984
964
|
|
|
985
965
|
declare namespace admin {
|
|
986
966
|
export {
|
|
@@ -988,7 +968,7 @@ declare namespace admin {
|
|
|
988
968
|
};
|
|
989
969
|
}
|
|
990
970
|
|
|
991
|
-
declare function request<T>(query:
|
|
971
|
+
declare function request<T>(query: RequestDocument, token: string, variables?: Variables): Promise<T>;
|
|
992
972
|
|
|
993
973
|
declare const partners_request: typeof request;
|
|
994
974
|
declare namespace partners {
|
|
@@ -1192,7 +1172,7 @@ interface ExtensionCreateVariables {
|
|
|
1192
1172
|
apiKey: string;
|
|
1193
1173
|
type: string;
|
|
1194
1174
|
title: string;
|
|
1195
|
-
config:
|
|
1175
|
+
config: string;
|
|
1196
1176
|
context?: string | null;
|
|
1197
1177
|
}
|
|
1198
1178
|
interface ExtensionCreateSchema {
|
|
@@ -1379,7 +1359,6 @@ declare namespace semver {
|
|
|
1379
1359
|
interface JSON {
|
|
1380
1360
|
[key: string]: JSONValue;
|
|
1381
1361
|
}
|
|
1382
|
-
declare type JSONValue = string | number | boolean | JSON | JSONValue[];
|
|
1383
1362
|
interface PackageJSON extends JSON {
|
|
1384
1363
|
name: string;
|
|
1385
1364
|
author: string;
|
|
@@ -1449,11 +1428,14 @@ declare namespace cli {
|
|
|
1449
1428
|
* @returns {string} The random UUID generated.
|
|
1450
1429
|
*/
|
|
1451
1430
|
declare const generateRandomUUID: () => string;
|
|
1431
|
+
declare const generateShortId: () => string;
|
|
1452
1432
|
|
|
1453
1433
|
declare const id_generateRandomUUID: typeof generateRandomUUID;
|
|
1434
|
+
declare const id_generateShortId: typeof generateShortId;
|
|
1454
1435
|
declare namespace id {
|
|
1455
1436
|
export {
|
|
1456
1437
|
id_generateRandomUUID as generateRandomUUID,
|
|
1438
|
+
id_generateShortId as generateShortId,
|
|
1457
1439
|
};
|
|
1458
1440
|
}
|
|
1459
1441
|
|
|
@@ -1567,9 +1549,6 @@ declare const constants: {
|
|
|
1567
1549
|
interface TunnelPlugin {
|
|
1568
1550
|
start: (options: TunnelStartOptions) => Promise<string>;
|
|
1569
1551
|
}
|
|
1570
|
-
interface TunnelStartOptions {
|
|
1571
|
-
port: number;
|
|
1572
|
-
}
|
|
1573
1552
|
declare function lookupTunnelPlugin(plugins: Plugin[]): Promise<TunnelPlugin | undefined>;
|
|
1574
1553
|
|
|
1575
1554
|
declare const plugins_lookupTunnelPlugin: typeof lookupTunnelPlugin;
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { n as api, r as archiver, w as checksum, C as cli, H as constants, d as dependency, G as dotenv, i as environment, e as error, f as file, g as git, c as github, q as http, D as id, A as npm, h as os, o as output, p as path, I as plugins, B as port, x as ruby, k as schema, z as semver, j as session, m as store, b as string, s as system, t as template, E as temporary, l as toml, u as ui, v as version, y as yaml } from './index-
|
|
1
|
+
export { n as api, r as archiver, w as checksum, C as cli, H as constants, d as dependency, G as dotenv, i as environment, e as error, f as file, g as git, c as github, q as http, D as id, A as npm, h as os, o as output, p as path, I as plugins, B as port, x as ruby, k as schema, z as semver, j as session, m as store, b as string, s as system, t as template, E as temporary, l as toml, u as ui, v as version, y as yaml } from './index-814fd0de.js';
|
|
2
2
|
import 'assert';
|
|
3
3
|
import 'events';
|
|
4
4
|
import 'readline';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import 'node:fs';
|
|
2
2
|
import 'node:path';
|
|
3
|
-
import { F as FormData, a as File } from './index-
|
|
3
|
+
import { F as FormData, a as File } from './index-814fd0de.js';
|
|
4
4
|
import 'assert';
|
|
5
5
|
import 'events';
|
|
6
6
|
import 'readline';
|
|
@@ -471,4 +471,4 @@ async function toFormData(Body, ct) {
|
|
|
471
471
|
}
|
|
472
472
|
|
|
473
473
|
export { toFormData };
|
|
474
|
-
//# sourceMappingURL=multipart-parser-
|
|
474
|
+
//# sourceMappingURL=multipart-parser-2aa3d069.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multipart-parser-d7cd777b.js","sources":["../node_modules/node-fetch/src/utils/multipart-parser.js"],"sourcesContent":["import {File} from 'fetch-blob/from.js';\nimport {FormData} from 'formdata-polyfill/esm.min.js';\n\nlet s = 0;\nconst S = {\n\tSTART_BOUNDARY: s++,\n\tHEADER_FIELD_START: s++,\n\tHEADER_FIELD: s++,\n\tHEADER_VALUE_START: s++,\n\tHEADER_VALUE: s++,\n\tHEADER_VALUE_ALMOST_DONE: s++,\n\tHEADERS_ALMOST_DONE: s++,\n\tPART_DATA_START: s++,\n\tPART_DATA: s++,\n\tEND: s++\n};\n\nlet f = 1;\nconst F = {\n\tPART_BOUNDARY: f,\n\tLAST_BOUNDARY: f *= 2\n};\n\nconst LF = 10;\nconst CR = 13;\nconst SPACE = 32;\nconst HYPHEN = 45;\nconst COLON = 58;\nconst A = 97;\nconst Z = 122;\n\nconst lower = c => c | 0x20;\n\nconst noop = () => {};\n\nclass MultipartParser {\n\t/**\n\t * @param {string} boundary\n\t */\n\tconstructor(boundary) {\n\t\tthis.index = 0;\n\t\tthis.flags = 0;\n\n\t\tthis.onHeaderEnd = noop;\n\t\tthis.onHeaderField = noop;\n\t\tthis.onHeadersEnd = noop;\n\t\tthis.onHeaderValue = noop;\n\t\tthis.onPartBegin = noop;\n\t\tthis.onPartData = noop;\n\t\tthis.onPartEnd = noop;\n\n\t\tthis.boundaryChars = {};\n\n\t\tboundary = '\\r\\n--' + boundary;\n\t\tconst ui8a = new Uint8Array(boundary.length);\n\t\tfor (let i = 0; i < boundary.length; i++) {\n\t\t\tui8a[i] = boundary.charCodeAt(i);\n\t\t\tthis.boundaryChars[ui8a[i]] = true;\n\t\t}\n\n\t\tthis.boundary = ui8a;\n\t\tthis.lookbehind = new Uint8Array(this.boundary.length + 8);\n\t\tthis.state = S.START_BOUNDARY;\n\t}\n\n\t/**\n\t * @param {Uint8Array} data\n\t */\n\twrite(data) {\n\t\tlet i = 0;\n\t\tconst length_ = data.length;\n\t\tlet previousIndex = this.index;\n\t\tlet {lookbehind, boundary, boundaryChars, index, state, flags} = this;\n\t\tconst boundaryLength = this.boundary.length;\n\t\tconst boundaryEnd = boundaryLength - 1;\n\t\tconst bufferLength = data.length;\n\t\tlet c;\n\t\tlet cl;\n\n\t\tconst mark = name => {\n\t\t\tthis[name + 'Mark'] = i;\n\t\t};\n\n\t\tconst clear = name => {\n\t\t\tdelete this[name + 'Mark'];\n\t\t};\n\n\t\tconst callback = (callbackSymbol, start, end, ui8a) => {\n\t\t\tif (start === undefined || start !== end) {\n\t\t\t\tthis[callbackSymbol](ui8a && ui8a.subarray(start, end));\n\t\t\t}\n\t\t};\n\n\t\tconst dataCallback = (name, clear) => {\n\t\t\tconst markSymbol = name + 'Mark';\n\t\t\tif (!(markSymbol in this)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (clear) {\n\t\t\t\tcallback(name, this[markSymbol], i, data);\n\t\t\t\tdelete this[markSymbol];\n\t\t\t} else {\n\t\t\t\tcallback(name, this[markSymbol], data.length, data);\n\t\t\t\tthis[markSymbol] = 0;\n\t\t\t}\n\t\t};\n\n\t\tfor (i = 0; i < length_; i++) {\n\t\t\tc = data[i];\n\n\t\t\tswitch (state) {\n\t\t\t\tcase S.START_BOUNDARY:\n\t\t\t\t\tif (index === boundary.length - 2) {\n\t\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\t\tflags |= F.LAST_BOUNDARY;\n\t\t\t\t\t\t} else if (c !== CR) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else if (index - 1 === boundary.length - 2) {\n\t\t\t\t\t\tif (flags & F.LAST_BOUNDARY && c === HYPHEN) {\n\t\t\t\t\t\t\tstate = S.END;\n\t\t\t\t\t\t\tflags = 0;\n\t\t\t\t\t\t} else if (!(flags & F.LAST_BOUNDARY) && c === LF) {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\tcallback('onPartBegin');\n\t\t\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c !== boundary[index + 2]) {\n\t\t\t\t\t\tindex = -2;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c === boundary[index + 2]) {\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_FIELD_START:\n\t\t\t\t\tstate = S.HEADER_FIELD;\n\t\t\t\t\tmark('onHeaderField');\n\t\t\t\t\tindex = 0;\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.HEADER_FIELD:\n\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\tclear('onHeaderField');\n\t\t\t\t\t\tstate = S.HEADERS_ALMOST_DONE;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tindex++;\n\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c === COLON) {\n\t\t\t\t\t\tif (index === 1) {\n\t\t\t\t\t\t\t// empty header field\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdataCallback('onHeaderField', true);\n\t\t\t\t\t\tstate = S.HEADER_VALUE_START;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tcl = lower(c);\n\t\t\t\t\tif (cl < A || cl > Z) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_VALUE_START:\n\t\t\t\t\tif (c === SPACE) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tmark('onHeaderValue');\n\t\t\t\t\tstate = S.HEADER_VALUE;\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.HEADER_VALUE:\n\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\tdataCallback('onHeaderValue', true);\n\t\t\t\t\t\tcallback('onHeaderEnd');\n\t\t\t\t\t\tstate = S.HEADER_VALUE_ALMOST_DONE;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_VALUE_ALMOST_DONE:\n\t\t\t\t\tif (c !== LF) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADERS_ALMOST_DONE:\n\t\t\t\t\tif (c !== LF) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tcallback('onHeadersEnd');\n\t\t\t\t\tstate = S.PART_DATA_START;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.PART_DATA_START:\n\t\t\t\t\tstate = S.PART_DATA;\n\t\t\t\t\tmark('onPartData');\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.PART_DATA:\n\t\t\t\t\tpreviousIndex = index;\n\n\t\t\t\t\tif (index === 0) {\n\t\t\t\t\t\t// boyer-moore derrived algorithm to safely skip non-boundary data\n\t\t\t\t\t\ti += boundaryEnd;\n\t\t\t\t\t\twhile (i < bufferLength && !(data[i] in boundaryChars)) {\n\t\t\t\t\t\t\ti += boundaryLength;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ti -= boundaryEnd;\n\t\t\t\t\t\tc = data[i];\n\t\t\t\t\t}\n\n\t\t\t\t\tif (index < boundary.length) {\n\t\t\t\t\t\tif (boundary[index] === c) {\n\t\t\t\t\t\t\tif (index === 0) {\n\t\t\t\t\t\t\t\tdataCallback('onPartData', true);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tindex++;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (index === boundary.length) {\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\t\t// CR = part boundary\n\t\t\t\t\t\t\tflags |= F.PART_BOUNDARY;\n\t\t\t\t\t\t} else if (c === HYPHEN) {\n\t\t\t\t\t\t\t// HYPHEN = end boundary\n\t\t\t\t\t\t\tflags |= F.LAST_BOUNDARY;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (index - 1 === boundary.length) {\n\t\t\t\t\t\tif (flags & F.PART_BOUNDARY) {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\tif (c === LF) {\n\t\t\t\t\t\t\t\t// unset the PART_BOUNDARY flag\n\t\t\t\t\t\t\t\tflags &= ~F.PART_BOUNDARY;\n\t\t\t\t\t\t\t\tcallback('onPartEnd');\n\t\t\t\t\t\t\t\tcallback('onPartBegin');\n\t\t\t\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (flags & F.LAST_BOUNDARY) {\n\t\t\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\t\t\tcallback('onPartEnd');\n\t\t\t\t\t\t\t\tstate = S.END;\n\t\t\t\t\t\t\t\tflags = 0;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (index > 0) {\n\t\t\t\t\t\t// when matching a possible boundary, keep a lookbehind reference\n\t\t\t\t\t\t// in case it turns out to be a false lead\n\t\t\t\t\t\tlookbehind[index - 1] = c;\n\t\t\t\t\t} else if (previousIndex > 0) {\n\t\t\t\t\t\t// if our boundary turned out to be rubbish, the captured lookbehind\n\t\t\t\t\t\t// belongs to partData\n\t\t\t\t\t\tconst _lookbehind = new Uint8Array(lookbehind.buffer, lookbehind.byteOffset, lookbehind.byteLength);\n\t\t\t\t\t\tcallback('onPartData', 0, previousIndex, _lookbehind);\n\t\t\t\t\t\tpreviousIndex = 0;\n\t\t\t\t\t\tmark('onPartData');\n\n\t\t\t\t\t\t// reconsider the current character even so it interrupted the sequence\n\t\t\t\t\t\t// it could be the beginning of a new sequence\n\t\t\t\t\t\ti--;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.END:\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error(`Unexpected state entered: ${state}`);\n\t\t\t}\n\t\t}\n\n\t\tdataCallback('onHeaderField');\n\t\tdataCallback('onHeaderValue');\n\t\tdataCallback('onPartData');\n\n\t\t// Update properties for the next call\n\t\tthis.index = index;\n\t\tthis.state = state;\n\t\tthis.flags = flags;\n\t}\n\n\tend() {\n\t\tif ((this.state === S.HEADER_FIELD_START && this.index === 0) ||\n\t\t\t(this.state === S.PART_DATA && this.index === this.boundary.length)) {\n\t\t\tthis.onPartEnd();\n\t\t} else if (this.state !== S.END) {\n\t\t\tthrow new Error('MultipartParser.end(): stream ended unexpectedly');\n\t\t}\n\t}\n}\n\nfunction _fileName(headerValue) {\n\t// matches either a quoted-string or a token (RFC 2616 section 19.5.1)\n\tconst m = headerValue.match(/\\bfilename=(\"(.*?)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))($|;\\s)/i);\n\tif (!m) {\n\t\treturn;\n\t}\n\n\tconst match = m[2] || m[3] || '';\n\tlet filename = match.slice(match.lastIndexOf('\\\\') + 1);\n\tfilename = filename.replace(/%22/g, '\"');\n\tfilename = filename.replace(/&#(\\d{4});/g, (m, code) => {\n\t\treturn String.fromCharCode(code);\n\t});\n\treturn filename;\n}\n\nexport async function toFormData(Body, ct) {\n\tif (!/multipart/i.test(ct)) {\n\t\tthrow new TypeError('Failed to fetch');\n\t}\n\n\tconst m = ct.match(/boundary=(?:\"([^\"]+)\"|([^;]+))/i);\n\n\tif (!m) {\n\t\tthrow new TypeError('no or bad content-type header, no multipart boundary');\n\t}\n\n\tconst parser = new MultipartParser(m[1] || m[2]);\n\n\tlet headerField;\n\tlet headerValue;\n\tlet entryValue;\n\tlet entryName;\n\tlet contentType;\n\tlet filename;\n\tconst entryChunks = [];\n\tconst formData = new FormData();\n\n\tconst onPartData = ui8a => {\n\t\tentryValue += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tconst appendToFile = ui8a => {\n\t\tentryChunks.push(ui8a);\n\t};\n\n\tconst appendFileToFormData = () => {\n\t\tconst file = new File(entryChunks, filename, {type: contentType});\n\t\tformData.append(entryName, file);\n\t};\n\n\tconst appendEntryToFormData = () => {\n\t\tformData.append(entryName, entryValue);\n\t};\n\n\tconst decoder = new TextDecoder('utf-8');\n\tdecoder.decode();\n\n\tparser.onPartBegin = function () {\n\t\tparser.onPartData = onPartData;\n\t\tparser.onPartEnd = appendEntryToFormData;\n\n\t\theaderField = '';\n\t\theaderValue = '';\n\t\tentryValue = '';\n\t\tentryName = '';\n\t\tcontentType = '';\n\t\tfilename = null;\n\t\tentryChunks.length = 0;\n\t};\n\n\tparser.onHeaderField = function (ui8a) {\n\t\theaderField += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tparser.onHeaderValue = function (ui8a) {\n\t\theaderValue += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tparser.onHeaderEnd = function () {\n\t\theaderValue += decoder.decode();\n\t\theaderField = headerField.toLowerCase();\n\n\t\tif (headerField === 'content-disposition') {\n\t\t\t// matches either a quoted-string or a token (RFC 2616 section 19.5.1)\n\t\t\tconst m = headerValue.match(/\\bname=(\"([^\"]*)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))/i);\n\n\t\t\tif (m) {\n\t\t\t\tentryName = m[2] || m[3] || '';\n\t\t\t}\n\n\t\t\tfilename = _fileName(headerValue);\n\n\t\t\tif (filename) {\n\t\t\t\tparser.onPartData = appendToFile;\n\t\t\t\tparser.onPartEnd = appendFileToFormData;\n\t\t\t}\n\t\t} else if (headerField === 'content-type') {\n\t\t\tcontentType = headerValue;\n\t\t}\n\n\t\theaderValue = '';\n\t\theaderField = '';\n\t};\n\n\tfor await (const chunk of Body) {\n\t\tparser.write(chunk);\n\t}\n\n\tparser.end();\n\n\treturn formData;\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"multipart-parser-2aa3d069.js","sources":["../node_modules/node-fetch/src/utils/multipart-parser.js"],"sourcesContent":["import {File} from 'fetch-blob/from.js';\nimport {FormData} from 'formdata-polyfill/esm.min.js';\n\nlet s = 0;\nconst S = {\n\tSTART_BOUNDARY: s++,\n\tHEADER_FIELD_START: s++,\n\tHEADER_FIELD: s++,\n\tHEADER_VALUE_START: s++,\n\tHEADER_VALUE: s++,\n\tHEADER_VALUE_ALMOST_DONE: s++,\n\tHEADERS_ALMOST_DONE: s++,\n\tPART_DATA_START: s++,\n\tPART_DATA: s++,\n\tEND: s++\n};\n\nlet f = 1;\nconst F = {\n\tPART_BOUNDARY: f,\n\tLAST_BOUNDARY: f *= 2\n};\n\nconst LF = 10;\nconst CR = 13;\nconst SPACE = 32;\nconst HYPHEN = 45;\nconst COLON = 58;\nconst A = 97;\nconst Z = 122;\n\nconst lower = c => c | 0x20;\n\nconst noop = () => {};\n\nclass MultipartParser {\n\t/**\n\t * @param {string} boundary\n\t */\n\tconstructor(boundary) {\n\t\tthis.index = 0;\n\t\tthis.flags = 0;\n\n\t\tthis.onHeaderEnd = noop;\n\t\tthis.onHeaderField = noop;\n\t\tthis.onHeadersEnd = noop;\n\t\tthis.onHeaderValue = noop;\n\t\tthis.onPartBegin = noop;\n\t\tthis.onPartData = noop;\n\t\tthis.onPartEnd = noop;\n\n\t\tthis.boundaryChars = {};\n\n\t\tboundary = '\\r\\n--' + boundary;\n\t\tconst ui8a = new Uint8Array(boundary.length);\n\t\tfor (let i = 0; i < boundary.length; i++) {\n\t\t\tui8a[i] = boundary.charCodeAt(i);\n\t\t\tthis.boundaryChars[ui8a[i]] = true;\n\t\t}\n\n\t\tthis.boundary = ui8a;\n\t\tthis.lookbehind = new Uint8Array(this.boundary.length + 8);\n\t\tthis.state = S.START_BOUNDARY;\n\t}\n\n\t/**\n\t * @param {Uint8Array} data\n\t */\n\twrite(data) {\n\t\tlet i = 0;\n\t\tconst length_ = data.length;\n\t\tlet previousIndex = this.index;\n\t\tlet {lookbehind, boundary, boundaryChars, index, state, flags} = this;\n\t\tconst boundaryLength = this.boundary.length;\n\t\tconst boundaryEnd = boundaryLength - 1;\n\t\tconst bufferLength = data.length;\n\t\tlet c;\n\t\tlet cl;\n\n\t\tconst mark = name => {\n\t\t\tthis[name + 'Mark'] = i;\n\t\t};\n\n\t\tconst clear = name => {\n\t\t\tdelete this[name + 'Mark'];\n\t\t};\n\n\t\tconst callback = (callbackSymbol, start, end, ui8a) => {\n\t\t\tif (start === undefined || start !== end) {\n\t\t\t\tthis[callbackSymbol](ui8a && ui8a.subarray(start, end));\n\t\t\t}\n\t\t};\n\n\t\tconst dataCallback = (name, clear) => {\n\t\t\tconst markSymbol = name + 'Mark';\n\t\t\tif (!(markSymbol in this)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (clear) {\n\t\t\t\tcallback(name, this[markSymbol], i, data);\n\t\t\t\tdelete this[markSymbol];\n\t\t\t} else {\n\t\t\t\tcallback(name, this[markSymbol], data.length, data);\n\t\t\t\tthis[markSymbol] = 0;\n\t\t\t}\n\t\t};\n\n\t\tfor (i = 0; i < length_; i++) {\n\t\t\tc = data[i];\n\n\t\t\tswitch (state) {\n\t\t\t\tcase S.START_BOUNDARY:\n\t\t\t\t\tif (index === boundary.length - 2) {\n\t\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\t\tflags |= F.LAST_BOUNDARY;\n\t\t\t\t\t\t} else if (c !== CR) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else if (index - 1 === boundary.length - 2) {\n\t\t\t\t\t\tif (flags & F.LAST_BOUNDARY && c === HYPHEN) {\n\t\t\t\t\t\t\tstate = S.END;\n\t\t\t\t\t\t\tflags = 0;\n\t\t\t\t\t\t} else if (!(flags & F.LAST_BOUNDARY) && c === LF) {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\tcallback('onPartBegin');\n\t\t\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c !== boundary[index + 2]) {\n\t\t\t\t\t\tindex = -2;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c === boundary[index + 2]) {\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_FIELD_START:\n\t\t\t\t\tstate = S.HEADER_FIELD;\n\t\t\t\t\tmark('onHeaderField');\n\t\t\t\t\tindex = 0;\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.HEADER_FIELD:\n\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\tclear('onHeaderField');\n\t\t\t\t\t\tstate = S.HEADERS_ALMOST_DONE;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tindex++;\n\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c === COLON) {\n\t\t\t\t\t\tif (index === 1) {\n\t\t\t\t\t\t\t// empty header field\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdataCallback('onHeaderField', true);\n\t\t\t\t\t\tstate = S.HEADER_VALUE_START;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tcl = lower(c);\n\t\t\t\t\tif (cl < A || cl > Z) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_VALUE_START:\n\t\t\t\t\tif (c === SPACE) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tmark('onHeaderValue');\n\t\t\t\t\tstate = S.HEADER_VALUE;\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.HEADER_VALUE:\n\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\tdataCallback('onHeaderValue', true);\n\t\t\t\t\t\tcallback('onHeaderEnd');\n\t\t\t\t\t\tstate = S.HEADER_VALUE_ALMOST_DONE;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_VALUE_ALMOST_DONE:\n\t\t\t\t\tif (c !== LF) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADERS_ALMOST_DONE:\n\t\t\t\t\tif (c !== LF) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tcallback('onHeadersEnd');\n\t\t\t\t\tstate = S.PART_DATA_START;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.PART_DATA_START:\n\t\t\t\t\tstate = S.PART_DATA;\n\t\t\t\t\tmark('onPartData');\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.PART_DATA:\n\t\t\t\t\tpreviousIndex = index;\n\n\t\t\t\t\tif (index === 0) {\n\t\t\t\t\t\t// boyer-moore derrived algorithm to safely skip non-boundary data\n\t\t\t\t\t\ti += boundaryEnd;\n\t\t\t\t\t\twhile (i < bufferLength && !(data[i] in boundaryChars)) {\n\t\t\t\t\t\t\ti += boundaryLength;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ti -= boundaryEnd;\n\t\t\t\t\t\tc = data[i];\n\t\t\t\t\t}\n\n\t\t\t\t\tif (index < boundary.length) {\n\t\t\t\t\t\tif (boundary[index] === c) {\n\t\t\t\t\t\t\tif (index === 0) {\n\t\t\t\t\t\t\t\tdataCallback('onPartData', true);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tindex++;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (index === boundary.length) {\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\t\t// CR = part boundary\n\t\t\t\t\t\t\tflags |= F.PART_BOUNDARY;\n\t\t\t\t\t\t} else if (c === HYPHEN) {\n\t\t\t\t\t\t\t// HYPHEN = end boundary\n\t\t\t\t\t\t\tflags |= F.LAST_BOUNDARY;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (index - 1 === boundary.length) {\n\t\t\t\t\t\tif (flags & F.PART_BOUNDARY) {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\tif (c === LF) {\n\t\t\t\t\t\t\t\t// unset the PART_BOUNDARY flag\n\t\t\t\t\t\t\t\tflags &= ~F.PART_BOUNDARY;\n\t\t\t\t\t\t\t\tcallback('onPartEnd');\n\t\t\t\t\t\t\t\tcallback('onPartBegin');\n\t\t\t\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (flags & F.LAST_BOUNDARY) {\n\t\t\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\t\t\tcallback('onPartEnd');\n\t\t\t\t\t\t\t\tstate = S.END;\n\t\t\t\t\t\t\t\tflags = 0;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (index > 0) {\n\t\t\t\t\t\t// when matching a possible boundary, keep a lookbehind reference\n\t\t\t\t\t\t// in case it turns out to be a false lead\n\t\t\t\t\t\tlookbehind[index - 1] = c;\n\t\t\t\t\t} else if (previousIndex > 0) {\n\t\t\t\t\t\t// if our boundary turned out to be rubbish, the captured lookbehind\n\t\t\t\t\t\t// belongs to partData\n\t\t\t\t\t\tconst _lookbehind = new Uint8Array(lookbehind.buffer, lookbehind.byteOffset, lookbehind.byteLength);\n\t\t\t\t\t\tcallback('onPartData', 0, previousIndex, _lookbehind);\n\t\t\t\t\t\tpreviousIndex = 0;\n\t\t\t\t\t\tmark('onPartData');\n\n\t\t\t\t\t\t// reconsider the current character even so it interrupted the sequence\n\t\t\t\t\t\t// it could be the beginning of a new sequence\n\t\t\t\t\t\ti--;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.END:\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error(`Unexpected state entered: ${state}`);\n\t\t\t}\n\t\t}\n\n\t\tdataCallback('onHeaderField');\n\t\tdataCallback('onHeaderValue');\n\t\tdataCallback('onPartData');\n\n\t\t// Update properties for the next call\n\t\tthis.index = index;\n\t\tthis.state = state;\n\t\tthis.flags = flags;\n\t}\n\n\tend() {\n\t\tif ((this.state === S.HEADER_FIELD_START && this.index === 0) ||\n\t\t\t(this.state === S.PART_DATA && this.index === this.boundary.length)) {\n\t\t\tthis.onPartEnd();\n\t\t} else if (this.state !== S.END) {\n\t\t\tthrow new Error('MultipartParser.end(): stream ended unexpectedly');\n\t\t}\n\t}\n}\n\nfunction _fileName(headerValue) {\n\t// matches either a quoted-string or a token (RFC 2616 section 19.5.1)\n\tconst m = headerValue.match(/\\bfilename=(\"(.*?)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))($|;\\s)/i);\n\tif (!m) {\n\t\treturn;\n\t}\n\n\tconst match = m[2] || m[3] || '';\n\tlet filename = match.slice(match.lastIndexOf('\\\\') + 1);\n\tfilename = filename.replace(/%22/g, '\"');\n\tfilename = filename.replace(/&#(\\d{4});/g, (m, code) => {\n\t\treturn String.fromCharCode(code);\n\t});\n\treturn filename;\n}\n\nexport async function toFormData(Body, ct) {\n\tif (!/multipart/i.test(ct)) {\n\t\tthrow new TypeError('Failed to fetch');\n\t}\n\n\tconst m = ct.match(/boundary=(?:\"([^\"]+)\"|([^;]+))/i);\n\n\tif (!m) {\n\t\tthrow new TypeError('no or bad content-type header, no multipart boundary');\n\t}\n\n\tconst parser = new MultipartParser(m[1] || m[2]);\n\n\tlet headerField;\n\tlet headerValue;\n\tlet entryValue;\n\tlet entryName;\n\tlet contentType;\n\tlet filename;\n\tconst entryChunks = [];\n\tconst formData = new FormData();\n\n\tconst onPartData = ui8a => {\n\t\tentryValue += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tconst appendToFile = ui8a => {\n\t\tentryChunks.push(ui8a);\n\t};\n\n\tconst appendFileToFormData = () => {\n\t\tconst file = new File(entryChunks, filename, {type: contentType});\n\t\tformData.append(entryName, file);\n\t};\n\n\tconst appendEntryToFormData = () => {\n\t\tformData.append(entryName, entryValue);\n\t};\n\n\tconst decoder = new TextDecoder('utf-8');\n\tdecoder.decode();\n\n\tparser.onPartBegin = function () {\n\t\tparser.onPartData = onPartData;\n\t\tparser.onPartEnd = appendEntryToFormData;\n\n\t\theaderField = '';\n\t\theaderValue = '';\n\t\tentryValue = '';\n\t\tentryName = '';\n\t\tcontentType = '';\n\t\tfilename = null;\n\t\tentryChunks.length = 0;\n\t};\n\n\tparser.onHeaderField = function (ui8a) {\n\t\theaderField += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tparser.onHeaderValue = function (ui8a) {\n\t\theaderValue += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tparser.onHeaderEnd = function () {\n\t\theaderValue += decoder.decode();\n\t\theaderField = headerField.toLowerCase();\n\n\t\tif (headerField === 'content-disposition') {\n\t\t\t// matches either a quoted-string or a token (RFC 2616 section 19.5.1)\n\t\t\tconst m = headerValue.match(/\\bname=(\"([^\"]*)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))/i);\n\n\t\t\tif (m) {\n\t\t\t\tentryName = m[2] || m[3] || '';\n\t\t\t}\n\n\t\t\tfilename = _fileName(headerValue);\n\n\t\t\tif (filename) {\n\t\t\t\tparser.onPartData = appendToFile;\n\t\t\t\tparser.onPartEnd = appendFileToFormData;\n\t\t\t}\n\t\t} else if (headerField === 'content-type') {\n\t\t\tcontentType = headerValue;\n\t\t}\n\n\t\theaderValue = '';\n\t\theaderField = '';\n\t};\n\n\tfor await (const chunk of Body) {\n\t\tparser.write(chunk);\n\t}\n\n\tparser.end();\n\n\treturn formData;\n}\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shopify/cli-kit",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.13",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A set of utilities, interfaces, and models that are common across all the platform features",
|
|
6
6
|
"keywords": [
|
|
@@ -51,11 +51,11 @@
|
|
|
51
51
|
],
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@oclif/core": "1.7.0",
|
|
54
|
+
"envfile": "^6.17.0",
|
|
54
55
|
"keytar": "^7.9.0",
|
|
55
56
|
"open": "^8.4.0",
|
|
56
57
|
"source-map-support": "^0.5.21",
|
|
57
|
-
"stacktracey": "^2.1.8"
|
|
58
|
-
"envfile": "^6.17.0"
|
|
58
|
+
"stacktracey": "^2.1.8"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
61
|
"@iarna/toml": "^2.2.5",
|
|
@@ -93,6 +93,6 @@
|
|
|
93
93
|
"term-size": "^3.0.1",
|
|
94
94
|
"terminal-link": "^3.0.0",
|
|
95
95
|
"vitest": "0.10.0",
|
|
96
|
-
"zod": "^3.
|
|
96
|
+
"zod": "^3.17.3"
|
|
97
97
|
}
|
|
98
98
|
}
|