@shell-shock/plugin-theme 0.4.21 → 0.4.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +29 -1
  2. package/dist/_virtual/_rolldown/runtime.mjs +8 -1
  3. package/dist/contexts/index.cjs +5 -1
  4. package/dist/contexts/index.mjs +3 -1
  5. package/dist/contexts/theme.cjs +28 -1
  6. package/dist/contexts/theme.d.cts.map +1 -1
  7. package/dist/contexts/theme.d.mts.map +1 -1
  8. package/dist/contexts/theme.mjs +26 -1
  9. package/dist/contexts/theme.mjs.map +1 -1
  10. package/dist/core/dist/config.d.cts +1 -0
  11. package/dist/core/dist/config.d.mts +9 -0
  12. package/dist/core/dist/config.d.mts.map +1 -0
  13. package/dist/core/dist/index.d.cts +1 -1
  14. package/dist/{packages/core → core}/dist/index.d.mts +2 -2
  15. package/dist/core/dist/index.d.mts.map +1 -0
  16. package/dist/core/dist/types/command.d.cts +60 -69
  17. package/dist/core/dist/types/command.d.cts.map +1 -1
  18. package/dist/core/dist/types/command.d.mts +8 -0
  19. package/dist/core/dist/types/command.d.mts.map +1 -0
  20. package/dist/core/dist/types/config.d.cts +14 -14
  21. package/dist/core/dist/types/config.d.cts.map +1 -1
  22. package/dist/{packages/core → core}/dist/types/config.d.mts +1 -1
  23. package/dist/core/dist/types/config.d.mts.map +1 -0
  24. package/dist/core/dist/types/context.d.cts.map +1 -1
  25. package/dist/{packages/core → core}/dist/types/context.d.mts +1 -1
  26. package/dist/core/dist/types/context.d.mts.map +1 -0
  27. package/dist/{packages/core → core}/dist/types/options.d.mts +1 -1
  28. package/dist/core/dist/types/options.d.mts.map +1 -0
  29. package/dist/helpers/ansi-utils.cjs +1294 -1
  30. package/dist/helpers/ansi-utils.d.cts.map +1 -1
  31. package/dist/helpers/ansi-utils.d.mts.map +1 -1
  32. package/dist/helpers/ansi-utils.mjs +1287 -1
  33. package/dist/helpers/ansi-utils.mjs.map +1 -1
  34. package/dist/helpers/border-styles.cjs +201 -1
  35. package/dist/helpers/border-styles.d.cts.map +1 -1
  36. package/dist/helpers/border-styles.d.mts.map +1 -1
  37. package/dist/helpers/border-styles.mjs +199 -1
  38. package/dist/helpers/border-styles.mjs.map +1 -1
  39. package/dist/helpers/constants.cjs +39 -1
  40. package/dist/helpers/constants.d.mts.map +1 -1
  41. package/dist/helpers/constants.mjs +33 -1
  42. package/dist/helpers/constants.mjs.map +1 -1
  43. package/dist/helpers/index.cjs +107 -1
  44. package/dist/helpers/index.mjs +6 -1
  45. package/dist/helpers/merge.cjs +18 -1
  46. package/dist/helpers/merge.d.cts.map +1 -1
  47. package/dist/helpers/merge.d.mts.map +1 -1
  48. package/dist/helpers/merge.mjs +17 -1
  49. package/dist/helpers/merge.mjs.map +1 -1
  50. package/dist/helpers/spinners.cjs +1852 -1
  51. package/dist/helpers/spinners.d.cts.map +1 -1
  52. package/dist/helpers/spinners.d.mts.map +1 -1
  53. package/dist/helpers/spinners.mjs +1758 -1
  54. package/dist/helpers/spinners.mjs.map +1 -1
  55. package/dist/index.cjs +70 -1
  56. package/dist/index.d.cts +1 -1
  57. package/dist/index.d.mts +1 -1
  58. package/dist/index.d.mts.map +1 -1
  59. package/dist/index.mjs +65 -1
  60. package/dist/index.mjs.map +1 -1
  61. package/dist/style-dictionary/border-styles.cjs +284 -1
  62. package/dist/style-dictionary/border-styles.mjs +284 -1
  63. package/dist/style-dictionary/border-styles.mjs.map +1 -1
  64. package/dist/style-dictionary/colors.cjs +1390 -1
  65. package/dist/style-dictionary/colors.mjs +1390 -1
  66. package/dist/style-dictionary/colors.mjs.map +1 -1
  67. package/dist/style-dictionary/icons.cjs +168 -1
  68. package/dist/style-dictionary/icons.mjs +168 -1
  69. package/dist/style-dictionary/icons.mjs.map +1 -1
  70. package/dist/style-dictionary/labels.cjs +150 -1
  71. package/dist/style-dictionary/labels.mjs +150 -1
  72. package/dist/style-dictionary/labels.mjs.map +1 -1
  73. package/dist/style-dictionary/padding.cjs +37 -1
  74. package/dist/style-dictionary/padding.mjs +37 -1
  75. package/dist/style-dictionary/padding.mjs.map +1 -1
  76. package/dist/style-dictionary/settings.cjs +25 -1
  77. package/dist/style-dictionary/settings.mjs +25 -1
  78. package/dist/style-dictionary/settings.mjs.map +1 -1
  79. package/dist/style-dictionary/spinners.cjs +30 -1
  80. package/dist/style-dictionary/spinners.mjs +30 -1
  81. package/dist/style-dictionary/spinners.mjs.map +1 -1
  82. package/dist/themes/default.cjs +156 -1
  83. package/dist/themes/default.mjs +155 -1
  84. package/dist/themes/default.mjs.map +1 -1
  85. package/dist/types/index.mjs +1 -1
  86. package/dist/types/plugin.d.mts +1 -1
  87. package/dist/types/plugin.d.mts.map +1 -1
  88. package/dist/types/plugin.mjs +1 -1
  89. package/dist/types/theme.d.cts.map +1 -1
  90. package/dist/types/theme.d.mts.map +1 -1
  91. package/dist/types/theme.mjs +1 -1
  92. package/package.json +15 -19
  93. package/dist/core/dist/api.d.cts +0 -1
  94. package/dist/node_modules/.pnpm/@standard-schema_spec@1.1.0/node_modules/@standard-schema/spec/dist/index.d.mts +0 -8
  95. package/dist/node_modules/.pnpm/@standard-schema_spec@1.1.0/node_modules/@standard-schema/spec/dist/index.d.mts.map +0 -1
  96. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/ZodError.d.mts +0 -11
  97. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/ZodError.d.mts.map +0 -1
  98. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/errors.d.mts +0 -10
  99. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/errors.d.mts.map +0 -1
  100. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/external.d.mts +0 -14
  101. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/external.d.mts.map +0 -1
  102. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/enumUtil.d.mts +0 -8
  103. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/enumUtil.d.mts.map +0 -1
  104. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/errorUtil.d.mts +0 -8
  105. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/errorUtil.d.mts.map +0 -1
  106. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/parseUtil.d.mts +0 -10
  107. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/parseUtil.d.mts.map +0 -1
  108. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/partialUtil.d.mts +0 -9
  109. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/partialUtil.d.mts.map +0 -1
  110. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/typeAliases.d.mts +0 -8
  111. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/typeAliases.d.mts.map +0 -1
  112. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/util.d.mts +0 -8
  113. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/util.d.mts.map +0 -1
  114. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/index.d.mts +0 -9
  115. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/index.d.mts.map +0 -1
  116. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/locales/en.d.mts +0 -9
  117. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/locales/en.d.mts.map +0 -1
  118. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/standard-schema.d.mts +0 -8
  119. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/standard-schema.d.mts.map +0 -1
  120. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/types.d.mts +0 -16
  121. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/types.d.mts.map +0 -1
  122. package/dist/packages/core/dist/api.d.mts +0 -8
  123. package/dist/packages/core/dist/api.d.mts.map +0 -1
  124. package/dist/packages/core/dist/index.d.mts.map +0 -1
  125. package/dist/packages/core/dist/types/command.d.mts +0 -10
  126. package/dist/packages/core/dist/types/command.d.mts.map +0 -1
  127. package/dist/packages/core/dist/types/config.d.mts.map +0 -1
  128. package/dist/packages/core/dist/types/context.d.mts.map +0 -1
  129. package/dist/packages/core/dist/types/options.d.mts.map +0 -1
@@ -1,2 +1,169 @@
1
- import{mergeThemes as e}from"../helpers/merge.mjs";import{isSetObject as t}from"@stryke/type-checks/is-set-object";import{isSetString as n}from"@stryke/type-checks/is-set-string";const r=r=>({name:`shell-shock/icons`,preprocessor:(i,a)=>{let o={};o.name=i.$theme??r.config.name,o.icons??={link:{},message:{header:{}},banner:{header:{}},prompt:{}};let s=i.icons;if(n(s))o.icons={link:{external:s},message:{header:{help:s,success:s,info:s,debug:s,warning:s,danger:s,error:s}},banner:{header:{primary:s,secondary:s,tertiary:s}},prompt:{active:s,cancelled:s,warning:s,error:s,submitted:s,disabled:s},spinner:{help:s,success:s,info:s,warning:s,error:s}};else if(t(s)){o.icons.link??={};let e=s.link;n(e)?o.icons.link={external:e}:t(e)&&n(e.external)&&(o.icons.link.external=e.external),o.icons.message={};let r=s.message;if(n(r))o.icons.message={header:{help:r,success:r,info:r,debug:r,warning:r,danger:r,error:r}};else if(t(r)){o.icons.message.header??={};let e=r.header;n(e)?o.icons.message={header:{help:e,success:e,info:e,debug:e,warning:e,danger:e,error:e}}:t(e)&&(n(e.help)&&(o.icons.message.header.help=e.help),n(e.success)&&(o.icons.message.header.success=e.success),n(e.info)&&(o.icons.message.header.info=e.info),n(e.debug)&&(o.icons.message.header.debug=e.debug),n(e.warning)&&(o.icons.message.header.warning=e.warning),n(e.danger)&&(o.icons.message.header.danger=e.danger),n(e.error)&&(o.icons.message.header.error=e.error))}o.icons.banner??={header:{}};let i=s.banner;if(n(i))o.icons.banner={header:{primary:i,secondary:i,tertiary:i}};else if(t(i)){o.icons.banner.header??={};let e=i.header;n(i.header)?o.icons.banner={header:{primary:i.header,secondary:i.header,tertiary:i.header}}:t(i.header)&&(n(e.primary)&&(o.icons.banner.header.primary=e.primary),n(e.secondary)&&(o.icons.banner.header.secondary=e.secondary),n(e.tertiary)&&(o.icons.banner.header.tertiary=e.tertiary))}o.icons.prompt??={};let a=s.prompt;n(a)?o.icons.prompt={active:a,cancelled:a,error:a,warning:a,submitted:a,disabled:a}:t(a)&&(n(a.active)&&(o.icons.prompt.active=a.active),n(a.cancelled)&&(o.icons.prompt.cancelled=a.cancelled),n(a.error)&&(o.icons.prompt.error=a.error),n(a.warning)&&(o.icons.prompt.warning=a.warning),n(a.submitted)&&(o.icons.prompt.submitted=a.submitted),n(a.disabled)&&(o.icons.prompt.disabled=a.disabled)),o.icons.spinner??={};let c=s.spinner;n(c)?o.icons.spinner={help:c,success:c,info:c,warning:c,error:c}:t(c)&&(n(c.help)&&(o.icons.spinner.help=c.help),n(c.success)&&(o.icons.spinner.success=c.success),n(c.info)&&(o.icons.spinner.info=c.info),n(c.warning)&&(o.icons.spinner.warning=c.warning),n(c.error)&&(o.icons.spinner.error=c.error))}return!o.icons.prompt?.active&&o.icons?.banner?.header?.primary&&(o.icons.prompt.active=o.icons.banner.header.primary),!o.icons.prompt?.submitted&&o.icons.message?.header?.success&&(o.icons.prompt.submitted=o.icons.message.header.success),!o.icons.prompt?.warning&&o.icons.message?.header?.warning&&(o.icons.prompt.warning=o.icons.message.header.warning),!o.icons.prompt?.error&&o.icons.message?.header?.error&&(o.icons.prompt.error=o.icons.message.header.error),!o.icons.prompt?.cancelled&&o.icons.message?.header?.error&&(o.icons.prompt.cancelled=o.icons.message.header.error),!o.icons.spinner?.success&&o.icons.message?.header?.success&&(o.icons.spinner.success=o.icons.message.header.success),!o.icons.spinner?.warning&&o.icons.message?.header?.warning&&(o.icons.spinner.warning=o.icons.message.header.warning),!o.icons.spinner?.error&&o.icons.message?.header?.error&&(o.icons.spinner.error=o.icons.message.header.error),!o.icons.spinner?.info&&o.icons.message?.header?.info&&(o.icons.spinner.info=o.icons.message.header.info),!o.icons.spinner?.help&&o.icons.message?.header?.help&&(o.icons.spinner.help=o.icons.message.header.help),e(r,o),i}});export{r as icons};
1
+ import { mergeThemes } from "../helpers/merge.mjs";
2
+ import { isSetObject } from "@stryke/type-checks/is-set-object";
3
+ import { isSetString } from "@stryke/type-checks/is-set-string";
4
+
5
+ //#region src/style-dictionary/icons.ts
6
+ /**
7
+ * Shell Shock - Theme Icons Preprocessor
8
+ *
9
+ * @remarks
10
+ * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.
11
+ */
12
+ const icons = (context) => ({
13
+ name: "shell-shock/icons",
14
+ preprocessor: (dictionary, _options) => {
15
+ const resolvedConfig = {};
16
+ resolvedConfig.name = dictionary.$theme ?? context.config.name;
17
+ resolvedConfig.icons ??= {
18
+ link: {},
19
+ message: { header: {} },
20
+ banner: { header: {} },
21
+ prompt: {}
22
+ };
23
+ const icons = dictionary.icons;
24
+ if (isSetString(icons)) resolvedConfig.icons = {
25
+ link: { external: icons },
26
+ message: { header: {
27
+ help: icons,
28
+ success: icons,
29
+ info: icons,
30
+ debug: icons,
31
+ warning: icons,
32
+ danger: icons,
33
+ error: icons
34
+ } },
35
+ banner: { header: {
36
+ primary: icons,
37
+ secondary: icons,
38
+ tertiary: icons
39
+ } },
40
+ prompt: {
41
+ active: icons,
42
+ cancelled: icons,
43
+ warning: icons,
44
+ error: icons,
45
+ submitted: icons,
46
+ disabled: icons
47
+ },
48
+ spinner: {
49
+ help: icons,
50
+ success: icons,
51
+ info: icons,
52
+ warning: icons,
53
+ error: icons
54
+ }
55
+ };
56
+ else if (isSetObject(icons)) {
57
+ resolvedConfig.icons.link ??= {};
58
+ const app = icons.link;
59
+ if (isSetString(app)) resolvedConfig.icons.link = { external: app };
60
+ else if (isSetObject(app)) {
61
+ if (isSetString(app.external)) resolvedConfig.icons.link.external = app.external;
62
+ }
63
+ resolvedConfig.icons.message = {};
64
+ const message = icons.message;
65
+ if (isSetString(message)) resolvedConfig.icons.message = { header: {
66
+ help: message,
67
+ success: message,
68
+ info: message,
69
+ debug: message,
70
+ warning: message,
71
+ danger: message,
72
+ error: message
73
+ } };
74
+ else if (isSetObject(message)) {
75
+ resolvedConfig.icons.message.header ??= {};
76
+ const header = message.header;
77
+ if (isSetString(header)) resolvedConfig.icons.message = { header: {
78
+ help: header,
79
+ success: header,
80
+ info: header,
81
+ debug: header,
82
+ warning: header,
83
+ danger: header,
84
+ error: header
85
+ } };
86
+ else if (isSetObject(header)) {
87
+ if (isSetString(header.help)) resolvedConfig.icons.message.header.help = header.help;
88
+ if (isSetString(header.success)) resolvedConfig.icons.message.header.success = header.success;
89
+ if (isSetString(header.info)) resolvedConfig.icons.message.header.info = header.info;
90
+ if (isSetString(header.debug)) resolvedConfig.icons.message.header.debug = header.debug;
91
+ if (isSetString(header.warning)) resolvedConfig.icons.message.header.warning = header.warning;
92
+ if (isSetString(header.danger)) resolvedConfig.icons.message.header.danger = header.danger;
93
+ if (isSetString(header.error)) resolvedConfig.icons.message.header.error = header.error;
94
+ }
95
+ }
96
+ resolvedConfig.icons.banner ??= { header: {} };
97
+ const banner = icons.banner;
98
+ if (isSetString(banner)) resolvedConfig.icons.banner = { header: {
99
+ primary: banner,
100
+ secondary: banner,
101
+ tertiary: banner
102
+ } };
103
+ else if (isSetObject(banner)) {
104
+ resolvedConfig.icons.banner.header ??= {};
105
+ const header = banner.header;
106
+ if (isSetString(banner.header)) resolvedConfig.icons.banner = { header: {
107
+ primary: banner.header,
108
+ secondary: banner.header,
109
+ tertiary: banner.header
110
+ } };
111
+ else if (isSetObject(banner.header)) {
112
+ if (isSetString(header.primary)) resolvedConfig.icons.banner.header.primary = header.primary;
113
+ if (isSetString(header.secondary)) resolvedConfig.icons.banner.header.secondary = header.secondary;
114
+ if (isSetString(header.tertiary)) resolvedConfig.icons.banner.header.tertiary = header.tertiary;
115
+ }
116
+ }
117
+ resolvedConfig.icons.prompt ??= {};
118
+ const prompt = icons.prompt;
119
+ if (isSetString(prompt)) resolvedConfig.icons.prompt = {
120
+ active: prompt,
121
+ cancelled: prompt,
122
+ error: prompt,
123
+ warning: prompt,
124
+ submitted: prompt,
125
+ disabled: prompt
126
+ };
127
+ else if (isSetObject(prompt)) {
128
+ if (isSetString(prompt.active)) resolvedConfig.icons.prompt.active = prompt.active;
129
+ if (isSetString(prompt.cancelled)) resolvedConfig.icons.prompt.cancelled = prompt.cancelled;
130
+ if (isSetString(prompt.error)) resolvedConfig.icons.prompt.error = prompt.error;
131
+ if (isSetString(prompt.warning)) resolvedConfig.icons.prompt.warning = prompt.warning;
132
+ if (isSetString(prompt.submitted)) resolvedConfig.icons.prompt.submitted = prompt.submitted;
133
+ if (isSetString(prompt.disabled)) resolvedConfig.icons.prompt.disabled = prompt.disabled;
134
+ }
135
+ resolvedConfig.icons.spinner ??= {};
136
+ const spinner = icons.spinner;
137
+ if (isSetString(spinner)) resolvedConfig.icons.spinner = {
138
+ help: spinner,
139
+ success: spinner,
140
+ info: spinner,
141
+ warning: spinner,
142
+ error: spinner
143
+ };
144
+ else if (isSetObject(spinner)) {
145
+ if (isSetString(spinner.help)) resolvedConfig.icons.spinner.help = spinner.help;
146
+ if (isSetString(spinner.success)) resolvedConfig.icons.spinner.success = spinner.success;
147
+ if (isSetString(spinner.info)) resolvedConfig.icons.spinner.info = spinner.info;
148
+ if (isSetString(spinner.warning)) resolvedConfig.icons.spinner.warning = spinner.warning;
149
+ if (isSetString(spinner.error)) resolvedConfig.icons.spinner.error = spinner.error;
150
+ }
151
+ }
152
+ if (!resolvedConfig.icons.prompt?.active && resolvedConfig.icons?.banner?.header?.primary) resolvedConfig.icons.prompt.active = resolvedConfig.icons.banner.header.primary;
153
+ if (!resolvedConfig.icons.prompt?.submitted && resolvedConfig.icons.message?.header?.success) resolvedConfig.icons.prompt.submitted = resolvedConfig.icons.message.header.success;
154
+ if (!resolvedConfig.icons.prompt?.warning && resolvedConfig.icons.message?.header?.warning) resolvedConfig.icons.prompt.warning = resolvedConfig.icons.message.header.warning;
155
+ if (!resolvedConfig.icons.prompt?.error && resolvedConfig.icons.message?.header?.error) resolvedConfig.icons.prompt.error = resolvedConfig.icons.message.header.error;
156
+ if (!resolvedConfig.icons.prompt?.cancelled && resolvedConfig.icons.message?.header?.error) resolvedConfig.icons.prompt.cancelled = resolvedConfig.icons.message.header.error;
157
+ if (!resolvedConfig.icons.spinner?.success && resolvedConfig.icons.message?.header?.success) resolvedConfig.icons.spinner.success = resolvedConfig.icons.message.header.success;
158
+ if (!resolvedConfig.icons.spinner?.warning && resolvedConfig.icons.message?.header?.warning) resolvedConfig.icons.spinner.warning = resolvedConfig.icons.message.header.warning;
159
+ if (!resolvedConfig.icons.spinner?.error && resolvedConfig.icons.message?.header?.error) resolvedConfig.icons.spinner.error = resolvedConfig.icons.message.header.error;
160
+ if (!resolvedConfig.icons.spinner?.info && resolvedConfig.icons.message?.header?.info) resolvedConfig.icons.spinner.info = resolvedConfig.icons.message.header.info;
161
+ if (!resolvedConfig.icons.spinner?.help && resolvedConfig.icons.message?.header?.help) resolvedConfig.icons.spinner.help = resolvedConfig.icons.message.header.help;
162
+ mergeThemes(context, resolvedConfig);
163
+ return dictionary;
164
+ }
165
+ });
166
+
167
+ //#endregion
168
+ export { icons };
2
169
  //# sourceMappingURL=icons.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"icons.mjs","names":[],"sources":["../../src/style-dictionary/icons.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 { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport type { Config, PlatformConfig } from \"style-dictionary\";\nimport type {\n DesignToken,\n PreprocessedTokens,\n Preprocessor\n} from \"style-dictionary/types\";\nimport { mergeThemes } from \"../helpers/merge\";\nimport type { ThemePluginContext } from \"../types/plugin\";\nimport type {\n ThemeIconLinkStateConfig,\n ThemeIconMessageStateConfig,\n ThemeIconPromptStateConfig,\n ThemeIconSpinnerStateConfig,\n ThemeIconsResolvedConfig,\n ThemeIconSubItemConfig,\n ThemeIconsUserConfig,\n ThemeIconTypeResolvedConfig,\n ThemeResolvedConfig\n} from \"../types/theme\";\n\n/**\n * Shell Shock - Theme Icons Preprocessor\n *\n * @remarks\n * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.\n */\nexport const icons = (context: ThemePluginContext): Preprocessor => ({\n name: \"shell-shock/icons\",\n preprocessor: (\n dictionary: PreprocessedTokens,\n _options: Config | PlatformConfig\n ): PreprocessedTokens => {\n const resolvedConfig = {} as ThemeResolvedConfig;\n resolvedConfig.name =\n (dictionary as DesignToken).$theme ?? context.config.name;\n\n // #region Tiered token resolution\n\n // #region Icons\n\n resolvedConfig.icons ??= {\n link: {},\n message: { header: {} },\n banner: { header: {} },\n prompt: {}\n } as ThemeIconsResolvedConfig;\n const icons = dictionary.icons as ThemeIconsUserConfig;\n\n if (isSetString(icons)) {\n resolvedConfig.icons = {\n link: {\n external: icons\n },\n message: {\n header: {\n help: icons,\n success: icons,\n info: icons,\n debug: icons,\n warning: icons,\n danger: icons,\n error: icons\n }\n },\n banner: {\n header: {\n primary: icons,\n secondary: icons,\n tertiary: icons\n }\n },\n prompt: {\n active: icons,\n cancelled: icons,\n warning: icons,\n error: icons,\n submitted: icons,\n disabled: icons\n },\n spinner: {\n help: icons,\n success: icons,\n info: icons,\n warning: icons,\n error: icons\n }\n };\n } else if (isSetObject(icons)) {\n resolvedConfig.icons.link ??= {} as ThemeIconLinkStateConfig;\n const app = icons.link;\n\n if (isSetString(app)) {\n resolvedConfig.icons.link = {\n external: app\n };\n } else if (isSetObject(app)) {\n if (isSetString(app.external)) {\n resolvedConfig.icons.link.external = app.external;\n }\n }\n\n resolvedConfig.icons.message =\n {} as ThemeIconTypeResolvedConfig<ThemeIconMessageStateConfig>;\n const message = icons.message;\n\n if (isSetString(message)) {\n resolvedConfig.icons.message = {\n header: {\n help: message,\n success: message,\n info: message,\n debug: message,\n warning: message,\n danger: message,\n error: message\n }\n };\n } else if (isSetObject(message)) {\n resolvedConfig.icons.message.header ??=\n {} as ThemeIconMessageStateConfig;\n const header = message.header;\n\n if (isSetString(header)) {\n resolvedConfig.icons.message = {\n header: {\n help: header,\n success: header,\n info: header,\n debug: header,\n warning: header,\n danger: header,\n error: header\n }\n };\n } else if (isSetObject(header)) {\n if (isSetString(header.help)) {\n resolvedConfig.icons.message.header.help = header.help;\n }\n if (isSetString(header.success)) {\n resolvedConfig.icons.message.header.success = header.success;\n }\n if (isSetString(header.info)) {\n resolvedConfig.icons.message.header.info = header.info;\n }\n if (isSetString(header.debug)) {\n resolvedConfig.icons.message.header.debug = header.debug;\n }\n if (isSetString(header.warning)) {\n resolvedConfig.icons.message.header.warning = header.warning;\n }\n if (isSetString(header.danger)) {\n resolvedConfig.icons.message.header.danger = header.danger;\n }\n if (isSetString(header.error)) {\n resolvedConfig.icons.message.header.error = header.error;\n }\n }\n }\n\n resolvedConfig.icons.banner ??= {\n header: {}\n } as ThemeIconTypeResolvedConfig<ThemeIconSubItemConfig>;\n const banner = icons.banner;\n\n if (isSetString(banner)) {\n resolvedConfig.icons.banner = {\n header: {\n primary: banner,\n secondary: banner,\n tertiary: banner\n }\n };\n } else if (isSetObject(banner)) {\n resolvedConfig.icons.banner.header ??= {} as ThemeIconSubItemConfig;\n const header = banner.header as ThemeIconSubItemConfig;\n\n if (isSetString(banner.header)) {\n resolvedConfig.icons.banner = {\n header: {\n primary: banner.header,\n secondary: banner.header,\n tertiary: banner.header\n }\n };\n } else if (isSetObject(banner.header)) {\n if (isSetString(header.primary)) {\n resolvedConfig.icons.banner.header.primary = header.primary;\n }\n if (isSetString(header.secondary)) {\n resolvedConfig.icons.banner.header.secondary = header.secondary;\n }\n if (isSetString(header.tertiary)) {\n resolvedConfig.icons.banner.header.tertiary = header.tertiary;\n }\n }\n }\n\n resolvedConfig.icons.prompt ??= {} as ThemeIconPromptStateConfig;\n const prompt = icons.prompt;\n\n if (isSetString(prompt)) {\n resolvedConfig.icons.prompt = {\n active: prompt,\n cancelled: prompt,\n error: prompt,\n warning: prompt,\n submitted: prompt,\n disabled: prompt\n };\n } else if (isSetObject(prompt)) {\n if (isSetString(prompt.active)) {\n resolvedConfig.icons.prompt.active = prompt.active;\n }\n if (isSetString(prompt.cancelled)) {\n resolvedConfig.icons.prompt.cancelled = prompt.cancelled;\n }\n if (isSetString(prompt.error)) {\n resolvedConfig.icons.prompt.error = prompt.error;\n }\n if (isSetString(prompt.warning)) {\n resolvedConfig.icons.prompt.warning = prompt.warning;\n }\n if (isSetString(prompt.submitted)) {\n resolvedConfig.icons.prompt.submitted = prompt.submitted;\n }\n if (isSetString(prompt.disabled)) {\n resolvedConfig.icons.prompt.disabled = prompt.disabled;\n }\n }\n\n resolvedConfig.icons.spinner ??= {} as ThemeIconSpinnerStateConfig;\n const spinner = icons.spinner;\n\n if (isSetString(spinner)) {\n resolvedConfig.icons.spinner = {\n help: spinner,\n success: spinner,\n info: spinner,\n warning: spinner,\n error: spinner\n };\n } else if (isSetObject(spinner)) {\n if (isSetString(spinner.help)) {\n resolvedConfig.icons.spinner.help = spinner.help;\n }\n if (isSetString(spinner.success)) {\n resolvedConfig.icons.spinner.success = spinner.success;\n }\n if (isSetString(spinner.info)) {\n resolvedConfig.icons.spinner.info = spinner.info;\n }\n if (isSetString(spinner.warning)) {\n resolvedConfig.icons.spinner.warning = spinner.warning;\n }\n if (isSetString(spinner.error)) {\n resolvedConfig.icons.spinner.error = spinner.error;\n }\n }\n }\n\n // #endregion Icons\n\n // #endregion Tiered token resolution\n\n // #region Missing token defaulting\n\n if (\n !resolvedConfig.icons.prompt?.active &&\n resolvedConfig.icons?.banner?.header?.primary\n ) {\n resolvedConfig.icons.prompt.active =\n resolvedConfig.icons.banner.header.primary;\n }\n if (\n !resolvedConfig.icons.prompt?.submitted &&\n resolvedConfig.icons.message?.header?.success\n ) {\n resolvedConfig.icons.prompt.submitted =\n resolvedConfig.icons.message.header.success;\n }\n if (\n !resolvedConfig.icons.prompt?.warning &&\n resolvedConfig.icons.message?.header?.warning\n ) {\n resolvedConfig.icons.prompt.warning =\n resolvedConfig.icons.message.header.warning;\n }\n if (\n !resolvedConfig.icons.prompt?.error &&\n resolvedConfig.icons.message?.header?.error\n ) {\n resolvedConfig.icons.prompt.error =\n resolvedConfig.icons.message.header.error;\n }\n if (\n !resolvedConfig.icons.prompt?.cancelled &&\n resolvedConfig.icons.message?.header?.error\n ) {\n resolvedConfig.icons.prompt.cancelled =\n resolvedConfig.icons.message.header.error;\n }\n\n if (\n !resolvedConfig.icons.spinner?.success &&\n resolvedConfig.icons.message?.header?.success\n ) {\n resolvedConfig.icons.spinner.success =\n resolvedConfig.icons.message.header.success;\n }\n if (\n !resolvedConfig.icons.spinner?.warning &&\n resolvedConfig.icons.message?.header?.warning\n ) {\n resolvedConfig.icons.spinner.warning =\n resolvedConfig.icons.message.header.warning;\n }\n if (\n !resolvedConfig.icons.spinner?.error &&\n resolvedConfig.icons.message?.header?.error\n ) {\n resolvedConfig.icons.spinner.error =\n resolvedConfig.icons.message.header.error;\n }\n if (\n !resolvedConfig.icons.spinner?.info &&\n resolvedConfig.icons.message?.header?.info\n ) {\n resolvedConfig.icons.spinner.info =\n resolvedConfig.icons.message.header.info;\n }\n if (\n !resolvedConfig.icons.spinner?.help &&\n resolvedConfig.icons.message?.header?.help\n ) {\n resolvedConfig.icons.spinner.help =\n resolvedConfig.icons.message.header.help;\n }\n\n // #endregion Missing token defaulting\n\n mergeThemes(context, resolvedConfig);\n\n return dictionary;\n }\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"icons.mjs","names":[],"sources":[],"mappings":""}
@@ -1 +1,150 @@
1
- require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../helpers/merge.cjs`);let t=require(`@stryke/type-checks/is-set-object`),n=require(`@stryke/type-checks/is-set-string`);const r=r=>({name:`shell-shock/labels`,preprocessor:(i,a)=>{let o={};o.name=i.$theme??r.config.name,o.labels??={message:{header:{},footer:{}},banner:{header:{},footer:{}}};let s=i.labels;if((0,n.isSetString)(s))o.labels={message:{header:{help:s,success:s,info:s,debug:s,warning:s,danger:s,error:s},footer:{}},banner:{header:{primary:s,secondary:s,tertiary:s},footer:{}}};else if((0,t.isSetObject)(s)){o.labels.message??={};let e=s?.message;if((0,n.isSetString)(e))o.labels.message={header:{help:e,success:e,info:e,debug:e,warning:e,danger:e,error:e},footer:{}};else if((0,t.isSetObject)(e)){o.labels.message.header={},o.labels.message.footer={};let r=e.header,i=e.footer;(0,n.isSetString)(r)?o.labels.message.header={help:r,success:r,info:r,debug:r,warning:r,danger:r,error:r}:(0,t.isSetObject)(r)&&((0,n.isSetString)(r.help)&&(o.labels.message.header.help=r.help),(0,n.isSetString)(r.success)&&(o.labels.message.header.success=r.success),(0,n.isSetString)(r.info)&&(o.labels.message.header.info=r.info),(0,n.isSetString)(r.debug)&&(o.labels.message.header.debug=r.debug),(0,n.isSetString)(r.warning)&&(o.labels.message.header.warning=r.warning),(0,n.isSetString)(r.danger)&&(o.labels.message.header.danger=r.danger),(0,n.isSetString)(r.error)&&(o.labels.message.header.error=r.error)),(0,n.isSetString)(i)?o.labels.message.footer={help:i,success:i,info:i,debug:i,warning:i,danger:i,error:i}:(0,t.isSetObject)(i)&&((0,n.isSetString)(i.help)&&(o.labels.message.footer.help=i.help),(0,n.isSetString)(i.success)&&(o.labels.message.footer.success=i.success),(0,n.isSetString)(i.info)&&(o.labels.message.footer.info=i.info),(0,n.isSetString)(i.debug)&&(o.labels.message.footer.debug=i.debug),(0,n.isSetString)(i.warning)&&(o.labels.message.footer.warning=i.warning),(0,n.isSetString)(i.danger)&&(o.labels.message.footer.danger=i.danger),(0,n.isSetString)(i.error)&&(o.labels.message.footer.error=i.error)),o.labels.banner??={};let a=s?.banner;if((0,n.isSetString)(a))o.labels.banner={header:{primary:a,secondary:a,tertiary:a},footer:{}};else if((0,t.isSetObject)(a)){o.labels.banner.header={},o.labels.banner.footer={};let e=a.header,r=a.footer;(0,n.isSetString)(e)?o.labels.banner.header={primary:e,secondary:e,tertiary:e}:(0,t.isSetObject)(e)&&((0,n.isSetString)(e.primary)&&(o.labels.banner.header.primary=e.primary),(0,n.isSetString)(e.secondary)&&(o.labels.banner.header.secondary=e.secondary),(0,n.isSetString)(e.tertiary)&&(o.labels.banner.header.tertiary=e.tertiary)),(0,n.isSetString)(r)?o.labels.banner.footer={primary:r,secondary:r,tertiary:r}:(0,t.isSetObject)(r)&&((0,n.isSetString)(r.primary)&&(o.labels.banner.footer.primary=r.primary),(0,n.isSetString)(r.secondary)&&(o.labels.banner.footer.secondary=r.secondary),(0,n.isSetString)(r.tertiary)&&(o.labels.banner.footer.tertiary=r.tertiary))}}}return e.mergeThemes(r,o),i}});exports.labels=r;
1
+ const require_helpers_merge = require('../helpers/merge.cjs');
2
+ let _stryke_type_checks_is_set_object = require("@stryke/type-checks/is-set-object");
3
+ let _stryke_type_checks_is_set_string = require("@stryke/type-checks/is-set-string");
4
+
5
+ //#region src/style-dictionary/labels.ts
6
+ /**
7
+ * Shell Shock - Theme Labels Preprocessor
8
+ *
9
+ * @remarks
10
+ * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.
11
+ */
12
+ const labels = (context) => ({
13
+ name: "shell-shock/labels",
14
+ preprocessor: (dictionary, _options) => {
15
+ const resolvedConfig = {};
16
+ resolvedConfig.name = dictionary.$theme ?? context.config.name;
17
+ resolvedConfig.labels ??= {
18
+ message: {
19
+ header: {},
20
+ footer: {}
21
+ },
22
+ banner: {
23
+ header: {},
24
+ footer: {}
25
+ }
26
+ };
27
+ const labels = dictionary.labels;
28
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(labels)) resolvedConfig.labels = {
29
+ message: {
30
+ header: {
31
+ help: labels,
32
+ success: labels,
33
+ info: labels,
34
+ debug: labels,
35
+ warning: labels,
36
+ danger: labels,
37
+ error: labels
38
+ },
39
+ footer: {}
40
+ },
41
+ banner: {
42
+ header: {
43
+ primary: labels,
44
+ secondary: labels,
45
+ tertiary: labels
46
+ },
47
+ footer: {}
48
+ }
49
+ };
50
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(labels)) {
51
+ resolvedConfig.labels.message ??= {};
52
+ const message = labels?.message;
53
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(message)) resolvedConfig.labels.message = {
54
+ header: {
55
+ help: message,
56
+ success: message,
57
+ info: message,
58
+ debug: message,
59
+ warning: message,
60
+ danger: message,
61
+ error: message
62
+ },
63
+ footer: {}
64
+ };
65
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(message)) {
66
+ resolvedConfig.labels.message.header = {};
67
+ resolvedConfig.labels.message.footer = {};
68
+ const header = message.header;
69
+ const footer = message.footer;
70
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header)) resolvedConfig.labels.message.header = {
71
+ help: header,
72
+ success: header,
73
+ info: header,
74
+ debug: header,
75
+ warning: header,
76
+ danger: header,
77
+ error: header
78
+ };
79
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(header)) {
80
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.help)) resolvedConfig.labels.message.header.help = header.help;
81
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.success)) resolvedConfig.labels.message.header.success = header.success;
82
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.info)) resolvedConfig.labels.message.header.info = header.info;
83
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.debug)) resolvedConfig.labels.message.header.debug = header.debug;
84
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.warning)) resolvedConfig.labels.message.header.warning = header.warning;
85
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.danger)) resolvedConfig.labels.message.header.danger = header.danger;
86
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.error)) resolvedConfig.labels.message.header.error = header.error;
87
+ }
88
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer)) resolvedConfig.labels.message.footer = {
89
+ help: footer,
90
+ success: footer,
91
+ info: footer,
92
+ debug: footer,
93
+ warning: footer,
94
+ danger: footer,
95
+ error: footer
96
+ };
97
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(footer)) {
98
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.help)) resolvedConfig.labels.message.footer.help = footer.help;
99
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.success)) resolvedConfig.labels.message.footer.success = footer.success;
100
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.info)) resolvedConfig.labels.message.footer.info = footer.info;
101
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.debug)) resolvedConfig.labels.message.footer.debug = footer.debug;
102
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.warning)) resolvedConfig.labels.message.footer.warning = footer.warning;
103
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.danger)) resolvedConfig.labels.message.footer.danger = footer.danger;
104
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.error)) resolvedConfig.labels.message.footer.error = footer.error;
105
+ }
106
+ resolvedConfig.labels.banner ??= {};
107
+ const banner = labels?.banner;
108
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(banner)) resolvedConfig.labels.banner = {
109
+ header: {
110
+ primary: banner,
111
+ secondary: banner,
112
+ tertiary: banner
113
+ },
114
+ footer: {}
115
+ };
116
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(banner)) {
117
+ resolvedConfig.labels.banner.header = {};
118
+ resolvedConfig.labels.banner.footer = {};
119
+ const header = banner.header;
120
+ const footer = banner.footer;
121
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header)) resolvedConfig.labels.banner.header = {
122
+ primary: header,
123
+ secondary: header,
124
+ tertiary: header
125
+ };
126
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(header)) {
127
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.primary)) resolvedConfig.labels.banner.header.primary = header.primary;
128
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.secondary)) resolvedConfig.labels.banner.header.secondary = header.secondary;
129
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(header.tertiary)) resolvedConfig.labels.banner.header.tertiary = header.tertiary;
130
+ }
131
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer)) resolvedConfig.labels.banner.footer = {
132
+ primary: footer,
133
+ secondary: footer,
134
+ tertiary: footer
135
+ };
136
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(footer)) {
137
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.primary)) resolvedConfig.labels.banner.footer.primary = footer.primary;
138
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.secondary)) resolvedConfig.labels.banner.footer.secondary = footer.secondary;
139
+ if ((0, _stryke_type_checks_is_set_string.isSetString)(footer.tertiary)) resolvedConfig.labels.banner.footer.tertiary = footer.tertiary;
140
+ }
141
+ }
142
+ }
143
+ }
144
+ require_helpers_merge.mergeThemes(context, resolvedConfig);
145
+ return dictionary;
146
+ }
147
+ });
148
+
149
+ //#endregion
150
+ exports.labels = labels;
@@ -1,2 +1,151 @@
1
- import{mergeThemes as e}from"../helpers/merge.mjs";import{isSetObject as t}from"@stryke/type-checks/is-set-object";import{isSetString as n}from"@stryke/type-checks/is-set-string";const r=r=>({name:`shell-shock/labels`,preprocessor:(i,a)=>{let o={};o.name=i.$theme??r.config.name,o.labels??={message:{header:{},footer:{}},banner:{header:{},footer:{}}};let s=i.labels;if(n(s))o.labels={message:{header:{help:s,success:s,info:s,debug:s,warning:s,danger:s,error:s},footer:{}},banner:{header:{primary:s,secondary:s,tertiary:s},footer:{}}};else if(t(s)){o.labels.message??={};let e=s?.message;if(n(e))o.labels.message={header:{help:e,success:e,info:e,debug:e,warning:e,danger:e,error:e},footer:{}};else if(t(e)){o.labels.message.header={},o.labels.message.footer={};let r=e.header,i=e.footer;n(r)?o.labels.message.header={help:r,success:r,info:r,debug:r,warning:r,danger:r,error:r}:t(r)&&(n(r.help)&&(o.labels.message.header.help=r.help),n(r.success)&&(o.labels.message.header.success=r.success),n(r.info)&&(o.labels.message.header.info=r.info),n(r.debug)&&(o.labels.message.header.debug=r.debug),n(r.warning)&&(o.labels.message.header.warning=r.warning),n(r.danger)&&(o.labels.message.header.danger=r.danger),n(r.error)&&(o.labels.message.header.error=r.error)),n(i)?o.labels.message.footer={help:i,success:i,info:i,debug:i,warning:i,danger:i,error:i}:t(i)&&(n(i.help)&&(o.labels.message.footer.help=i.help),n(i.success)&&(o.labels.message.footer.success=i.success),n(i.info)&&(o.labels.message.footer.info=i.info),n(i.debug)&&(o.labels.message.footer.debug=i.debug),n(i.warning)&&(o.labels.message.footer.warning=i.warning),n(i.danger)&&(o.labels.message.footer.danger=i.danger),n(i.error)&&(o.labels.message.footer.error=i.error)),o.labels.banner??={};let a=s?.banner;if(n(a))o.labels.banner={header:{primary:a,secondary:a,tertiary:a},footer:{}};else if(t(a)){o.labels.banner.header={},o.labels.banner.footer={};let e=a.header,r=a.footer;n(e)?o.labels.banner.header={primary:e,secondary:e,tertiary:e}:t(e)&&(n(e.primary)&&(o.labels.banner.header.primary=e.primary),n(e.secondary)&&(o.labels.banner.header.secondary=e.secondary),n(e.tertiary)&&(o.labels.banner.header.tertiary=e.tertiary)),n(r)?o.labels.banner.footer={primary:r,secondary:r,tertiary:r}:t(r)&&(n(r.primary)&&(o.labels.banner.footer.primary=r.primary),n(r.secondary)&&(o.labels.banner.footer.secondary=r.secondary),n(r.tertiary)&&(o.labels.banner.footer.tertiary=r.tertiary))}}}return e(r,o),i}});export{r as labels};
1
+ import { mergeThemes } from "../helpers/merge.mjs";
2
+ import { isSetObject } from "@stryke/type-checks/is-set-object";
3
+ import { isSetString } from "@stryke/type-checks/is-set-string";
4
+
5
+ //#region src/style-dictionary/labels.ts
6
+ /**
7
+ * Shell Shock - Theme Labels Preprocessor
8
+ *
9
+ * @remarks
10
+ * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.
11
+ */
12
+ const labels = (context) => ({
13
+ name: "shell-shock/labels",
14
+ preprocessor: (dictionary, _options) => {
15
+ const resolvedConfig = {};
16
+ resolvedConfig.name = dictionary.$theme ?? context.config.name;
17
+ resolvedConfig.labels ??= {
18
+ message: {
19
+ header: {},
20
+ footer: {}
21
+ },
22
+ banner: {
23
+ header: {},
24
+ footer: {}
25
+ }
26
+ };
27
+ const labels = dictionary.labels;
28
+ if (isSetString(labels)) resolvedConfig.labels = {
29
+ message: {
30
+ header: {
31
+ help: labels,
32
+ success: labels,
33
+ info: labels,
34
+ debug: labels,
35
+ warning: labels,
36
+ danger: labels,
37
+ error: labels
38
+ },
39
+ footer: {}
40
+ },
41
+ banner: {
42
+ header: {
43
+ primary: labels,
44
+ secondary: labels,
45
+ tertiary: labels
46
+ },
47
+ footer: {}
48
+ }
49
+ };
50
+ else if (isSetObject(labels)) {
51
+ resolvedConfig.labels.message ??= {};
52
+ const message = labels?.message;
53
+ if (isSetString(message)) resolvedConfig.labels.message = {
54
+ header: {
55
+ help: message,
56
+ success: message,
57
+ info: message,
58
+ debug: message,
59
+ warning: message,
60
+ danger: message,
61
+ error: message
62
+ },
63
+ footer: {}
64
+ };
65
+ else if (isSetObject(message)) {
66
+ resolvedConfig.labels.message.header = {};
67
+ resolvedConfig.labels.message.footer = {};
68
+ const header = message.header;
69
+ const footer = message.footer;
70
+ if (isSetString(header)) resolvedConfig.labels.message.header = {
71
+ help: header,
72
+ success: header,
73
+ info: header,
74
+ debug: header,
75
+ warning: header,
76
+ danger: header,
77
+ error: header
78
+ };
79
+ else if (isSetObject(header)) {
80
+ if (isSetString(header.help)) resolvedConfig.labels.message.header.help = header.help;
81
+ if (isSetString(header.success)) resolvedConfig.labels.message.header.success = header.success;
82
+ if (isSetString(header.info)) resolvedConfig.labels.message.header.info = header.info;
83
+ if (isSetString(header.debug)) resolvedConfig.labels.message.header.debug = header.debug;
84
+ if (isSetString(header.warning)) resolvedConfig.labels.message.header.warning = header.warning;
85
+ if (isSetString(header.danger)) resolvedConfig.labels.message.header.danger = header.danger;
86
+ if (isSetString(header.error)) resolvedConfig.labels.message.header.error = header.error;
87
+ }
88
+ if (isSetString(footer)) resolvedConfig.labels.message.footer = {
89
+ help: footer,
90
+ success: footer,
91
+ info: footer,
92
+ debug: footer,
93
+ warning: footer,
94
+ danger: footer,
95
+ error: footer
96
+ };
97
+ else if (isSetObject(footer)) {
98
+ if (isSetString(footer.help)) resolvedConfig.labels.message.footer.help = footer.help;
99
+ if (isSetString(footer.success)) resolvedConfig.labels.message.footer.success = footer.success;
100
+ if (isSetString(footer.info)) resolvedConfig.labels.message.footer.info = footer.info;
101
+ if (isSetString(footer.debug)) resolvedConfig.labels.message.footer.debug = footer.debug;
102
+ if (isSetString(footer.warning)) resolvedConfig.labels.message.footer.warning = footer.warning;
103
+ if (isSetString(footer.danger)) resolvedConfig.labels.message.footer.danger = footer.danger;
104
+ if (isSetString(footer.error)) resolvedConfig.labels.message.footer.error = footer.error;
105
+ }
106
+ resolvedConfig.labels.banner ??= {};
107
+ const banner = labels?.banner;
108
+ if (isSetString(banner)) resolvedConfig.labels.banner = {
109
+ header: {
110
+ primary: banner,
111
+ secondary: banner,
112
+ tertiary: banner
113
+ },
114
+ footer: {}
115
+ };
116
+ else if (isSetObject(banner)) {
117
+ resolvedConfig.labels.banner.header = {};
118
+ resolvedConfig.labels.banner.footer = {};
119
+ const header = banner.header;
120
+ const footer = banner.footer;
121
+ if (isSetString(header)) resolvedConfig.labels.banner.header = {
122
+ primary: header,
123
+ secondary: header,
124
+ tertiary: header
125
+ };
126
+ else if (isSetObject(header)) {
127
+ if (isSetString(header.primary)) resolvedConfig.labels.banner.header.primary = header.primary;
128
+ if (isSetString(header.secondary)) resolvedConfig.labels.banner.header.secondary = header.secondary;
129
+ if (isSetString(header.tertiary)) resolvedConfig.labels.banner.header.tertiary = header.tertiary;
130
+ }
131
+ if (isSetString(footer)) resolvedConfig.labels.banner.footer = {
132
+ primary: footer,
133
+ secondary: footer,
134
+ tertiary: footer
135
+ };
136
+ else if (isSetObject(footer)) {
137
+ if (isSetString(footer.primary)) resolvedConfig.labels.banner.footer.primary = footer.primary;
138
+ if (isSetString(footer.secondary)) resolvedConfig.labels.banner.footer.secondary = footer.secondary;
139
+ if (isSetString(footer.tertiary)) resolvedConfig.labels.banner.footer.tertiary = footer.tertiary;
140
+ }
141
+ }
142
+ }
143
+ }
144
+ mergeThemes(context, resolvedConfig);
145
+ return dictionary;
146
+ }
147
+ });
148
+
149
+ //#endregion
150
+ export { labels };
2
151
  //# sourceMappingURL=labels.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"labels.mjs","names":[],"sources":["../../src/style-dictionary/labels.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 { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport type { Config, PlatformConfig } from \"style-dictionary\";\nimport type {\n DesignToken,\n PreprocessedTokens,\n Preprocessor\n} from \"style-dictionary/types\";\nimport { mergeThemes } from \"../helpers/merge\";\nimport type { ThemePluginContext } from \"../types/plugin\";\nimport type {\n ThemeLabelBannerSubItemConfig,\n ThemeLabelMessageStateConfig,\n ThemeLabelsResolvedConfig,\n ThemeLabelsUserConfig,\n ThemeLabelTypeResolvedConfig,\n ThemeLabelTypeUserConfig,\n ThemeResolvedConfig\n} from \"../types/theme\";\n\n/**\n * Shell Shock - Theme Labels Preprocessor\n *\n * @remarks\n * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.\n */\nexport const labels = (context: ThemePluginContext): Preprocessor => ({\n name: \"shell-shock/labels\",\n preprocessor: (\n dictionary: PreprocessedTokens,\n _options: Config | PlatformConfig\n ): PreprocessedTokens => {\n const resolvedConfig = {} as ThemeResolvedConfig;\n resolvedConfig.name =\n (dictionary as DesignToken).$theme ?? context.config.name;\n\n // #region Tiered token resolution\n\n // #region Labels\n\n resolvedConfig.labels ??= {\n message: { header: {}, footer: {} },\n banner: { header: {}, footer: {} }\n } as ThemeLabelsResolvedConfig;\n const labels = dictionary.labels as ThemeLabelsUserConfig;\n\n if (isSetString(labels)) {\n resolvedConfig.labels = {\n message: {\n header: {\n help: labels,\n success: labels,\n info: labels,\n debug: labels,\n warning: labels,\n danger: labels,\n error: labels\n },\n footer: {}\n },\n banner: {\n header: {\n primary: labels,\n secondary: labels,\n tertiary: labels\n },\n footer: {}\n }\n };\n } else if (isSetObject(labels)) {\n resolvedConfig.labels.message ??=\n {} as ThemeLabelTypeResolvedConfig<ThemeLabelMessageStateConfig>;\n const message =\n labels?.message as ThemeLabelTypeUserConfig<ThemeLabelMessageStateConfig>;\n\n if (isSetString(message)) {\n resolvedConfig.labels.message = {\n header: {\n help: message,\n success: message,\n info: message,\n debug: message,\n warning: message,\n danger: message,\n error: message\n },\n footer: {}\n };\n } else if (isSetObject(message)) {\n resolvedConfig.labels.message.header =\n {} as ThemeLabelMessageStateConfig;\n resolvedConfig.labels.message.footer =\n {} as ThemeLabelMessageStateConfig;\n const header = message.header;\n const footer = message.footer;\n\n if (isSetString(header)) {\n resolvedConfig.labels.message.header = {\n help: header,\n success: header,\n info: header,\n debug: header,\n warning: header,\n danger: header,\n error: header\n };\n } else if (isSetObject(header)) {\n if (isSetString(header.help)) {\n resolvedConfig.labels.message.header.help = header.help;\n }\n if (isSetString(header.success)) {\n resolvedConfig.labels.message.header.success = header.success;\n }\n if (isSetString(header.info)) {\n resolvedConfig.labels.message.header.info = header.info;\n }\n if (isSetString(header.debug)) {\n resolvedConfig.labels.message.header.debug = header.debug;\n }\n if (isSetString(header.warning)) {\n resolvedConfig.labels.message.header.warning = header.warning;\n }\n if (isSetString(header.danger)) {\n resolvedConfig.labels.message.header.danger = header.danger;\n }\n if (isSetString(header.error)) {\n resolvedConfig.labels.message.header.error = header.error;\n }\n }\n\n if (isSetString(footer)) {\n resolvedConfig.labels.message.footer = {\n help: footer,\n success: footer,\n info: footer,\n debug: footer,\n warning: footer,\n danger: footer,\n error: footer\n };\n } else if (isSetObject(footer)) {\n if (isSetString(footer.help)) {\n resolvedConfig.labels.message.footer.help = footer.help;\n }\n if (isSetString(footer.success)) {\n resolvedConfig.labels.message.footer.success = footer.success;\n }\n if (isSetString(footer.info)) {\n resolvedConfig.labels.message.footer.info = footer.info;\n }\n if (isSetString(footer.debug)) {\n resolvedConfig.labels.message.footer.debug = footer.debug;\n }\n if (isSetString(footer.warning)) {\n resolvedConfig.labels.message.footer.warning = footer.warning;\n }\n if (isSetString(footer.danger)) {\n resolvedConfig.labels.message.footer.danger = footer.danger;\n }\n if (isSetString(footer.error)) {\n resolvedConfig.labels.message.footer.error = footer.error;\n }\n }\n\n resolvedConfig.labels.banner ??=\n {} as ThemeLabelTypeResolvedConfig<ThemeLabelBannerSubItemConfig>;\n const banner =\n labels?.banner as ThemeLabelTypeUserConfig<ThemeLabelBannerSubItemConfig>;\n\n if (isSetString(banner)) {\n resolvedConfig.labels.banner = {\n header: {\n primary: banner,\n secondary: banner,\n tertiary: banner\n },\n footer: {}\n };\n } else if (isSetObject(banner)) {\n resolvedConfig.labels.banner.header =\n {} as ThemeLabelBannerSubItemConfig;\n resolvedConfig.labels.banner.footer =\n {} as ThemeLabelBannerSubItemConfig;\n const header = banner.header;\n const footer = banner.footer;\n\n if (isSetString(header)) {\n resolvedConfig.labels.banner.header = {\n primary: header,\n secondary: header,\n tertiary: header\n };\n } else if (isSetObject(header)) {\n if (isSetString(header.primary)) {\n resolvedConfig.labels.banner.header.primary = header.primary;\n }\n if (isSetString(header.secondary)) {\n resolvedConfig.labels.banner.header.secondary = header.secondary;\n }\n if (isSetString(header.tertiary)) {\n resolvedConfig.labels.banner.header.tertiary = header.tertiary;\n }\n }\n\n if (isSetString(footer)) {\n resolvedConfig.labels.banner.footer = {\n primary: footer,\n secondary: footer,\n tertiary: footer\n };\n } else if (isSetObject(footer)) {\n if (isSetString(footer.primary)) {\n resolvedConfig.labels.banner.footer.primary = footer.primary;\n }\n if (isSetString(footer.secondary)) {\n resolvedConfig.labels.banner.footer.secondary = footer.secondary;\n }\n if (isSetString(footer.tertiary)) {\n resolvedConfig.labels.banner.footer.tertiary = footer.tertiary;\n }\n }\n }\n }\n }\n\n // #endregion Labels\n\n // #endregion Tiered token resolution\n\n mergeThemes(context, resolvedConfig);\n\n return dictionary;\n }\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"labels.mjs","names":[],"sources":[],"mappings":""}
@@ -1 +1,37 @@
1
- require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../helpers/merge.cjs`);let t=require(`@stryke/type-checks/is-set-object`),n=require(`@stryke/type-checks/is-number`);const r=r=>({name:`shell-shock/padding`,preprocessor:(i,a)=>{let o={};o.name=i.$theme??r.config.name,o.padding??={};let s=i.padding;return(0,n.isNumber)(s)?o.padding={banner:s,message:s,app:s,table:s}:(0,t.isSetObject)(s)&&((0,n.isNumber)(s.banner)&&(o.padding.banner=s.banner),(0,n.isNumber)(s.message)&&(o.padding.message=s.message),(0,n.isNumber)(s.app)&&(o.padding.app=s.app),(0,n.isNumber)(s.table)&&(o.padding.table=s.table)),e.mergeThemes(r,o),i}});exports.padding=r;
1
+ const require_helpers_merge = require('../helpers/merge.cjs');
2
+ let _stryke_type_checks_is_set_object = require("@stryke/type-checks/is-set-object");
3
+ let _stryke_type_checks_is_number = require("@stryke/type-checks/is-number");
4
+
5
+ //#region src/style-dictionary/padding.ts
6
+ /**
7
+ * Shell Shock - Theme Padding Preprocessor
8
+ *
9
+ * @remarks
10
+ * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.
11
+ */
12
+ const padding = (context) => ({
13
+ name: "shell-shock/padding",
14
+ preprocessor: (dictionary, _options) => {
15
+ const resolvedConfig = {};
16
+ resolvedConfig.name = dictionary.$theme ?? context.config.name;
17
+ resolvedConfig.padding ??= {};
18
+ const padding = dictionary.padding;
19
+ if ((0, _stryke_type_checks_is_number.isNumber)(padding)) resolvedConfig.padding = {
20
+ banner: padding,
21
+ message: padding,
22
+ app: padding,
23
+ table: padding
24
+ };
25
+ else if ((0, _stryke_type_checks_is_set_object.isSetObject)(padding)) {
26
+ if ((0, _stryke_type_checks_is_number.isNumber)(padding.banner)) resolvedConfig.padding.banner = padding.banner;
27
+ if ((0, _stryke_type_checks_is_number.isNumber)(padding.message)) resolvedConfig.padding.message = padding.message;
28
+ if ((0, _stryke_type_checks_is_number.isNumber)(padding.app)) resolvedConfig.padding.app = padding.app;
29
+ if ((0, _stryke_type_checks_is_number.isNumber)(padding.table)) resolvedConfig.padding.table = padding.table;
30
+ }
31
+ require_helpers_merge.mergeThemes(context, resolvedConfig);
32
+ return dictionary;
33
+ }
34
+ });
35
+
36
+ //#endregion
37
+ exports.padding = padding;
@@ -1,2 +1,38 @@
1
- import{mergeThemes as e}from"../helpers/merge.mjs";import{isSetObject as t}from"@stryke/type-checks/is-set-object";import{isNumber as n}from"@stryke/type-checks/is-number";const r=r=>({name:`shell-shock/padding`,preprocessor:(i,a)=>{let o={};o.name=i.$theme??r.config.name,o.padding??={};let s=i.padding;return n(s)?o.padding={banner:s,message:s,app:s,table:s}:t(s)&&(n(s.banner)&&(o.padding.banner=s.banner),n(s.message)&&(o.padding.message=s.message),n(s.app)&&(o.padding.app=s.app),n(s.table)&&(o.padding.table=s.table)),e(r,o),i}});export{r as padding};
1
+ import { mergeThemes } from "../helpers/merge.mjs";
2
+ import { isSetObject } from "@stryke/type-checks/is-set-object";
3
+ import { isNumber } from "@stryke/type-checks/is-number";
4
+
5
+ //#region src/style-dictionary/padding.ts
6
+ /**
7
+ * Shell Shock - Theme Padding Preprocessor
8
+ *
9
+ * @remarks
10
+ * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.
11
+ */
12
+ const padding = (context) => ({
13
+ name: "shell-shock/padding",
14
+ preprocessor: (dictionary, _options) => {
15
+ const resolvedConfig = {};
16
+ resolvedConfig.name = dictionary.$theme ?? context.config.name;
17
+ resolvedConfig.padding ??= {};
18
+ const padding = dictionary.padding;
19
+ if (isNumber(padding)) resolvedConfig.padding = {
20
+ banner: padding,
21
+ message: padding,
22
+ app: padding,
23
+ table: padding
24
+ };
25
+ else if (isSetObject(padding)) {
26
+ if (isNumber(padding.banner)) resolvedConfig.padding.banner = padding.banner;
27
+ if (isNumber(padding.message)) resolvedConfig.padding.message = padding.message;
28
+ if (isNumber(padding.app)) resolvedConfig.padding.app = padding.app;
29
+ if (isNumber(padding.table)) resolvedConfig.padding.table = padding.table;
30
+ }
31
+ mergeThemes(context, resolvedConfig);
32
+ return dictionary;
33
+ }
34
+ });
35
+
36
+ //#endregion
37
+ export { padding };
2
38
  //# sourceMappingURL=padding.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"padding.mjs","names":[],"sources":["../../src/style-dictionary/padding.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 { isNumber } from \"@stryke/type-checks/is-number\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport type { Config, PlatformConfig } from \"style-dictionary\";\nimport type {\n DesignToken,\n PreprocessedTokens,\n Preprocessor\n} from \"style-dictionary/types\";\nimport { mergeThemes } from \"../helpers/merge\";\nimport type { ThemePluginContext } from \"../types/plugin\";\nimport type {\n ThemePaddingResolvedConfig,\n ThemeResolvedConfig\n} from \"../types/theme\";\n\n/**\n * Shell Shock - Theme Padding Preprocessor\n *\n * @remarks\n * This preprocessor applies custom value transformations to design tokens based on the provided configuration options.\n */\nexport const padding = (context: ThemePluginContext): Preprocessor => ({\n name: \"shell-shock/padding\",\n preprocessor: (\n dictionary: PreprocessedTokens,\n _options: Config | PlatformConfig\n ): PreprocessedTokens => {\n const resolvedConfig = {} as ThemeResolvedConfig;\n resolvedConfig.name =\n (dictionary as DesignToken).$theme ?? context.config.name;\n\n // #region Tiered token resolution\n\n // #region Padding\n\n resolvedConfig.padding ??= {} as ThemePaddingResolvedConfig;\n const padding = dictionary.padding;\n\n if (isNumber(padding)) {\n resolvedConfig.padding = {\n banner: padding,\n message: padding,\n app: padding,\n table: padding\n };\n } else if (isSetObject(padding)) {\n if (isNumber(padding.banner)) {\n resolvedConfig.padding.banner = padding.banner;\n }\n if (isNumber(padding.message)) {\n resolvedConfig.padding.message = padding.message;\n }\n if (isNumber(padding.app)) {\n resolvedConfig.padding.app = padding.app;\n }\n if (isNumber(padding.table)) {\n resolvedConfig.padding.table = padding.table;\n }\n }\n\n // #endregion Padding\n\n // #endregion Tiered token resolution\n\n mergeThemes(context, resolvedConfig);\n\n return dictionary;\n }\n});\n"],"mappings":"4KA2BA,MAAa,EAAC,IAAqB,CACnC,KAAO,sBACL,cAAA,EAA0B,IAAA,CAC1B,IAAA,EAAA,EAAA,CACA,EAAe,KAAM,EAAA,QAAA,EAAA,OAAA,KAMpB,EAAK,UAAqB,EAAA,CAC3B,IAAA,EAAA,EAAA,QA4BE,OA3BG,EAAM,EAAW,CAClB,EAAe,QAAQ,CAC3B,OAAc,EACZ,QAAY,EACZ,IAAS,EACR,MAAA,EACD,CACA,EAAoB,EAAA,GACjB,EAAW,EAAG,OAAa,GAAA,EAAA,QAAA,OAAA,EAAA,uBAI1B,EAAO,QAAA,QAAA,EAAA,SAEX,EAAe,EAAQ,IAAI,GAC3B,EAAgB,QAAW,IAAA,EAAO,KAE9B,EAAS,EAAU,MAAA,GACrB,EAAe,QAAU,MAAA,EAAA,QAQ3B,EAAI,EAAe,EAAiB,CAClC,GAEL"}
1
+ {"version":3,"file":"padding.mjs","names":[],"sources":[],"mappings":""}