@shell-shock/plugin-theme 0.3.16 → 0.3.18

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
@@ -27,7 +27,7 @@ This package is part of the ⚡<b>Shell Shock</b> monorepo. The Shell Shock pack
27
27
 
28
28
  <h3 align="center">💻 Visit <a href="https://stormsoftware.com" target="_blank">stormsoftware.com</a> to stay up to date with this developer</h3><br />
29
29
 
30
- [![Version](https://img.shields.io/badge/version-0.1.2-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://stormsoftware.com/projects/shell-shock/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/shell-shock/release.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
30
+ [![Version](https://img.shields.io/badge/version-0.3.17-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://stormsoftware.com/projects/shell-shock/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/shell-shock/release.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
31
31
 
32
32
  <!-- prettier-ignore-start -->
33
33
  <!-- markdownlint-disable -->
@@ -1,3 +1,3 @@
1
1
  import { BaseCommandParameter, BooleanCommandOption, BooleanCommandParameter, CommandArgument, CommandBase, CommandConfig, CommandOption, CommandParameterKind, CommandParameterKinds, CommandTree, NumberCommandParameter, StringCommandParameter } from "./types/command.cjs";
2
- import { Options, OutputConfig, ResolvedConfig, UserConfig } from "./types/config.cjs";
2
+ import { Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig } from "./types/config.cjs";
3
3
  import { Context } from "./types/context.cjs";
@@ -1,3 +1,3 @@
1
1
  import { BaseCommandParameter, BooleanCommandOption, BooleanCommandParameter, CommandArgument, CommandBase, CommandConfig, CommandOption, CommandParameterKind, CommandParameterKinds, CommandTree, NumberCommandParameter, StringCommandParameter } from "./types/command.mjs";
2
- import { Options, OutputConfig, ResolvedConfig, UserConfig } from "./types/config.mjs";
2
+ import { Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig } from "./types/config.mjs";
3
3
  import { Context } from "./types/context.mjs";
@@ -132,6 +132,10 @@ interface CommandBase {
132
132
  * The command icon.
133
133
  */
134
134
  icon?: string;
135
+ /**
136
+ * A URL to the command documentation or reference.
137
+ */
138
+ reference?: string;
135
139
  /**
136
140
  * Whether the command is virtual.
137
141
  *
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.cts","names":["ResolvedEntryTypeDefinition","StandardJSONSchemaV1","JsonSchema7TupleType","AnyFunction","JSONSchema7Object","z3","CommandParameterType","CommandParameterKinds","string","number","boolean","CommandParameterKind","BaseCommandParameter","name","kind","title","description","alias","env","optional","StringCommandParameter","default","format","variadic","choices","NumberCommandParameter","BooleanCommandParameter","CommandParameter","AsCommandParameterConfig","T","Pick","Omit","Partial","StringCommandParameterConfig","NumberCommandParameterConfig","BooleanCommandParameterConfig","CommandParameterConfig","BooleanCommandOption","isNegativeOf","skipAddingNegative","CommandOption","CommandOptionConfig","CommandArgument","CommandArgumentConfig","CommandBase","id","path","segments","icon","isVirtual","CommandConfig","entry","CommandTree","Record","options","args","parent","children","SerializedCommandTree","CommandMetadata","CommandModule","AnyZodObject","AnyZodTuple","metadata"],"sources":["../../../../../core/dist/types/command.d.cts"],"mappings":";;;cAScO,qBAAAA;EAAAA,SACHC,MAAAA;EAAAA,SACAC,MAAAA;EAAAA,SACAC,OAAAA;AAAAA;AAAAA,KAENC,oBAAAA,WAA+BJ,qBAAAA,eAAoCA,qBAAAA;AAAAA,UAC9DK,oBAAAA;EADmF;AAAA;;EAK3FC,IAAAA;EAI0B;;;EAA1BC,IAAAA,EAAMH,oBAAAA;EAINI;;;EAAAA,KAAAA;EAgBAI;;;EAZAH,WAAAA;EAc8B;;;EAV9BC,KAAAA;EAcAH;;;EAVAI,GAAAA;EA0BAM;;;EAtBAL,QAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+BR,oBAAAA;EAsBoB;;;EAlB3DE,IAAAA;EA8BAS;;;EA1BAF,OAAAA;EA8BO;;;EA1BPC,MAAAA;EA4BwCV;;;EAxBxCW,QAAAA;EAgCO;AASgH;;EArCvHC,OAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+Bb,oBAAAA;EAwCvC0B;;;EApCAxB,IAAAA;EAwCkB;;;EApClBO,OAAAA;EAsC4CI;;;EAlC5CF,QAAAA;EAkCmBH;;;EA9BnBI,OAAAA;AAAAA;AAAAA,UAEQE,uBAAAA,SAAgCd,oBAAAA;EA8BtB;;;EA1BlBE,IAAAA;EA0BuEY;;;EAtBvEL,OAAAA;AAAAA;AAAAA,UAUQgB,oBAAAA,SAA6BX,uBAAAA;EA0BrCoB;;;EAtBAR,YAAAA;EAsCArB;;;EAlCAsB,kBAAAA;AAAAA;AAAAA,KAEGC,aAAAA,GAAgBpB,sBAAAA,GAAyBK,sBAAAA,GAAyBY,oBAAAA;AAAAA,KAElEK,eAAAA,GAAkBtB,sBAAAA,GAAyBK,sBAAAA,GAAyBC,uBAAAA;AAAAA,UAE/DkB,WAAAA;EA6CRC;;;EAzCAA,EAAAA;EA6CkC;AAAA;;EAzClChC,IAAAA;EA2CiBqC;;;EAvCjBJ,IAAAA;EA+DeM;;;EA3DfL,QAAAA;EA+DgB;;;EA3DhBhC,KAAAA;EA2CAE;;;EAvCAD,WAAAA;EA+CAuC;;;EA3CAtC,KAAAA;EAmDAwC;;;EA/CAT,IAAAA;EA+CoC;;;;;;EAxCpCC,SAAAA;AAAAA;AAAAA,UAEQC,aAAAA,SAAsBN,WAAAA;;;;EAI9BC,EAAAA;;;;EAIAM,KAAAA,EAAOnD,2BAAAA;AAAAA;AAAAA,KAEJoD,WAAAA,GAAcF,aAAAA;;;;EAIjBnC,KAAAA;;;;EAIAC,WAAAA;;;;EAIAC,KAAAA;;;;EAIAqC,OAAAA,EAASD,MAAAA,SAAeb,aAAAA;;;;EAIxBe,IAAAA,EAAMb,eAAAA;;;;EAINc,MAAAA,SAAeJ,WAAAA;;;;EAIfK,QAAAA,EAAUJ,MAAAA,SAAeD,WAAAA;AAAAA"}
1
+ {"version":3,"file":"command.d.cts","names":["ResolvedEntryTypeDefinition","StandardJSONSchemaV1","JsonSchema7TupleType","AnyFunction","JSONSchema7Object","z3","CommandParameterType","CommandParameterKinds","string","number","boolean","CommandParameterKind","BaseCommandParameter","name","kind","title","description","alias","env","optional","StringCommandParameter","default","format","variadic","choices","NumberCommandParameter","BooleanCommandParameter","CommandParameter","AsCommandParameterConfig","T","Pick","Omit","Partial","StringCommandParameterConfig","NumberCommandParameterConfig","BooleanCommandParameterConfig","CommandParameterConfig","BooleanCommandOption","isNegativeOf","skipAddingNegative","CommandOption","CommandOptionConfig","CommandArgument","CommandArgumentConfig","CommandBase","id","path","segments","icon","reference","isVirtual","CommandConfig","entry","CommandTree","Record","options","args","parent","children","SerializedCommandTree","CommandMetadata","CommandModule","AnyZodObject","AnyZodTuple","metadata"],"sources":["../../../../../core/dist/types/command.d.cts"],"mappings":";;;cAScO,qBAAAA;EAAAA,SACHC,MAAAA;EAAAA,SACAC,MAAAA;EAAAA,SACAC,OAAAA;AAAAA;AAAAA,KAENC,oBAAAA,WAA+BJ,qBAAAA,eAAoCA,qBAAAA;AAAAA,UAC9DK,oBAAAA;EADmF;AAAA;;EAK3FC,IAAAA;EAI0B;;;EAA1BC,IAAAA,EAAMH,oBAAAA;EAINI;;;EAAAA,KAAAA;EAgBAI;;;EAZAH,WAAAA;EAc8B;;;EAV9BC,KAAAA;EAcAH;;;EAVAI,GAAAA;EA0BAM;;;EAtBAL,QAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+BR,oBAAAA;EAsBoB;;;EAlB3DE,IAAAA;EA8BAS;;;EA1BAF,OAAAA;EA8BO;;;EA1BPC,MAAAA;EA4BwCV;;;EAxBxCW,QAAAA;EAgCO;AASgH;;EArCvHC,OAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+Bb,oBAAAA;EAwCvC0B;;;EApCAxB,IAAAA;EAwCkB;;;EApClBO,OAAAA;EAsC4CI;;;EAlC5CF,QAAAA;EAkCmBH;;;EA9BnBI,OAAAA;AAAAA;AAAAA,UAEQE,uBAAAA,SAAgCd,oBAAAA;EA8BtB;;;EA1BlBE,IAAAA;EA0BuEY;;;EAtBvEL,OAAAA;AAAAA;AAAAA,UAUQgB,oBAAAA,SAA6BX,uBAAAA;EA0BrCoB;;;EAtBAR,YAAAA;EAsCArB;;;EAlCAsB,kBAAAA;AAAAA;AAAAA,KAEGC,aAAAA,GAAgBpB,sBAAAA,GAAyBK,sBAAAA,GAAyBY,oBAAAA;AAAAA,KAElEK,eAAAA,GAAkBtB,sBAAAA,GAAyBK,sBAAAA,GAAyBC,uBAAAA;AAAAA,UAE/DkB,WAAAA;EA6CsBA;;;EAzC9BC,EAAAA;EAiDkC;;AAAA;EA7ClChC,IAAAA;;;;EAIAiC,IAAAA;EA+DMJ;;;EA3DNK,QAAAA;EAmEgB;;;EA/DhBhC,KAAAA;EA2CAC;;;EAvCAA,WAAAA;EA+CwBwB;;;EA3CxBvB,KAAAA;EAmDeoC;;;EA/CfL,IAAAA;EAmDoC;;;EA/CpCC,SAAAA;;;;;;;EAOAC,SAAAA;AAAAA;AAAAA,UAEQC,aAAAA,SAAsBP,WAAAA;;;;EAI9BC,EAAAA;;;;EAIAO,KAAAA,EAAOpD,2BAAAA;AAAAA;AAAAA,KAEJqD,WAAAA,GAAcF,aAAAA;;;;EAIjBpC,KAAAA;;;;EAIAC,WAAAA;;;;EAIAC,KAAAA;;;;EAIAsC,OAAAA,EAASD,MAAAA,SAAed,aAAAA;;;;EAIxBgB,IAAAA,EAAMd,eAAAA;;;;EAINe,MAAAA,SAAeJ,WAAAA;;;;EAIfK,QAAAA,EAAUJ,MAAAA,SAAeD,WAAAA;AAAAA"}
@@ -132,6 +132,10 @@ interface CommandBase {
132
132
  * The command icon.
133
133
  */
134
134
  icon?: string;
135
+ /**
136
+ * A URL to the command documentation or reference.
137
+ */
138
+ reference?: string;
135
139
  /**
136
140
  * Whether the command is virtual.
137
141
  *
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.mts","names":["ResolvedEntryTypeDefinition","StandardJSONSchemaV1","JsonSchema7TupleType","AnyFunction","JSONSchema7Object","z3","CommandParameterType","CommandParameterKinds","string","number","boolean","CommandParameterKind","BaseCommandParameter","name","kind","title","description","alias","env","optional","StringCommandParameter","default","format","variadic","choices","NumberCommandParameter","BooleanCommandParameter","CommandParameter","AsCommandParameterConfig","T","Pick","Omit","Partial","StringCommandParameterConfig","NumberCommandParameterConfig","BooleanCommandParameterConfig","CommandParameterConfig","BooleanCommandOption","isNegativeOf","skipAddingNegative","CommandOption","CommandOptionConfig","CommandArgument","CommandArgumentConfig","CommandBase","id","path","segments","icon","isVirtual","CommandConfig","entry","CommandTree","Record","options","args","parent","children","SerializedCommandTree","CommandMetadata","CommandModule","AnyZodObject","AnyZodTuple","metadata"],"sources":["../../../../../core/dist/types/command.d.cts"],"mappings":";;;cAScO,qBAAAA;EAAAA,SACHC,MAAAA;EAAAA,SACAC,MAAAA;EAAAA,SACAC,OAAAA;AAAAA;AAAAA,KAENC,oBAAAA,WAA+BJ,qBAAAA,eAAoCA,qBAAAA;AAAAA,UAC9DK,oBAAAA;EADmF;AAAA;;EAK3FC,IAAAA;EAI0B;;;EAA1BC,IAAAA,EAAMH,oBAAAA;EAINI;;;EAAAA,KAAAA;EAgBAI;;;EAZAH,WAAAA;EAc8B;;;EAV9BC,KAAAA;EAcAH;;;EAVAI,GAAAA;EA0BAM;;;EAtBAL,QAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+BR,oBAAAA;EAsBoB;;;EAlB3DE,IAAAA;EA8BAS;;;EA1BAF,OAAAA;EA8BO;;;EA1BPC,MAAAA;EA4BwCV;;;EAxBxCW,QAAAA;EAgCO;AASgH;;EArCvHC,OAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+Bb,oBAAAA;EAwCvC0B;;;EApCAxB,IAAAA;EAwCkB;;;EApClBO,OAAAA;EAsC4CI;;;EAlC5CF,QAAAA;EAkCmBH;;;EA9BnBI,OAAAA;AAAAA;AAAAA,UAEQE,uBAAAA,SAAgCd,oBAAAA;EA8BtB;;;EA1BlBE,IAAAA;EA0BuEY;;;EAtBvEL,OAAAA;AAAAA;AAAAA,UAUQgB,oBAAAA,SAA6BX,uBAAAA;EA0BrCoB;;;EAtBAR,YAAAA;EAsCArB;;;EAlCAsB,kBAAAA;AAAAA;AAAAA,KAEGC,aAAAA,GAAgBpB,sBAAAA,GAAyBK,sBAAAA,GAAyBY,oBAAAA;AAAAA,KAElEK,eAAAA,GAAkBtB,sBAAAA,GAAyBK,sBAAAA,GAAyBC,uBAAAA;AAAAA,UAE/DkB,WAAAA;EA6CRC;;;EAzCAA,EAAAA;EA6CkC;AAAA;;EAzClChC,IAAAA;EA2CiBqC;;;EAvCjBJ,IAAAA;EA+DeM;;;EA3DfL,QAAAA;EA+DgB;;;EA3DhBhC,KAAAA;EA2CAE;;;EAvCAD,WAAAA;EA+CAuC;;;EA3CAtC,KAAAA;EAmDAwC;;;EA/CAT,IAAAA;EA+CoC;;;;;;EAxCpCC,SAAAA;AAAAA;AAAAA,UAEQC,aAAAA,SAAsBN,WAAAA;;;;EAI9BC,EAAAA;;;;EAIAM,KAAAA,EAAOnD,2BAAAA;AAAAA;AAAAA,KAEJoD,WAAAA,GAAcF,aAAAA;;;;EAIjBnC,KAAAA;;;;EAIAC,WAAAA;;;;EAIAC,KAAAA;;;;EAIAqC,OAAAA,EAASD,MAAAA,SAAeb,aAAAA;;;;EAIxBe,IAAAA,EAAMb,eAAAA;;;;EAINc,MAAAA,SAAeJ,WAAAA;;;;EAIfK,QAAAA,EAAUJ,MAAAA,SAAeD,WAAAA;AAAAA"}
1
+ {"version":3,"file":"command.d.mts","names":["ResolvedEntryTypeDefinition","StandardJSONSchemaV1","JsonSchema7TupleType","AnyFunction","JSONSchema7Object","z3","CommandParameterType","CommandParameterKinds","string","number","boolean","CommandParameterKind","BaseCommandParameter","name","kind","title","description","alias","env","optional","StringCommandParameter","default","format","variadic","choices","NumberCommandParameter","BooleanCommandParameter","CommandParameter","AsCommandParameterConfig","T","Pick","Omit","Partial","StringCommandParameterConfig","NumberCommandParameterConfig","BooleanCommandParameterConfig","CommandParameterConfig","BooleanCommandOption","isNegativeOf","skipAddingNegative","CommandOption","CommandOptionConfig","CommandArgument","CommandArgumentConfig","CommandBase","id","path","segments","icon","reference","isVirtual","CommandConfig","entry","CommandTree","Record","options","args","parent","children","SerializedCommandTree","CommandMetadata","CommandModule","AnyZodObject","AnyZodTuple","metadata"],"sources":["../../../../../core/dist/types/command.d.cts"],"mappings":";;;cAScO,qBAAAA;EAAAA,SACHC,MAAAA;EAAAA,SACAC,MAAAA;EAAAA,SACAC,OAAAA;AAAAA;AAAAA,KAENC,oBAAAA,WAA+BJ,qBAAAA,eAAoCA,qBAAAA;AAAAA,UAC9DK,oBAAAA;EADmF;AAAA;;EAK3FC,IAAAA;EAI0B;;;EAA1BC,IAAAA,EAAMH,oBAAAA;EAINI;;;EAAAA,KAAAA;EAgBAI;;;EAZAH,WAAAA;EAc8B;;;EAV9BC,KAAAA;EAcAH;;;EAVAI,GAAAA;EA0BAM;;;EAtBAL,QAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+BR,oBAAAA;EAsBoB;;;EAlB3DE,IAAAA;EA8BAS;;;EA1BAF,OAAAA;EA8BO;;;EA1BPC,MAAAA;EA4BwCV;;;EAxBxCW,QAAAA;EAgCO;AASgH;;EArCvHC,OAAAA;AAAAA;AAAAA,UAEQC,sBAAAA,SAA+Bb,oBAAAA;EAwCvC0B;;;EApCAxB,IAAAA;EAwCkB;;;EApClBO,OAAAA;EAsC4CI;;;EAlC5CF,QAAAA;EAkCmBH;;;EA9BnBI,OAAAA;AAAAA;AAAAA,UAEQE,uBAAAA,SAAgCd,oBAAAA;EA8BtB;;;EA1BlBE,IAAAA;EA0BuEY;;;EAtBvEL,OAAAA;AAAAA;AAAAA,UAUQgB,oBAAAA,SAA6BX,uBAAAA;EA0BrCoB;;;EAtBAR,YAAAA;EAsCArB;;;EAlCAsB,kBAAAA;AAAAA;AAAAA,KAEGC,aAAAA,GAAgBpB,sBAAAA,GAAyBK,sBAAAA,GAAyBY,oBAAAA;AAAAA,KAElEK,eAAAA,GAAkBtB,sBAAAA,GAAyBK,sBAAAA,GAAyBC,uBAAAA;AAAAA,UAE/DkB,WAAAA;EA6CsBA;;;EAzC9BC,EAAAA;EAiDkC;;AAAA;EA7ClChC,IAAAA;;;;EAIAiC,IAAAA;EA+DMJ;;;EA3DNK,QAAAA;EAmEgB;;;EA/DhBhC,KAAAA;EA2CAC;;;EAvCAA,WAAAA;EA+CwBwB;;;EA3CxBvB,KAAAA;EAmDeoC;;;EA/CfL,IAAAA;EAmDoC;;;EA/CpCC,SAAAA;;;;;;;EAOAC,SAAAA;AAAAA;AAAAA,UAEQC,aAAAA,SAAsBP,WAAAA;;;;EAI9BC,EAAAA;;;;EAIAO,KAAAA,EAAOpD,2BAAAA;AAAAA;AAAAA,KAEJqD,WAAAA,GAAcF,aAAAA;;;;EAIjBpC,KAAAA;;;;EAIAC,WAAAA;;;;EAIAC,KAAAA;;;;EAIAsC,OAAAA,EAASD,MAAAA,SAAed,aAAAA;;;;EAIxBgB,IAAAA,EAAMd,eAAAA;;;;EAINe,MAAAA,SAAeJ,WAAAA;;;;EAIfK,QAAAA,EAAUJ,MAAAA,SAAeD,WAAAA;AAAAA"}
@@ -8,14 +8,27 @@ import { TsdownPluginResolvedConfig, TsdownPluginUserConfig } from "@powerlines/
8
8
  //#region ../core/dist/types/config.d.cts
9
9
  //#region src/types/config.d.ts
10
10
  type BuildOptions = Pick<TsdownPluginUserConfig, "root" | "name" | "title" | "description" | "logLevel" | "mode" | "skipCache" | "autoInstall" | "plugins" | "tsconfig" | "tsconfigRaw">;
11
+ interface ReferenceOptions {
12
+ /**
13
+ * A URL to the application documentation or reference.
14
+ */
15
+ app: string;
16
+ /**
17
+ * A URL to the application command specific documentation or reference.
18
+ *
19
+ * @remarks
20
+ * This URL is expected to contain the token `{command}`, which will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{referenceLink}/command/subcommand`.
21
+ */
22
+ commands?: string;
23
+ }
11
24
  type BaseOptions = Partial<BuildOptions> & {
12
25
  /**
13
- * A set of default command options to apply to each command.
26
+ * A set of global command options to apply to each command.
14
27
  *
15
28
  * @remarks
16
- * To disable the addition of these default options, set this property to `false`, or provide a custom set of options/a function that returns them.
29
+ * Each command will inherit these global options. To disable the addition of these global options, set this property to `false`, or provide a custom set of options/a function that returns them. A `GlobalOptions` interface will be created by the `shell-shock typegen` command and added to the generated `shell-shock.d.ts` file.
17
30
  */
18
- defaultOptions?: CommandOption[] | ((context: Context, input: CommandBase) => CommandOption[]) | false;
31
+ globalOptions?: CommandOption[] | ((context: Context, input: CommandBase) => CommandOption[]) | false;
19
32
  /**
20
33
  * Determines whether commands and option names are treated as case-sensitive.
21
34
  *
@@ -43,6 +56,13 @@ type BaseOptions = Partial<BuildOptions> & {
43
56
  * @see https://stringcase.org/cases/constant/
44
57
  */
45
58
  autoAssignEnv?: true | string;
59
+ /**
60
+ * A URL to the application documentation or reference.
61
+ *
62
+ * @remarks
63
+ * This URL can be used in various displays of the user interface and documentation to provide users with a reference for the application. It can also be used by plugins to link to the documentation in relevant contexts. If the token `{command}` is included in the URL, it will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{referenceLink}/command/subcommand`.
64
+ */
65
+ reference?: ReferenceOptions | string;
46
66
  };
47
67
  /**
48
68
  * The plugin options for Shell Shock.
@@ -51,7 +71,7 @@ type Options = BaseOptions & Partial<NodeJsPluginOptions>;
51
71
  /**
52
72
  * The output configuration options for Shell Shock.
53
73
  */
54
- type OutputConfig$1 = Pick<OutputConfig, "outputPath" | "assets" | "storage"> & {
74
+ type OutputConfig$1 = Pick<OutputConfig, "path" | "copy" | "storage"> & {
55
75
  /**
56
76
  * An indicator specifying whether to generate TypeScript declaration files (.d.ts) during the build process.
57
77
  */
@@ -69,7 +89,7 @@ type UserConfig = BaseOptions & Partial<NodeJsPluginUserConfig> & {
69
89
  /**
70
90
  * The resolved configuration options for Shell Shock.
71
91
  */
72
- type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig & NodeJsPluginResolvedConfig & Required<Omit<Options, "bin">> & {
92
+ type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig & NodeJsPluginResolvedConfig & Required<Omit<Options, "bin" | "reference">> & {
73
93
  /**
74
94
  * The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | "bin" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).
75
95
  *
@@ -81,6 +101,10 @@ type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig &
81
101
  * @see https://pnpm.io/package_json#bin
82
102
  */
83
103
  bin: Record<string, string>;
104
+ /**
105
+ * The URL(s) to the application documentation or reference.
106
+ */
107
+ reference: ReferenceOptions;
84
108
  /**
85
109
  * The command-line application specific environment variable prefix used for automatically assigning environment variables to command options.
86
110
  */
@@ -91,5 +115,5 @@ type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig &
91
115
  userConfig: UserConfig;
92
116
  }; //#endregion
93
117
  //#endregion
94
- export { Options, OutputConfig$1 as OutputConfig, ResolvedConfig, UserConfig };
118
+ export { Options, OutputConfig$1 as OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig };
95
119
  //# sourceMappingURL=config.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.cts","names":["CommandBase","CommandOption","Context","OutputConfig","OutputConfig$1","AutoMDPluginResolvedConfig","NodeJsPluginOptions","NodeJsPluginResolvedConfig","NodeJsPluginUserConfig","TsdownPluginResolvedConfig","TsdownPluginUserConfig","BuildOptions","Pick","BaseOptions","Partial","defaultOptions","context","input","isCaseSensitive","bin","autoAssignEnv","Options","dts","UserConfig","output","ResolvedConfig","Omit","Required","Record","appSpecificEnvPrefix","userConfig"],"sources":["../../../../../core/dist/types/config.d.cts"],"mappings":";;;;;;;;;KAQKW,YAAAA,GAAeC,IAAAA,CAAKF,sBAAAA;AAAAA,KACpBG,WAAAA,GAAcC,OAAAA,CAAQH,YAAAA;;;;AADoB;;;EAQ7CI,cAAAA,GAAiBd,aAAAA,OAAoBe,OAAAA,EAASd,OAAAA,EAASe,KAAAA,EAAOjB,WAAAA,KAAgBC,aAAAA;EAP7Da;;;;;EAajBI,eAAAA;EAN2F;;;;;;;;;;EAiB3FC,GAAAA;EAAAA;;;;AAUa;;;;;EAAbC,aAAAA;AAAAA;;;;KAKGC,OAAAA,GAAUR,WAAAA,GAAcC,OAAAA,CAAQR,mBAAAA;;;AAAmB;KAInDH,cAAAA,GAAeS,IAAAA,CAAKR,YAAAA;;;;EAIvBkB,GAAAA;AAAAA;;;AAAG;KAKAC,UAAAA,GAAaV,WAAAA,GAAcC,OAAAA,CAAQN,sBAAAA;;;;EAItCgB,MAAAA,GAASrB,cAAAA;AAAAA;;;;KAKNsB,cAAAA,GAAiBhB,0BAAAA,GAA6BJ,0BAAAA,GAA6BE,0BAAAA,GAA6BoB,QAAAA,CAASD,IAAAA,CAAKL,OAAAA;EATnFb;;;;;AAIjB;;;;;EAgBrBW,GAAAA,EAAKS,MAAAA;EAXoHP;;;EAezHQ,oBAAAA;EAIYN;;;EAAZO,UAAAA,EAAYP,UAAAA;AAAAA"}
1
+ {"version":3,"file":"config.d.cts","names":["CommandBase","CommandOption","Context","OutputConfig","OutputConfig$1","AutoMDPluginResolvedConfig","NodeJsPluginOptions","NodeJsPluginResolvedConfig","NodeJsPluginUserConfig","TsdownPluginResolvedConfig","TsdownPluginUserConfig","BuildOptions","Pick","ReferenceOptions","app","commands","BaseOptions","Partial","globalOptions","context","input","isCaseSensitive","bin","autoAssignEnv","reference","Options","dts","UserConfig","output","ResolvedConfig","Omit","Required","Record","appSpecificEnvPrefix","userConfig"],"sources":["../../../../../core/dist/types/config.d.cts"],"mappings":";;;;;;;;;KAQKW,YAAAA,GAAeC,IAAAA,CAAKF,sBAAAA;AAAAA,UACfG,gBAAAA;;;;EAIRC,GAAAA;EAJwB;;;;AAWhB;;EAARC,QAAAA;AAAAA;AAAAA,KAEGC,WAAAA,GAAcC,OAAAA,CAAQN,YAAAA;EAOTV;;;;;;EAAhBiB,aAAAA,GAAgBjB,aAAAA,OAAoBkB,OAAAA,EAASjB,OAAAA,EAASkB,KAAAA,EAAOpB,WAAAA,KAAgBC,aAAAA;EAP5DgB;;;;;EAajBI,eAAAA;EAN6DrB;;;;;;;;;;EAiB7DsB,GAAAA;EAsBU;;;;;;;;;EAZVC,aAAAA;EAYsD;;AAAA;;;;EALtDC,SAAAA,GAAYX,gBAAAA;AAAAA;;;;KAKTY,OAAAA,GAAUT,WAAAA,GAAcC,OAAAA,CAAQX,mBAAAA;;;;KAIhCH,cAAAA,GAAeS,IAAAA,CAAKR,YAAAA;EASOa;;;EAL9BS,GAAAA;AAAAA;;;;KAKGC,UAAAA,GAAaX,WAAAA,GAAcC,OAAAA,CAAQT,sBAAAA;EAIjB;;AAAA;EAArBoB,MAAAA,GAASzB,cAAAA;AAAAA;;;;KAKN0B,cAAAA,GAAiBpB,0BAAAA,GAA6BJ,0BAAAA,GAA6BE,0BAAAA,GAA6BwB,QAAAA,CAASD,IAAAA,CAAKL,OAAAA;EAALK;;;;;;;;;;EAWpHR,GAAAA,EAAKU,MAAAA;EAX+GF;;;EAepHN,SAAAA,EAAWX,gBAAAA;EAAXW;;;EAIAS,oBAAAA;EAIYN;;;EAAZO,UAAAA,EAAYP,UAAAA;AAAAA"}
@@ -8,14 +8,27 @@ import { TsdownPluginResolvedConfig, TsdownPluginUserConfig } from "@powerlines/
8
8
  //#region ../core/dist/types/config.d.cts
9
9
  //#region src/types/config.d.ts
10
10
  type BuildOptions = Pick<TsdownPluginUserConfig, "root" | "name" | "title" | "description" | "logLevel" | "mode" | "skipCache" | "autoInstall" | "plugins" | "tsconfig" | "tsconfigRaw">;
11
+ interface ReferenceOptions {
12
+ /**
13
+ * A URL to the application documentation or reference.
14
+ */
15
+ app: string;
16
+ /**
17
+ * A URL to the application command specific documentation or reference.
18
+ *
19
+ * @remarks
20
+ * This URL is expected to contain the token `{command}`, which will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{referenceLink}/command/subcommand`.
21
+ */
22
+ commands?: string;
23
+ }
11
24
  type BaseOptions = Partial<BuildOptions> & {
12
25
  /**
13
- * A set of default command options to apply to each command.
26
+ * A set of global command options to apply to each command.
14
27
  *
15
28
  * @remarks
16
- * To disable the addition of these default options, set this property to `false`, or provide a custom set of options/a function that returns them.
29
+ * Each command will inherit these global options. To disable the addition of these global options, set this property to `false`, or provide a custom set of options/a function that returns them. A `GlobalOptions` interface will be created by the `shell-shock typegen` command and added to the generated `shell-shock.d.ts` file.
17
30
  */
18
- defaultOptions?: CommandOption[] | ((context: Context, input: CommandBase) => CommandOption[]) | false;
31
+ globalOptions?: CommandOption[] | ((context: Context, input: CommandBase) => CommandOption[]) | false;
19
32
  /**
20
33
  * Determines whether commands and option names are treated as case-sensitive.
21
34
  *
@@ -43,6 +56,13 @@ type BaseOptions = Partial<BuildOptions> & {
43
56
  * @see https://stringcase.org/cases/constant/
44
57
  */
45
58
  autoAssignEnv?: true | string;
59
+ /**
60
+ * A URL to the application documentation or reference.
61
+ *
62
+ * @remarks
63
+ * This URL can be used in various displays of the user interface and documentation to provide users with a reference for the application. It can also be used by plugins to link to the documentation in relevant contexts. If the token `{command}` is included in the URL, it will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{referenceLink}/command/subcommand`.
64
+ */
65
+ reference?: ReferenceOptions | string;
46
66
  };
47
67
  /**
48
68
  * The plugin options for Shell Shock.
@@ -51,7 +71,7 @@ type Options = BaseOptions & Partial<NodeJsPluginOptions>;
51
71
  /**
52
72
  * The output configuration options for Shell Shock.
53
73
  */
54
- type OutputConfig$1 = Pick<OutputConfig, "outputPath" | "assets" | "storage"> & {
74
+ type OutputConfig$1 = Pick<OutputConfig, "path" | "copy" | "storage"> & {
55
75
  /**
56
76
  * An indicator specifying whether to generate TypeScript declaration files (.d.ts) during the build process.
57
77
  */
@@ -69,7 +89,7 @@ type UserConfig = BaseOptions & Partial<NodeJsPluginUserConfig> & {
69
89
  /**
70
90
  * The resolved configuration options for Shell Shock.
71
91
  */
72
- type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig & NodeJsPluginResolvedConfig & Required<Omit<Options, "bin">> & {
92
+ type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig & NodeJsPluginResolvedConfig & Required<Omit<Options, "bin" | "reference">> & {
73
93
  /**
74
94
  * The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | "bin" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).
75
95
  *
@@ -81,6 +101,10 @@ type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig &
81
101
  * @see https://pnpm.io/package_json#bin
82
102
  */
83
103
  bin: Record<string, string>;
104
+ /**
105
+ * The URL(s) to the application documentation or reference.
106
+ */
107
+ reference: ReferenceOptions;
84
108
  /**
85
109
  * The command-line application specific environment variable prefix used for automatically assigning environment variables to command options.
86
110
  */
@@ -91,5 +115,5 @@ type ResolvedConfig = TsdownPluginResolvedConfig & AutoMDPluginResolvedConfig &
91
115
  userConfig: UserConfig;
92
116
  }; //#endregion
93
117
  //#endregion
94
- export { Options, OutputConfig$1 as OutputConfig, ResolvedConfig, UserConfig };
118
+ export { Options, OutputConfig$1 as OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig };
95
119
  //# sourceMappingURL=config.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.mts","names":["CommandBase","CommandOption","Context","OutputConfig","OutputConfig$1","AutoMDPluginResolvedConfig","NodeJsPluginOptions","NodeJsPluginResolvedConfig","NodeJsPluginUserConfig","TsdownPluginResolvedConfig","TsdownPluginUserConfig","BuildOptions","Pick","BaseOptions","Partial","defaultOptions","context","input","isCaseSensitive","bin","autoAssignEnv","Options","dts","UserConfig","output","ResolvedConfig","Omit","Required","Record","appSpecificEnvPrefix","userConfig"],"sources":["../../../../../core/dist/types/config.d.cts"],"mappings":";;;;;;;;;KAQKW,YAAAA,GAAeC,IAAAA,CAAKF,sBAAAA;AAAAA,KACpBG,WAAAA,GAAcC,OAAAA,CAAQH,YAAAA;;;;AADoB;;;EAQ7CI,cAAAA,GAAiBd,aAAAA,OAAoBe,OAAAA,EAASd,OAAAA,EAASe,KAAAA,EAAOjB,WAAAA,KAAgBC,aAAAA;EAP7Da;;;;;EAajBI,eAAAA;EAN2F;;;;;;;;;;EAiB3FC,GAAAA;EAAAA;;;;AAUa;;;;;EAAbC,aAAAA;AAAAA;;;;KAKGC,OAAAA,GAAUR,WAAAA,GAAcC,OAAAA,CAAQR,mBAAAA;;;AAAmB;KAInDH,cAAAA,GAAeS,IAAAA,CAAKR,YAAAA;;;;EAIvBkB,GAAAA;AAAAA;;;AAAG;KAKAC,UAAAA,GAAaV,WAAAA,GAAcC,OAAAA,CAAQN,sBAAAA;;;;EAItCgB,MAAAA,GAASrB,cAAAA;AAAAA;;;;KAKNsB,cAAAA,GAAiBhB,0BAAAA,GAA6BJ,0BAAAA,GAA6BE,0BAAAA,GAA6BoB,QAAAA,CAASD,IAAAA,CAAKL,OAAAA;EATnFb;;;;;AAIjB;;;;;EAgBrBW,GAAAA,EAAKS,MAAAA;EAXoHP;;;EAezHQ,oBAAAA;EAIYN;;;EAAZO,UAAAA,EAAYP,UAAAA;AAAAA"}
1
+ {"version":3,"file":"config.d.mts","names":["CommandBase","CommandOption","Context","OutputConfig","OutputConfig$1","AutoMDPluginResolvedConfig","NodeJsPluginOptions","NodeJsPluginResolvedConfig","NodeJsPluginUserConfig","TsdownPluginResolvedConfig","TsdownPluginUserConfig","BuildOptions","Pick","ReferenceOptions","app","commands","BaseOptions","Partial","globalOptions","context","input","isCaseSensitive","bin","autoAssignEnv","reference","Options","dts","UserConfig","output","ResolvedConfig","Omit","Required","Record","appSpecificEnvPrefix","userConfig"],"sources":["../../../../../core/dist/types/config.d.cts"],"mappings":";;;;;;;;;KAQKW,YAAAA,GAAeC,IAAAA,CAAKF,sBAAAA;AAAAA,UACfG,gBAAAA;;;;EAIRC,GAAAA;EAJwB;;;;AAWhB;;EAARC,QAAAA;AAAAA;AAAAA,KAEGC,WAAAA,GAAcC,OAAAA,CAAQN,YAAAA;EAOTV;;;;;;EAAhBiB,aAAAA,GAAgBjB,aAAAA,OAAoBkB,OAAAA,EAASjB,OAAAA,EAASkB,KAAAA,EAAOpB,WAAAA,KAAgBC,aAAAA;EAP5DgB;;;;;EAajBI,eAAAA;EAN6DrB;;;;;;;;;;EAiB7DsB,GAAAA;EAsBU;;;;;;;;;EAZVC,aAAAA;EAYsD;;AAAA;;;;EALtDC,SAAAA,GAAYX,gBAAAA;AAAAA;;;;KAKTY,OAAAA,GAAUT,WAAAA,GAAcC,OAAAA,CAAQX,mBAAAA;;;;KAIhCH,cAAAA,GAAeS,IAAAA,CAAKR,YAAAA;EASOa;;;EAL9BS,GAAAA;AAAAA;;;;KAKGC,UAAAA,GAAaX,WAAAA,GAAcC,OAAAA,CAAQT,sBAAAA;EAIjB;;AAAA;EAArBoB,MAAAA,GAASzB,cAAAA;AAAAA;;;;KAKN0B,cAAAA,GAAiBpB,0BAAAA,GAA6BJ,0BAAAA,GAA6BE,0BAAAA,GAA6BwB,QAAAA,CAASD,IAAAA,CAAKL,OAAAA;EAALK;;;;;;;;;;EAWpHR,GAAAA,EAAKU,MAAAA;EAX+GF;;;EAepHN,SAAAA,EAAWX,gBAAAA;EAAXW;;;EAIAS,oBAAAA;EAIYN;;;EAAZO,UAAAA,EAAYP,UAAAA;AAAAA"}
package/dist/index.cjs CHANGED
@@ -61,7 +61,7 @@ const plugin = (options = {}) => {
61
61
  transformGroup: "js",
62
62
  transforms: ["name/camel"],
63
63
  fileHeader: "powerlines/file-header",
64
- buildPath: this.config.output.outputPath,
64
+ buildPath: this.config.output.path,
65
65
  files: [{
66
66
  format: "javascript/module",
67
67
  destination: "theme.js",
package/dist/index.mjs CHANGED
@@ -56,7 +56,7 @@ const plugin = (options = {}) => {
56
56
  transformGroup: "js",
57
57
  transforms: ["name/camel"],
58
58
  fileHeader: "powerlines/file-header",
59
- buildPath: this.config.output.outputPath,
59
+ buildPath: this.config.output.path,
60
60
  files: [{
61
61
  format: "javascript/module",
62
62
  destination: "theme.js",
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["defaultTheme"],"sources":["../src/index.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Shell Shock\n\n This code was released as part of the Shell Shock project. Shell Shock\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/shell-shock.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/shell-shock\n Documentation: https://docs.stormsoftware.com/projects/shell-shock\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport alloy from \"@powerlines/plugin-alloy\";\nimport styleDictionary from \"@powerlines/plugin-style-dictionary\";\nimport { omit } from \"@stryke/helpers/omit\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport defu from \"defu\";\nimport type { Plugin } from \"powerlines\";\nimport type { Config } from \"style-dictionary/types\";\nimport { borderStyles } from \"./style-dictionary/border-styles\";\nimport { colors } from \"./style-dictionary/colors\";\nimport { icons } from \"./style-dictionary/icons\";\nimport { labels } from \"./style-dictionary/labels\";\nimport { padding } from \"./style-dictionary/padding\";\nimport { settings } from \"./style-dictionary/settings\";\nimport { spinners } from \"./style-dictionary/spinners\";\nimport { theme as defaultTheme } from \"./themes/default\";\nimport type { ThemePluginContext, ThemePluginOptions } from \"./types/plugin\";\n\nexport type * from \"./types\";\n\n/**\n * The Style Dictionary - Shell Shock plugin to use Style Dictionary tokens to select theme colors to Shell Shock projects.\n */\nexport const plugin = <\n TContext extends ThemePluginContext = ThemePluginContext\n>(\n options: ThemePluginOptions = {}\n): Plugin<TContext>[] => {\n return [\n styleDictionary(defu({ skipBuild: false }, omit(options, [\"theme\"]))),\n // eslint-disable-next-line ts/no-unnecessary-type-assertion\n ...(alloy(options) as Plugin<TContext>[]),\n {\n name: \"shell-shock:theme\",\n config() {\n this.debug(\n \"Providing default configuration for the Shell Shock `theme` plugin.\"\n );\n\n return {\n theme: options.theme,\n styleDictionary: {\n customPreprocessors: (context: TContext) => ({\n \"shell-shock/colors\": colors(context),\n \"shell-shock/border-styles\": borderStyles(context),\n \"shell-shock/padding\": padding(context),\n \"shell-shock/icons\": icons(context),\n \"shell-shock/labels\": labels(context),\n \"shell-shock/spinners\": spinners(context),\n \"shell-shock/settings\": settings(context)\n })\n }\n };\n },\n configResolved: {\n order: \"pre\",\n async handler() {\n this.debug(\"Shell Shock `theme` plugin configuration resolved.\");\n\n this.config.styleDictionary = defu(this.config.styleDictionary, {\n tokens: isSetObject(this.config.theme)\n ? defu(this.config.theme, defaultTheme)\n : defaultTheme,\n platforms: {\n js: {\n preprocessors: [\n \"shell-shock/colors\",\n \"shell-shock/border-styles\",\n \"shell-shock/padding\",\n \"shell-shock/icons\",\n \"shell-shock/labels\",\n \"shell-shock/spinners\",\n \"shell-shock/settings\"\n ],\n transformGroup: \"js\",\n transforms: [\"name/camel\"],\n fileHeader: \"powerlines/file-header\",\n buildPath: this.config.output.outputPath,\n files: [\n {\n format: \"javascript/module\",\n destination: \"theme.js\",\n options: {\n minify: this.config.mode === \"production\"\n }\n },\n {\n format: \"typescript/module-declarations\",\n destination: \"theme.d.ts\",\n options: {\n minify: this.config.mode === \"production\"\n }\n }\n ]\n }\n }\n } as Config);\n }\n }\n }\n ] as Plugin<TContext>[];\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAwCA,MAAa,UAGX,UAA8B,EAAE,KACT;AACvB,QAAO;EACL,gBAAgB,KAAK,EAAE,WAAW,OAAO,EAAE,KAAK,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;EAErE,GAAI,MAAM,QAAQ;EAClB;GACE,MAAM;GACN,SAAS;AACP,SAAK,MACH,sEACD;AAED,WAAO;KACL,OAAO,QAAQ;KACf,iBAAiB,EACf,sBAAsB,aAAuB;MAC3C,sBAAsB,OAAO,QAAQ;MACrC,6BAA6B,aAAa,QAAQ;MAClD,uBAAuB,QAAQ,QAAQ;MACvC,qBAAqB,MAAM,QAAQ;MACnC,sBAAsB,OAAO,QAAQ;MACrC,wBAAwB,SAAS,QAAQ;MACzC,wBAAwB,SAAS,QAAQ;MAC1C,GACF;KACF;;GAEH,gBAAgB;IACd,OAAO;IACP,MAAM,UAAU;AACd,UAAK,MAAM,qDAAqD;AAEhE,UAAK,OAAO,kBAAkB,KAAK,KAAK,OAAO,iBAAiB;MAC9D,QAAQ,YAAY,KAAK,OAAO,MAAM,GAClC,KAAK,KAAK,OAAO,OAAOA,MAAa,GACrCA;MACJ,WAAW,EACT,IAAI;OACF,eAAe;QACb;QACA;QACA;QACA;QACA;QACA;QACA;QACD;OACD,gBAAgB;OAChB,YAAY,CAAC,aAAa;OAC1B,YAAY;OACZ,WAAW,KAAK,OAAO,OAAO;OAC9B,OAAO,CACL;QACE,QAAQ;QACR,aAAa;QACb,SAAS,EACP,QAAQ,KAAK,OAAO,SAAS,cAC9B;QACF,EACD;QACE,QAAQ;QACR,aAAa;QACb,SAAS,EACP,QAAQ,KAAK,OAAO,SAAS,cAC9B;QACF,CACF;OACF,EACF;MACF,CAAW;;IAEf;GACF;EACF"}
1
+ {"version":3,"file":"index.mjs","names":["defaultTheme"],"sources":["../src/index.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Shell Shock\n\n This code was released as part of the Shell Shock project. Shell Shock\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/shell-shock.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/shell-shock\n Documentation: https://docs.stormsoftware.com/projects/shell-shock\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport alloy from \"@powerlines/plugin-alloy\";\nimport styleDictionary from \"@powerlines/plugin-style-dictionary\";\nimport { omit } from \"@stryke/helpers/omit\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport defu from \"defu\";\nimport type { Plugin } from \"powerlines\";\nimport type { Config } from \"style-dictionary/types\";\nimport { borderStyles } from \"./style-dictionary/border-styles\";\nimport { colors } from \"./style-dictionary/colors\";\nimport { icons } from \"./style-dictionary/icons\";\nimport { labels } from \"./style-dictionary/labels\";\nimport { padding } from \"./style-dictionary/padding\";\nimport { settings } from \"./style-dictionary/settings\";\nimport { spinners } from \"./style-dictionary/spinners\";\nimport { theme as defaultTheme } from \"./themes/default\";\nimport type { ThemePluginContext, ThemePluginOptions } from \"./types/plugin\";\n\nexport type * from \"./types\";\n\n/**\n * The Style Dictionary - Shell Shock plugin to use Style Dictionary tokens to select theme colors to Shell Shock projects.\n */\nexport const plugin = <\n TContext extends ThemePluginContext = ThemePluginContext\n>(\n options: ThemePluginOptions = {}\n): Plugin<TContext>[] => {\n return [\n styleDictionary(defu({ skipBuild: false }, omit(options, [\"theme\"]))),\n // eslint-disable-next-line ts/no-unnecessary-type-assertion\n ...(alloy(options) as Plugin<TContext>[]),\n {\n name: \"shell-shock:theme\",\n config() {\n this.debug(\n \"Providing default configuration for the Shell Shock `theme` plugin.\"\n );\n\n return {\n theme: options.theme,\n styleDictionary: {\n customPreprocessors: (context: TContext) => ({\n \"shell-shock/colors\": colors(context),\n \"shell-shock/border-styles\": borderStyles(context),\n \"shell-shock/padding\": padding(context),\n \"shell-shock/icons\": icons(context),\n \"shell-shock/labels\": labels(context),\n \"shell-shock/spinners\": spinners(context),\n \"shell-shock/settings\": settings(context)\n })\n }\n };\n },\n configResolved: {\n order: \"pre\",\n async handler() {\n this.debug(\"Shell Shock `theme` plugin configuration resolved.\");\n\n this.config.styleDictionary = defu(this.config.styleDictionary, {\n tokens: isSetObject(this.config.theme)\n ? defu(this.config.theme, defaultTheme)\n : defaultTheme,\n platforms: {\n js: {\n preprocessors: [\n \"shell-shock/colors\",\n \"shell-shock/border-styles\",\n \"shell-shock/padding\",\n \"shell-shock/icons\",\n \"shell-shock/labels\",\n \"shell-shock/spinners\",\n \"shell-shock/settings\"\n ],\n transformGroup: \"js\",\n transforms: [\"name/camel\"],\n fileHeader: \"powerlines/file-header\",\n buildPath: this.config.output.path,\n files: [\n {\n format: \"javascript/module\",\n destination: \"theme.js\",\n options: {\n minify: this.config.mode === \"production\"\n }\n },\n {\n format: \"typescript/module-declarations\",\n destination: \"theme.d.ts\",\n options: {\n minify: this.config.mode === \"production\"\n }\n }\n ]\n }\n }\n } as Config);\n }\n }\n }\n ] as Plugin<TContext>[];\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAwCA,MAAa,UAGX,UAA8B,EAAE,KACT;AACvB,QAAO;EACL,gBAAgB,KAAK,EAAE,WAAW,OAAO,EAAE,KAAK,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;EAErE,GAAI,MAAM,QAAQ;EAClB;GACE,MAAM;GACN,SAAS;AACP,SAAK,MACH,sEACD;AAED,WAAO;KACL,OAAO,QAAQ;KACf,iBAAiB,EACf,sBAAsB,aAAuB;MAC3C,sBAAsB,OAAO,QAAQ;MACrC,6BAA6B,aAAa,QAAQ;MAClD,uBAAuB,QAAQ,QAAQ;MACvC,qBAAqB,MAAM,QAAQ;MACnC,sBAAsB,OAAO,QAAQ;MACrC,wBAAwB,SAAS,QAAQ;MACzC,wBAAwB,SAAS,QAAQ;MAC1C,GACF;KACF;;GAEH,gBAAgB;IACd,OAAO;IACP,MAAM,UAAU;AACd,UAAK,MAAM,qDAAqD;AAEhE,UAAK,OAAO,kBAAkB,KAAK,KAAK,OAAO,iBAAiB;MAC9D,QAAQ,YAAY,KAAK,OAAO,MAAM,GAClC,KAAK,KAAK,OAAO,OAAOA,MAAa,GACrCA;MACJ,WAAW,EACT,IAAI;OACF,eAAe;QACb;QACA;QACA;QACA;QACA;QACA;QACA;QACD;OACD,gBAAgB;OAChB,YAAY,CAAC,aAAa;OAC1B,YAAY;OACZ,WAAW,KAAK,OAAO,OAAO;OAC9B,OAAO,CACL;QACE,QAAQ;QACR,aAAa;QACb,SAAS,EACP,QAAQ,KAAK,OAAO,SAAS,cAC9B;QACF,EACD;QACE,QAAQ;QACR,aAAa;QACb,SAAS,EACP,QAAQ,KAAK,OAAO,SAAS,cAC9B;QACF,CACF;OACF,EACF;MACF,CAAW;;IAEf;GACF;EACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shell-shock/plugin-theme",
3
- "version": "0.3.16",
3
+ "version": "0.3.18",
4
4
  "private": false,
5
5
  "description": "A package containing a Shell Shock plugin to generate source code given a list design tokens.",
6
6
  "keywords": [
@@ -209,19 +209,19 @@
209
209
  "files": ["dist/**/*"],
210
210
  "dependencies": {
211
211
  "@alloy-js/core": "0.23.0-dev.8",
212
- "@powerlines/plugin-alloy": "^0.25.41",
213
- "@powerlines/plugin-plugin": "^0.12.306",
214
- "@powerlines/plugin-style-dictionary": "^0.3.256",
212
+ "@powerlines/plugin-alloy": "^0.25.54",
213
+ "@powerlines/plugin-plugin": "^0.12.319",
214
+ "@powerlines/plugin-style-dictionary": "^0.3.269",
215
215
  "@stryke/helpers": "^0.10.6",
216
216
  "@stryke/type-checks": "^0.5.41",
217
217
  "defu": "^6.1.4",
218
- "powerlines": "^0.41.20",
218
+ "powerlines": "^0.42.9",
219
219
  "style-dictionary": "^5.3.3"
220
220
  },
221
221
  "devDependencies": {
222
- "@powerlines/plugin-deepkit": "^0.11.234",
222
+ "@powerlines/plugin-deepkit": "^0.11.247",
223
223
  "@types/node": "^25.5.0"
224
224
  },
225
225
  "publishConfig": { "access": "public" },
226
- "gitHead": "86c55189ed02d126fb583cf6d2555266f00d0f3a"
226
+ "gitHead": "86ac1c51d3258bded9e493024e6631d241f62dd2"
227
227
  }