optionkit 0.0.2 → 0.0.4

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/README.md CHANGED
@@ -1,14 +1,21 @@
1
1
  # optionkit
2
2
 
3
- `optionkit` turns a Zod configuration schema into CLI options. It adds
4
- environment-variable bindings, adds unambiguous short flags, and lazily loads
5
- the CLI stack without making Fireargs, Commander, or Zod runtime dependencies
6
- of this package.
3
+ Optionkit turns a Zod configuration schema into CLI options with useful defaults:
4
+ project-scoped environment variables, conflict-free short flags, structured
5
+ environment parsing, and lazy CLI dependency loading.
6
+
7
+ ## Install
8
+
9
+ ```sh
10
+ bun add optionkit
11
+ ```
12
+
13
+ ## Start with the defaults
7
14
 
8
15
  ```ts
9
16
  import { createOptionKit } from 'optionkit';
10
17
 
11
- const { f, z } = await createOptionKit({ moduleUrl: import.meta.url });
18
+ const { f, z } = await createOptionKit();
12
19
 
13
20
  const appOptionsSchema = z.object({
14
21
  port: z.number().default(3000).describe('Port to listen on.'),
@@ -27,108 +34,95 @@ const serve = f.command({ name: 'serve', description: 'Start the server.' })
27
34
  await serve.parseAsync(process.argv);
28
35
  ```
29
36
 
30
- If the consuming package is named `my-app`, the fields above receive
31
- `MY_APP_PORT`, `MY_APP_DEBUG`, and `MY_APP_LOG_LEVEL`. `port`, `debug`, and
32
- `logLevel` also receive `-p`, `-d`, and `-l` because their initials do not
33
- conflict. When two options share an initial, neither gets that automatic short
34
- flag.
35
-
36
- Adaptation happens at each command's `.input(...)` boundary. Subcommands need no
37
- special handling: build each leaf from its own schema, then mount the leaves with
38
- `f.program(...).router({ serve, status })`. Environment and short-flag conflicts
39
- are calculated independently for each leaf.
40
-
41
- ## Lazy CLI dependencies
42
-
43
- optionkit first resolves Fireargs and Zod from the consuming CLI package. If
44
- they are unavailable, it detects the package manager from the invocation
45
- directory and installs the pinned Fireargs and Zod ranges from the consuming
46
- package root. `cacheDirectory` opts into an isolated install explicitly; there
47
- is no default versioned cache. Fireargs' package metadata supplies its remaining
48
- peer dependencies. Optionkit restores the consuming manifest and lockfile
49
- byte-for-byte after installation, and installer output stays silent so JSON
50
- output is not polluted.
51
-
52
- Only `@antfu/install-pkg` is a runtime dependency of optionkit. Fireargs,
53
- Zod, and `clean-stack` are development dependencies whose ranges are generated
54
- into the build from the catalog in `pnpm-workspace.yaml`. A matching root
55
- catalog keeps Bun compatible, and verification fails if the two catalogs
56
- diverge. `src/_generated/catalog.ts` is a one-to-one runtime mirror of the root
57
- catalog. The stack cleaner is installed separately and best-effort: a failure
58
- never prevents the CLI from starting, and `formatError` falls back to the
59
- original stack. Fireargs and Zod are also declared as optional peers, so a
60
- consumer's compatible installation is reused without making either package a
61
- required install.
62
-
63
- Use the returned `z` when the consuming package does not otherwise depend on
64
- Zod. It always comes from the same dependency location as the CLI adapter:
37
+ For a package named `my-app`, this creates `MY_APP_PORT`, `MY_APP_DEBUG`, and
38
+ `MY_APP_LOG_LEVEL`. It also assigns `-p`, `-d`, and `-l`; when option initials
39
+ conflict, Optionkit leaves the ambiguous short flags out.
65
40
 
66
- ```ts
67
- const { f, z } = await createOptionKit({ moduleUrl: import.meta.url });
68
- const input = z.object({ verbose: z.boolean().default(false) });
69
- ```
41
+ `createOptionKit()` finds the consuming package from the executable at
42
+ `process.argv[1]`, falling back to `process.cwd()`, and walks upward to the nearest
43
+ `package.json`. Pass `moduleUrl` or `packageRoot` only when a host needs to make
44
+ that boundary explicit.
70
45
 
71
- Use `environmentPrefix` or `projectName` to override automatic package-name
72
- translation. Per-field `env` and `short` values can be overridden or disabled:
46
+ Each `.input(schema)` is adapted independently, so subcommands need no special
47
+ setup:
73
48
 
74
49
  ```ts
75
- await createOptionKit({
76
- environmentPrefix: 'SERVICE',
77
- fields: {
78
- debug: { env: false, short: 'x' },
79
- },
80
- moduleUrl: import.meta.url,
81
- });
50
+ const program = f.program({ name: 'app' }).router({ serve, status });
51
+ await program.parseAsync(process.argv);
82
52
  ```
83
53
 
84
- Array, tuple, object, and record options with generated environment bindings try
85
- JSON first because an environment variable supplies only one string. For example,
86
- `APP_TAGS='["one","two"]'` and `APP_ENV='{"PORT":"3000"}'` become their
87
- corresponding Zod input values. Arrays also accept comma- or whitespace-delimited
88
- shell words, including quotes and backslash escapes. If decoding does not apply,
89
- the original string reaches Zod as the final authority. Fireargs continues to
90
- handle scalar coercion. The same structured syntax works when passed as a flag.
91
- A consumer-supplied Fireargs `parse` function is forwarded unchanged and takes
92
- precedence over this augmentation. Every other per-option Fireargs configuration
93
- field is forwarded as well; command and program configuration remains available
94
- through the returned `f` namespace.
54
+ ### Environment values
95
55
 
96
- Fireargs programs currently show help when invoked without a subcommand. Optionkit
97
- does not override that dispatch: Commander only exposes a clean default-command
98
- switch while adding a command, whereas Fireargs owns that mounting step. A shim
99
- would either depend on Commander internals or duplicate Fireargs routing.
56
+ Scalar values keep Fireargs' normal coercion. Array, tuple, object, and record
57
+ environment values try JSON first:
100
58
 
101
- `resolvePackage` and `importPackageIfAvailable` expose the same resolve-first
102
- behavior for other optional integrations. They only suppress a genuinely
103
- missing package; initialization errors from an installed package still surface.
59
+ ```text
60
+ MY_APP_TAGS='["one","two"]'
61
+ MY_APP_ENV='{"PORT":"3000"}'
62
+ ```
104
63
 
105
- ## Pyfig migration
64
+ Arrays also accept comma- or whitespace-delimited shell words with quotes and
65
+ backslash escapes. Decoded arrays still use native variadic option handling, so
66
+ repeated CLI flags work normally. If decoding does not apply, Zod receives the
67
+ original value and remains the final validator.
106
68
 
107
- Pyfig can keep `pyfigOptionsSchema` as its API source of truth. Its CLI only
108
- needs to replace the manual loader; Optionkit adapts every command input:
69
+ ### Wrapper commands
109
70
 
110
- ```ts
111
- const { f, z } = await createOptionKit({
112
- log,
113
- moduleUrl: import.meta.url,
114
- });
71
+ `passThroughArguments` adds the pass-through command settings and a typed trailing
72
+ `args: string[]` input:
115
73
 
116
- const createInput = (passthrough = false) => pyfigOptionsSchema.unwrap().extend({
117
- ...(passthrough ? { args: f.argument().schema(passthroughArguments) } : {}),
118
- });
74
+ ```ts
75
+ const run = f.command({ name: 'run', passThroughArguments: true })
76
+ .input(appOptionsSchema)
77
+ .output(z.void())
78
+ .handler(async ({ args, ...config }) => runExecutable(config, args));
119
79
  ```
120
80
 
121
- The command, router, output schemas, handlers, and passthrough behavior do not
122
- change. `PYFIG_*` names and conflict-free short flags are derived automatically.
123
- Pyfig needs only `optionkit` for its CLI integration; it does not need its own
124
- Fireargs peer metadata, Fireargs development dependency, or install helper.
81
+ Use `{ description: '...' }` instead of `true` to change the generated positional
82
+ help text.
125
83
 
126
- ## Install
84
+ ## Override only what differs
127
85
 
128
- ```sh
129
- bun add optionkit
86
+ ```ts
87
+ const kit = await createOptionKit({
88
+ environmentPrefix: 'SERVICE',
89
+ fields: {
90
+ debug: { env: false, short: 'x' },
91
+ },
92
+ moduleUrl: import.meta.url,
93
+ reservedShortFlags: ['v'],
94
+ });
130
95
  ```
131
96
 
97
+ Available Optionkit-level controls include `projectName`, `environmentPrefix`,
98
+ `shortFlags`, `reservedShortFlags`, per-field metadata, `invocationDirectory`, and
99
+ an explicit `cacheDirectory`. A parser registered through `f.option({ parse })`
100
+ or the `fields` setting is forwarded unchanged and bypasses automatic structured
101
+ decoding.
102
+
103
+ The returned `f` keeps the underlying command, program, option, and argument
104
+ configuration available. Refer to the [Fireargs package](https://www.npmjs.com/package/fireargs)
105
+ for those builder options instead of learning a second configuration vocabulary.
106
+
107
+ ## Dependency loading and errors
108
+
109
+ Optionkit first reuses compatible Fireargs and Zod installations from the
110
+ consuming package. If either is missing, it detects the caller's package manager
111
+ and installs the catalog ranges from the consuming package root without changing
112
+ the manifest or lockfile. `cacheDirectory` explicitly opts into an isolated
113
+ installation; there is no default version cache.
114
+
115
+ `@antfu/install-pkg` is Optionkit's only hard runtime dependency. Fireargs, Zod,
116
+ and `clean-stack` are optional peers and development dependencies. Their ranges
117
+ live in the package catalog and are generated into `src/_generated/catalog.ts` as
118
+ a one-to-one runtime mirror. `clean-stack` is best-effort: failure never blocks a
119
+ CLI, and the returned `formatError(error)` falls back to the original stack.
120
+
121
+ Use the returned `z` when the consumer does not otherwise depend on Zod; it is
122
+ resolved from the same location as the CLI adapter. `resolvePackage` and
123
+ `importPackageIfAvailable` expose the same resolve-first behavior for other
124
+ optional integrations and only suppress a genuinely missing package.
125
+
132
126
  ## License
133
127
 
134
128
  MIT
@@ -25,7 +25,14 @@ export interface ArgumentConfiguration<Value = unknown> {
25
25
  defaultDescription?: string;
26
26
  parse?: (value: string) => Value;
27
27
  }
28
- export type CommandConfiguration = Record<string, unknown>;
28
+ export interface PassThroughArgumentsConfiguration {
29
+ /** Help text for the generated trailing `args` positional. */
30
+ description?: string;
31
+ }
32
+ export interface CommandConfiguration extends Record<string, unknown> {
33
+ /** Add a typed trailing `args` array and the Fireargs pass-through switches. */
34
+ passThroughArguments?: boolean | PassThroughArgumentsConfiguration;
35
+ }
29
36
  export type ProgramConfiguration = Record<string, unknown>;
30
37
  export interface CliParseOptions {
31
38
  from?: 'electron' | 'node' | 'user';
@@ -58,19 +65,25 @@ export interface FieldBuilder<Value = never> {
58
65
  array<Inner extends ZodType>(inner: Inner): ZodArray<Inner>;
59
66
  schema<Schema extends ZodType>(schema: Schema): Schema;
60
67
  }
61
- interface HandlerBuilder<Input extends ObjectSchema, Output extends ZodType> {
62
- handler(handler: (input: SchemaOutput<Input>, context: CommandContext) => SchemaInput<Output> | Promise<SchemaInput<Output>>): CliCommand;
68
+ interface HandlerBuilder<Input, Output extends ZodType> {
69
+ handler(handler: (input: Input, context: CommandContext) => SchemaInput<Output> | Promise<SchemaInput<Output>>): CliCommand;
63
70
  }
64
- interface OutputBuilder<Input extends ObjectSchema, Output extends ZodType> extends HandlerBuilder<Input, Output> {
65
- render(render: (output: SchemaOutput<Output>, context: RenderContext<SchemaOutput<Input>>) => string | void | Promise<string | void>): HandlerBuilder<Input, Output>;
71
+ interface OutputBuilder<Input, Output extends ZodType> extends HandlerBuilder<Input, Output> {
72
+ render(render: (output: SchemaOutput<Output>, context: RenderContext<Input>) => string | void | Promise<string | void>): HandlerBuilder<Input, Output>;
73
+ }
74
+ interface CommandBuilder<PassThrough extends boolean> {
75
+ input<Input extends ObjectSchema>(schema: Input): {
76
+ output<Output extends ZodType>(schema: Output): OutputBuilder<PassThrough extends true ? SchemaOutput<Input> & {
77
+ args: string[];
78
+ } : SchemaOutput<Input>, Output>;
79
+ };
66
80
  }
67
81
  export interface OptionKitAdapter {
68
82
  argument<Value = never>(configuration?: ArgumentConfiguration<Value>): FieldBuilder<Value>;
69
- command(configuration?: CommandConfiguration): {
70
- input<Input extends ObjectSchema>(schema: Input): {
71
- output<Output extends ZodType>(schema: Output): OutputBuilder<Input, Output>;
72
- };
73
- };
83
+ command(configuration: CommandConfiguration & {
84
+ passThroughArguments: true | PassThroughArgumentsConfiguration;
85
+ }): CommandBuilder<true>;
86
+ command(configuration?: CommandConfiguration): CommandBuilder<false>;
74
87
  option<Value = never>(configuration?: OptionConfiguration<Value>): FieldBuilder<Value>;
75
88
  program(configuration?: ProgramConfiguration): {
76
89
  router(routes: Readonly<Record<string, CliRoute>>): CliProgram;
@@ -1 +1 @@
1
- {"version":3,"file":"optionkit.d.ts","sourceRoot":"","sources":["../src/optionkit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"optionkit.d.ts","sourceRoot":"","sources":["../src/optionkit.ts"],"names":[],"mappings":"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"}
package/dist/optionkit.js CHANGED
@@ -261,19 +261,83 @@ function noSaveArguments(agent) {
261
261
  return [];
262
262
  }
263
263
  function createAdapter(adapter, zod, environmentPrefix, settings) {
264
+ const environmentBindings = new WeakMap();
264
265
  return {
265
266
  ...adapter,
266
267
  command(configuration = {}) {
267
- const builder = adapter.command(configuration);
268
+ const { passThroughArguments, ...fireargsConfiguration } = configuration;
269
+ const passThrough = passThroughArguments === true ||
270
+ (typeof passThroughArguments === 'object' && passThroughArguments !== null);
271
+ const builder = adapter.command(passThrough
272
+ ? {
273
+ allowExcessArguments: true,
274
+ allowUnknownOption: true,
275
+ enablePositionalOptions: true,
276
+ jsonOption: false,
277
+ llmsOption: false,
278
+ passThroughOptions: true,
279
+ ...fireargsConfiguration,
280
+ }
281
+ : fireargsConfiguration);
268
282
  return {
269
283
  input(schema) {
270
- const adapted = adaptInputSchema(schema, adapter, zod, environmentPrefix, settings);
271
- return builder.input(adapted);
284
+ const commandInput = passThrough
285
+ ? addPassThroughArgument(schema, adapter, zod, passThroughArguments)
286
+ : schema;
287
+ const { adapted, bindings } = adaptInputSchema(commandInput, adapter, zod, environmentPrefix, settings);
288
+ const inputBuilder = builder.input(adapted);
289
+ return {
290
+ output(output) {
291
+ const outputBuilder = inputBuilder.output(output);
292
+ const attach = (route) => {
293
+ environmentBindings.set(route, bindings);
294
+ wrapStructuredEnvironment(route, () => bindings);
295
+ return route;
296
+ };
297
+ return {
298
+ handler(handler) {
299
+ return attach(outputBuilder.handler(handler));
300
+ },
301
+ render(render) {
302
+ const handlerBuilder = outputBuilder.render(render);
303
+ return {
304
+ handler(handler) {
305
+ return attach(handlerBuilder.handler(handler));
306
+ },
307
+ };
308
+ },
309
+ };
310
+ },
311
+ };
312
+ },
313
+ };
314
+ },
315
+ program(configuration = {}) {
316
+ const builder = adapter.program(configuration);
317
+ return {
318
+ router(routes) {
319
+ const program = builder.router(routes);
320
+ wrapStructuredEnvironment(program, (argv, options) => {
321
+ const selected = selectedLeaf(program, argv, options);
322
+ return selected ? environmentBindings.get(selected) ?? [] : [];
323
+ });
324
+ return program;
272
325
  },
273
326
  };
274
327
  },
275
328
  };
276
329
  }
330
+ function addPassThroughArgument(schema, adapter, zod, configuration) {
331
+ const object = objectSchema(schema);
332
+ if ('args' in object.shape) {
333
+ throw new TypeError('passThroughArguments reserves the input field "args".');
334
+ }
335
+ const description = typeof configuration === 'object'
336
+ ? configuration.description
337
+ : undefined;
338
+ const args = adapter.argument().schema(zod.array(zod.string()).default([]).describe(description ?? 'Arguments passed to the executable.'));
339
+ return object.safeExtend({ args });
340
+ }
277
341
  function adaptInputSchema(schema, adapter, zod, environmentPrefix, settings) {
278
342
  const object = objectSchema(schema);
279
343
  const shape = object.shape;
@@ -287,10 +351,21 @@ function adaptInputSchema(schema, adapter, zod, environmentPrefix, settings) {
287
351
  return [key, field];
288
352
  return [key, adapter.option(configurations[key]).schema(field)];
289
353
  }));
290
- return object.safeExtend(fields);
291
- }
292
- function objectShape(schema) {
293
- return objectSchema(schema).shape;
354
+ const bindings = Object.entries(configurations).flatMap(([key, configuration]) => {
355
+ if (configuration.env === undefined ||
356
+ configuration.parse !== undefined ||
357
+ structuredValueKind(shape[key], zod) !== 'array')
358
+ return [];
359
+ return [{
360
+ env: configuration.env,
361
+ name: configuration.name ?? toCliKey(key),
362
+ short: configuration.short,
363
+ }];
364
+ });
365
+ return {
366
+ adapted: object.safeExtend(fields),
367
+ bindings,
368
+ };
294
369
  }
295
370
  function objectSchema(schema) {
296
371
  let candidate = schema;
@@ -314,6 +389,12 @@ function resolveEnvironmentPrefix(configured, projectName) {
314
389
  throw new TypeError('The environment prefix must contain a letter or number.');
315
390
  return `${translated}_`;
316
391
  }
392
+ function toCliKey(value) {
393
+ return value
394
+ .replace(/([a-z0-9])([A-Z])/gu, '$1-$2')
395
+ .replace(/([A-Z])([A-Z][a-z])/gu, '$1-$2')
396
+ .toLowerCase();
397
+ }
317
398
  function optionConfigurations(shape, environmentPrefix, zod, settings, registered = {}) {
318
399
  const keys = Object.keys(shape).filter(key => registered[key]?.kind !== 'argument');
319
400
  const overrides = Object.fromEntries(keys.map(key => {
@@ -330,7 +411,7 @@ function optionConfigurations(shape, environmentPrefix, zod, settings, registere
330
411
  if (environmentPrefix !== false && override?.env !== false) {
331
412
  generated.env = override?.env ?? `${environmentPrefix}${toEnvironmentKey(key)}`;
332
413
  const kind = structuredValueKind(shape[key], zod);
333
- if (kind && !override?.parse)
414
+ if (kind === 'object' && !override?.parse)
334
415
  generated.parse = structuredValueParser(kind);
335
416
  }
336
417
  if (override?.short !== false && (override?.short ?? shorts[key])) {
@@ -394,15 +475,96 @@ function structuredValueKind(schema, zod, seen = new Set()) {
394
475
  : undefined;
395
476
  }
396
477
  function structuredValueParser(kind) {
397
- return ((value) => {
478
+ return ((value) => decodeStructuredValue(value, kind));
479
+ }
480
+ function decodeStructuredValue(value, kind) {
481
+ try {
482
+ return JSON.parse(value);
483
+ }
484
+ catch {
485
+ // A non-JSON string may still be useful to an array schema or a union.
486
+ }
487
+ return kind === 'array' ? splitArrayValue(value) ?? value : value;
488
+ }
489
+ function wrapStructuredEnvironment(route, bindings) {
490
+ const parse = route.parseAsync.bind(route);
491
+ route.parseAsync = async (argv, options) => {
492
+ const active = bindings(argv, options);
493
+ if (!active.length)
494
+ return parse(argv, options);
495
+ const effectiveArgv = [...(argv ?? process.argv)];
496
+ const userOffset = argvOffset(options);
497
+ const userArguments = effectiveArgv.slice(userOffset);
498
+ const insertion = effectiveArgv.indexOf('--', userOffset);
499
+ const injected = [];
500
+ const previous = new Map();
501
+ for (const binding of active) {
502
+ const value = process.env[binding.env];
503
+ if (value === undefined)
504
+ continue;
505
+ previous.set(binding.env, value);
506
+ delete process.env[binding.env];
507
+ if (hasOption(userArguments, binding))
508
+ continue;
509
+ const decoded = decodeStructuredValue(value, 'array');
510
+ const values = Array.isArray(decoded) ? decoded : [decoded];
511
+ for (const item of values)
512
+ injected.push(`--${binding.name}=${stringifyCliValue(item)}`);
513
+ }
514
+ effectiveArgv.splice(insertion === -1 ? effectiveArgv.length : insertion, 0, ...injected);
398
515
  try {
399
- return JSON.parse(value);
516
+ return await parse(effectiveArgv, options);
400
517
  }
401
- catch {
402
- // A non-JSON string may still be useful to an array schema or a union.
518
+ finally {
519
+ for (const [name, value] of previous)
520
+ process.env[name] = value;
403
521
  }
404
- return kind === 'array' ? splitArrayValue(value) ?? value : value;
405
- });
522
+ };
523
+ }
524
+ function selectedLeaf(program, argv, options) {
525
+ const args = (argv ?? process.argv).slice(argvOffset(options));
526
+ let current = program;
527
+ let offset = 0;
528
+ while (current.commands?.length) {
529
+ let selected;
530
+ let selectedAt = -1;
531
+ for (let index = offset; index < args.length; index += 1) {
532
+ const token = args[index];
533
+ if (!token || token.startsWith('-'))
534
+ continue;
535
+ selected = current.commands.find(command => (command.name?.() === token || command.aliases?.().includes(token)));
536
+ if (selected) {
537
+ selectedAt = index;
538
+ break;
539
+ }
540
+ }
541
+ if (!selected)
542
+ return undefined;
543
+ current = selected;
544
+ offset = selectedAt + 1;
545
+ }
546
+ return current;
547
+ }
548
+ function argvOffset(options) {
549
+ if (options?.from === 'user')
550
+ return 0;
551
+ if (options?.from === 'electron')
552
+ return 1;
553
+ return 2;
554
+ }
555
+ function hasOption(args, binding) {
556
+ const long = `--${binding.name}`;
557
+ const short = binding.short ? `-${binding.short}` : undefined;
558
+ return args.some(argument => (argument === long ||
559
+ argument.startsWith(`${long}=`) ||
560
+ (short !== undefined && (argument === short || argument.startsWith(`${short}=`)))));
561
+ }
562
+ function stringifyCliValue(value) {
563
+ if (typeof value === 'string')
564
+ return value;
565
+ if (value === null || typeof value !== 'object')
566
+ return String(value);
567
+ return JSON.stringify(value);
406
568
  }
407
569
  /** Split comma- or whitespace-delimited shell words without interpreting operators. */
408
570
  function splitArrayValue(value) {
@@ -1 +1 @@
1
- {"version":3,"file":"optionkit.js","sourceRoot":"","sources":["../src/optionkit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"optionkit.js","sourceRoot":"","sources":["../src/optionkit.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "optionkit",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "Turn Zod configuration schemas into zero-setup CLI options.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",