screw-up 1.14.1 → 1.15.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.
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  import { Logger } from './internal.js';
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  import { Logger } from './internal';
@@ -1 +1 @@
1
- {"version":3,"file":"cli-internal.d.ts","sourceRoot":"","sources":["../src/cli-internal.ts"],"names":[],"mappings":";;;;;;;;;AAiBA,OAAO,EAKL,MAAM,EACP,MAAM,YAAY,CAAC;AAyEpB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,GACrB,WAAW,MAAM,EACjB,WAAW,MAAM,EACjB,6BAA6B,OAAO,EACpC,8BAA8B,OAAO,EACrC,mBAAmB,GAAG,CAAC,MAAM,CAAC,EAC9B,uBAAuB,MAAM,GAAG,SAAS,EACzC,0BAA0B,OAAO,EACjC,uBAAuB,MAAM,EAC7B,QAAQ,MAAM,KACb,OAAO,CAAC,YAAY,GAAG,SAAS,CAmIlC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,GACvC,WAAW,MAAM,EACjB,kBAAkB,MAAM,OAAO,CAAC,GAAG,CAAC,EACpC,8BAA8B,OAAO,EACrC,mBAAmB,GAAG,CAAC,MAAM,CAAC,EAC9B,QAAQ,MAAM,EACd,iBAAgB,OAAe,KAC9B,OAAO,CAAC,GAAG,CAgBb,CAAC;AAIF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;CACpD;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GACpB,MAAM,MAAM,EAAE,EACd,cAAc,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,KACrC,UAyCF,CAAC"}
1
+ {"version":3,"file":"cli-internal.d.ts","sourceRoot":"","sources":["../src/cli-internal.ts"],"names":[],"mappings":";;;;;;;;;AAiBA,OAAO,EAKL,MAAM,EACP,MAAM,YAAY,CAAC;AAyEpB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,GACrB,WAAW,MAAM,EACjB,WAAW,MAAM,EACjB,6BAA6B,OAAO,EACpC,8BAA8B,OAAO,EACrC,mBAAmB,GAAG,CAAC,MAAM,CAAC,EAC9B,uBAAuB,MAAM,GAAG,SAAS,EACzC,0BAA0B,OAAO,EACjC,uBAAuB,MAAM,EAC7B,QAAQ,MAAM,KACb,OAAO,CAAC,YAAY,GAAG,SAAS,CAmIlC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,GACvC,WAAW,MAAM,EACjB,kBAAkB,MAAM,OAAO,CAAC,GAAG,CAAC,EACpC,8BAA8B,OAAO,EACrC,mBAAmB,GAAG,CAAC,MAAM,CAAC,EAC9B,QAAQ,MAAM,EACd,iBAAgB,OAAe,KAC9B,OAAO,CAAC,GAAG,CAgBb,CAAC;AAIF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;CACpD;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GACpB,MAAM,MAAM,EAAE,EACd,cAAc,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,KACrC,UAiDF,CAAC"}
package/dist/cli.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  import { Logger } from './internal';
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;AAiBA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AA6cpC,eAAO,MAAM,OAAO,GAClB,MAAM,MAAM,EAAE,EACd,QAAQ,MAAM,KACb,OAAO,CAAC,MAAM,CA4BhB,CAAC"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;AAiBA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAypBpC,eAAO,MAAM,OAAO,GAClB,MAAM,MAAM,EAAE,EACd,QAAQ,MAAM,KACb,OAAO,CAAC,MAAM,CA8BhB,CAAC"}
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  import { Logger } from './internal.js';
@@ -1,18 +1,18 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  export declare const name = "screw-up";
12
- export declare const version = "1.14.1";
12
+ export declare const version = "1.15.0";
13
13
  export declare const description = "Simply package metadata inserter on Vite plugin";
14
14
  export declare const author = "Kouji Matsui (@kekyo@mi.kekyo.net)";
15
15
  export declare const license = "MIT";
16
16
  export declare const repository_url = "https://github.com/kekyo/screw-up.git";
17
- export declare const git_commit_hash = "e56be312448cbae9f30fa0841439ee856f93d60e";
17
+ export declare const git_commit_hash = "6342e8bf692322743d3cdc8d8815c1ae45b7162d";
18
18
  //# sourceMappingURL=packageMetadata.d.ts.map
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  import { TagInfo, Version } from './analyzer';
package/dist/index.cjs CHANGED
@@ -1,17 +1,17 @@
1
1
  "use strict";
2
2
  /*!
3
3
  * name: screw-up
4
- * version: 1.14.1
4
+ * version: 1.15.0
5
5
  * description: Simply package metadata inserter on Vite plugin
6
6
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
7
7
  * license: MIT
8
8
  * repository.url: https://github.com/kekyo/screw-up.git
9
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
9
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
10
10
  */
11
11
  const fs = require("fs/promises");
12
12
  const fs$1 = require("fs");
13
13
  const path = require("path");
14
- const packageMetadata = require("./packageMetadata-Barm17zZ.cjs");
14
+ const packageMetadata = require("./packageMetadata-BP1lkMwy.cjs");
15
15
  /*!
16
16
  * name: async-primitives
17
17
  * version: 1.2.0
package/dist/index.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  import { screwUp } from './vite-plugin';
package/dist/index.js CHANGED
@@ -1,16 +1,16 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
  import { readdir, readFile, writeFile, mkdir } from "fs/promises";
11
11
  import { existsSync } from "fs";
12
12
  import { join, dirname, basename } from "path";
13
- import { c as createConsoleLogger, n as name, g as getFetchGitMetadata, v as version, a as git_commit_hash, r as resolvePackageMetadata } from "./packageMetadata-DOqeCvCs.js";
13
+ import { c as createConsoleLogger, n as name, g as getFetchGitMetadata, v as version, a as git_commit_hash, r as resolvePackageMetadata } from "./packageMetadata-DFL693kZ.js";
14
14
  /*!
15
15
  * name: async-primitives
16
16
  * version: 1.2.0
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * name: screw-up
3
- * version: 1.14.1
3
+ * version: 1.15.0
4
4
  * description: Simply package metadata inserter on Vite plugin
5
5
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
6
6
  * license: MIT
7
7
  * repository.url: https://github.com/kekyo/screw-up.git
8
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
8
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
9
9
  */
10
10
 
11
11
  import { PackageMetadata } from './types';
package/dist/main.cjs CHANGED
@@ -2,12 +2,12 @@
2
2
  "use strict";
3
3
  /*!
4
4
  * name: screw-up
5
- * version: 1.14.1
5
+ * version: 1.15.0
6
6
  * description: Simply package metadata inserter on Vite plugin
7
7
  * author: Kouji Matsui (@kekyo@mi.kekyo.net)
8
8
  * license: MIT
9
9
  * repository.url: https://github.com/kekyo/screw-up.git
10
- * git.commit.hash: e56be312448cbae9f30fa0841439ee856f93d60e
10
+ * git.commit.hash: 6342e8bf692322743d3cdc8d8815c1ae45b7162d
11
11
  */
12
12
  const path = require("path");
13
13
  const fs$1 = require("fs");
@@ -17,7 +17,7 @@ const os = require("os");
17
17
  const stream = require("stream");
18
18
  const zlib = require("zlib");
19
19
  const promises = require("stream/promises");
20
- const packageMetadata = require("./packageMetadata-Barm17zZ.cjs");
20
+ const packageMetadata = require("./packageMetadata-BP1lkMwy.cjs");
21
21
  /*!
22
22
  * name: tar-vern
23
23
  * version: 1.3.0
@@ -812,7 +812,7 @@ const parseArgs = (args, argOptionMap2) => {
812
812
  result.options[optionName] = true;
813
813
  } else {
814
814
  const argOptions = argOptionMap2.get(result.command);
815
- if (argOptions.has(optionName)) {
815
+ if (argOptions == null ? void 0 : argOptions.has(optionName)) {
816
816
  i++;
817
817
  result.options[optionName] = args[i];
818
818
  } else {
@@ -822,7 +822,13 @@ const parseArgs = (args, argOptionMap2) => {
822
822
  } else if (arg.startsWith("-")) {
823
823
  const optionName = arg.slice(1);
824
824
  if (optionName.length == 1) {
825
- result.options[optionName] = true;
825
+ const argOptions = result.command ? argOptionMap2.get(result.command) : void 0;
826
+ if (argOptions == null ? void 0 : argOptions.has(optionName)) {
827
+ i++;
828
+ result.options[optionName] = args[i];
829
+ } else {
830
+ result.options[optionName] = true;
831
+ }
826
832
  }
827
833
  } else if (!result.command) {
828
834
  result.command = arg;
@@ -854,6 +860,165 @@ const parseInheritableFields = (inheritableFieldsOption) => {
854
860
  inheritableFieldsOption.split(",").map((field) => field.trim()).filter((field) => field.length > 0)
855
861
  );
856
862
  };
863
+ const readInputText = async (inputPath) => {
864
+ if (inputPath) {
865
+ const resolvedPath = path.resolve(inputPath);
866
+ return await fs.readFile(resolvedPath, "utf-8");
867
+ }
868
+ return await new Promise((resolvePromise, rejectPromise) => {
869
+ let data = "";
870
+ process.stdin.setEncoding("utf-8");
871
+ process.stdin.on("data", (chunk) => {
872
+ data += chunk;
873
+ });
874
+ process.stdin.on("end", () => resolvePromise(data));
875
+ process.stdin.on("error", (err) => rejectPromise(err));
876
+ });
877
+ };
878
+ const escapeRegExp = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
879
+ const getValueByPath = (source, path2) => {
880
+ return path2.split(".").reduce((current, key) => {
881
+ if (current === void 0 || current === null) {
882
+ return void 0;
883
+ }
884
+ if (typeof current !== "object" && !Array.isArray(current)) {
885
+ return void 0;
886
+ }
887
+ return current[key];
888
+ }, source);
889
+ };
890
+ const stringifyValue = (value) => {
891
+ if (value === void 0) {
892
+ return void 0;
893
+ }
894
+ if (value === null) {
895
+ return "null";
896
+ }
897
+ if (typeof value === "object") {
898
+ try {
899
+ return JSON.stringify(value);
900
+ } catch (e) {
901
+ return String(value);
902
+ }
903
+ }
904
+ return String(value);
905
+ };
906
+ const replacePlaceholders = (text, values, openBracket, closeBracket) => {
907
+ const pattern = new RegExp(
908
+ `${escapeRegExp(openBracket)}(.*?)${escapeRegExp(closeBracket)}`,
909
+ "g"
910
+ );
911
+ return text.replace(pattern, (match, key) => {
912
+ const trimmedKey = String(key).trim();
913
+ const resolvedValue = stringifyValue(getValueByPath(values, trimmedKey));
914
+ return resolvedValue !== void 0 ? resolvedValue : match;
915
+ });
916
+ };
917
+ const showFormatHelp = () => {
918
+ console.info(`Usage: screw-up format [options] [output]
919
+
920
+ Format input text by replacing placeholders with package metadata
921
+
922
+ Arguments:
923
+ output Optional output file path (default: stdout)
924
+
925
+ Options:
926
+ -i, --input <path> Input template file (default: stdin)
927
+ -b, --bracket <open,close> Placeholder brackets (default: {,})
928
+ --inheritable-fields <list> Comma-separated list of fields to inherit from parent
929
+ --no-wds Do not check working directory status to increase version
930
+ --no-git-version-override Do not override version from Git (use package.json version)
931
+ -f, --force Allow formatting even if package.json does not exist
932
+ -h, --help Show help for format command
933
+ `);
934
+ };
935
+ const parseBracketOption = (bracketOption) => {
936
+ if (!bracketOption) {
937
+ return { openBracket: "{", closeBracket: "}" };
938
+ }
939
+ const delimiterIndex = bracketOption.indexOf(",");
940
+ if (delimiterIndex === -1) {
941
+ return void 0;
942
+ }
943
+ const openBracket = bracketOption.slice(0, delimiterIndex);
944
+ const closeBracket = bracketOption.slice(delimiterIndex + 1);
945
+ if (!openBracket || !closeBracket) {
946
+ return void 0;
947
+ }
948
+ return { openBracket, closeBracket };
949
+ };
950
+ const formatCommand = async (args, logger2) => {
951
+ var _a, _b;
952
+ if (args.options.help || args.options.h) {
953
+ showFormatHelp();
954
+ return 1;
955
+ }
956
+ const outputPath = args.positional[0];
957
+ const inputPathOption = (_a = args.options["input"]) != null ? _a : args.options["i"];
958
+ const bracketOption = (_b = args.options["bracket"]) != null ? _b : args.options["b"];
959
+ const inheritableFieldsOption = args.options["inheritable-fields"];
960
+ const alwaysOverrideVersionFromGit = !args.options["no-git-version-override"];
961
+ const checkWorkingDirectoryStatus = args.options["no-wds"] ? false : true;
962
+ const ignorePackageJsonNotExist = args.options["force"] || args.options["f"] ? true : false;
963
+ const bracket = parseBracketOption(
964
+ typeof bracketOption === "string" ? bracketOption : void 0
965
+ );
966
+ if (!bracket) {
967
+ logger2.error(
968
+ 'format: Invalid bracket option, expected "open,close" pattern.'
969
+ );
970
+ return 1;
971
+ }
972
+ const { openBracket, closeBracket } = bracket;
973
+ const targetDir = path.resolve(process.cwd());
974
+ const inheritableFields = parseInheritableFields(inheritableFieldsOption);
975
+ const _logger = {
976
+ debug: (msg) => {
977
+ },
978
+ info: (msg) => {
979
+ },
980
+ warn: (msg) => {
981
+ },
982
+ error: logger2.error
983
+ };
984
+ try {
985
+ const fetchGitMetadata = packageMetadata.getFetchGitMetadata(
986
+ targetDir,
987
+ checkWorkingDirectoryStatus,
988
+ _logger
989
+ );
990
+ const computedPackageJson = await getComputedPackageJsonObject(
991
+ targetDir,
992
+ fetchGitMetadata,
993
+ alwaysOverrideVersionFromGit,
994
+ inheritableFields,
995
+ _logger,
996
+ ignorePackageJsonNotExist
997
+ );
998
+ if (!computedPackageJson) {
999
+ _logger.error(`format: Unable to read package.json from: ${targetDir}`);
1000
+ return 1;
1001
+ }
1002
+ const inputText = await readInputText(
1003
+ typeof inputPathOption === "string" ? inputPathOption : void 0
1004
+ );
1005
+ const formattedText = replacePlaceholders(
1006
+ inputText,
1007
+ computedPackageJson,
1008
+ openBracket,
1009
+ closeBracket
1010
+ );
1011
+ if (outputPath) {
1012
+ const resolvedOutputPath = path.resolve(outputPath);
1013
+ await fs.writeFile(resolvedOutputPath, formattedText);
1014
+ }
1015
+ process.stdout.write(formattedText);
1016
+ } catch (error) {
1017
+ _logger.error(`format: Failed to format text: ${error}`);
1018
+ return 1;
1019
+ }
1020
+ return 0;
1021
+ };
857
1022
  const showDumpHelp = () => {
858
1023
  console.info(`Usage: screw-up dump [options] [directory]
859
1024
 
@@ -1163,7 +1328,7 @@ const publishCommand = async (args, logger2) => {
1163
1328
  }
1164
1329
  };
1165
1330
  const showHelp = async () => {
1166
- const { author, license, repository_url, version, git_commit_hash } = await Promise.resolve().then(() => require("./packageMetadata-Barm17zZ.cjs")).then((n) => n.packageMetadata);
1331
+ const { author, license, repository_url, version, git_commit_hash } = await Promise.resolve().then(() => require("./packageMetadata-BP1lkMwy.cjs")).then((n) => n.packageMetadata);
1167
1332
  console.info(`screw-up [${version}-${git_commit_hash}]
1168
1333
  Easy package metadata inserter CLI
1169
1334
  Copyright (c) ${author}
@@ -1173,6 +1338,7 @@ License: ${license}
1173
1338
  Usage: screw-up <command> [options]
1174
1339
 
1175
1340
  Commands:
1341
+ format [output] Format text by replacing metadata placeholders
1176
1342
  dump [directory] Dump computed package.json as JSON
1177
1343
  pack [directory] Pack the project into a tar archive
1178
1344
  publish [directory|package.tgz] Publish the project
@@ -1181,6 +1347,7 @@ Options:
1181
1347
  -h, --help Show help
1182
1348
 
1183
1349
  Examples:
1350
+ screw-up format output.txt # Format stdin template and write to file
1184
1351
  screw-up dump # Dump computed package.json as JSON
1185
1352
  screw-up pack # Pack current directory
1186
1353
  screw-up pack --pack-destination ./dist # Pack to specific output directory
@@ -1199,6 +1366,7 @@ const argOptionMap = /* @__PURE__ */ new Map([
1199
1366
  "peer-deps-prefix"
1200
1367
  ])
1201
1368
  ],
1369
+ ["format", /* @__PURE__ */ new Set(["input", "i", "bracket", "b", "inheritable-fields"])],
1202
1370
  ["publish", /* @__PURE__ */ new Set(["inheritable-fields", "peer-deps-prefix"])]
1203
1371
  ]);
1204
1372
  const cliMain = async (args, logger2) => {
@@ -1208,6 +1376,8 @@ const cliMain = async (args, logger2) => {
1208
1376
  return 1;
1209
1377
  }
1210
1378
  switch (parsedArgs.command) {
1379
+ case "format":
1380
+ return await formatCommand(parsedArgs, logger2);
1211
1381
  case "dump":
1212
1382
  return await dumpCommand(parsedArgs, logger2);
1213
1383
  case "pack":