@nice2dev/omniwerk-branding 1.0.28

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/dist/index.cjs ADDED
@@ -0,0 +1,60 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("./fonts.cjs"),e=require("react/jsx-runtime"),d=require("react"),r={primary:"#1A237E",primaryLight:"#534BAE",primaryDark:"#000051",secondary:"#00BCD4",secondaryLight:"#62EFFF",secondaryDark:"#008BA3",tertiary:"#FFC107",tertiaryLight:"#FFF350",tertiaryDark:"#C79100",success:"#4CAF50",warning:"#FF9800",error:"#F44336",info:"#2196F3",background:"#FAFAFA",surface:"#FFFFFF",onBackground:"#212121",onSurface:"#212121",outline:"#BDBDBD",surfaceVariant:"#E0E0E0",backgroundDark:"#121212",surfaceDark:"#1E1E1E",onBackgroundDark:"#E0E0E0",onSurfaceDark:"#E0E0E0",outlineDark:"#424242",surfaceVariantDark:"#2C2C2C"},W={primary:{type:"linear",angle:135,stops:[{offset:0,color:r.primary},{offset:100,color:r.primaryLight}]},secondary:{type:"linear",angle:135,stops:[{offset:0,color:r.secondary},{offset:100,color:r.secondaryLight}]},brand:{type:"linear",angle:135,stops:[{offset:0,color:r.primary},{offset:100,color:r.secondary}]},brandReverse:{type:"linear",angle:315,stops:[{offset:0,color:r.secondary},{offset:100,color:r.primary}]}},w={xs:{icon:16,fontSize:10,spacing:4},sm:{icon:24,fontSize:14,spacing:6},md:{icon:32,fontSize:20,spacing:8},lg:{icon:48,fontSize:32,spacing:12},xl:{icon:64,fontSize:48,spacing:16},xxl:{icon:96,fontSize:72,spacing:24}},p=d.forwardRef(({size:n=32,color:i,gradient:t=!1,className:a,style:l},m)=>{const s=d.useId(),y=i??r.primary,x=d.useMemo(()=>{if(!t)return null;const g=W[t];return e.jsx("defs",{children:e.jsx("linearGradient",{id:s,x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:g.stops.map((u,f)=>e.jsx("stop",{offset:`${u.offset}%`,stopColor:u.color},f))})})},[t,s]),c=t?`url(#${s})`:y,k=n*.08;return e.jsxs("svg",{ref:m,width:n,height:n,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:a,style:l,role:"img","aria-label":"OmniWerk",children:[x,e.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:c,strokeWidth:k,fill:"none"}),e.jsx("line",{x1:"5",y1:"12",x2:"19",y2:"12",stroke:c,strokeWidth:k,strokeLinecap:"round"}),e.jsx("line",{x1:"12",y1:"5",x2:"12",y2:"8",stroke:c,strokeWidth:k,strokeLinecap:"round"}),e.jsx("line",{x1:"12",y1:"16",x2:"12",y2:"19",stroke:c,strokeWidth:k,strokeLinecap:"round"}),e.jsx("circle",{cx:"5",cy:"12",r:n*.04,fill:c}),e.jsx("circle",{cx:"19",cy:"12",r:n*.04,fill:c}),e.jsx("circle",{cx:"12",cy:"5",r:n*.04,fill:c}),e.jsx("circle",{cx:"12",cy:"19",r:n*.04,fill:c}),e.jsx("circle",{cx:"12",cy:"12",r:n*.06,fill:c})]})});p.displayName="OmniWerkIcon";const S=d.forwardRef(({fontSize:n=32,color:i,showTagline:t=!1,className:a,style:l},m)=>{const s=i??r.primary;return e.jsxs("div",{ref:m,className:a,style:l,children:[e.jsx("span",{style:{fontFamily:o.OMNIWERK_FONTS.logo,fontSize:`${n}px`,letterSpacing:`${n*.05}px`,color:s,fontWeight:400,display:"block"},children:"OMNIWERK"}),t&&e.jsx("span",{style:{fontFamily:o.OMNIWERK_FONTS.body,fontSize:`${n*.35}px`,letterSpacing:`${n*.08}px`,color:s,opacity:.7,fontWeight:300,display:"block"},children:"Enterprise Solutions"})]})});S.displayName="OmniWerkText";const O=d.forwardRef(({size:n="md",variant:i="horizontal",color:t,gradient:a=!1,showTagline:l=!1,className:m,style:s,onClick:y,"aria-label":x},c)=>{const k=w[n],g=t??r.primary,u={display:"inline-flex",alignItems:"center",justifyContent:"center",gap:`${k.spacing}px`,flexDirection:i==="vertical"?"column":"row",cursor:y?"pointer":void 0,...s},f=()=>e.jsx(p,{size:k.icon,color:a?void 0:g,gradient:a||void 0}),F=()=>e.jsx(S,{fontSize:k.fontSize,color:g,showTagline:l});return e.jsxs("div",{ref:c,className:m,style:u,onClick:y,role:y?"button":void 0,tabIndex:y?0:void 0,"aria-label":x??"OmniWerk",children:[i==="icon"&&f(),i==="text"&&F(),i==="horizontal"&&e.jsxs(e.Fragment,{children:[f(),F()]}),i==="vertical"&&e.jsxs(e.Fragment,{children:[f(),F()]})]})});O.displayName="OmniWerkLogo";const E=d.forwardRef(({animate:n=!0,pulseOnHover:i=!0,style:t,...a},l)=>{const[m,s]=d.useState(!1),y={...t,animation:n?"omniwerk-entrance 0.8s ease-out":void 0,transform:i&&m?"scale(1.05)":"scale(1)",transition:"transform 0.15s ease-out"};return e.jsxs(e.Fragment,{children:[e.jsx("style",{children:`
2
+ @keyframes omniwerk-entrance {
3
+ 0% {
4
+ opacity: 0;
5
+ transform: scale(0.8);
6
+ }
7
+ 100% {
8
+ opacity: 1;
9
+ transform: scale(1);
10
+ }
11
+ }
12
+ `}),e.jsx("div",{onMouseEnter:()=>s(!0),onMouseLeave:()=>s(!1),children:e.jsx(O,{ref:l,...a,style:y})})]})});E.displayName="OmniWerkAnimatedLogo";const N=({size:n=48,color:i,gradient:t=!1})=>{const a=d.useId();return e.jsxs(e.Fragment,{children:[e.jsx("style",{children:`
13
+ @keyframes omniwerk-spin-${a.replace(/:/g,"")} {
14
+ from { transform: rotate(0deg); }
15
+ to { transform: rotate(360deg); }
16
+ }
17
+ `}),e.jsx("div",{style:{animation:`omniwerk-spin-${a.replace(/:/g,"")} 2s linear infinite`,display:"inline-flex"},children:e.jsx(p,{size:n,color:i,gradient:t})})]})},I=({background:n="brand",logoColor:i="#FFFFFF",showTagline:t=!0,onComplete:a,duration:l=2e3})=>{d.useEffect(()=>{if(a){const s=setTimeout(a,l);return()=>clearTimeout(s)}},[a,l]);const m=n==="primary"?{background:`linear-gradient(135deg, ${r.primary}, ${r.primaryLight})`}:n==="brand"?{background:`linear-gradient(135deg, ${r.primary}, ${r.secondary})`}:{background:n};return e.jsx("div",{style:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",...m},children:e.jsx(E,{size:"xxl",variant:"vertical",color:i,showTagline:t,animate:!0})})},L=()=>e.jsx("style",{children:o.OMNIWERK_FONT_IMPORT}),T=`
18
+ :root {
19
+ /* Primary */
20
+ --omniwerk-primary: ${r.primary};
21
+ --omniwerk-primary-light: ${r.primaryLight};
22
+ --omniwerk-primary-dark: ${r.primaryDark};
23
+
24
+ /* Secondary */
25
+ --omniwerk-secondary: ${r.secondary};
26
+ --omniwerk-secondary-light: ${r.secondaryLight};
27
+ --omniwerk-secondary-dark: ${r.secondaryDark};
28
+
29
+ /* Tertiary */
30
+ --omniwerk-tertiary: ${r.tertiary};
31
+ --omniwerk-tertiary-light: ${r.tertiaryLight};
32
+ --omniwerk-tertiary-dark: ${r.tertiaryDark};
33
+
34
+ /* Semantic */
35
+ --omniwerk-success: ${r.success};
36
+ --omniwerk-warning: ${r.warning};
37
+ --omniwerk-error: ${r.error};
38
+ --omniwerk-info: ${r.info};
39
+
40
+ /* Surfaces */
41
+ --omniwerk-background: ${r.background};
42
+ --omniwerk-surface: ${r.surface};
43
+ --omniwerk-on-background: ${r.onBackground};
44
+ --omniwerk-on-surface: ${r.onSurface};
45
+ --omniwerk-outline: ${r.outline};
46
+
47
+ /* Fonts */
48
+ --omniwerk-font-logo: ${o.OMNIWERK_FONTS.logo};
49
+ --omniwerk-font-body: ${o.OMNIWERK_FONTS.body};
50
+ --omniwerk-font-mono: ${o.OMNIWERK_FONTS.mono};
51
+ }
52
+
53
+ [data-theme="dark"], .dark {
54
+ --omniwerk-background: ${r.backgroundDark};
55
+ --omniwerk-surface: ${r.surfaceDark};
56
+ --omniwerk-on-background: ${r.onBackgroundDark};
57
+ --omniwerk-on-surface: ${r.onSurfaceDark};
58
+ --omniwerk-outline: ${r.outlineDark};
59
+ }
60
+ `,R={theme:{extend:{colors:{omniwerk:{primary:{DEFAULT:r.primary,light:r.primaryLight,dark:r.primaryDark},secondary:{DEFAULT:r.secondary,light:r.secondaryLight,dark:r.secondaryDark},tertiary:{DEFAULT:r.tertiary,light:r.tertiaryLight,dark:r.tertiaryDark},success:r.success,warning:r.warning,error:r.error,info:r.info}},fontFamily:{"omniwerk-logo":[o.OMNIWERK_FONTS.logo],"omniwerk-body":[o.OMNIWERK_FONTS.body],"omniwerk-mono":[o.OMNIWERK_FONTS.mono]},backgroundImage:{"omniwerk-primary":`linear-gradient(135deg, ${r.primary}, ${r.primaryLight})`,"omniwerk-secondary":`linear-gradient(135deg, ${r.secondary}, ${r.secondaryLight})`,"omniwerk-brand":`linear-gradient(135deg, ${r.primary}, ${r.secondary})`}}}},h={palette:{primary:{main:r.primary,light:r.primaryLight,dark:r.primaryDark,contrastText:"#FFFFFF"},secondary:{main:r.secondary,light:r.secondaryLight,dark:r.secondaryDark,contrastText:"#000000"},success:{main:r.success},warning:{main:r.warning},error:{main:r.error},info:{main:r.info},background:{default:r.background,paper:r.surface}},typography:{fontFamily:o.OMNIWERK_FONTS.body,h1:o.OMNIWERK_LOGO_STYLES.xl,h2:o.OMNIWERK_LOGO_STYLES.lg,h3:o.OMNIWERK_LOGO_STYLES.md,h4:o.OMNIWERK_LOGO_STYLES.sm}},$={...h,palette:{...h.palette,mode:"dark",background:{default:r.backgroundDark,paper:r.surfaceDark}}};exports.OMNIWERK_FONTS=o.OMNIWERK_FONTS;exports.OMNIWERK_FONT_FACE=o.OMNIWERK_FONT_FACE;exports.OMNIWERK_FONT_IMPORT=o.OMNIWERK_FONT_IMPORT;exports.OMNIWERK_LOGO_STYLES=o.OMNIWERK_LOGO_STYLES;exports.OMNIWERK_COLORS=r;exports.OMNIWERK_CSS_VARS=T;exports.OMNIWERK_GRADIENTS=W;exports.OmniWerkAnimatedLogo=E;exports.OmniWerkFontLoader=L;exports.OmniWerkIcon=p;exports.OmniWerkLoadingSpinner=N;exports.OmniWerkLogo=O;exports.OmniWerkSplash=I;exports.OmniWerkText=S;exports.default=O;exports.omniWerkMuiDarkTheme=$;exports.omniWerkMuiTheme=h;exports.omniWerkTailwindPreset=R;
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @nice2dev/omniwerk-branding
3
+ *
4
+ * OmniWerk brand assets, logos, and theme for React applications.
5
+ *
6
+ * @packageDocumentation
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * import { OmniWerkLogo, OmniWerkFontLoader, OMNIWERK_COLORS } from '@nice2dev/omniwerk-branding';
11
+ *
12
+ * function App() {
13
+ * return (
14
+ * <>
15
+ * <OmniWerkFontLoader />
16
+ * <OmniWerkLogo variant="horizontal" size="lg" gradient="brand" />
17
+ * </>
18
+ * );
19
+ * }
20
+ * ```
21
+ */
22
+ export { OMNIWERK_COLORS, OMNIWERK_GRADIENTS, } from './colors';
23
+ export type { OmniWerkColorKey, OmniWerkGradientKey, } from './colors';
24
+ export { OMNIWERK_FONTS, OMNIWERK_FONT_IMPORT, OMNIWERK_FONT_FACE, OMNIWERK_LOGO_STYLES, } from './fonts';
25
+ export type { OmniWerkLogoStyleSize, } from './fonts';
26
+ export { OmniWerkIcon, OmniWerkText, OmniWerkLogo, OmniWerkAnimatedLogo, OmniWerkLoadingSpinner, OmniWerkSplash, OmniWerkFontLoader, } from './OmniWerkLogo';
27
+ export type { OmniWerkLogoSize, OmniWerkLogoVariant, OmniWerkLogoProps, OmniWerkIconProps, OmniWerkTextProps, OmniWerkAnimatedLogoProps, OmniWerkLoadingSpinnerProps, OmniWerkSplashProps, OmniWerkGradientPreset, } from './OmniWerkLogo';
28
+ export { OMNIWERK_CSS_VARS, omniWerkTailwindPreset, omniWerkMuiTheme, omniWerkMuiDarkTheme, } from './theme';
29
+ export { default } from './OmniWerkLogo';
package/dist/index.mjs ADDED
@@ -0,0 +1,487 @@
1
+ import { OMNIWERK_FONT_IMPORT as W, OMNIWERK_FONTS as m, OMNIWERK_LOGO_STYLES as u } from "./fonts.mjs";
2
+ import { OMNIWERK_FONT_FACE as P } from "./fonts.mjs";
3
+ import { jsxs as f, Fragment as h, jsx as e } from "react/jsx-runtime";
4
+ import E, { forwardRef as w, useId as L, useMemo as I } from "react";
5
+ const r = {
6
+ // Primary - Deep Blue
7
+ primary: "#1A237E",
8
+ primaryLight: "#534BAE",
9
+ primaryDark: "#000051",
10
+ // Secondary - Cyan
11
+ secondary: "#00BCD4",
12
+ secondaryLight: "#62EFFF",
13
+ secondaryDark: "#008BA3",
14
+ // Tertiary - Amber
15
+ tertiary: "#FFC107",
16
+ tertiaryLight: "#FFF350",
17
+ tertiaryDark: "#C79100",
18
+ // Semantic
19
+ success: "#4CAF50",
20
+ warning: "#FF9800",
21
+ error: "#F44336",
22
+ info: "#2196F3",
23
+ // Neutrals (light mode)
24
+ background: "#FAFAFA",
25
+ surface: "#FFFFFF",
26
+ onBackground: "#212121",
27
+ onSurface: "#212121",
28
+ outline: "#BDBDBD",
29
+ surfaceVariant: "#E0E0E0",
30
+ // Neutrals (dark mode)
31
+ backgroundDark: "#121212",
32
+ surfaceDark: "#1E1E1E",
33
+ onBackgroundDark: "#E0E0E0",
34
+ onSurfaceDark: "#E0E0E0",
35
+ outlineDark: "#424242",
36
+ surfaceVariantDark: "#2C2C2C"
37
+ }, v = {
38
+ primary: {
39
+ type: "linear",
40
+ angle: 135,
41
+ stops: [
42
+ { offset: 0, color: r.primary },
43
+ { offset: 100, color: r.primaryLight }
44
+ ]
45
+ },
46
+ secondary: {
47
+ type: "linear",
48
+ angle: 135,
49
+ stops: [
50
+ { offset: 0, color: r.secondary },
51
+ { offset: 100, color: r.secondaryLight }
52
+ ]
53
+ },
54
+ brand: {
55
+ type: "linear",
56
+ angle: 135,
57
+ stops: [
58
+ { offset: 0, color: r.primary },
59
+ { offset: 100, color: r.secondary }
60
+ ]
61
+ },
62
+ brandReverse: {
63
+ type: "linear",
64
+ angle: 315,
65
+ stops: [
66
+ { offset: 0, color: r.secondary },
67
+ { offset: 100, color: r.primary }
68
+ ]
69
+ }
70
+ }, T = {
71
+ xs: { icon: 16, fontSize: 10, spacing: 4 },
72
+ sm: { icon: 24, fontSize: 14, spacing: 6 },
73
+ md: { icon: 32, fontSize: 20, spacing: 8 },
74
+ lg: { icon: 48, fontSize: 32, spacing: 12 },
75
+ xl: { icon: 64, fontSize: 48, spacing: 16 },
76
+ xxl: { icon: 96, fontSize: 72, spacing: 24 }
77
+ }, $ = w(
78
+ ({ size: n = 32, color: o, gradient: a = !1, className: i, style: s }, l) => {
79
+ const t = L(), d = o ?? r.primary, F = I(() => {
80
+ if (!a)
81
+ return null;
82
+ const g = v[a];
83
+ return /* @__PURE__ */ e("defs", { children: /* @__PURE__ */ e("linearGradient", { id: t, x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: g.stops.map((p, k) => /* @__PURE__ */ e("stop", { offset: `${p.offset}%`, stopColor: p.color }, k)) }) });
84
+ }, [a, t]), c = a ? `url(#${t})` : d, y = n * 0.08;
85
+ return /* @__PURE__ */ f(
86
+ "svg",
87
+ {
88
+ ref: l,
89
+ width: n,
90
+ height: n,
91
+ viewBox: "0 0 24 24",
92
+ fill: "none",
93
+ xmlns: "http://www.w3.org/2000/svg",
94
+ className: i,
95
+ style: s,
96
+ role: "img",
97
+ "aria-label": "OmniWerk",
98
+ children: [
99
+ F,
100
+ /* @__PURE__ */ e("circle", { cx: "12", cy: "12", r: "9", stroke: c, strokeWidth: y, fill: "none" }),
101
+ /* @__PURE__ */ e(
102
+ "line",
103
+ {
104
+ x1: "5",
105
+ y1: "12",
106
+ x2: "19",
107
+ y2: "12",
108
+ stroke: c,
109
+ strokeWidth: y,
110
+ strokeLinecap: "round"
111
+ }
112
+ ),
113
+ /* @__PURE__ */ e(
114
+ "line",
115
+ {
116
+ x1: "12",
117
+ y1: "5",
118
+ x2: "12",
119
+ y2: "8",
120
+ stroke: c,
121
+ strokeWidth: y,
122
+ strokeLinecap: "round"
123
+ }
124
+ ),
125
+ /* @__PURE__ */ e(
126
+ "line",
127
+ {
128
+ x1: "12",
129
+ y1: "16",
130
+ x2: "12",
131
+ y2: "19",
132
+ stroke: c,
133
+ strokeWidth: y,
134
+ strokeLinecap: "round"
135
+ }
136
+ ),
137
+ /* @__PURE__ */ e("circle", { cx: "5", cy: "12", r: n * 0.04, fill: c }),
138
+ /* @__PURE__ */ e("circle", { cx: "19", cy: "12", r: n * 0.04, fill: c }),
139
+ /* @__PURE__ */ e("circle", { cx: "12", cy: "5", r: n * 0.04, fill: c }),
140
+ /* @__PURE__ */ e("circle", { cx: "12", cy: "19", r: n * 0.04, fill: c }),
141
+ /* @__PURE__ */ e("circle", { cx: "12", cy: "12", r: n * 0.06, fill: c })
142
+ ]
143
+ }
144
+ );
145
+ }
146
+ );
147
+ $.displayName = "OmniWerkIcon";
148
+ const S = w(
149
+ ({ fontSize: n = 32, color: o, showTagline: a = !1, className: i, style: s }, l) => {
150
+ const t = o ?? r.primary;
151
+ return /* @__PURE__ */ f("div", { ref: l, className: i, style: s, children: [
152
+ /* @__PURE__ */ e(
153
+ "span",
154
+ {
155
+ style: {
156
+ fontFamily: m.logo,
157
+ fontSize: `${n}px`,
158
+ letterSpacing: `${n * 0.05}px`,
159
+ color: t,
160
+ fontWeight: 400,
161
+ display: "block"
162
+ },
163
+ children: "OMNIWERK"
164
+ }
165
+ ),
166
+ a && /* @__PURE__ */ e(
167
+ "span",
168
+ {
169
+ style: {
170
+ fontFamily: m.body,
171
+ fontSize: `${n * 0.35}px`,
172
+ letterSpacing: `${n * 0.08}px`,
173
+ color: t,
174
+ opacity: 0.7,
175
+ fontWeight: 300,
176
+ display: "block"
177
+ },
178
+ children: "Enterprise Solutions"
179
+ }
180
+ )
181
+ ] });
182
+ }
183
+ );
184
+ S.displayName = "OmniWerkText";
185
+ const b = w(
186
+ ({
187
+ size: n = "md",
188
+ variant: o = "horizontal",
189
+ color: a,
190
+ gradient: i = !1,
191
+ showTagline: s = !1,
192
+ className: l,
193
+ style: t,
194
+ onClick: d,
195
+ "aria-label": F
196
+ }, c) => {
197
+ const y = T[n], g = a ?? r.primary, p = {
198
+ display: "inline-flex",
199
+ alignItems: "center",
200
+ justifyContent: "center",
201
+ gap: `${y.spacing}px`,
202
+ flexDirection: o === "vertical" ? "column" : "row",
203
+ cursor: d ? "pointer" : void 0,
204
+ ...t
205
+ }, k = () => /* @__PURE__ */ e(
206
+ $,
207
+ {
208
+ size: y.icon,
209
+ color: i ? void 0 : g,
210
+ gradient: i || void 0
211
+ }
212
+ ), x = () => /* @__PURE__ */ e(
213
+ S,
214
+ {
215
+ fontSize: y.fontSize,
216
+ color: g,
217
+ showTagline: s
218
+ }
219
+ );
220
+ return /* @__PURE__ */ f(
221
+ "div",
222
+ {
223
+ ref: c,
224
+ className: l,
225
+ style: p,
226
+ onClick: d,
227
+ role: d ? "button" : void 0,
228
+ tabIndex: d ? 0 : void 0,
229
+ "aria-label": F ?? "OmniWerk",
230
+ children: [
231
+ o === "icon" && k(),
232
+ o === "text" && x(),
233
+ o === "horizontal" && /* @__PURE__ */ f(h, { children: [
234
+ k(),
235
+ x()
236
+ ] }),
237
+ o === "vertical" && /* @__PURE__ */ f(h, { children: [
238
+ k(),
239
+ x()
240
+ ] })
241
+ ]
242
+ }
243
+ );
244
+ }
245
+ );
246
+ b.displayName = "OmniWerkLogo";
247
+ const O = w(
248
+ ({ animate: n = !0, pulseOnHover: o = !0, style: a, ...i }, s) => {
249
+ const [l, t] = E.useState(!1), d = {
250
+ ...a,
251
+ animation: n ? "omniwerk-entrance 0.8s ease-out" : void 0,
252
+ transform: o && l ? "scale(1.05)" : "scale(1)",
253
+ transition: "transform 0.15s ease-out"
254
+ };
255
+ return /* @__PURE__ */ f(h, { children: [
256
+ /* @__PURE__ */ e("style", { children: `
257
+ @keyframes omniwerk-entrance {
258
+ 0% {
259
+ opacity: 0;
260
+ transform: scale(0.8);
261
+ }
262
+ 100% {
263
+ opacity: 1;
264
+ transform: scale(1);
265
+ }
266
+ }
267
+ ` }),
268
+ /* @__PURE__ */ e("div", { onMouseEnter: () => t(!0), onMouseLeave: () => t(!1), children: /* @__PURE__ */ e(b, { ref: s, ...i, style: d }) })
269
+ ] });
270
+ }
271
+ );
272
+ O.displayName = "OmniWerkAnimatedLogo";
273
+ const M = ({
274
+ size: n = 48,
275
+ color: o,
276
+ gradient: a = !1
277
+ }) => {
278
+ const i = L();
279
+ return /* @__PURE__ */ f(h, { children: [
280
+ /* @__PURE__ */ e("style", { children: `
281
+ @keyframes omniwerk-spin-${i.replace(/:/g, "")} {
282
+ from { transform: rotate(0deg); }
283
+ to { transform: rotate(360deg); }
284
+ }
285
+ ` }),
286
+ /* @__PURE__ */ e(
287
+ "div",
288
+ {
289
+ style: {
290
+ animation: `omniwerk-spin-${i.replace(/:/g, "")} 2s linear infinite`,
291
+ display: "inline-flex"
292
+ },
293
+ children: /* @__PURE__ */ e($, { size: n, color: o, gradient: a })
294
+ }
295
+ )
296
+ ] });
297
+ }, C = ({
298
+ background: n = "brand",
299
+ logoColor: o = "#FFFFFF",
300
+ showTagline: a = !0,
301
+ onComplete: i,
302
+ duration: s = 2e3
303
+ }) => {
304
+ E.useEffect(() => {
305
+ if (i) {
306
+ const t = setTimeout(i, s);
307
+ return () => clearTimeout(t);
308
+ }
309
+ }, [i, s]);
310
+ const l = n === "primary" ? {
311
+ background: `linear-gradient(135deg, ${r.primary}, ${r.primaryLight})`
312
+ } : n === "brand" ? {
313
+ background: `linear-gradient(135deg, ${r.primary}, ${r.secondary})`
314
+ } : { background: n };
315
+ return /* @__PURE__ */ e(
316
+ "div",
317
+ {
318
+ style: {
319
+ position: "fixed",
320
+ inset: 0,
321
+ display: "flex",
322
+ alignItems: "center",
323
+ justifyContent: "center",
324
+ ...l
325
+ },
326
+ children: /* @__PURE__ */ e(
327
+ O,
328
+ {
329
+ size: "xxl",
330
+ variant: "vertical",
331
+ color: o,
332
+ showTagline: a,
333
+ animate: !0
334
+ }
335
+ )
336
+ }
337
+ );
338
+ }, _ = () => /* @__PURE__ */ e("style", { children: W }), B = `
339
+ :root {
340
+ /* Primary */
341
+ --omniwerk-primary: ${r.primary};
342
+ --omniwerk-primary-light: ${r.primaryLight};
343
+ --omniwerk-primary-dark: ${r.primaryDark};
344
+
345
+ /* Secondary */
346
+ --omniwerk-secondary: ${r.secondary};
347
+ --omniwerk-secondary-light: ${r.secondaryLight};
348
+ --omniwerk-secondary-dark: ${r.secondaryDark};
349
+
350
+ /* Tertiary */
351
+ --omniwerk-tertiary: ${r.tertiary};
352
+ --omniwerk-tertiary-light: ${r.tertiaryLight};
353
+ --omniwerk-tertiary-dark: ${r.tertiaryDark};
354
+
355
+ /* Semantic */
356
+ --omniwerk-success: ${r.success};
357
+ --omniwerk-warning: ${r.warning};
358
+ --omniwerk-error: ${r.error};
359
+ --omniwerk-info: ${r.info};
360
+
361
+ /* Surfaces */
362
+ --omniwerk-background: ${r.background};
363
+ --omniwerk-surface: ${r.surface};
364
+ --omniwerk-on-background: ${r.onBackground};
365
+ --omniwerk-on-surface: ${r.onSurface};
366
+ --omniwerk-outline: ${r.outline};
367
+
368
+ /* Fonts */
369
+ --omniwerk-font-logo: ${m.logo};
370
+ --omniwerk-font-body: ${m.body};
371
+ --omniwerk-font-mono: ${m.mono};
372
+ }
373
+
374
+ [data-theme="dark"], .dark {
375
+ --omniwerk-background: ${r.backgroundDark};
376
+ --omniwerk-surface: ${r.surfaceDark};
377
+ --omniwerk-on-background: ${r.onBackgroundDark};
378
+ --omniwerk-on-surface: ${r.onSurfaceDark};
379
+ --omniwerk-outline: ${r.outlineDark};
380
+ }
381
+ `, K = {
382
+ theme: {
383
+ extend: {
384
+ colors: {
385
+ omniwerk: {
386
+ primary: {
387
+ DEFAULT: r.primary,
388
+ light: r.primaryLight,
389
+ dark: r.primaryDark
390
+ },
391
+ secondary: {
392
+ DEFAULT: r.secondary,
393
+ light: r.secondaryLight,
394
+ dark: r.secondaryDark
395
+ },
396
+ tertiary: {
397
+ DEFAULT: r.tertiary,
398
+ light: r.tertiaryLight,
399
+ dark: r.tertiaryDark
400
+ },
401
+ success: r.success,
402
+ warning: r.warning,
403
+ error: r.error,
404
+ info: r.info
405
+ }
406
+ },
407
+ fontFamily: {
408
+ "omniwerk-logo": [m.logo],
409
+ "omniwerk-body": [m.body],
410
+ "omniwerk-mono": [m.mono]
411
+ },
412
+ backgroundImage: {
413
+ "omniwerk-primary": `linear-gradient(135deg, ${r.primary}, ${r.primaryLight})`,
414
+ "omniwerk-secondary": `linear-gradient(135deg, ${r.secondary}, ${r.secondaryLight})`,
415
+ "omniwerk-brand": `linear-gradient(135deg, ${r.primary}, ${r.secondary})`
416
+ }
417
+ }
418
+ }
419
+ }, D = {
420
+ palette: {
421
+ primary: {
422
+ main: r.primary,
423
+ light: r.primaryLight,
424
+ dark: r.primaryDark,
425
+ contrastText: "#FFFFFF"
426
+ },
427
+ secondary: {
428
+ main: r.secondary,
429
+ light: r.secondaryLight,
430
+ dark: r.secondaryDark,
431
+ contrastText: "#000000"
432
+ },
433
+ success: {
434
+ main: r.success
435
+ },
436
+ warning: {
437
+ main: r.warning
438
+ },
439
+ error: {
440
+ main: r.error
441
+ },
442
+ info: {
443
+ main: r.info
444
+ },
445
+ background: {
446
+ default: r.background,
447
+ paper: r.surface
448
+ }
449
+ },
450
+ typography: {
451
+ fontFamily: m.body,
452
+ h1: u.xl,
453
+ h2: u.lg,
454
+ h3: u.md,
455
+ h4: u.sm
456
+ }
457
+ }, z = {
458
+ ...D,
459
+ palette: {
460
+ ...D.palette,
461
+ mode: "dark",
462
+ background: {
463
+ default: r.backgroundDark,
464
+ paper: r.surfaceDark
465
+ }
466
+ }
467
+ };
468
+ export {
469
+ r as OMNIWERK_COLORS,
470
+ B as OMNIWERK_CSS_VARS,
471
+ m as OMNIWERK_FONTS,
472
+ P as OMNIWERK_FONT_FACE,
473
+ W as OMNIWERK_FONT_IMPORT,
474
+ v as OMNIWERK_GRADIENTS,
475
+ u as OMNIWERK_LOGO_STYLES,
476
+ O as OmniWerkAnimatedLogo,
477
+ _ as OmniWerkFontLoader,
478
+ $ as OmniWerkIcon,
479
+ M as OmniWerkLoadingSpinner,
480
+ b as OmniWerkLogo,
481
+ C as OmniWerkSplash,
482
+ S as OmniWerkText,
483
+ b as default,
484
+ z as omniWerkMuiDarkTheme,
485
+ D as omniWerkMuiTheme,
486
+ K as omniWerkTailwindPreset
487
+ };