@rhavenside/custom-ui-library 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,268 @@
1
+ # Customs - React UI Component Library
2
+
3
+ Eine wiederverwendbare React UI-Komponenten-Bibliothek mit CSS-Variablen für vollständige Anpassbarkeit.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install customs
9
+ ```
10
+
11
+ ## Verwendung
12
+
13
+ ### JavaScript Import
14
+
15
+ ```javascript
16
+ import { Button, Input, Modal, Progress } from 'customs';
17
+ ```
18
+
19
+ ### CSS Import
20
+
21
+ ```javascript
22
+ import 'customs/dist/style.css';
23
+ ```
24
+
25
+ ### Beispiel
26
+
27
+ ```jsx
28
+ import React from 'react';
29
+ import { Button, Input, Modal } from 'customs';
30
+ import 'customs/dist/style.css';
31
+
32
+ function App() {
33
+ return (
34
+ <div>
35
+ <Button variant="primary">Klick mich</Button>
36
+ <Input label="Name" placeholder="Dein Name" />
37
+ <Modal isOpen={true} onClose={() => {}}>
38
+ <h2>Modal Titel</h2>
39
+ <p>Modal Inhalt</p>
40
+ </Modal>
41
+ </div>
42
+ );
43
+ }
44
+ ```
45
+
46
+ ## Komponenten
47
+
48
+ - **Button** - Anpassbare Buttons mit verschiedenen Varianten
49
+ - **Input** - Text-Eingabefelder mit Label und Error-States
50
+ - **Modal** - Modals mit verschiedenen Größen und Positionen
51
+ - **Card** - Karten-Komponenten für Content-Darstellung
52
+ - **Badge** - Badges mit verschiedenen Varianten
53
+ - **Dropdown** - Dropdown-Menüs mit Optionen
54
+ - **Toggle** - Toggle/Switch-Komponenten
55
+ - **Textarea** - Mehrzeilige Text-Eingabefelder
56
+ - **Select** - Select-Dropdowns mit Custom Dropdown
57
+ - **Checkbox** - Checkbox-Komponenten
58
+ - **Radio** - Radio-Button-Komponenten
59
+ - **Progress** - Horizontale Progress Bars
60
+ - **ProgressRadio** - Progress Bars mit Radio-Button-Steuerung
61
+ - **ProgressCircle** - Kreisförmige Progress Bars (HSL-basiert)
62
+ - **ProgressBubble** - Progress Bars mit Wasser-Effekt
63
+
64
+ ## CSS-Variablen Überschreibung
65
+
66
+ Alle Komponenten verwenden CSS Custom Properties, die überschrieben werden können.
67
+
68
+ ### Globale Überschreibung
69
+
70
+ ```css
71
+ /* In deinem Projekt */
72
+ :root {
73
+ --btn-bg: #ff6b6b;
74
+ --btn-color: #ffffff;
75
+ --btn-radius: 8px;
76
+
77
+ --input-border: 2px solid #4ecdc4;
78
+ --input-border-focus: 2px solid #45b7d1;
79
+
80
+ --modal-bg: #f8f9fa;
81
+ --modal-radius: 12px;
82
+ }
83
+ ```
84
+
85
+ ### Kontextuelle Überschreibung
86
+
87
+ ```css
88
+ /* Nur für bestimmte Bereiche */
89
+ .dark-theme {
90
+ --btn-bg: #1e40af;
91
+ --btn-color: #f3f4f6;
92
+ --input-bg: #1f2937;
93
+ --input-color: #f9fafb;
94
+ }
95
+ ```
96
+
97
+ ## Verfügbare CSS-Variablen
98
+
99
+ ### Button
100
+ - `--btn-bg` - Hintergrundfarbe
101
+ - `--btn-bg-hover` - Hover-Hintergrundfarbe
102
+ - `--btn-bg-active` - Active-Hintergrundfarbe
103
+ - `--btn-color` - Textfarbe
104
+ - `--btn-radius` - Border-Radius
105
+ - `--btn-padding-x` - Horizontal Padding
106
+ - `--btn-padding-y` - Vertikales Padding
107
+ - `--btn-font-size` - Schriftgröße
108
+ - `--btn-font-weight` - Schriftgewicht
109
+ - `--btn-shadow` - Box-Shadow
110
+ - `--btn-shadow-hover` - Hover Box-Shadow
111
+ - `--btn-transition` - Transition
112
+
113
+ ### Input
114
+ - `--input-bg` - Hintergrundfarbe
115
+ - `--input-border` - Border
116
+ - `--input-border-focus` - Focus Border
117
+ - `--input-color` - Textfarbe
118
+ - `--input-placeholder-color` - Placeholder-Farbe
119
+ - `--input-radius` - Border-Radius
120
+ - `--input-padding-x` - Horizontal Padding
121
+ - `--input-padding-y` - Vertikales Padding
122
+ - `--input-font-size` - Schriftgröße
123
+ - `--input-shadow-focus` - Focus Box-Shadow
124
+
125
+ ### Modal
126
+ - `--modal-bg` - Hintergrundfarbe
127
+ - `--modal-overlay-bg` - Overlay-Hintergrundfarbe
128
+ - `--modal-radius` - Border-Radius
129
+ - `--modal-shadow` - Box-Shadow
130
+ - `--modal-padding` - Padding
131
+ - `--modal-max-width-small` - Max-Breite (small)
132
+ - `--modal-max-width-medium` - Max-Breite (medium)
133
+ - `--modal-max-width-large` - Max-Breite (large)
134
+ - `--modal-max-width-xlarge` - Max-Breite (xlarge)
135
+
136
+ ### Progress
137
+ - `--progress-bg` - Hintergrundfarbe
138
+ - `--progress-color` - Progress-Farbe
139
+ - `--progress-height` - Höhe
140
+ - `--progress-radius` - Border-Radius
141
+ - `--progress-shadow` - Box-Shadow
142
+ - `--progress-success-color` - Success-Variante Farbe
143
+ - `--progress-danger-color` - Danger-Variante Farbe
144
+ - `--progress-warning-color` - Warning-Variante Farbe
145
+ - `--progress-info-color` - Info-Variante Farbe
146
+
147
+ ### Card
148
+ - `--card-bg` - Hintergrundfarbe
149
+ - `--card-border` - Border
150
+ - `--card-radius` - Border-Radius
151
+ - `--card-shadow` - Box-Shadow
152
+ - `--card-shadow-hover` - Hover Box-Shadow
153
+ - `--card-padding` - Padding
154
+
155
+ ### Badge
156
+ - `--badge-bg` - Hintergrundfarbe
157
+ - `--badge-color` - Textfarbe
158
+ - `--badge-radius` - Border-Radius
159
+ - `--badge-font-size` - Schriftgröße
160
+ - `--badge-padding-x` - Horizontal Padding
161
+ - `--badge-padding-y` - Vertikales Padding
162
+ - `--badge-primary-bg` - Primary-Variante Hintergrund
163
+ - `--badge-primary-color` - Primary-Variante Textfarbe
164
+ - (Ähnlich für success, danger, warning, info)
165
+
166
+ ### Dropdown
167
+ - `--dropdown-bg` - Hintergrundfarbe
168
+ - `--dropdown-border` - Border
169
+ - `--dropdown-radius` - Border-Radius
170
+ - `--dropdown-shadow` - Box-Shadow
171
+ - `--dropdown-item-hover-bg` - Item Hover-Hintergrund
172
+ - `--dropdown-item-padding` - Item Padding
173
+
174
+ ### Toggle
175
+ - `--toggle-bg` - Hintergrundfarbe
176
+ - `--toggle-bg-checked` - Checked Hintergrundfarbe
177
+ - `--toggle-thumb-bg` - Thumb Hintergrundfarbe
178
+ - `--toggle-radius` - Border-Radius
179
+ - `--toggle-shadow` - Box-Shadow
180
+
181
+ ### Textarea
182
+ - `--textarea-bg` - Hintergrundfarbe
183
+ - `--textarea-border` - Border
184
+ - `--textarea-border-focus` - Focus Border
185
+ - `--textarea-color` - Textfarbe
186
+ - `--textarea-radius` - Border-Radius
187
+ - `--textarea-padding` - Padding
188
+
189
+ ### Checkbox/Radio
190
+ - `--checkbox-bg` - Hintergrundfarbe
191
+ - `--checkbox-border` - Border
192
+ - `--checkbox-border-checked` - Checked Border
193
+ - `--checkbox-check-bg` - Check-Mark Hintergrundfarbe
194
+ - `--checkbox-check-color` - Check-Mark Farbe
195
+ - `--checkbox-radius` - Border-Radius
196
+
197
+ ### Select
198
+ - `--select-bg` - Hintergrundfarbe
199
+ - `--select-border` - Border
200
+ - `--select-border-focus` - Focus Border
201
+ - `--select-color` - Textfarbe
202
+ - `--select-radius` - Border-Radius
203
+
204
+ ### ProgressCircle
205
+ - `--circle-progress-bg` - Hintergrund-Kreis Farbe
206
+ - `--circle-progress-color` - Progress-Farbe (HSL-basiert)
207
+ - `--circle-progress-stroke-width` - Hintergrund-Kreis Stroke-Breite
208
+ - `--circle-progress-value-stroke-width` - Progress-Pfad Stroke-Breite
209
+
210
+ ### ProgressBubble
211
+ - `--bubble-progress-bg` - Hintergrundfarbe
212
+ - `--bubble-progress-border-color` - Border-Farbe
213
+ - `--bubble-progress-water-alpha` - Wasser-Transparenz
214
+ - `--bubble-progress-glare-bg` - Glare-Hintergrundfarbe
215
+
216
+ ## Theme-Überschreibung
217
+
218
+ ### Globales Theme
219
+
220
+ ```css
221
+ /* theme.css */
222
+ :root {
223
+ --btn-bg: #your-color;
224
+ --btn-color: #your-color;
225
+ /* ... weitere Variablen */
226
+ }
227
+ ```
228
+
229
+ ```javascript
230
+ import 'customs/dist/style.css';
231
+ import './theme.css'; // Nach customs importieren
232
+ ```
233
+
234
+ ### Kontextuelles Theme
235
+
236
+ ```css
237
+ /* dark-theme.css */
238
+ .dark-theme {
239
+ --btn-bg: #1e40af;
240
+ --btn-color: #f3f4f6;
241
+ --input-bg: #1f2937;
242
+ --input-color: #f9fafb;
243
+ }
244
+ ```
245
+
246
+ ```jsx
247
+ <div className="dark-theme">
248
+ <Button>Dark Button</Button>
249
+ <Input label="Dark Input" />
250
+ </div>
251
+ ```
252
+
253
+ ## Entwicklung
254
+
255
+ ```bash
256
+ # Lokale Entwicklung
257
+ npm run dev
258
+
259
+ # Library bauen
260
+ npm run build
261
+
262
+ # Watch-Mode
263
+ npm run build:watch
264
+ ```
265
+
266
+ ## Lizenz
267
+
268
+ MIT
@@ -0,0 +1,30 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("react");var Ce={exports:{}},pe={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.min.js
4
+ *
5
+ * Copyright (c) Facebook, Inc. and its affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var Xe;function Er(){if(Xe)return pe;Xe=1;var a=O,n=Symbol.for("react.element"),d=Symbol.for("react.fragment"),u=Object.prototype.hasOwnProperty,p=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,_={key:!0,ref:!0,__self:!0,__source:!0};function i(c,o,v){var h,l={},x=null,f=null;v!==void 0&&(x=""+v),o.key!==void 0&&(x=""+o.key),o.ref!==void 0&&(f=o.ref);for(h in o)u.call(o,h)&&!_.hasOwnProperty(h)&&(l[h]=o[h]);if(c&&c.defaultProps)for(h in o=c.defaultProps,o)l[h]===void 0&&(l[h]=o[h]);return{$$typeof:n,type:c,key:x,ref:f,props:l,_owner:p.current}}return pe.Fragment=d,pe.jsx=i,pe.jsxs=i,pe}var me={};/**
10
+ * @license React
11
+ * react-jsx-runtime.development.js
12
+ *
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var He;function $r(){return He||(He=1,process.env.NODE_ENV!=="production"&&function(){var a=O,n=Symbol.for("react.element"),d=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),p=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),i=Symbol.for("react.provider"),c=Symbol.for("react.context"),o=Symbol.for("react.forward_ref"),v=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),l=Symbol.for("react.memo"),x=Symbol.for("react.lazy"),f=Symbol.for("react.offscreen"),w=Symbol.iterator,b="@@iterator";function E(e){if(e===null||typeof e!="object")return null;var t=w&&e[w]||e[b];return typeof t=="function"?t:null}var C=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function k(e){{for(var t=arguments.length,s=new Array(t>1?t-1:0),m=1;m<t;m++)s[m-1]=arguments[m];A("error",e,s)}}function A(e,t,s){{var m=C.ReactDebugCurrentFrame,$=m.getStackAddendum();$!==""&&(t+="%s",s=s.concat([$]));var N=s.map(function(y){return String(y)});N.unshift("Warning: "+t),Function.prototype.apply.call(console[e],console,N)}}var M=!1,P=!1,T=!1,R=!1,B=!1,X;X=Symbol.for("react.module.reference");function L(e){return!!(typeof e=="string"||typeof e=="function"||e===u||e===_||B||e===p||e===v||e===h||R||e===f||M||P||T||typeof e=="object"&&e!==null&&(e.$$typeof===x||e.$$typeof===l||e.$$typeof===i||e.$$typeof===c||e.$$typeof===o||e.$$typeof===X||e.getModuleId!==void 0))}function se(e,t,s){var m=e.displayName;if(m)return m;var $=t.displayName||t.name||"";return $!==""?s+"("+$+")":s}function U(e){return e.displayName||"Context"}function g(e){if(e==null)return null;if(typeof e.tag=="number"&&k("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case u:return"Fragment";case d:return"Portal";case _:return"Profiler";case p:return"StrictMode";case v:return"Suspense";case h:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case c:var t=e;return U(t)+".Consumer";case i:var s=e;return U(s._context)+".Provider";case o:return se(e,e.render,"ForwardRef");case l:var m=e.displayName||null;return m!==null?m:g(e.type)||"Memo";case x:{var $=e,N=$._payload,y=$._init;try{return g(y(N))}catch{return null}}}return null}var I=Object.assign,W=0,q,ce,be,_e,H,Te,Se;function ze(){}ze.__reactDisabledLog=!0;function Qe(){{if(W===0){q=console.log,ce=console.info,be=console.warn,_e=console.error,H=console.group,Te=console.groupCollapsed,Se=console.groupEnd;var e={configurable:!0,enumerable:!0,value:ze,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}W++}}function er(){{if(W--,W===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:I({},e,{value:q}),info:I({},e,{value:ce}),warn:I({},e,{value:be}),error:I({},e,{value:_e}),group:I({},e,{value:H}),groupCollapsed:I({},e,{value:Te}),groupEnd:I({},e,{value:Se})})}W<0&&k("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ke=C.ReactCurrentDispatcher,ye;function ve(e,t,s){{if(ye===void 0)try{throw Error()}catch($){var m=$.stack.trim().match(/\n( *(at )?)/);ye=m&&m[1]||""}return`
18
+ `+ye+e}}var Re=!1,xe;{var rr=typeof WeakMap=="function"?WeakMap:Map;xe=new rr}function Pe(e,t){if(!e||Re)return"";{var s=xe.get(e);if(s!==void 0)return s}var m;Re=!0;var $=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var N;N=ke.current,ke.current=null,Qe();try{if(t){var y=function(){throw Error()};if(Object.defineProperty(y.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(y,[])}catch(Y){m=Y}Reflect.construct(e,[],y)}else{try{y.call()}catch(Y){m=Y}e.call(y.prototype)}}else{try{throw Error()}catch(Y){m=Y}e()}}catch(Y){if(Y&&m&&typeof Y.stack=="string"){for(var j=Y.stack.split(`
19
+ `),V=m.stack.split(`
20
+ `),S=j.length-1,z=V.length-1;S>=1&&z>=0&&j[S]!==V[z];)z--;for(;S>=1&&z>=0;S--,z--)if(j[S]!==V[z]){if(S!==1||z!==1)do if(S--,z--,z<0||j[S]!==V[z]){var Z=`
21
+ `+j[S].replace(" at new "," at ");return e.displayName&&Z.includes("<anonymous>")&&(Z=Z.replace("<anonymous>",e.displayName)),typeof e=="function"&&xe.set(e,Z),Z}while(S>=1&&z>=0);break}}}finally{Re=!1,ke.current=N,er(),Error.prepareStackTrace=$}var ue=e?e.displayName||e.name:"",oe=ue?ve(ue):"";return typeof e=="function"&&xe.set(e,oe),oe}function tr(e,t,s){return Pe(e,!1)}function sr(e){var t=e.prototype;return!!(t&&t.isReactComponent)}function we(e,t,s){if(e==null)return"";if(typeof e=="function")return Pe(e,sr(e));if(typeof e=="string")return ve(e);switch(e){case v:return ve("Suspense");case h:return ve("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case o:return tr(e.render);case l:return we(e.type,t,s);case x:{var m=e,$=m._payload,N=m._init;try{return we(N($),t,s)}catch{}}}return""}var fe=Object.prototype.hasOwnProperty,Be={},Fe=C.ReactDebugCurrentFrame;function je(e){if(e){var t=e._owner,s=we(e.type,e._source,t?t.type:null);Fe.setExtraStackFrame(s)}else Fe.setExtraStackFrame(null)}function ar(e,t,s,m,$){{var N=Function.call.bind(fe);for(var y in e)if(N(e,y)){var j=void 0;try{if(typeof e[y]!="function"){var V=Error((m||"React class")+": "+s+" type `"+y+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[y]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw V.name="Invariant Violation",V}j=e[y](t,y,m,s,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(S){j=S}j&&!(j instanceof Error)&&(je($),k("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",m||"React class",s,y,typeof j),je(null)),j instanceof Error&&!(j.message in Be)&&(Be[j.message]=!0,je($),k("Failed %s type: %s",s,j.message),je(null))}}}var nr=Array.isArray;function Ee(e){return nr(e)}function or(e){{var t=typeof Symbol=="function"&&Symbol.toStringTag,s=t&&e[Symbol.toStringTag]||e.constructor.name||"Object";return s}}function lr(e){try{return De(e),!1}catch{return!0}}function De(e){return""+e}function Ae(e){if(lr(e))return k("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",or(e)),De(e)}var Le=C.ReactCurrentOwner,ir={key:!0,ref:!0,__self:!0,__source:!0},Me,qe;function cr(e){if(fe.call(e,"ref")){var t=Object.getOwnPropertyDescriptor(e,"ref").get;if(t&&t.isReactWarning)return!1}return e.ref!==void 0}function dr(e){if(fe.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function ur(e,t){typeof e.ref=="string"&&Le.current}function _r(e,t){{var s=function(){Me||(Me=!0,k("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};s.isReactWarning=!0,Object.defineProperty(e,"key",{get:s,configurable:!0})}}function fr(e,t){{var s=function(){qe||(qe=!0,k("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};s.isReactWarning=!0,Object.defineProperty(e,"ref",{get:s,configurable:!0})}}var pr=function(e,t,s,m,$,N,y){var j={$$typeof:n,type:e,key:t,ref:s,props:y,_owner:N};return j._store={},Object.defineProperty(j._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(j,"_self",{configurable:!1,enumerable:!1,writable:!1,value:m}),Object.defineProperty(j,"_source",{configurable:!1,enumerable:!1,writable:!1,value:$}),Object.freeze&&(Object.freeze(j.props),Object.freeze(j)),j};function mr(e,t,s,m,$){{var N,y={},j=null,V=null;s!==void 0&&(Ae(s),j=""+s),dr(t)&&(Ae(t.key),j=""+t.key),cr(t)&&(V=t.ref,ur(t,$));for(N in t)fe.call(t,N)&&!ir.hasOwnProperty(N)&&(y[N]=t[N]);if(e&&e.defaultProps){var S=e.defaultProps;for(N in S)y[N]===void 0&&(y[N]=S[N])}if(j||V){var z=typeof e=="function"?e.displayName||e.name||"Unknown":e;j&&_r(y,z),V&&fr(y,z)}return pr(e,j,V,$,m,Le.current,y)}}var $e=C.ReactCurrentOwner,Ve=C.ReactDebugCurrentFrame;function de(e){if(e){var t=e._owner,s=we(e.type,e._source,t?t.type:null);Ve.setExtraStackFrame(s)}else Ve.setExtraStackFrame(null)}var Ne;Ne=!1;function Ie(e){return typeof e=="object"&&e!==null&&e.$$typeof===n}function We(){{if($e.current){var e=g($e.current.type);if(e)return`
22
+
23
+ Check the render method of \``+e+"`."}return""}}function gr(e){return""}var Ye={};function hr(e){{var t=We();if(!t){var s=typeof e=="string"?e:e.displayName||e.name;s&&(t=`
24
+
25
+ Check the top-level render call using <`+s+">.")}return t}}function Ue(e,t){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var s=hr(t);if(Ye[s])return;Ye[s]=!0;var m="";e&&e._owner&&e._owner!==$e.current&&(m=" It was passed a child from "+g(e._owner.type)+"."),de(e),k('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',s,m),de(null)}}function Ke(e,t){{if(typeof e!="object")return;if(Ee(e))for(var s=0;s<e.length;s++){var m=e[s];Ie(m)&&Ue(m,t)}else if(Ie(e))e._store&&(e._store.validated=!0);else if(e){var $=E(e);if(typeof $=="function"&&$!==e.entries)for(var N=$.call(e),y;!(y=N.next()).done;)Ie(y.value)&&Ue(y.value,t)}}}function br(e){{var t=e.type;if(t==null||typeof t=="string")return;var s;if(typeof t=="function")s=t.propTypes;else if(typeof t=="object"&&(t.$$typeof===o||t.$$typeof===l))s=t.propTypes;else return;if(s){var m=g(t);ar(s,e.props,"prop",m,e)}else if(t.PropTypes!==void 0&&!Ne){Ne=!0;var $=g(t);k("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",$||"Unknown")}typeof t.getDefaultProps=="function"&&!t.getDefaultProps.isReactClassApproved&&k("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function vr(e){{for(var t=Object.keys(e.props),s=0;s<t.length;s++){var m=t[s];if(m!=="children"&&m!=="key"){de(e),k("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",m),de(null);break}}e.ref!==null&&(de(e),k("Invalid attribute `ref` supplied to `React.Fragment`."),de(null))}}var Je={};function Ge(e,t,s,m,$,N){{var y=L(e);if(!y){var j="";(e===void 0||typeof e=="object"&&e!==null&&Object.keys(e).length===0)&&(j+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var V=gr();V?j+=V:j+=We();var S;e===null?S="null":Ee(e)?S="array":e!==void 0&&e.$$typeof===n?(S="<"+(g(e.type)||"Unknown")+" />",j=" Did you accidentally export a JSX literal instead of a component?"):S=typeof e,k("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",S,j)}var z=mr(e,t,s,$,N);if(z==null)return z;if(y){var Z=t.children;if(Z!==void 0)if(m)if(Ee(Z)){for(var ue=0;ue<Z.length;ue++)Ke(Z[ue],e);Object.freeze&&Object.freeze(Z)}else k("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Ke(Z,e)}if(fe.call(t,"key")){var oe=g(e),Y=Object.keys(t).filter(function(Rr){return Rr!=="key"}),Oe=Y.length>0?"{key: someKey, "+Y.join(": ..., ")+": ...}":"{key: someKey}";if(!Je[oe+Oe]){var yr=Y.length>0?"{"+Y.join(": ..., ")+": ...}":"{}";k(`A props object containing a "key" prop is being spread into JSX:
26
+ let props = %s;
27
+ <%s {...props} />
28
+ React keys must be passed directly to JSX without using spread:
29
+ let props = %s;
30
+ <%s key={someKey} {...props} />`,Oe,oe,yr,oe),Je[oe+Oe]=!0}}return e===u?vr(z):br(z),z}}function xr(e,t,s){return Ge(e,t,s,!0)}function wr(e,t,s){return Ge(e,t,s,!1)}var jr=wr,kr=xr;me.Fragment=u,me.jsx=jr,me.jsxs=kr}()),me}process.env.NODE_ENV==="production"?Ce.exports=Er():Ce.exports=$r();var r=Ce.exports;const Nr="_button_fa67_1",Ir="_spinner_fa67_175",Or="_spin_fa67_175",Q={button:Nr,"button--small":"_button--small_fa67_29","button--medium":"_button--medium_fa67_34","button--large":"_button--large_fa67_39","button--full-width":"_button--full-width_fa67_44","button--loading":"_button--loading_fa67_47","button--disabled":"_button--disabled_fa67_51","button--primary":"_button--primary_fa67_56","button--secondary":"_button--secondary_fa67_66","button--success":"_button--success_fa67_76","button--danger":"_button--danger_fa67_86","button--warning":"_button--warning_fa67_96","button--info":"_button--info_fa67_106","button--outline":"_button--outline_fa67_116","button--ghost":"_button--ghost_fa67_133","button--link":"_button--link_fa67_145","button-icon":"_button-icon_fa67_164","button-text":"_button-text_fa67_171",spinner:Ir,spin:Or},Cr=({children:a,variant:n="primary",size:d="medium",disabled:u=!1,loading:p=!1,icon:_,iconPosition:i="left",fullWidth:c=!1,onClick:o,type:v="button",className:h="",style:l,...x})=>{const f=[Q.button,Q[`button--${n}`],Q[`button--${d}`],c&&Q["button--full-width"],p&&Q["button--loading"],u&&Q["button--disabled"],h].filter(Boolean).join(" "),w=E=>{if(u||p){E.preventDefault();return}o&&o(E)},b=()=>p?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:Q.spinner}),a&&r.jsx("span",{className:Q["button-text"],children:a})]}):_?i==="left"?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:Q["button-icon"],children:_}),a&&r.jsx("span",{className:Q["button-text"],children:a})]}):r.jsxs(r.Fragment,{children:[a&&r.jsx("span",{className:Q["button-text"],children:a}),r.jsx("span",{className:Q["button-icon"],children:_})]}):a;return r.jsx("button",{type:v,className:f,style:l,onClick:w,disabled:u||p,...x,children:b()})},Tr="_input_j85a0_1",F={"input-wrapper":"_input-wrapper_j85a0_1","input-wrapper--full-width":"_input-wrapper--full-width_j85a0_6","input-label":"_input-label_j85a0_10","input-required":"_input-required_j85a0_17","input-container":"_input-container_j85a0_22",input:Tr,"input--outlined":"_input--outlined_j85a0_55","input--filled":"_input--filled_j85a0_59","input--underlined":"_input--underlined_j85a0_67","input--error":"_input--error_j85a0_79","input--disabled":"_input--disabled_j85a0_86","input--full-width":"_input--full-width_j85a0_89","input--floating-label":"_input--floating-label_j85a0_92","input--focused":"_input--focused_j85a0_96","input-icon":"_input-icon_j85a0_100","input-icon--left":"_input-icon--left_j85a0_109","input-icon--right":"_input-icon--right_j85a0_112","input-floating-label":"_input-floating-label_j85a0_140","input-error":"_input-error_j85a0_166","input-helper":"_input-helper_j85a0_172"},Sr=({type:a="text",variant:n="default",label:d,placeholder:u,value:p,defaultValue:_,error:i,helperText:c,icon:o,iconPosition:v="left",disabled:h=!1,required:l=!1,fullWidth:x=!1,floatingLabel:f=!1,onChange:w,onFocus:b,onBlur:E,className:C="",style:k,wrapperStyle:A,inputStyle:M,...P})=>{const[T,R]=O.useState(!1),[B,X]=O.useState(_||""),L=O.useRef(null),se=p!==void 0,U=se?p:B,g=U&&U.toString().length>0,I=H=>{se||X(H.target.value),w&&w(H)},W=H=>{R(!0),b&&b(H)},q=H=>{R(!1),E&&E(H)},ce=[F.input,F[`input--${n}`],i&&F["input--error"],h&&F["input--disabled"],x&&F["input--full-width"],f&&F["input--floating-label"],(T||g)&&f&&F["input--focused"],C].filter(Boolean).join(" "),be=[F["input-wrapper"],x&&F["input-wrapper--full-width"]].filter(Boolean).join(" "),_e=()=>o?r.jsx("span",{className:F[`input-icon--${v}`],children:o}):null;return r.jsxs("div",{className:be,style:A||k,children:[d&&!f&&r.jsxs("label",{className:F["input-label"],children:[d,l&&r.jsx("span",{className:F["input-required"],children:"*"})]}),r.jsxs("div",{className:F["input-container"],children:[o&&v==="left"&&_e(),f&&r.jsxs("label",{className:F["input-floating-label"],onClick:()=>{var H;return(H=L.current)==null?void 0:H.focus()},children:[d,l&&r.jsx("span",{className:F["input-required"],children:"*"})]}),r.jsx("input",{ref:L,type:a,className:ce,placeholder:f?"":u,value:U,disabled:h,required:l,style:M,onChange:I,onFocus:W,onBlur:q,...P}),o&&v==="right"&&_e()]}),i&&r.jsx("span",{className:F["input-error"],children:i}),c&&!i&&r.jsx("span",{className:F["input-helper"],children:c})]})},zr="_fadeIn_1ukwf_1",Pr="_fadeOut_1ukwf_1",Br="_slideInTop_1ukwf_1",Fr="_slideInBottom_1ukwf_1",Dr="_slideInLeft_1ukwf_1",Ar="_slideInRight_1ukwf_1",Lr="_scaleIn_1ukwf_1",Mr="_scaleOut_1ukwf_1",qr="_pulse_1ukwf_1",Vr="_spin_1ukwf_1",Wr="_shake_1ukwf_1",Yr="_modal_1ukwf_212",Ur="_slideOutTop_1ukwf_1",Kr="_slideOutBottom_1ukwf_1",Jr="_rotate_1ukwf_1",Gr="_bounce_1ukwf_1",ae={"animate-fadeIn":"_animate-fadeIn_1ukwf_140",fadeIn:zr,"animate-fadeOut":"_animate-fadeOut_1ukwf_144",fadeOut:Pr,"animate-slideInTop":"_animate-slideInTop_1ukwf_148",slideInTop:Br,"animate-slideInBottom":"_animate-slideInBottom_1ukwf_152",slideInBottom:Fr,"animate-slideInLeft":"_animate-slideInLeft_1ukwf_156",slideInLeft:Dr,"animate-slideInRight":"_animate-slideInRight_1ukwf_160",slideInRight:Ar,"animate-scaleIn":"_animate-scaleIn_1ukwf_164",scaleIn:Lr,"animate-scaleOut":"_animate-scaleOut_1ukwf_168",scaleOut:Mr,"animate-pulse":"_animate-pulse_1ukwf_172",pulse:qr,"animate-spin":"_animate-spin_1ukwf_176",spin:Vr,"animate-shake":"_animate-shake_1ukwf_180",shake:Wr,"modal-overlay":"_modal-overlay_1ukwf_212",modal:Yr,"modal--small":"_modal--small_1ukwf_240","modal--medium":"_modal--medium_1ukwf_243","modal--large":"_modal--large_1ukwf_246","modal--xlarge":"_modal--xlarge_1ukwf_249","modal--fullscreen":"_modal--fullscreen_1ukwf_252","modal--top":"_modal--top_1ukwf_258","modal--bottom":"_modal--bottom_1ukwf_263","modal--left":"_modal--left_1ukwf_268","modal--right":"_modal--right_1ukwf_273","modal-header":"_modal-header_1ukwf_279","modal-title":"_modal-title_1ukwf_288","modal-close":"_modal-close_1ukwf_295","modal-body":"_modal-body_1ukwf_323","modal-footer":"_modal-footer_1ukwf_344",slideOutTop:Ur,slideOutBottom:Kr,rotate:Jr,bounce:Gr,"progress-animation":"_progress-animation_1ukwf_1","progress-pulse":"_progress-pulse_1ukwf_1","progress-shimmer":"_progress-shimmer_1ukwf_1"},Xr=({isOpen:a=!1,onClose:n,title:d,children:u,size:p="medium",variant:_="center",closeOnOverlayClick:i=!0,showCloseButton:c=!0,footer:o,className:v="",style:h,overlayStyle:l,...x})=>{if(O.useEffect(()=>(a?document.body.style.overflow="hidden":document.body.style.overflow="",()=>{document.body.style.overflow=""}),[a]),O.useEffect(()=>{const b=E=>{E.key==="Escape"&&a&&n&&n()};return a&&document.addEventListener("keydown",b),()=>{document.removeEventListener("keydown",b)}},[a,n]),!a)return null;const f=b=>{i&&b.target===b.currentTarget&&n&&n()},w=[ae.modal,ae[`modal--${_}`],ae[`modal--${p}`],v].filter(Boolean).join(" ");return r.jsx("div",{className:ae["modal-overlay"],style:l,onClick:f,role:"dialog","aria-modal":"true","aria-labelledby":d?"modal-title":void 0,children:r.jsxs("div",{className:w,style:h,...x,children:[(d||c)&&r.jsxs("div",{className:ae["modal-header"],children:[d&&r.jsx("h2",{id:"modal-title",className:ae["modal-title"],children:d}),c&&r.jsx("button",{className:ae["modal-close"],onClick:n,"aria-label":"Schließen",children:r.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[r.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),r.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]}),r.jsx("div",{className:ae["modal-body"],children:u}),o&&r.jsx("div",{className:ae["modal-footer"],children:o})]})})},Hr="_card_10pt3_1",re={card:Hr,"card--default":"_card--default_10pt3_9","card--elevated":"_card--elevated_10pt3_12","card--outlined":"_card--outlined_10pt3_16","card--filled":"_card--filled_10pt3_19","card--hover":"_card--hover_10pt3_23","card--clickable":"_card--clickable_10pt3_27","card-image":"_card-image_10pt3_41","card-header":"_card-header_10pt3_53","card-title":"_card-title_10pt3_58","card-subtitle":"_card-subtitle_10pt3_65","card-content--none":"_card-content--none_10pt3_71","card-content--small":"_card-content--small_10pt3_74","card-content--medium":"_card-content--medium_10pt3_77","card-content--large":"_card-content--large_10pt3_80","card-actions":"_card-actions_10pt3_84"},Zr=({children:a,variant:n="default",hover:d=!1,padding:u="medium",title:p,subtitle:_,image:i,imageAlt:c,actions:o,className:v="",style:h,onClick:l,...x})=>{const f=[re.card,re[`card--${n}`],d&&re["card--hover"],l&&re["card--clickable"],v].filter(Boolean).join(" "),w=[re["card-content"],re[`card-content--${u}`]].filter(Boolean).join(" ");return r.jsxs("div",{className:f,style:h,onClick:l,role:l?"button":void 0,tabIndex:l?0:void 0,onKeyDown:b=>{l&&(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),l(b))},...x,children:[i&&r.jsx("div",{className:re["card-image"],children:r.jsx("img",{src:i,alt:c||""})}),(p||_)&&r.jsxs("div",{className:re["card-header"],children:[p&&r.jsx("h3",{className:re["card-title"],children:p}),_&&r.jsx("p",{className:re["card-subtitle"],children:_})]}),r.jsx("div",{className:w,children:a}),o&&r.jsx("div",{className:re["card-actions"],children:o})]})},Qr="_badge_1xd29_1",ge={badge:Qr,"badge--small":"_badge--small_1xd29_10","badge--medium":"_badge--medium_1xd29_15","badge--large":"_badge--large_1xd29_20","badge-color":"_badge-color_1xd29_26","badge--default":"_badge--default_1xd29_31","badge--primary":"_badge--primary_1xd29_34","badge--success":"_badge--success_1xd29_37","badge--danger":"_badge--danger_1xd29_40","badge--warning":"_badge--warning_1xd29_43","badge--info":"_badge--info_1xd29_46","badge-text":"_badge-text_1xd29_50"},et=({text:a,children:n,variant:d="default",size:u="medium",className:p="",style:_,...i})=>{const c=a||n,o=[ge.badge,ge[`badge--${d}`],ge[`badge--${u}`],p].filter(Boolean).join(" ");return r.jsxs("span",{className:o,style:_,...i,children:[r.jsx("span",{className:ge["badge-color"]}),r.jsx("span",{className:ge["badge-text"],children:c})]})},rt="_dropdown_1kj0n_1",D={dropdown:rt,"dropdown-trigger":"_dropdown-trigger_1kj0n_6","dropdown--error":"_dropdown--error_1kj0n_37","dropdown-value":"_dropdown-value_1kj0n_45","dropdown-arrow":"_dropdown-arrow_1kj0n_54","dropdown-arrow--open":"_dropdown-arrow--open_1kj0n_62","dropdown-menu":"_dropdown-menu_1kj0n_66","dropdown-search":"_dropdown-search_1kj0n_83","dropdown-search-input":"_dropdown-search-input_1kj0n_88","dropdown-options":"_dropdown-options_1kj0n_104","dropdown-option":"_dropdown-option_1kj0n_104","dropdown-option--disabled":"_dropdown-option--disabled_1kj0n_136","dropdown-option--selected":"_dropdown-option--selected_1kj0n_139","dropdown-checkbox":"_dropdown-checkbox_1kj0n_149","dropdown-empty":"_dropdown-empty_1kj0n_168"},Ze=({options:a=[],value:n,defaultValue:d,onChange:u,placeholder:p="Auswählen...",disabled:_=!1,searchable:i=!1,multiSelect:c=!1,error:o=!1,className:v="",style:h,triggerStyle:l,menuStyle:x,...f})=>{const[w,b]=O.useState(!1),[E,C]=O.useState(""),[k,A]=O.useState(c?d||[]:null),M=O.useRef(null),P=O.useRef(null),T=n!==void 0,R=T?n:k;O.useEffect(()=>{const g=I=>{M.current&&!M.current.contains(I.target)&&(b(!1),C(""))};return w&&(document.addEventListener("mousedown",g),i&&P.current&&P.current.focus()),()=>{document.removeEventListener("mousedown",g)}},[w,i]);const B=i?a.filter(g=>g.label.toLowerCase().includes(E.toLowerCase())):a,X=g=>{if(c){const I=T?[...n||[]]:[...k||[]],W=I.findIndex(q=>q===g.value);W>-1?I.splice(W,1):I.push(g.value),T||A(I),u&&u(I)}else T||A(g.value),u&&u(g.value),b(!1),C("")},L=g=>c?R&&R.includes(g):R===g,se=()=>{if(c){if(!R||R.length===0)return p;if(R.length===1){const g=a.find(I=>I.value===R[0]);return g?g.label:p}return`${R.length} ausgewählt`}else{if(!R)return p;const g=a.find(I=>I.value===R);return g?g.label:p}},U=[D.dropdown,w&&D["dropdown--open"],_&&D["dropdown--disabled"],o&&D["dropdown--error"],v].filter(Boolean).join(" ");return r.jsxs("div",{className:U,ref:M,style:h,...f,children:[r.jsxs("button",{type:"button",className:D["dropdown-trigger"],style:l,onClick:()=>!_&&b(!w),disabled:_,children:[r.jsx("span",{className:D["dropdown-value"],children:se()}),r.jsx("svg",{className:`${D["dropdown-arrow"]} ${w?D["dropdown-arrow--open"]:""}`,width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:r.jsx("polyline",{points:"6 9 10 13 14 9"})})]}),w&&r.jsxs("div",{className:D["dropdown-menu"],style:x,children:[i&&r.jsx("div",{className:D["dropdown-search"],children:r.jsx("input",{ref:P,type:"text",className:D["dropdown-search-input"],placeholder:"Suchen...",value:E,onChange:g=>C(g.target.value)})}),r.jsx("div",{className:D["dropdown-options"],children:B.length>0?B.map(g=>r.jsxs("div",{className:`${D["dropdown-option"]} ${L(g.value)?D["dropdown-option--selected"]:""} ${g.disabled?D["dropdown-option--disabled"]:""}`,onClick:()=>!g.disabled&&X(g),children:[c&&r.jsx("span",{className:D["dropdown-checkbox"],children:L(g.value)&&r.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",children:r.jsx("polyline",{points:"4 8 6 10 12 4"})})}),r.jsx("span",{children:g.label})]},g.value)):r.jsx("div",{className:D["dropdown-empty"],children:"Keine Optionen gefunden"})})]})]})},tt="_toggle_1hp0g_1",K={"toggle-container":"_toggle-container_1hp0g_1","toggle-container--reverse":"_toggle-container--reverse_1hp0g_6",toggle:tt,"toggle--disabled":"_toggle--disabled_1hp0g_15","toggle-input":"_toggle-input_1hp0g_20","toggle-switch":"_toggle-switch_1hp0g_27","toggle--small":"_toggle--small_1hp0g_38","toggle--medium":"_toggle--medium_1hp0g_42","toggle--large":"_toggle--large_1hp0g_46","toggle-switch--checked":"_toggle-switch--checked_1hp0g_50","toggle--primary":"_toggle--primary_1hp0g_53","toggle--checked":"_toggle--checked_1hp0g_53","toggle--success":"_toggle--success_1hp0g_56","toggle--danger":"_toggle--danger_1hp0g_59","toggle-thumb":"_toggle-thumb_1hp0g_66","toggle-label":"_toggle-label_1hp0g_100"},st=({checked:a=!1,onChange:n,disabled:d=!1,size:u="medium",variant:p="default",label:_,labelPosition:i="right",className:c="",style:o,switchStyle:v,...h})=>{const l=b=>{!d&&n&&n(b.target.checked)},x=[K.toggle,K[`toggle--${u}`],K[`toggle--${p}`],a&&K["toggle--checked"],d&&K["toggle--disabled"],c].filter(Boolean).join(" "),f=[K["toggle-switch"],a&&K["toggle-switch--checked"]].filter(Boolean).join(" "),w=[K["toggle-container"],i==="left"&&K["toggle-container--reverse"]].filter(Boolean).join(" ");return r.jsxs("div",{className:w,style:o,children:[_&&i==="left"&&r.jsx("label",{className:K["toggle-label"],onClick:()=>!d&&n&&n(!a),children:_}),r.jsxs("label",{className:x,children:[r.jsx("input",{type:"checkbox",checked:a,onChange:l,disabled:d,className:K["toggle-input"],...h}),r.jsx("span",{className:f,style:v,children:r.jsx("span",{className:K["toggle-thumb"]})})]}),_&&i==="right"&&r.jsx("label",{className:K["toggle-label"],onClick:()=>!d&&n&&n(!a),children:_})]})},at="_textarea_163r4_1",te={"textarea-wrapper":"_textarea-wrapper_163r4_1","textarea-wrapper--full-width":"_textarea-wrapper--full-width_163r4_6","textarea-label":"_textarea-label_163r4_10","textarea-required":"_textarea-required_163r4_17",textarea:at,"textarea--outlined":"_textarea--outlined_163r4_64","textarea--filled":"_textarea--filled_163r4_68","textarea--underlined":"_textarea--underlined_163r4_76","textarea--error":"_textarea--error_163r4_88","textarea--disabled":"_textarea--disabled_163r4_95","textarea--full-width":"_textarea--full-width_163r4_98","textarea-error":"_textarea-error_163r4_102","textarea-helper":"_textarea-helper_163r4_108"},nt=({variant:a="default",label:n,placeholder:d,value:u,defaultValue:p,error:_,helperText:i,disabled:c=!1,required:o=!1,fullWidth:v=!1,rows:h=4,resize:l="vertical",onChange:x,onFocus:f,onBlur:w,className:b="",style:E,wrapperStyle:C,textareaStyle:k,...A})=>{const[M,P]=O.useState(!1),[T,R]=O.useState(p||""),B=O.useRef(null),X=u!==void 0,L=X?u:T,se=q=>{X||R(q.target.value),x&&x(q)},U=q=>{P(!0),f&&f(q)},g=q=>{P(!1),w&&w(q)},I=[te.textarea,te[`textarea--${a}`],_&&te["textarea--error"],c&&te["textarea--disabled"],v&&te["textarea--full-width"],b].filter(Boolean).join(" "),W=[te["textarea-wrapper"],v&&te["textarea-wrapper--full-width"]].filter(Boolean).join(" ");return r.jsxs("div",{className:W,style:C||E,children:[n&&r.jsxs("label",{className:te["textarea-label"],children:[n,o&&r.jsx("span",{className:te["textarea-required"],children:"*"})]}),r.jsx("textarea",{ref:B,className:I,placeholder:d,value:L,disabled:c,required:o,rows:h,style:{resize:l,...k},onChange:se,onFocus:U,onBlur:g,...A}),_&&r.jsx("span",{className:te["textarea-error"],children:_}),i&&!_&&r.jsx("span",{className:te["textarea-helper"],children:i})]})},ne={"select-wrapper":"_select-wrapper_1917o_1","select-wrapper--full-width":"_select-wrapper--full-width_1917o_6","select-label":"_select-label_1917o_9","select-required":"_select-required_1917o_16","select-dropdown-wrapper":"_select-dropdown-wrapper_1917o_21","select-error":"_select-error_1917o_28","select-helper":"_select-helper_1917o_34"},ot=({options:a=[],value:n,defaultValue:d,onChange:u,placeholder:p="Auswählen...",label:_,error:i,helperText:c,disabled:o=!1,required:v=!1,fullWidth:h=!1,searchable:l=!1,className:x="",style:f,...w})=>{const b=[ne["select-wrapper"],h&&ne["select-wrapper--full-width"],i&&ne["select-wrapper--error"],x].filter(Boolean).join(" "),E=C=>{if(u){const k={target:{value:C,name:w.name||""},currentTarget:{value:C,name:w.name||""},preventDefault:()=>{},stopPropagation:()=>{}};u(k)}};return r.jsxs("div",{className:b,style:f,children:[_&&r.jsxs("label",{className:ne["select-label"],children:[_,v&&r.jsx("span",{className:ne["select-required"],children:"*"})]}),r.jsx("div",{className:ne["select-dropdown-wrapper"],children:r.jsx(Ze,{options:a,value:n,defaultValue:d,onChange:E,placeholder:p,disabled:o,searchable:l,error:!!i,...w})}),i&&r.jsx("span",{className:ne["select-error"],children:i}),c&&!i&&r.jsx("span",{className:ne["select-helper"],children:c})]})},lt="_checkbox_qb3mc_1",J={"checkbox-container":"_checkbox-container_qb3mc_1","checkbox-container--reverse":"_checkbox-container--reverse_qb3mc_6",checkbox:lt,"checkbox--disabled":"_checkbox--disabled_qb3mc_16","checkbox-input":"_checkbox-input_qb3mc_21","checkbox-box":"_checkbox-box_qb3mc_28","checkbox--small":"_checkbox--small_qb3mc_40","checkbox--medium":"_checkbox--medium_qb3mc_44","checkbox--large":"_checkbox--large_qb3mc_48","checkbox--checked":"_checkbox--checked_qb3mc_52","checkbox--indeterminate":"_checkbox--indeterminate_qb3mc_56","checkbox--primary":"_checkbox--primary_qb3mc_60","checkbox--success":"_checkbox--success_qb3mc_64","checkbox--danger":"_checkbox--danger_qb3mc_68","checkbox-check":"_checkbox-check_qb3mc_80","checkbox-label":"_checkbox-label_qb3mc_87"},it=({checked:a=!1,onChange:n,disabled:d=!1,label:u,labelPosition:p="right",size:_="medium",variant:i="default",indeterminate:c=!1,className:o="",style:v,boxStyle:h,...l})=>{const x=b=>{!d&&n&&n(b.target.checked)},f=[J.checkbox,J[`checkbox--${_}`],J[`checkbox--${i}`],a&&J["checkbox--checked"],c&&J["checkbox--indeterminate"],d&&J["checkbox--disabled"],o].filter(Boolean).join(" "),w=[J["checkbox-container"],p==="left"&&J["checkbox-container--reverse"]].filter(Boolean).join(" ");return r.jsxs("div",{className:w,style:v,children:[u&&p==="left"&&r.jsx("label",{className:J["checkbox-label"],onClick:()=>!d&&n&&n(!a),children:u}),r.jsxs("label",{className:f,children:[r.jsx("input",{type:"checkbox",checked:a,onChange:x,disabled:d,ref:b=>{b&&(b.indeterminate=c)},className:J["checkbox-input"],...l}),r.jsx("span",{className:J["checkbox-box"],style:h,children:(a||c)&&r.jsx("svg",{className:J["checkbox-check"],width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:c?r.jsx("line",{x1:"4",y1:"8",x2:"12",y2:"8"}):r.jsx("polyline",{points:"4 8 6 10 12 4"})})})]}),u&&p==="right"&&r.jsx("label",{className:J["checkbox-label"],onClick:()=>!d&&n&&n(!a),children:u})]})},ct="_radio_nmwcz_1",ee={"radio-container":"_radio-container_nmwcz_1","radio-container--reverse":"_radio-container--reverse_nmwcz_6",radio:ct,"radio--disabled":"_radio--disabled_nmwcz_16","radio-input":"_radio-input_nmwcz_21","radio-circle":"_radio-circle_nmwcz_28","radio--small":"_radio--small_nmwcz_40","radio--medium":"_radio--medium_nmwcz_44","radio--large":"_radio--large_nmwcz_48","radio--checked":"_radio--checked_nmwcz_52","radio--primary":"_radio--primary_nmwcz_55","radio--success":"_radio--success_nmwcz_58","radio--danger":"_radio--danger_nmwcz_61","radio-dot":"_radio-dot_nmwcz_72","radio-label":"_radio-label_nmwcz_99"},dt=({checked:a=!1,onChange:n,disabled:d=!1,label:u,labelPosition:p="right",size:_="medium",variant:i="default",name:c,value:o,className:v="",style:h,circleStyle:l,...x})=>{const f=E=>{!d&&n&&n(E.target.value)},w=[ee.radio,ee[`radio--${_}`],ee[`radio--${i}`],a&&ee["radio--checked"],d&&ee["radio--disabled"],v].filter(Boolean).join(" "),b=[ee["radio-container"],p==="left"&&ee["radio-container--reverse"]].filter(Boolean).join(" ");return r.jsxs("div",{className:b,style:h,children:[u&&p==="left"&&r.jsx("label",{className:ee["radio-label"],onClick:()=>!d&&n&&n(o),children:u}),r.jsxs("label",{className:w,children:[r.jsx("input",{type:"radio",checked:a,onChange:f,disabled:d,name:c,value:o,className:ee["radio-input"],...x}),r.jsx("span",{className:ee["radio-circle"],style:l,children:a&&r.jsx("span",{className:ee["radio-dot"]})})]}),u&&p==="right"&&r.jsx("label",{className:ee["radio-label"],onClick:()=>!d&&n&&n(o),children:u})]})},ut="_fadeIn_szmsm_1",_t="_fadeOut_szmsm_1",ft="_slideInTop_szmsm_1",pt="_slideInBottom_szmsm_1",mt="_slideInLeft_szmsm_1",gt="_slideInRight_szmsm_1",ht="_scaleIn_szmsm_1",bt="_scaleOut_szmsm_1",vt="_pulse_szmsm_1",xt="_spin_szmsm_1",wt="_shake_szmsm_1",jt="_progress_szmsm_212",kt="_slideOutTop_szmsm_1",yt="_slideOutBottom_szmsm_1",Rt="_rotate_szmsm_1",Et="_bounce_szmsm_1",G={"animate-fadeIn":"_animate-fadeIn_szmsm_140",fadeIn:ut,"animate-fadeOut":"_animate-fadeOut_szmsm_144",fadeOut:_t,"animate-slideInTop":"_animate-slideInTop_szmsm_148",slideInTop:ft,"animate-slideInBottom":"_animate-slideInBottom_szmsm_152",slideInBottom:pt,"animate-slideInLeft":"_animate-slideInLeft_szmsm_156",slideInLeft:mt,"animate-slideInRight":"_animate-slideInRight_szmsm_160",slideInRight:gt,"animate-scaleIn":"_animate-scaleIn_szmsm_164",scaleIn:ht,"animate-scaleOut":"_animate-scaleOut_szmsm_168",scaleOut:bt,"animate-pulse":"_animate-pulse_szmsm_172",pulse:vt,"animate-spin":"_animate-spin_szmsm_176",spin:xt,"animate-shake":"_animate-shake_szmsm_180",shake:wt,progress:jt,"progress--small":"_progress--small_szmsm_221","progress--medium":"_progress--medium_szmsm_225","progress--large":"_progress--large_szmsm_229","progress--vertical":"_progress--vertical_szmsm_233","progress-bar":"_progress-bar_szmsm_265","progress--default":"_progress--default_szmsm_299","progress--success":"_progress--success_szmsm_303","progress--danger":"_progress--danger_szmsm_307","progress--warning":"_progress--warning_szmsm_311","progress--info":"_progress--info_szmsm_315","progress-bar--striped":"_progress-bar--striped_szmsm_339","progress-bar--animated":"_progress-bar--animated_szmsm_344","progress-animation":"_progress-animation_szmsm_1","progress-bar--pulse":"_progress-bar--pulse_szmsm_373","progress-pulse":"_progress-pulse_szmsm_1","progress-bar--shimmer":"_progress-bar--shimmer_szmsm_376","progress-shimmer":"_progress-shimmer_szmsm_1","progress-label":"_progress-label_szmsm_397","progress-label--external":"_progress-label--external_szmsm_416",slideOutTop:kt,slideOutBottom:yt,rotate:Rt,bounce:Et},$t=({value:a=0,max:n=100,variant:d="default",size:u="medium",showLabel:p=!1,label:_,animated:i=!1,striped:c=!1,pulse:o=!1,shimmer:v=!1,animationSpeed:h="normal",vertical:l=!1,className:x="",style:f,barStyle:w,...b})=>{const E=Math.min(Math.max(a/n*100,0),100),k=(B=>{if(typeof B=="number")return B;switch(B){case"slow":return 3;case"fast":return .5;case"normal":default:return 1}})(h),A=[G.progress,G[`progress--${d}`],G[`progress--${u}`],l&&G["progress--vertical"],i&&G["progress--animated"],c&&G["progress--striped"],x].filter(Boolean).join(" "),M=[G["progress-bar"],i&&G["progress-bar--animated"],c&&G["progress-bar--striped"],o&&G["progress-bar--pulse"],v&&G["progress-bar--shimmer"]].filter(Boolean).join(" "),P=_||(p?`${Math.round(E)}%`:""),T={};(i||o||v)&&(i&&(T["--animation-speed"]=`${k}s`),o&&(T["--pulse-speed"]=`${k*2}s`),v&&(T["--shimmer-speed"]=`${k*1.5}s`));const R=l?{height:`${E}%`,width:"100%",...T,...w}:{width:`${E}%`,...T,...w};return r.jsxs("div",{className:A,style:f,...b,children:[r.jsx("div",{className:M,role:"progressbar","aria-valuenow":a,"aria-valuemin":0,"aria-valuemax":n,style:R,children:P&&!l&&r.jsx("span",{className:G["progress-label"],children:P})}),P&&l&&r.jsx("span",{className:G["progress-label--external"],children:P})]})},Nt="_container_b6ikf_1",It="_progress_b6ikf_8",Ot="_radio_b6ikf_31",Ct="_label_b6ikf_35",he={container:Nt,progress:It,"progress-bar":"_progress-bar_b6ikf_20",radio:Ot,label:Ct},Tt=({options:a=[{value:5,label:"5%",color:"#f63a0f"},{value:25,label:"25%",color:"#f27011"},{value:50,label:"50%",color:"#f2b01e"},{value:75,label:"75%",color:"#f2d31b"},{value:100,label:"100%",color:"#86e01e"}],defaultValue:n=25,name:d="progress",className:u="",style:p,barStyle:_,...i})=>{const[c,o]=O.useState(n),v=f=>{o(f)},h=a.find(f=>f.value===c)||a[0],l=c,x=[he.container,u].filter(Boolean).join(" ");return r.jsxs("div",{className:x,style:p,...i,children:[a.map(f=>r.jsxs(O.Fragment,{children:[r.jsx("input",{type:"radio",className:he.radio,name:d,value:f.value,id:`${d}-${f.value}`,checked:c===f.value,onChange:()=>v(f.value)}),r.jsx("label",{htmlFor:`${d}-${f.value}`,className:he.label,children:f.label})]},f.value)),r.jsx("div",{className:he.progress,children:r.jsx("div",{className:he["progress-bar"],role:"progressbar","aria-valuenow":l,"aria-valuemin":0,"aria-valuemax":100,style:{width:`${l}%`,backgroundColor:h.color,..._}})})]})},le={"circle-progress":"_circle-progress_14zpr_1","circle-progress--small":"_circle-progress--small_14zpr_9","circle-progress--medium":"_circle-progress--medium_14zpr_13","circle-progress--large":"_circle-progress--large_14zpr_17","circle-progress-svg":"_circle-progress-svg_14zpr_22","circle-progress-circle":"_circle-progress-circle_14zpr_27","circle-progress-segment":"_circle-progress-segment_14zpr_32","circle-progress-value":"_circle-progress-value_14zpr_38","circle-progress-text":"_circle-progress-text_14zpr_45"},St=({value:a=0,max:n=100,size:d="medium",showLabel:u=!1,label:p,textFormat:_,animationDuration:i=400,className:c="",style:o,...v})=>{const h=Math.min(Math.max(a/n*100,0),100),l=a/n,x=240*(1-l),f=100,w=30+20*l,b=`hsl(${x}, ${f}%, ${w}%)`,E=60,C=Math.round(h/100*E),k=360/E,A=[le["circle-progress"],le[`circle-progress--${d}`],c].filter(Boolean).join(" "),M=_?_(a):p||(u?`${Math.round(h)}%`:""),P={"--progress-value":l,"--color":b,...o},T=[],R=45,B=4,X=5;for(let L=0;L<E;L++){const se=L<C,U=(L*k-90)*(Math.PI/180),g=50+R*Math.cos(U),I=50+R*Math.sin(U),W=g-B/2,q=I-X/2,ce=L*k-90+90;T.push(r.jsx("rect",{x:W,y:q,width:B,height:X,fill:se?b:"transparent",transform:`rotate(${ce} ${g} ${I})`,className:le["circle-progress-segment"]},L))}return r.jsx("div",{className:A,style:P,...v,children:r.jsxs("svg",{viewBox:"0 0 100 100",className:le["circle-progress-svg"],children:[r.jsx("circle",{cx:"50",cy:"50",r:"45",fill:"none",stroke:"hsl(228, 8%, 10%)",strokeWidth:"0.5",className:le["circle-progress-circle"]}),r.jsx("g",{className:le["circle-progress-segments"],children:T}),M&&r.jsx("text",{x:"50",y:"50",textAnchor:"middle",dy:"0.35em",className:le["circle-progress-text"],children:M})]})})},zt="_progress_pnlsj_9",Pt="_inner_pnlsj_20",Bt="_percent_pnlsj_27",Ft="_water_pnlsj_81",Dt="_spin_pnlsj_1",At="_glare_pnlsj_107",ie={progress:zt,"progress--medium":"_progress--medium_pnlsj_15",inner:Pt,percent:Bt,"progress--small":"_progress--small_pnlsj_30","progress--large":"_progress--large_pnlsj_45","progress--red":"_progress--red_pnlsj_60","progress--orange":"_progress--orange_pnlsj_64","progress--green":"_progress--green_pnlsj_68",water:Ft,spin:Dt,glare:At},Lt=({value:a=0,max:n=100,size:d="medium",showLabel:u=!1,label:p,animationSpeed:_="normal",animateCounter:i=!1,counterDuration:c=5e3,className:o="",style:v,...h})=>{const l=Math.min(Math.max(a/n*100,0),100),x=O.useRef(null),f=O.useRef(null),w=O.useRef(null),E=(R=>{if(typeof R=="number")return R;switch(R){case"slow":return 1.5;case"fast":return .5;case"normal":default:return 1}})(_),k=(R=>R<33?"red":R<66?"orange":"green")(l),A=100-l;O.useEffect(()=>{if(typeof window<"u"&&window.$&&x.current&&i){window.$(x.current);const R=window.$(f.current),B=window.$(w.current);R.length&&i&&window.$({Counter:0}).animate({Counter:l},{duration:c,easing:"linear",step:function(){R.length&&R.find("span").text(Math.ceil(this.Counter))}}),B.length&&B.stop().animate({top:`${A}%`},{duration:E*1e3,easing:"linear"})}},[a,l,A,E,i,c]);const M=[ie.progress,ie[`progress--${d}`],ie[`progress--${k}`],o].filter(Boolean).join(" "),P=p||(u?`${Math.round(l)}%`:""),T={"--level-change-speed":`${E}s`};return r.jsx("div",{ref:x,className:M,style:{...v,...T},...h,children:r.jsxs("div",{className:ie.inner,children:[P&&r.jsxs("div",{ref:f,className:ie.percent,children:[r.jsx("span",{children:Math.round(l)}),"%"]}),r.jsx("div",{ref:w,className:ie.water,style:{top:`${A}%`}}),r.jsx("div",{className:ie.glare})]})})};exports.Badge=et;exports.Button=Cr;exports.Card=Zr;exports.Checkbox=it;exports.Dropdown=Ze;exports.Input=Sr;exports.Modal=Xr;exports.Progress=$t;exports.ProgressBubble=Lt;exports.ProgressCircle=St;exports.ProgressRadio=Tt;exports.Radio=dt;exports.Select=ot;exports.Textarea=nt;exports.Toggle=st;