@fastnd/components 1.0.13 → 1.0.14

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 (2) hide show
  1. package/dist/components.js +250 -251
  2. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
- (function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode('._tableContainer_133qi_4{overflow-x:auto}._table_133qi_4{width:100%;border-collapse:separate;border-spacing:0;text-align:left;table-layout:fixed}._table__head_133qi_18 th{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-variant);padding:.625rem 1rem;border-bottom:1px solid var(--border);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}._table__head_133qi_18 th._sortable_133qi_32{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}._table__head_133qi_18 th._sortable_133qi_32:hover{color:var(--on-surface)}._table__head_133qi_18 th:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}._sortIndicator_133qi_48{display:inline-flex;margin-left:.25rem;opacity:.4;vertical-align:middle}._table__head_133qi_18 th[aria-sort] ._sortIndicator_133qi_48{opacity:1;color:var(--primary)}._colResizeHandle_133qi_61{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:5;background:transparent}._colResizeHandle_133qi_61:hover{background-color:var(--primary);opacity:.4}._table--resizing_133qi_77{cursor:col-resize;-webkit-user-select:none;user-select:none}._table--resizing_133qi_77 *{cursor:col-resize!important}._table__row_133qi_87{transition:background-color .1s ease}._table__row_133qi_87:hover{background-color:var(--surface-hover)}._table__row_133qi_87 td{padding:.75rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle;overflow:hidden;text-overflow:ellipsis}._table__row_133qi_87:last-child td{border-bottom:none}._table__row--animated_133qi_108{animation:_fadeInRow_133qi_1 .2s ease both}@keyframes _fadeInRow_133qi_1{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){._table__row--animated_133qi_108{animation:none}}@media(max-width:1024px){._col-hide-tablet_133qi_131{display:none}}@media(max-width:640px){._col-hide-mobile_133qi_137{display:none}}._widgetCard_gx9fj_4{background-color:var(--surface);color:var(--on-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);display:flex;flex-direction:column;height:100%;overflow:hidden;font-family:var(--font-inter);animation:_fadeIn_gx9fj_1 .4s ease-out}._widgetCard--half_gx9fj_18{max-width:520px}._widgetCard__header_gx9fj_23{display:flex;justify-content:space-between;align-items:center;padding:1rem 5%;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}._widgetCard--full_gx9fj_33 ._widgetCard__header_gx9fj_23{padding:1.5rem 2.5%}._widgetCard__title_gx9fj_37{margin:0;font-family:var(--font-clash);font-size:1.25rem;font-weight:500;line-height:1.3;color:var(--on-surface);letter-spacing:-.02em}._widgetCard--full_gx9fj_33 ._widgetCard__title_gx9fj_37{font-size:1.5rem}._widgetCard__content_gx9fj_52{flex:1 1 0}._widgetCard__content--scrollable_gx9fj_56{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}._widgetCard__content--scrollable_gx9fj_56::-webkit-scrollbar{width:4px}._widgetCard__content--scrollable_gx9fj_56::-webkit-scrollbar-track{background:transparent}._widgetCard__content--scrollable_gx9fj_56::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:2px}._widgetCard__content--padded_gx9fj_76{padding:1rem 5%}._widgetCard--full_gx9fj_33 ._widgetCard__content--padded_gx9fj_76{padding:1.5rem 2.5%}@keyframes _fadeIn_gx9fj_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){._widgetCard_gx9fj_4{animation:none}}._dataCard_19cka_3{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;transition:box-shadow .15s ease,border-color .15s ease;display:flex;flex-direction:column;gap:.75rem}._dataCard_19cka_3:hover{box-shadow:var(--shadow-md)}._dataCard--clickable_19cka_18{cursor:pointer}._dataCard--clickable_19cka_18:focus-visible{outline:2px solid var(--primary);outline-offset:2px}._baseList_47qml_3{display:flex;flex-direction:column}._baseList--scrollable_47qml_8{overflow-y:auto;flex:1 1 0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}._baseList--scrollable_47qml_8::-webkit-scrollbar{width:4px}._baseList--scrollable_47qml_8::-webkit-scrollbar-track{background:transparent}._baseList--scrollable_47qml_8::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:2px}._listItem_1ssj2_3{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);transition:background-color .1s ease;font-family:var(--font-inter)}._listItem_1ssj2_3:last-child{border-bottom:none}._listItem_1ssj2_3:hover{background-color:var(--surface-hover)}._listItem--clickable_1ssj2_21{cursor:pointer}._listItem_1ssj2_3:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}._listItem__leading_1ssj2_31{flex-shrink:0;display:flex;align-items:center}._listItem__content_1ssj2_37{flex:1;min-width:0}._listItem__trailing_1ssj2_42{flex-shrink:0;display:flex;align-items:center;gap:.5rem}@media(max-width:640px){._listItem_1ssj2_3{flex-wrap:wrap;gap:.5rem}}._status-badge_c7rzu_3{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:1rem;font-size:.75rem;font-weight:500;line-height:1;color:var(--custom-color, var(--current-color));background-color:var(--custom-bg, var(--current-bg));white-space:nowrap}._status-badge_c7rzu_3:before{content:"";display:block;width:6px;height:6px;border-radius:50%;background-color:var(--custom-color, var(--current-color))}._status-badge--neu_c7rzu_26{--current-color: var(--status-neu);--current-bg: color-mix(in srgb, var(--status-neu), transparent 90%)}._status-badge--offen_c7rzu_31{--current-color: var(--status-offen);--current-bg: color-mix(in srgb, var(--status-offen), transparent 90%)}._status-badge--in-prufung_c7rzu_36{--current-color: var(--status-in-prufung);--current-bg: color-mix(in srgb, var(--status-in-prufung), transparent 90%)}._status-badge--validierung_c7rzu_41{--current-color: var(--status-validierung);--current-bg: color-mix(in srgb, var(--status-validierung), transparent 90%)}._status-badge--abgeschlossen_c7rzu_46{--current-color: var(--status-abgeschlossen);--current-bg: color-mix(in srgb, var(--status-abgeschlossen), transparent 90%)}._favorite-btn_1fvb2_3{background:none;border:none;color:var(--custom-color, var(--on-surface-light));cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.375rem;border-radius:var(--radius);transition:all .2s ease}._favorite-btn_1fvb2_3:hover,._favorite-btn_1fvb2_3:focus-visible{background-color:var(--surface-variant);color:var(--custom-active-color, var(--color-warning));outline:none}._favorite-btn--active_1fvb2_23{color:var(--custom-active-color, var(--color-warning))}._favorite-btn--md_1fvb2_28{padding:.375rem}._favorite-btn--md_1fvb2_28 svg{width:18px;height:18px;fill:currentColor}._favorite-btn--sm_1fvb2_39{padding:.25rem}._favorite-btn--sm_1fvb2_39 svg{width:16px;height:16px;fill:currentColor}._status-legend__item_1xv4z_3{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:background-color .2s ease;border:1px solid transparent;background:none;width:100%}._status-legend__item_1xv4z_3:hover,._status-legend__item_1xv4z_3:focus-visible{background-color:var(--surface-variant);outline:none}._status-legend__item--active_1xv4z_22{background-color:var(--surface-variant);border-color:var(--border)}._status-legend__label-wrap_1xv4z_27{display:flex;align-items:center;gap:.5rem}._status-legend__color_1xv4z_33{width:12px;height:12px;border-radius:50%;flex-shrink:0;background-color:var(--custom-color, var(--current-color))}._status-legend__label_1xv4z_27{font-size:.875rem;color:var(--on-surface);font-weight:500}._status-legend__count_1xv4z_47{font-family:var(--font-grotesk);font-size:.875rem;color:var(--on-surface-variant);font-weight:600;background-color:var(--surface-variant);padding:.125rem .5rem;border-radius:1rem}._color-neu_1xv4z_57{--current-color: var(--status-neu)}._color-offen_1xv4z_61{--current-color: var(--status-offen)}._color-in-prufung_1xv4z_65{--current-color: var(--status-in-prufung)}._color-validierung_1xv4z_69{--current-color: var(--status-validierung)}._color-abgeschlossen_1xv4z_73{--current-color: var(--status-abgeschlossen)}._color-alle_1xv4z_77{--current-color: var(--status-alle)}._status-overview__chart-container_6nwc9_3{position:relative;width:200px;height:200px;margin:1rem auto 2rem;display:flex;align-items:center;justify-content:center}._status-chart-svg_6nwc9_13{width:100%;height:100%;position:absolute;top:0;left:0;filter:drop-shadow(var(--shadow-sm));pointer-events:none}._status-chart__segment_6nwc9_23{transition:all .3s cubic-bezier(.4,0,.2,1);stroke-linecap:butt;pointer-events:stroke}._status-chart__segment_6nwc9_23:hover,._status-chart__segment--hovered_6nwc9_30{stroke-width:48px;filter:brightness(1.1)}._status-chart__segment--dimmed_6nwc9_35{opacity:.6;filter:grayscale(.2)}._status-chart__hole_6nwc9_40{width:120px;height:120px;background-color:var(--surface);border-radius:50%;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset var(--shadow-sm);clip-path:circle(50%)}._status-chart__total-value_6nwc9_55{font-family:var(--font-clash);font-size:2rem;font-weight:600;line-height:1;color:var(--on-surface)}._status-chart__total-label_6nwc9_63{font-size:.75rem;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}._nameCell_1n6hv_4{display:flex;align-items:center;gap:.5rem}._favorite_1n6hv_10{margin-left:-.5rem}._nameWrapper_1n6hv_14{display:flex;flex-direction:column;overflow:hidden;min-width:0}._name_1n6hv_4{font-weight:500;color:var(--on-surface);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._secondary_1n6hv_31{font-size:.75rem;color:var(--on-surface-variant);margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._client_1n6hv_41{color:var(--on-surface-variant);font-size:.8125rem;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._dateMain_1n6hv_51{color:var(--on-surface);font-weight:500;font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._avatar_17ic7_3{width:1.5rem;height:1.5rem;border-radius:50%;background-color:var(--surface-variant);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:600;color:var(--on-surface);text-transform:uppercase}._avatar-group_17ic7_18{display:flex;align-items:center}._group-member_17ic7_23{margin-right:-.5rem;position:relative;z-index:1;border:2px solid var(--surface)}._group-member_17ic7_23:hover{z-index:10}._btn_7bh63_3{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);cursor:pointer;border:1px solid transparent}._btn_7bh63_3:focus-visible{outline:2px solid var(--primary);outline-offset:2px}._btn_7bh63_3:active{transform:scale(.98)}._btn--primary_7bh63_27{background:var(--gradient-header);color:#fff;padding:.5rem 1rem;box-shadow:var(--shadow-sm)}._btn--primary_7bh63_27:hover{box-shadow:var(--shadow-md);opacity:.9}._btn--outline_7bh63_39{background-color:transparent;border-color:var(--border);color:var(--on-surface);padding:.375rem .75rem;min-width:110px}._btn--outline_7bh63_39:hover{background-color:var(--surface-variant);color:var(--on-surface)}._btn--ghost_7bh63_52{background-color:transparent;color:var(--on-surface-variant);padding:.375rem}._btn--ghost_7bh63_52:hover{background-color:var(--surface-variant);color:var(--on-surface)}._btn--sm_7bh63_63{padding:.2rem .4rem;font-size:.75rem;min-width:auto!important}._badge_1e35x_3{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-grotesk);font-weight:800}._badge--high_1e35x_12{background-color:var(--error-variant);color:var(--error);border:1px solid color-mix(in srgb,var(--error),transparent 80%)}._badge--medium_1e35x_18{background-color:var(--color-warning-variant);color:var(--color-warning);border:1px solid color-mix(in srgb,var(--color-warning),transparent 80%)}._badge--low_1e35x_24{background-color:var(--surface-variant);color:var(--on-surface-variant);border:1px solid var(--border)}._badge--size-small_1e35x_30{width:1.5rem;height:1.5rem;border-radius:.375rem;font-size:.75rem}._badge--size-large_1e35x_37{width:2.25rem;height:2.25rem;border-radius:.5rem;font-size:1.125rem}._badge--size-large_1e35x_37._badge--low_1e35x_24{font-size:.875rem}._badge_1j9lv_3{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background-color:var(--surface-variant);border-radius:2rem;font-size:.8125rem;font-weight:500}._status-dropdown_15zae_3{position:relative;display:inline-block;width:88px}._status-trigger_15zae_9{width:100%!important;justify-content:space-between!important}._status-menu_15zae_14{position:absolute;top:100%;right:0;margin-top:.25rem;background-color:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);box-shadow:var(--shadow-lg);z-index:100;width:100%;min-width:88px;display:none;padding:.25rem;animation:_fadeIn_15zae_1 .15s ease-out}._status-menu_15zae_14._is-open_15zae_31{display:block}._status-menu-item_15zae_35{width:100%;padding:.5rem .75rem;font-size:.8125rem;text-align:left;background:none;border:none;cursor:pointer;border-radius:calc(var(--radius) - 4px);color:var(--on-surface);transition:background-color .1s}._status-menu-item_15zae_35:hover{background-color:var(--surface-variant)}._status-menu-item_15zae_35._is-active_15zae_52{font-weight:500}._icon_15zae_56{width:1rem;height:1rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}._icon-sm_15zae_65{width:.875rem;height:.875rem}@keyframes _fadeIn_15zae_1{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}._checklist_1iobh_3{gap:.5rem}._checkItem_1iobh_7{display:flex;align-items:center;gap:.5rem;font-size:.875rem;padding:0}._checkItem_1iobh_7 input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}._checkItem_1iobh_7 label{cursor:pointer}._checkItem_1iobh_7._is-done_1iobh_26 label{text-decoration:line-through;color:var(--on-surface-variant)}._checklist--readonly_1iobh_31 ._checkItem_1iobh_7 label{cursor:pointer}._checklist--readonly_1iobh_31 ._checkItem_1iobh_7 input[type=checkbox]{pointer-events:all}._formControl_1iobh_39{width:100%;padding:.125rem;border:none;background:transparent;color:var(--on-surface);font-family:inherit;font-size:.875rem;border-radius:calc(var(--radius) - 2px);transition:background-color .2s}._formControl_1iobh_39:focus{outline:none;background-color:var(--surface)}._is-done_1iobh_26 ._formControl_1iobh_39{text-decoration:line-through;color:var(--on-surface-variant)}._searchInput_16e7c_3{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border:1px solid var(--border);border-radius:1rem;background-color:var(--surface-variant);transition:border-color .15s ease,box-shadow .15s ease;min-width:200px}._searchInput_16e7c_3:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary),transparent 85%)}._icon_16e7c_20{width:14px;height:14px;color:var(--on-surface-variant);flex-shrink:0}._field_16e7c_27{border:none;background:none;font-family:var(--font-inter);font-size:.8125rem;color:var(--on-surface);outline:none;width:100%}._field_16e7c_27::placeholder{color:var(--on-surface-variant)}@media(max-width:1024px){._searchInput_16e7c_3{min-width:160px}}@media(max-width:640px){._searchInput_16e7c_3{flex:1;min-width:0}}._btn_6gx9b_3{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border:1px solid var(--border);background:none;border-radius:calc(var(--radius) - 2px);font-family:var(--font-inter);font-size:.6875rem;font-weight:500;color:var(--on-surface-variant);cursor:pointer;transition:all .15s ease}._btn_6gx9b_3:hover{border-color:color-mix(in srgb,var(--primary),transparent 60%);color:var(--primary);background-color:var(--primary-container)}._btn_6gx9b_3:focus-visible{outline:2px solid var(--primary);outline-offset:1px}._chevron_6gx9b_30{width:12px;height:12px;transition:transform .2s ease;flex-shrink:0}._btn--open_6gx9b_37 ._chevron_6gx9b_30{transform:rotate(180deg)}._circle_gvt69_3{position:relative;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}._svg_gvt69_12{width:100%;height:100%;transform:rotate(-90deg)}._track_gvt69_18{fill:none;stroke:var(--surface-variant);stroke-width:3}._fill_gvt69_24{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .4s ease}._label_gvt69_31{position:absolute;font-family:var(--font-grotesk);font-size:.5625rem;font-weight:600;color:var(--on-surface)}._bar_l0q8t_3{display:flex;align-items:center;gap:.5rem}._track_l0q8t_9{width:60px;height:4px;background-color:var(--surface-variant);border-radius:2px;overflow:hidden}._fill_l0q8t_17{height:100%;border-radius:2px;background:var(--gradient-primary)}._value_l0q8t_23{font-family:var(--font-grotesk);font-size:.75rem;font-weight:500;color:var(--on-surface-variant);min-width:28px}._empty_26icj_3{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center}._icon_26icj_12{width:48px;height:48px;color:var(--on-surface-light);margin-bottom:1rem}._title_26icj_19{font-family:var(--font-clash);font-size:1.125rem;font-weight:500;color:var(--on-surface);margin-bottom:.25rem}._text_26icj_27{font-size:.8125rem;color:var(--on-surface-variant)}._toggle_176y2_3{display:inline-flex;background-color:var(--surface-variant);border-radius:calc(var(--radius) - 2px);padding:3px;gap:2px}._btn_176y2_11{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:none;background:none;border-radius:calc(var(--radius) - 4px);font-family:var(--font-inter);font-size:.8125rem;font-weight:500;color:var(--on-surface-variant);cursor:pointer;transition:all .15s ease;white-space:nowrap}._btn_176y2_11:hover{color:var(--on-surface)}._btn_176y2_11:focus-visible{outline:2px solid var(--primary);outline-offset:1px}._btn--active_176y2_37{background-color:var(--surface);color:var(--on-surface);box-shadow:var(--shadow-sm)}._icon_176y2_43{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}._icon_176y2_43>svg{width:100%;height:100%}._dashboard_wq6z7_4{width:100%;display:grid;grid-template-columns:35% 65%;gap:1.5rem}@media(max-width:1024px){._dashboard_wq6z7_4{grid-template-columns:1fr}}._sectionTitle_wq6z7_18{font-family:var(--font-clash);font-size:1.5rem;font-weight:500;color:var(--on-surface);margin:0 0 1.5rem}._statusLegend_wq6z7_27{display:flex;flex-direction:column;gap:.75rem}._projectFilters_wq6z7_34{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:0 2.5%;flex-wrap:wrap;gap:1rem}._projectFilters_wq6z7_34 ._sectionTitle_wq6z7_18{margin-bottom:0}._projectFilters__search_wq6z7_48{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--surface-variant);font-family:var(--font-inter);font-size:.875rem;color:var(--on-surface);width:250px;transition:border-color .2s,box-shadow .2s}._projectFilters__search_wq6z7_48:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary),transparent 80%)}._taskItem_77jzk_4{display:grid;grid-template-columns:55% 15% 30%;align-items:center;gap:0;padding:.75rem 5%;font-family:var(--font-inter)}._taskItem__content_77jzk_14{display:flex;flex-direction:column;gap:.375rem;min-width:0}._taskItem__titleGroup_77jzk_21{display:flex;align-items:center;gap:.375rem;min-width:0}._taskItem__title_77jzk_21{color:var(--on-surface);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:500;line-height:1.25rem;font-family:var(--font-inter)}._taskItem__meta_77jzk_41{display:flex;align-items:center;gap:1.25rem;color:var(--on-surface-variant);font-size:.625rem;line-height:.875rem;font-family:var(--font-inter);min-width:0}._metaUser_77jzk_52{display:flex;align-items:center;flex-shrink:0}._metaProject_77jzk_58{display:flex;align-items:center;gap:.375rem;color:var(--on-surface-variant);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem;flex:0 1 auto}._metaProject_77jzk_58 ._icon-sm_77jzk_71{flex-shrink:0}._taskItem__deadline_77jzk_76{white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right;font-family:var(--font-grotesk);font-size:.75rem;line-height:1rem}._deadline-urgent_77jzk_85{color:var(--color-danger);font-weight:500}._deadline-normal_77jzk_90{color:var(--on-surface-variant)}._taskItem__actions_77jzk_95{display:flex;align-items:center;gap:.5rem;justify-content:flex-end}._icon-sm_77jzk_71{width:.875rem;height:.875rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}@media(max-width:640px){._taskItem_77jzk_4{grid-template-columns:1fr auto;grid-template-rows:auto auto;grid-template-areas:"content actions" "deadline actions";gap:.25rem .75rem}._taskItem__content_77jzk_14{grid-area:content}._taskItem__deadline_77jzk_76{grid-area:deadline;text-align:left}._taskItem__actions_77jzk_95{grid-area:actions;align-self:center}}._modal-overlay_m18cx_4{position:fixed;inset:0;background-color:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:50;opacity:0;pointer-events:none;transition:opacity .2s ease-out;padding:1rem}._modal-overlay_m18cx_4._is-active_m18cx_19{opacity:1;pointer-events:all}._modal-content_m18cx_25{background-color:var(--surface);color:var(--on-surface);font-family:var(--font-inter);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;transform:scale(.95) translateY(10px);transition:transform .2s ease-out;overflow:hidden}._modal-overlay_m18cx_4._is-active_m18cx_19 ._modal-content_m18cx_25{transform:scale(1) translateY(0)}._modal-header_m18cx_46{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}._modal-header-title_m18cx_55{margin:0;font-family:var(--font-clash);font-weight:500;font-size:1.25rem;line-height:1.75rem;color:var(--on-surface)}._modal-body_m18cx_65{padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}._modal-body_m18cx_65::-webkit-scrollbar{width:4px}._modal-body_m18cx_65::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:2px}._modal-footer_m18cx_84{padding:1rem 1.5rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:.5rem;background:var(--surface-hover);flex-shrink:0}._view-group_m18cx_95{display:flex;flex-direction:column;gap:.375rem}._view-label_m18cx_101{font-size:.625rem;line-height:.875rem;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-family:var(--font-inter)}._view-badge-row_m18cx_111{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-start}._view-task-title_m18cx_118{margin:0;font-family:var(--font-clash);font-weight:600;font-size:1.25rem;line-height:1.4;color:var(--on-surface)}._view-value-strong_m18cx_127{font-family:var(--font-grotesk);font-weight:500;font-size:.9375rem;color:var(--on-surface)}._view-description_m18cx_134{font-size:.875rem;line-height:1.6;margin:0;color:var(--on-surface);font-family:var(--font-inter)}._text-muted_m18cx_142{color:var(--on-surface-variant);font-style:italic}._form-group_m18cx_148{display:flex;flex-direction:column;gap:.5rem}._form-row_m18cx_154{display:grid;grid-template-columns:1fr 1fr;gap:1rem}._form-label_m18cx_160{font-size:.625rem;line-height:.875rem;font-weight:600;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-inter)}._form-control_m18cx_170{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background-color:var(--surface);color:var(--on-surface);font-family:var(--font-inter);font-size:.875rem;line-height:1.25rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;appearance:auto}._form-control_m18cx_170:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary),transparent 88%)}._textarea_m18cx_191{resize:vertical;min-height:80px}._icon_m18cx_197{width:1.25rem;height:1.25rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}._icon-pencil_m18cx_207{width:.875rem;height:.875rem;fill:currentColor}@media(max-width:640px){._form-row_m18cx_154{grid-template-columns:1fr}}:root{--surface: #ffffff;--surface-variant: #f0f1f2;--surface-hover: #f7f7f7;--border: #e0e4eb;--border-variant: rgba(0, 20, 41, .1);--on-surface: #001429;--on-surface-variant: #576472;--on-surface-light: #9aa2aa;--primary: #0073e6;--primary-variant: rgba(0, 115, 230, .07);--primary-container: rgba(0, 115, 230, .05);--error: #bd0c38;--error-variant: rgba(189, 12, 56, .07);--color-success: #1ec489;--color-success-dark: #148a5f;--color-success-variant: rgba(69, 220, 166, .2);--color-warning: #efaf55;--color-warning-dark: #b07a1e;--color-warning-variant: rgba(239, 175, 85, .25);--color-info: #8c46c4;--color-info-variant: rgba(169, 62, 255, .15);--color-danger: #f34e2a;--color-danger-variant: rgba(243, 78, 42, .2);--lifecycle-active: var(--color-success);--lifecycle-active-dark: var(--color-success-dark);--lifecycle-nrnd: var(--color-warning);--lifecycle-nrnd-dark: var(--color-warning-dark);--lifecycle-eol: var(--error);--lifecycle-production: var(--primary);--inventory-high: var(--color-success);--inventory-high-dark: var(--color-success-dark);--inventory-medium: var(--color-warning);--inventory-medium-dark: var(--color-warning-dark);--inventory-low: var(--error);--destructive: #bd0c38;--score-high: #1ec489;--score-medium: #efaf55;--score-low: #f34e2a;--sidebar-background: #ffffff;--sidebar-foreground: #001429;--sidebar-primary: #0073e6;--sidebar-accent: #f0f1f2;--sidebar-border: #e0e4eb;--status-alle: #576472;--status-neu: #0073e6;--status-offen: #efaf55;--status-in-prufung: #f34e2a;--status-validierung: #1ec489;--status-abgeschlossen: #1ec489;--radius: .5rem;--font-inter: "Inter", sans-serif;--font-clash: "Clash Grotesk", sans-serif;--font-grotesk: "Space Grotesk", sans-serif;--shadow-sm: 0 1px 2px 0 rgba(0, 20, 41, .04);--shadow-md: 0 4px 6px -1px rgba(0, 20, 41, .08);--shadow-lg: 0 10px 15px -3px rgba(0, 20, 41, .1);--shadow-card: 0 2px 8px rgba(0, 20, 41, .06);--gradient-primary: linear-gradient(135deg, #0073e6, #0053a3);--gradient-header: linear-gradient(135deg, #0053a3, #0073e6)}@media(prefers-color-scheme:dark){:root{--surface: #000000;--surface-variant: #18191b;--surface-hover: #0d0d0d;--border: #14181f;--border-variant: rgba(255, 255, 255, .1);--on-surface: #ffffff;--on-surface-variant: #9aa2aa;--on-surface-light: #576472;--primary: #0073e6;--primary-variant: rgba(0, 115, 230, .07);--primary-container: rgba(0, 115, 230, .05);--error: #bd0c38;--error-variant: rgba(189, 12, 56, .07);--color-success: #1ec489;--color-success-variant: rgba(69, 220, 166, .2);--color-warning: #efaf55;--color-warning-variant: rgba(239, 175, 85, .25);--color-info: #8c46c4;--color-info-variant: rgba(169, 62, 255, .15);--color-danger: #f34e2a;--color-danger-variant: rgba(243, 78, 42, .2);--sidebar-background: #000000;--sidebar-foreground: #ffffff;--sidebar-primary: #0073e6;--sidebar-accent: #18191b;--sidebar-border: #14181f;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-card: 0 2px 8px rgba(0, 0, 0, .3)}}._icon_1rthp_4{width:1rem;height:1rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}._icon-sm_1rthp_14{width:.875rem;height:.875rem}')),document.head.appendChild(r)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
- import { jsx as e, jsxs as c, Fragment as Le } from "react/jsx-runtime";
3
- import p, { useCallback as ze, useState as A, useRef as Re, useEffect as le, useMemo as Z } from "react";
1
+ (function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode('._tableContainer_133qi_4{overflow-x:auto}._table_133qi_4{width:100%;border-collapse:separate;border-spacing:0;text-align:left;table-layout:fixed}._table__head_133qi_18 th{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-variant);padding:.625rem 1rem;border-bottom:1px solid var(--border);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}._table__head_133qi_18 th._sortable_133qi_32{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}._table__head_133qi_18 th._sortable_133qi_32:hover{color:var(--on-surface)}._table__head_133qi_18 th:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}._sortIndicator_133qi_48{display:inline-flex;margin-left:.25rem;opacity:.4;vertical-align:middle}._table__head_133qi_18 th[aria-sort] ._sortIndicator_133qi_48{opacity:1;color:var(--primary)}._colResizeHandle_133qi_61{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:5;background:transparent}._colResizeHandle_133qi_61:hover{background-color:var(--primary);opacity:.4}._table--resizing_133qi_77{cursor:col-resize;-webkit-user-select:none;user-select:none}._table--resizing_133qi_77 *{cursor:col-resize!important}._table__row_133qi_87{transition:background-color .1s ease}._table__row_133qi_87:hover{background-color:var(--surface-hover)}._table__row_133qi_87 td{padding:.75rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle;overflow:hidden;text-overflow:ellipsis}._table__row_133qi_87:last-child td{border-bottom:none}._table__row--animated_133qi_108{animation:_fadeInRow_133qi_1 .2s ease both}@keyframes _fadeInRow_133qi_1{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){._table__row--animated_133qi_108{animation:none}}@media(max-width:1024px){._col-hide-tablet_133qi_131{display:none}}@media(max-width:640px){._col-hide-mobile_133qi_137{display:none}}._widgetCard_gx9fj_4{background-color:var(--surface);color:var(--on-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);display:flex;flex-direction:column;height:100%;overflow:hidden;font-family:var(--font-inter);animation:_fadeIn_gx9fj_1 .4s ease-out}._widgetCard--half_gx9fj_18{max-width:520px}._widgetCard__header_gx9fj_23{display:flex;justify-content:space-between;align-items:center;padding:1rem 5%;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}._widgetCard--full_gx9fj_33 ._widgetCard__header_gx9fj_23{padding:1.5rem 2.5%}._widgetCard__title_gx9fj_37{margin:0;font-family:var(--font-clash);font-size:1.25rem;font-weight:500;line-height:1.3;color:var(--on-surface);letter-spacing:-.02em}._widgetCard--full_gx9fj_33 ._widgetCard__title_gx9fj_37{font-size:1.5rem}._widgetCard__content_gx9fj_52{flex:1 1 0}._widgetCard__content--scrollable_gx9fj_56{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}._widgetCard__content--scrollable_gx9fj_56::-webkit-scrollbar{width:4px}._widgetCard__content--scrollable_gx9fj_56::-webkit-scrollbar-track{background:transparent}._widgetCard__content--scrollable_gx9fj_56::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:2px}._widgetCard__content--padded_gx9fj_76{padding:1rem 5%}._widgetCard--full_gx9fj_33 ._widgetCard__content--padded_gx9fj_76{padding:1.5rem 2.5%}@keyframes _fadeIn_gx9fj_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){._widgetCard_gx9fj_4{animation:none}}._dataCard_19cka_3{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;transition:box-shadow .15s ease,border-color .15s ease;display:flex;flex-direction:column;gap:.75rem}._dataCard_19cka_3:hover{box-shadow:var(--shadow-md)}._dataCard--clickable_19cka_18{cursor:pointer}._dataCard--clickable_19cka_18:focus-visible{outline:2px solid var(--primary);outline-offset:2px}._baseList_47qml_3{display:flex;flex-direction:column}._baseList--scrollable_47qml_8{overflow-y:auto;flex:1 1 0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}._baseList--scrollable_47qml_8::-webkit-scrollbar{width:4px}._baseList--scrollable_47qml_8::-webkit-scrollbar-track{background:transparent}._baseList--scrollable_47qml_8::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:2px}._listItem_1ssj2_3{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);transition:background-color .1s ease;font-family:var(--font-inter)}._listItem_1ssj2_3:last-child{border-bottom:none}._listItem_1ssj2_3:hover{background-color:var(--surface-hover)}._listItem--clickable_1ssj2_21{cursor:pointer}._listItem_1ssj2_3:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}._listItem__leading_1ssj2_31{flex-shrink:0;display:flex;align-items:center}._listItem__content_1ssj2_37{flex:1;min-width:0}._listItem__trailing_1ssj2_42{flex-shrink:0;display:flex;align-items:center;gap:.5rem}@media(max-width:640px){._listItem_1ssj2_3{flex-wrap:wrap;gap:.5rem}}._status-badge_c7rzu_3{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:1rem;font-size:.75rem;font-weight:500;line-height:1;color:var(--custom-color, var(--current-color));background-color:var(--custom-bg, var(--current-bg));white-space:nowrap}._status-badge_c7rzu_3:before{content:"";display:block;width:6px;height:6px;border-radius:50%;background-color:var(--custom-color, var(--current-color))}._status-badge--neu_c7rzu_26{--current-color: var(--status-neu);--current-bg: color-mix(in srgb, var(--status-neu), transparent 90%)}._status-badge--offen_c7rzu_31{--current-color: var(--status-offen);--current-bg: color-mix(in srgb, var(--status-offen), transparent 90%)}._status-badge--in-prufung_c7rzu_36{--current-color: var(--status-in-prufung);--current-bg: color-mix(in srgb, var(--status-in-prufung), transparent 90%)}._status-badge--validierung_c7rzu_41{--current-color: var(--status-validierung);--current-bg: color-mix(in srgb, var(--status-validierung), transparent 90%)}._status-badge--abgeschlossen_c7rzu_46{--current-color: var(--status-abgeschlossen);--current-bg: color-mix(in srgb, var(--status-abgeschlossen), transparent 90%)}._favorite-btn_1fvb2_3{background:none;border:none;color:var(--custom-color, var(--on-surface-light));cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.375rem;border-radius:var(--radius);transition:all .2s ease}._favorite-btn_1fvb2_3:hover,._favorite-btn_1fvb2_3:focus-visible{background-color:var(--surface-variant);color:var(--custom-active-color, var(--color-warning));outline:none}._favorite-btn--active_1fvb2_23{color:var(--custom-active-color, var(--color-warning))}._favorite-btn--md_1fvb2_28{padding:.375rem}._favorite-btn--md_1fvb2_28 svg{width:18px;height:18px;fill:currentColor}._favorite-btn--sm_1fvb2_39{padding:.25rem}._favorite-btn--sm_1fvb2_39 svg{width:16px;height:16px;fill:currentColor}._status-legend__item_1xv4z_3{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:background-color .2s ease;border:1px solid transparent;background:none;width:100%}._status-legend__item_1xv4z_3:hover,._status-legend__item_1xv4z_3:focus-visible{background-color:var(--surface-variant);outline:none}._status-legend__item--active_1xv4z_22{background-color:var(--surface-variant);border-color:var(--border)}._status-legend__label-wrap_1xv4z_27{display:flex;align-items:center;gap:.5rem}._status-legend__color_1xv4z_33{width:12px;height:12px;border-radius:50%;flex-shrink:0;background-color:var(--custom-color, var(--current-color))}._status-legend__label_1xv4z_27{font-size:.875rem;color:var(--on-surface);font-weight:500}._status-legend__count_1xv4z_47{font-family:var(--font-grotesk);font-size:.875rem;color:var(--on-surface-variant);font-weight:600;background-color:var(--surface-variant);padding:.125rem .5rem;border-radius:1rem}._color-neu_1xv4z_57{--current-color: var(--status-neu)}._color-offen_1xv4z_61{--current-color: var(--status-offen)}._color-in-prufung_1xv4z_65{--current-color: var(--status-in-prufung)}._color-validierung_1xv4z_69{--current-color: var(--status-validierung)}._color-abgeschlossen_1xv4z_73{--current-color: var(--status-abgeschlossen)}._color-alle_1xv4z_77{--current-color: var(--status-alle)}._status-overview__chart-container_6nwc9_3{position:relative;width:200px;height:200px;margin:1rem auto 2rem;display:flex;align-items:center;justify-content:center}._status-chart-svg_6nwc9_13{width:100%;height:100%;position:absolute;top:0;left:0;filter:drop-shadow(var(--shadow-sm));pointer-events:none}._status-chart__segment_6nwc9_23{transition:all .3s cubic-bezier(.4,0,.2,1);stroke-linecap:butt;pointer-events:stroke}._status-chart__segment_6nwc9_23:hover,._status-chart__segment--hovered_6nwc9_30{stroke-width:48px;filter:brightness(1.1)}._status-chart__segment--dimmed_6nwc9_35{opacity:.6;filter:grayscale(.2)}._status-chart__hole_6nwc9_40{width:120px;height:120px;background-color:var(--surface);border-radius:50%;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset var(--shadow-sm);clip-path:circle(50%)}._status-chart__total-value_6nwc9_55{font-family:var(--font-clash);font-size:2rem;font-weight:600;line-height:1;color:var(--on-surface)}._status-chart__total-label_6nwc9_63{font-size:.75rem;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}._nameCell_1n6hv_4{display:flex;align-items:center;gap:.5rem}._favorite_1n6hv_10{margin-left:-.5rem}._nameWrapper_1n6hv_14{display:flex;flex-direction:column;overflow:hidden;min-width:0}._name_1n6hv_4{font-weight:500;color:var(--on-surface);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._secondary_1n6hv_31{font-size:.75rem;color:var(--on-surface-variant);margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._client_1n6hv_41{color:var(--on-surface-variant);font-size:.8125rem;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._dateMain_1n6hv_51{color:var(--on-surface);font-weight:500;font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._avatar_17ic7_3{width:1.5rem;height:1.5rem;border-radius:50%;background-color:var(--surface-variant);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:600;color:var(--on-surface);text-transform:uppercase}._avatar-group_17ic7_18{display:flex;align-items:center}._group-member_17ic7_23{margin-right:-.5rem;position:relative;z-index:1;border:2px solid var(--surface)}._group-member_17ic7_23:hover{z-index:10}._btn_7bh63_3{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);cursor:pointer;border:1px solid transparent}._btn_7bh63_3:focus-visible{outline:2px solid var(--primary);outline-offset:2px}._btn_7bh63_3:active{transform:scale(.98)}._btn--primary_7bh63_27{background:var(--gradient-header);color:#fff;padding:.5rem 1rem;box-shadow:var(--shadow-sm)}._btn--primary_7bh63_27:hover{box-shadow:var(--shadow-md);opacity:.9}._btn--outline_7bh63_39{background-color:transparent;border-color:var(--border);color:var(--on-surface);padding:.375rem .75rem;min-width:110px}._btn--outline_7bh63_39:hover{background-color:var(--surface-variant);color:var(--on-surface)}._btn--ghost_7bh63_52{background-color:transparent;color:var(--on-surface-variant);padding:.375rem}._btn--ghost_7bh63_52:hover{background-color:var(--surface-variant);color:var(--on-surface)}._btn--sm_7bh63_63{padding:.2rem .4rem;font-size:.75rem;min-width:auto!important}._badge_1e35x_3{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-grotesk);font-weight:800}._badge--high_1e35x_12{background-color:var(--error-variant);color:var(--error);border:1px solid color-mix(in srgb,var(--error),transparent 80%)}._badge--medium_1e35x_18{background-color:var(--color-warning-variant);color:var(--color-warning);border:1px solid color-mix(in srgb,var(--color-warning),transparent 80%)}._badge--low_1e35x_24{background-color:var(--surface-variant);color:var(--on-surface-variant);border:1px solid var(--border)}._badge--size-small_1e35x_30{width:1.5rem;height:1.5rem;border-radius:.375rem;font-size:.75rem}._badge--size-large_1e35x_37{width:2.25rem;height:2.25rem;border-radius:.5rem;font-size:1.125rem}._badge--size-large_1e35x_37._badge--low_1e35x_24{font-size:.875rem}._badge_1j9lv_3{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background-color:var(--surface-variant);border-radius:2rem;font-size:.8125rem;font-weight:500}._status-dropdown_15zae_3{position:relative;display:inline-block;width:88px}._status-trigger_15zae_9{width:100%!important;justify-content:space-between!important}._status-menu_15zae_14{position:absolute;top:100%;right:0;margin-top:.25rem;background-color:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);box-shadow:var(--shadow-lg);z-index:100;width:100%;min-width:88px;display:none;padding:.25rem;animation:_fadeIn_15zae_1 .15s ease-out}._status-menu_15zae_14._is-open_15zae_31{display:block}._status-menu-item_15zae_35{width:100%;padding:.5rem .75rem;font-size:.8125rem;text-align:left;background:none;border:none;cursor:pointer;border-radius:calc(var(--radius) - 4px);color:var(--on-surface);transition:background-color .1s}._status-menu-item_15zae_35:hover{background-color:var(--surface-variant)}._status-menu-item_15zae_35._is-active_15zae_52{font-weight:500}._icon_15zae_56{width:1rem;height:1rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}._icon-sm_15zae_65{width:.875rem;height:.875rem}@keyframes _fadeIn_15zae_1{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}._checklist_1iobh_3{gap:.5rem}._checkItem_1iobh_7{display:flex;align-items:center;gap:.5rem;font-size:.875rem;padding:0}._checkItem_1iobh_7 input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}._checkItem_1iobh_7 label{cursor:pointer}._checkItem_1iobh_7._is-done_1iobh_26 label{text-decoration:line-through;color:var(--on-surface-variant)}._checklist--readonly_1iobh_31 ._checkItem_1iobh_7 label{cursor:pointer}._checklist--readonly_1iobh_31 ._checkItem_1iobh_7 input[type=checkbox]{pointer-events:all}._formControl_1iobh_39{width:100%;padding:.125rem;border:none;background:transparent;color:var(--on-surface);font-family:inherit;font-size:.875rem;border-radius:calc(var(--radius) - 2px);transition:background-color .2s}._formControl_1iobh_39:focus{outline:none;background-color:var(--surface)}._is-done_1iobh_26 ._formControl_1iobh_39{text-decoration:line-through;color:var(--on-surface-variant)}._searchInput_16e7c_3{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border:1px solid var(--border);border-radius:1rem;background-color:var(--surface-variant);transition:border-color .15s ease,box-shadow .15s ease;min-width:200px}._searchInput_16e7c_3:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary),transparent 85%)}._icon_16e7c_20{width:14px;height:14px;color:var(--on-surface-variant);flex-shrink:0}._field_16e7c_27{border:none;background:none;font-family:var(--font-inter);font-size:.8125rem;color:var(--on-surface);outline:none;width:100%}._field_16e7c_27::placeholder{color:var(--on-surface-variant)}@media(max-width:1024px){._searchInput_16e7c_3{min-width:160px}}@media(max-width:640px){._searchInput_16e7c_3{flex:1;min-width:0}}._btn_6gx9b_3{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border:1px solid var(--border);background:none;border-radius:calc(var(--radius) - 2px);font-family:var(--font-inter);font-size:.6875rem;font-weight:500;color:var(--on-surface-variant);cursor:pointer;transition:all .15s ease}._btn_6gx9b_3:hover{border-color:color-mix(in srgb,var(--primary),transparent 60%);color:var(--primary);background-color:var(--primary-container)}._btn_6gx9b_3:focus-visible{outline:2px solid var(--primary);outline-offset:1px}._chevron_6gx9b_30{width:12px;height:12px;transition:transform .2s ease;flex-shrink:0}._btn--open_6gx9b_37 ._chevron_6gx9b_30{transform:rotate(180deg)}._circle_gvt69_3{position:relative;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}._svg_gvt69_12{width:100%;height:100%;transform:rotate(-90deg)}._track_gvt69_18{fill:none;stroke:var(--surface-variant);stroke-width:3}._fill_gvt69_24{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .4s ease}._label_gvt69_31{position:absolute;font-family:var(--font-grotesk);font-size:.5625rem;font-weight:600;color:var(--on-surface)}._bar_l0q8t_3{display:flex;align-items:center;gap:.5rem}._track_l0q8t_9{width:60px;height:4px;background-color:var(--surface-variant);border-radius:2px;overflow:hidden}._fill_l0q8t_17{height:100%;border-radius:2px;background:var(--gradient-primary)}._value_l0q8t_23{font-family:var(--font-grotesk);font-size:.75rem;font-weight:500;color:var(--on-surface-variant);min-width:28px}._empty_26icj_3{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center}._icon_26icj_12{width:48px;height:48px;color:var(--on-surface-light);margin-bottom:1rem}._title_26icj_19{font-family:var(--font-clash);font-size:1.125rem;font-weight:500;color:var(--on-surface);margin-bottom:.25rem}._text_26icj_27{font-size:.8125rem;color:var(--on-surface-variant)}._toggle_176y2_3{display:inline-flex;background-color:var(--surface-variant);border-radius:calc(var(--radius) - 2px);padding:3px;gap:2px}._btn_176y2_11{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:none;background:none;border-radius:calc(var(--radius) - 4px);font-family:var(--font-inter);font-size:.8125rem;font-weight:500;color:var(--on-surface-variant);cursor:pointer;transition:all .15s ease;white-space:nowrap}._btn_176y2_11:hover{color:var(--on-surface)}._btn_176y2_11:focus-visible{outline:2px solid var(--primary);outline-offset:1px}._btn--active_176y2_37{background-color:var(--surface);color:var(--on-surface);box-shadow:var(--shadow-sm)}._icon_176y2_43{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}._icon_176y2_43>svg{width:100%;height:100%}._dashboard_avuww_4{width:100%;display:grid;grid-template-columns:minmax(280px,25%) 1fr;gap:1.5rem}@media(max-width:1024px){._dashboard_avuww_4{grid-template-columns:1fr}}._sectionTitle_avuww_18{font-family:var(--font-clash);font-size:1.5rem;font-weight:500;color:var(--on-surface);margin:0 0 1.5rem}._statusLegend_avuww_27{display:flex;flex-direction:column;gap:.75rem}._projectList_avuww_34 th:first-child,._projectList_avuww_34 td:first-child{padding-left:2.5%}._projectList_avuww_34 th:last-child,._projectList_avuww_34 td:last-child{padding-right:2.5%}._taskItem_77jzk_4{display:grid;grid-template-columns:55% 15% 30%;align-items:center;gap:0;padding:.75rem 5%;font-family:var(--font-inter)}._taskItem__content_77jzk_14{display:flex;flex-direction:column;gap:.375rem;min-width:0}._taskItem__titleGroup_77jzk_21{display:flex;align-items:center;gap:.375rem;min-width:0}._taskItem__title_77jzk_21{color:var(--on-surface);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:500;line-height:1.25rem;font-family:var(--font-inter)}._taskItem__meta_77jzk_41{display:flex;align-items:center;gap:1.25rem;color:var(--on-surface-variant);font-size:.625rem;line-height:.875rem;font-family:var(--font-inter);min-width:0}._metaUser_77jzk_52{display:flex;align-items:center;flex-shrink:0}._metaProject_77jzk_58{display:flex;align-items:center;gap:.375rem;color:var(--on-surface-variant);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem;flex:0 1 auto}._metaProject_77jzk_58 ._icon-sm_77jzk_71{flex-shrink:0}._taskItem__deadline_77jzk_76{white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right;font-family:var(--font-grotesk);font-size:.75rem;line-height:1rem}._deadline-urgent_77jzk_85{color:var(--color-danger);font-weight:500}._deadline-normal_77jzk_90{color:var(--on-surface-variant)}._taskItem__actions_77jzk_95{display:flex;align-items:center;gap:.5rem;justify-content:flex-end}._icon-sm_77jzk_71{width:.875rem;height:.875rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}@media(max-width:640px){._taskItem_77jzk_4{grid-template-columns:1fr auto;grid-template-rows:auto auto;grid-template-areas:"content actions" "deadline actions";gap:.25rem .75rem}._taskItem__content_77jzk_14{grid-area:content}._taskItem__deadline_77jzk_76{grid-area:deadline;text-align:left}._taskItem__actions_77jzk_95{grid-area:actions;align-self:center}}._modal-overlay_m18cx_4{position:fixed;inset:0;background-color:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:50;opacity:0;pointer-events:none;transition:opacity .2s ease-out;padding:1rem}._modal-overlay_m18cx_4._is-active_m18cx_19{opacity:1;pointer-events:all}._modal-content_m18cx_25{background-color:var(--surface);color:var(--on-surface);font-family:var(--font-inter);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;transform:scale(.95) translateY(10px);transition:transform .2s ease-out;overflow:hidden}._modal-overlay_m18cx_4._is-active_m18cx_19 ._modal-content_m18cx_25{transform:scale(1) translateY(0)}._modal-header_m18cx_46{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}._modal-header-title_m18cx_55{margin:0;font-family:var(--font-clash);font-weight:500;font-size:1.25rem;line-height:1.75rem;color:var(--on-surface)}._modal-body_m18cx_65{padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}._modal-body_m18cx_65::-webkit-scrollbar{width:4px}._modal-body_m18cx_65::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:2px}._modal-footer_m18cx_84{padding:1rem 1.5rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:.5rem;background:var(--surface-hover);flex-shrink:0}._view-group_m18cx_95{display:flex;flex-direction:column;gap:.375rem}._view-label_m18cx_101{font-size:.625rem;line-height:.875rem;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-family:var(--font-inter)}._view-badge-row_m18cx_111{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-start}._view-task-title_m18cx_118{margin:0;font-family:var(--font-clash);font-weight:600;font-size:1.25rem;line-height:1.4;color:var(--on-surface)}._view-value-strong_m18cx_127{font-family:var(--font-grotesk);font-weight:500;font-size:.9375rem;color:var(--on-surface)}._view-description_m18cx_134{font-size:.875rem;line-height:1.6;margin:0;color:var(--on-surface);font-family:var(--font-inter)}._text-muted_m18cx_142{color:var(--on-surface-variant);font-style:italic}._form-group_m18cx_148{display:flex;flex-direction:column;gap:.5rem}._form-row_m18cx_154{display:grid;grid-template-columns:1fr 1fr;gap:1rem}._form-label_m18cx_160{font-size:.625rem;line-height:.875rem;font-weight:600;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-inter)}._form-control_m18cx_170{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background-color:var(--surface);color:var(--on-surface);font-family:var(--font-inter);font-size:.875rem;line-height:1.25rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;appearance:auto}._form-control_m18cx_170:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary),transparent 88%)}._textarea_m18cx_191{resize:vertical;min-height:80px}._icon_m18cx_197{width:1.25rem;height:1.25rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}._icon-pencil_m18cx_207{width:.875rem;height:.875rem;fill:currentColor}@media(max-width:640px){._form-row_m18cx_154{grid-template-columns:1fr}}:root{--surface: #ffffff;--surface-variant: #f0f1f2;--surface-hover: #f7f7f7;--border: #e0e4eb;--border-variant: rgba(0, 20, 41, .1);--on-surface: #001429;--on-surface-variant: #576472;--on-surface-light: #9aa2aa;--primary: #0073e6;--primary-variant: rgba(0, 115, 230, .07);--primary-container: rgba(0, 115, 230, .05);--error: #bd0c38;--error-variant: rgba(189, 12, 56, .07);--color-success: #1ec489;--color-success-dark: #148a5f;--color-success-variant: rgba(69, 220, 166, .2);--color-warning: #efaf55;--color-warning-dark: #b07a1e;--color-warning-variant: rgba(239, 175, 85, .25);--color-info: #8c46c4;--color-info-variant: rgba(169, 62, 255, .15);--color-danger: #f34e2a;--color-danger-variant: rgba(243, 78, 42, .2);--lifecycle-active: var(--color-success);--lifecycle-active-dark: var(--color-success-dark);--lifecycle-nrnd: var(--color-warning);--lifecycle-nrnd-dark: var(--color-warning-dark);--lifecycle-eol: var(--error);--lifecycle-production: var(--primary);--inventory-high: var(--color-success);--inventory-high-dark: var(--color-success-dark);--inventory-medium: var(--color-warning);--inventory-medium-dark: var(--color-warning-dark);--inventory-low: var(--error);--destructive: #bd0c38;--score-high: #1ec489;--score-medium: #efaf55;--score-low: #f34e2a;--sidebar-background: #ffffff;--sidebar-foreground: #001429;--sidebar-primary: #0073e6;--sidebar-accent: #f0f1f2;--sidebar-border: #e0e4eb;--status-alle: #576472;--status-neu: #0073e6;--status-offen: #efaf55;--status-in-prufung: #f34e2a;--status-validierung: #1ec489;--status-abgeschlossen: #1ec489;--radius: .5rem;--font-inter: "Inter", sans-serif;--font-clash: "Clash Grotesk", sans-serif;--font-grotesk: "Space Grotesk", sans-serif;--shadow-sm: 0 1px 2px 0 rgba(0, 20, 41, .04);--shadow-md: 0 4px 6px -1px rgba(0, 20, 41, .08);--shadow-lg: 0 10px 15px -3px rgba(0, 20, 41, .1);--shadow-card: 0 2px 8px rgba(0, 20, 41, .06);--gradient-primary: linear-gradient(135deg, #0073e6, #0053a3);--gradient-header: linear-gradient(135deg, #0053a3, #0073e6)}@media(prefers-color-scheme:dark){:root{--surface: #000000;--surface-variant: #18191b;--surface-hover: #0d0d0d;--border: #14181f;--border-variant: rgba(255, 255, 255, .1);--on-surface: #ffffff;--on-surface-variant: #9aa2aa;--on-surface-light: #576472;--primary: #0073e6;--primary-variant: rgba(0, 115, 230, .07);--primary-container: rgba(0, 115, 230, .05);--error: #bd0c38;--error-variant: rgba(189, 12, 56, .07);--color-success: #1ec489;--color-success-variant: rgba(69, 220, 166, .2);--color-warning: #efaf55;--color-warning-variant: rgba(239, 175, 85, .25);--color-info: #8c46c4;--color-info-variant: rgba(169, 62, 255, .15);--color-danger: #f34e2a;--color-danger-variant: rgba(243, 78, 42, .2);--sidebar-background: #000000;--sidebar-foreground: #ffffff;--sidebar-primary: #0073e6;--sidebar-accent: #18191b;--sidebar-border: #14181f;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-card: 0 2px 8px rgba(0, 0, 0, .3)}}._icon_1rthp_4{width:1rem;height:1rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}._icon-sm_1rthp_14{width:.875rem;height:.875rem}')),document.head.appendChild(r)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
+ import { jsx as e, jsxs as c, Fragment as Re } from "react/jsx-runtime";
3
+ import p, { useCallback as Pe, useState as j, useRef as Te, useEffect as le, useMemo as Z } from "react";
4
4
  function pe(t) {
5
5
  var a, n, r = "";
6
6
  if (typeof t == "string" || typeof t == "number") r += t;
@@ -14,20 +14,20 @@ function g() {
14
14
  for (var t, a, n = 0, r = "", i = arguments.length; n < i; n++) (t = arguments[n]) && (a = pe(t)) && (r && (r += " "), r += a);
15
15
  return r;
16
16
  }
17
- const Te = "_tableContainer_133qi_4", De = "_table_133qi_4", Pe = "_table__head_133qi_18", Me = "_sortable_133qi_32", Ee = "_sortIndicator_133qi_48", Be = "_colResizeHandle_133qi_61", Fe = "_table__row_133qi_87", j = {
18
- tableContainer: Te,
19
- table: De,
20
- table__head: Pe,
21
- sortable: Me,
22
- sortIndicator: Ee,
23
- colResizeHandle: Be,
17
+ const De = "_tableContainer_133qi_4", Me = "_table_133qi_4", Ee = "_table__head_133qi_18", Be = "_sortable_133qi_32", Fe = "_sortIndicator_133qi_48", Oe = "_colResizeHandle_133qi_61", We = "_table__row_133qi_87", $ = {
18
+ tableContainer: De,
19
+ table: Me,
20
+ table__head: Ee,
21
+ sortable: Be,
22
+ sortIndicator: Fe,
23
+ colResizeHandle: Oe,
24
24
  "table--resizing": "_table--resizing_133qi_77",
25
- table__row: Fe,
25
+ table__row: We,
26
26
  "table__row--animated": "_table__row--animated_133qi_108",
27
27
  "col-hide-tablet": "_col-hide-tablet_133qi_131",
28
28
  "col-hide-mobile": "_col-hide-mobile_133qi_137"
29
29
  };
30
- function Oe({
30
+ function Ve({
31
31
  columns: t,
32
32
  rows: a,
33
33
  rowKey: n,
@@ -46,47 +46,47 @@ function Oe({
46
46
  className: k,
47
47
  ...v
48
48
  }, y) {
49
- const b = ze(
49
+ const b = Pe(
50
50
  (s, N, I) => {
51
- const L = N.offsetWidth, F = N.closest("table"), S = (Q) => {
52
- const Ae = Q.clientX - I, J = Math.max(60, L + Ae);
51
+ const L = N.offsetWidth, B = N.closest("table"), S = (Q) => {
52
+ const ze = Q.clientX - I, J = Math.max(60, L + ze);
53
53
  N.style.width = `${J}px`, N.style.minWidth = `${J}px`, m?.(s, J);
54
54
  }, z = () => {
55
- F?.classList.remove(j["table--resizing"]), document.removeEventListener("mousemove", S), document.removeEventListener("mouseup", z);
55
+ B?.classList.remove($["table--resizing"]), document.removeEventListener("mousemove", S), document.removeEventListener("mouseup", z);
56
56
  };
57
- F?.classList.add(j["table--resizing"]), document.addEventListener("mousemove", S), document.addEventListener("mouseup", z);
57
+ B?.classList.add($["table--resizing"]), document.addEventListener("mousemove", S), document.addEventListener("mouseup", z);
58
58
  },
59
59
  [m]
60
60
  );
61
- return /* @__PURE__ */ e("div", { ref: y, className: g(j.tableContainer, k), tabIndex: 0, ...v, children: /* @__PURE__ */ c("table", { className: j.table, "aria-label": f, children: [
62
- /* @__PURE__ */ e("thead", { className: j.table__head, children: /* @__PURE__ */ e("tr", { children: t.map((s) => {
61
+ return /* @__PURE__ */ e("div", { ref: y, className: g($.tableContainer, k), tabIndex: 0, ...v, children: /* @__PURE__ */ c("table", { className: $.table, "aria-label": f, children: [
62
+ /* @__PURE__ */ e("thead", { className: $.table__head, children: /* @__PURE__ */ e("tr", { children: t.map((s) => {
63
63
  const N = g({
64
- [j["col-hide-tablet"]]: s.hideTablet,
65
- [j["col-hide-mobile"]]: s.hideMobile
66
- }), I = _[s.key] ? { width: `${_[s.key]}px`, minWidth: `${_[s.key]}px` } : s.width != null ? { width: typeof s.width == "number" ? `${s.width}px` : s.width, minWidth: typeof s.width == "number" ? `${s.width}px` : s.width } : void 0, L = i === s.key, F = L ? u === "asc" ? "ascending" : "descending" : void 0;
64
+ [$["col-hide-tablet"]]: s.hideTablet,
65
+ [$["col-hide-mobile"]]: s.hideMobile
66
+ }), I = _[s.key] ? { width: `${_[s.key]}px`, minWidth: `${_[s.key]}px` } : s.width != null ? { width: typeof s.width == "number" ? `${s.width}px` : s.width, minWidth: typeof s.width == "number" ? `${s.width}px` : s.width } : void 0, L = i === s.key, B = L ? u === "asc" ? "ascending" : "descending" : void 0;
67
67
  return /* @__PURE__ */ c(
68
68
  "th",
69
69
  {
70
70
  scope: "col",
71
- className: g(N || void 0, { [j.sortable]: s.sortable }),
71
+ className: g(N || void 0, { [$.sortable]: s.sortable }),
72
72
  style: I,
73
- "aria-sort": F,
73
+ "aria-sort": B,
74
74
  tabIndex: s.sortable ? 0 : void 0,
75
75
  onClick: (S) => {
76
- h && S.target.closest(`.${j.colResizeHandle}`) || s.sortable && l && l(s.key);
76
+ h && S.target.closest(`.${$.colResizeHandle}`) || s.sortable && l && l(s.key);
77
77
  },
78
78
  onKeyDown: (S) => {
79
79
  (S.key === "Enter" || S.key === " ") && s.sortable && l && (S.preventDefault(), l(s.key));
80
80
  },
81
81
  children: [
82
- s.headerContent != null ? s.headerContent : /* @__PURE__ */ c(Le, { children: [
82
+ s.headerContent != null ? s.headerContent : /* @__PURE__ */ c(Re, { children: [
83
83
  s.label,
84
- s.sortable && /* @__PURE__ */ e("span", { className: j.sortIndicator, "aria-hidden": "true", children: L ? u === "asc" ? "↑" : "↓" : "↕" })
84
+ s.sortable && /* @__PURE__ */ e("span", { className: $.sortIndicator, "aria-hidden": "true", children: L ? u === "asc" ? "↑" : "↓" : "↕" })
85
85
  ] }),
86
86
  h && /* @__PURE__ */ e(
87
87
  "span",
88
88
  {
89
- className: j.colResizeHandle,
89
+ className: $.colResizeHandle,
90
90
  "data-resize-col": s.key,
91
91
  onMouseDown: (S) => {
92
92
  S.preventDefault(), S.stopPropagation();
@@ -101,22 +101,22 @@ function Oe({
101
101
  );
102
102
  }) }) }),
103
103
  /* @__PURE__ */ e("tbody", { children: a.map((s, N) => {
104
- const I = n(s, N), L = x?.(s, N), F = C?.(s) ?? {}, S = o?.(s, N) ?? null;
104
+ const I = n(s, N), L = x?.(s, N), B = C?.(s) ?? {}, S = o?.(s, N) ?? null;
105
105
  return /* @__PURE__ */ c(p.Fragment, { children: [
106
106
  /* @__PURE__ */ e(
107
107
  "tr",
108
108
  {
109
109
  className: g(
110
- j.table__row,
111
- { [j["table__row--animated"]]: w },
110
+ $.table__row,
111
+ { [$["table__row--animated"]]: w },
112
112
  L
113
113
  ),
114
114
  style: w ? { animationDelay: `${N * 20}ms` } : void 0,
115
- ...F,
115
+ ...B,
116
116
  children: t.map((z) => {
117
117
  const Q = g({
118
- [j["col-hide-tablet"]]: z.hideTablet,
119
- [j["col-hide-mobile"]]: z.hideMobile
118
+ [$["col-hide-tablet"]]: z.hideTablet,
119
+ [$["col-hide-mobile"]]: z.hideMobile
120
120
  });
121
121
  return /* @__PURE__ */ e("td", { className: Q || void 0, children: r(s, z, N) }, z.key);
122
122
  })
@@ -127,16 +127,16 @@ function Oe({
127
127
  }) })
128
128
  ] }) });
129
129
  }
130
- const we = p.forwardRef(Oe);
130
+ const we = p.forwardRef(Ve);
131
131
  we.displayName = "BaseTable";
132
- const qe = "_widgetCard_gx9fj_4", We = "_fadeIn_gx9fj_1", Ve = "_widgetCard__header_gx9fj_23", He = "_widgetCard__title_gx9fj_37", Ge = "_widgetCard__content_gx9fj_52", E = {
132
+ const qe = "_widgetCard_gx9fj_4", He = "_fadeIn_gx9fj_1", Ge = "_widgetCard__header_gx9fj_23", Ke = "_widgetCard__title_gx9fj_37", Ue = "_widgetCard__content_gx9fj_52", M = {
133
133
  widgetCard: qe,
134
- fadeIn: We,
134
+ fadeIn: He,
135
135
  "widgetCard--half": "_widgetCard--half_gx9fj_18",
136
- widgetCard__header: Ve,
136
+ widgetCard__header: Ge,
137
137
  "widgetCard--full": "_widgetCard--full_gx9fj_33",
138
- widgetCard__title: He,
139
- widgetCard__content: Ge,
138
+ widgetCard__title: Ke,
139
+ widgetCard__content: Ue,
140
140
  "widgetCard__content--scrollable": "_widgetCard__content--scrollable_gx9fj_56",
141
141
  "widgetCard__content--padded": "_widgetCard__content--padded_gx9fj_76"
142
142
  }, U = p.forwardRef(
@@ -157,23 +157,23 @@ const qe = "_widgetCard_gx9fj_4", We = "_fadeIn_gx9fj_1", Ve = "_widgetCard__hea
157
157
  {
158
158
  ref: m,
159
159
  className: g(
160
- E.widgetCard,
161
- E[`widgetCard--${n}`],
160
+ M.widgetCard,
161
+ M[`widgetCard--${n}`],
162
162
  h
163
163
  ),
164
164
  ..._,
165
165
  children: [
166
- o && /* @__PURE__ */ c("header", { className: E.widgetCard__header, children: [
167
- t != null && /* @__PURE__ */ e("h2", { className: E.widgetCard__title, children: t }),
166
+ o && /* @__PURE__ */ c("header", { className: M.widgetCard__header, children: [
167
+ t != null && /* @__PURE__ */ e("h2", { className: M.widgetCard__title, children: t }),
168
168
  a
169
169
  ] }),
170
170
  /* @__PURE__ */ e(
171
171
  "div",
172
172
  {
173
173
  className: g(
174
- E.widgetCard__content,
175
- { [E["widgetCard__content--scrollable"]]: r },
176
- { [E["widgetCard__content--padded"]]: i }
174
+ M.widgetCard__content,
175
+ { [M["widgetCard__content--scrollable"]]: r },
176
+ { [M["widgetCard__content--padded"]]: i }
177
177
  ),
178
178
  children: l
179
179
  }
@@ -184,10 +184,10 @@ const qe = "_widgetCard_gx9fj_4", We = "_fadeIn_gx9fj_1", Ve = "_widgetCard__hea
184
184
  }
185
185
  );
186
186
  U.displayName = "WidgetCard";
187
- const Ke = "_dataCard_19cka_3", ue = {
188
- dataCard: Ke,
187
+ const Qe = "_dataCard_19cka_3", ue = {
188
+ dataCard: Qe,
189
189
  "dataCard--clickable": "_dataCard--clickable_19cka_18"
190
- }, Ue = p.forwardRef(
190
+ }, Je = p.forwardRef(
191
191
  ({ onClick: t, className: a, children: n, ...r }, i) => {
192
192
  const u = t != null;
193
193
  return /* @__PURE__ */ e(
@@ -211,9 +211,9 @@ const Ke = "_dataCard_19cka_3", ue = {
211
211
  );
212
212
  }
213
213
  );
214
- Ue.displayName = "DataCard";
215
- const Qe = "_baseList_47qml_3", me = {
216
- baseList: Qe,
214
+ Je.displayName = "DataCard";
215
+ const Ze = "_baseList_47qml_3", me = {
216
+ baseList: Ze,
217
217
  "baseList--scrollable": "_baseList--scrollable_47qml_8"
218
218
  }, ce = p.forwardRef(
219
219
  ({ scrollable: t = !1, className: a, children: n, ...r }, i) => /* @__PURE__ */ e(
@@ -232,12 +232,12 @@ const Qe = "_baseList_47qml_3", me = {
232
232
  )
233
233
  );
234
234
  ce.displayName = "BaseList";
235
- const Je = "_listItem_1ssj2_3", Ze = "_listItem__leading_1ssj2_31", Xe = "_listItem__content_1ssj2_37", Ye = "_listItem__trailing_1ssj2_42", O = {
236
- listItem: Je,
235
+ const Xe = "_listItem_1ssj2_3", Ye = "_listItem__leading_1ssj2_31", et = "_listItem__content_1ssj2_37", tt = "_listItem__trailing_1ssj2_42", F = {
236
+ listItem: Xe,
237
237
  "listItem--clickable": "_listItem--clickable_1ssj2_21",
238
- listItem__leading: Ze,
239
- listItem__content: Xe,
240
- listItem__trailing: Ye
238
+ listItem__leading: Ye,
239
+ listItem__content: et,
240
+ listItem__trailing: tt
241
241
  }, Ne = p.forwardRef(
242
242
  ({ leading: t, trailing: a, onClick: n, as: r = "div", className: i, children: u, ...l }, h) => {
243
243
  const _ = n != null, m = (o) => {
@@ -250,17 +250,17 @@ const Je = "_listItem_1ssj2_3", Ze = "_listItem__leading_1ssj2_31", Xe = "_listI
250
250
  role: "listitem",
251
251
  tabIndex: 0,
252
252
  className: g(
253
- O.listItem,
254
- { [O["listItem--clickable"]]: _ },
253
+ F.listItem,
254
+ { [F["listItem--clickable"]]: _ },
255
255
  i
256
256
  ),
257
257
  onClick: _ ? n : void 0,
258
258
  onKeyDown: m,
259
259
  ...l,
260
260
  children: [
261
- t != null && /* @__PURE__ */ e("div", { className: O.listItem__leading, children: t }),
262
- /* @__PURE__ */ e("div", { className: O.listItem__content, children: u }),
263
- a != null && /* @__PURE__ */ e("div", { className: O.listItem__trailing, children: a })
261
+ t != null && /* @__PURE__ */ e("div", { className: F.listItem__leading, children: t }),
262
+ /* @__PURE__ */ e("div", { className: F.listItem__content, children: u }),
263
+ a != null && /* @__PURE__ */ e("div", { className: F.listItem__trailing, children: a })
264
264
  ]
265
265
  }
266
266
  );
@@ -274,7 +274,7 @@ const he = {
274
274
  "status-badge--in-prufung": "_status-badge--in-prufung_c7rzu_36",
275
275
  "status-badge--validierung": "_status-badge--validierung_c7rzu_41",
276
276
  "status-badge--abgeschlossen": "_status-badge--abgeschlossen_c7rzu_46"
277
- }, et = {
277
+ }, at = {
278
278
  neu: "Neu",
279
279
  offen: "Offen",
280
280
  "in-prufung": "In Prüfung",
@@ -294,7 +294,7 @@ const he = {
294
294
  className: g(he["status-badge"], he[`status-badge--${t}`], r),
295
295
  style: h,
296
296
  ...u,
297
- children: et[t]
297
+ children: at[t]
298
298
  }
299
299
  );
300
300
  }
@@ -347,7 +347,7 @@ const X = {
347
347
  }
348
348
  );
349
349
  ye.displayName = "FavoriteButton";
350
- const B = {
350
+ const E = {
351
351
  "status-legend__item": "_status-legend__item_1xv4z_3",
352
352
  "status-legend__item--active": "_status-legend__item--active_1xv4z_22",
353
353
  "status-legend__label-wrap": "_status-legend__label-wrap_1xv4z_27",
@@ -374,31 +374,31 @@ const B = {
374
374
  role: "option",
375
375
  "aria-selected": r,
376
376
  className: g(
377
- B["status-legend__item"],
378
- { [B["status-legend__item--active"]]: r },
377
+ E["status-legend__item"],
378
+ { [E["status-legend__item--active"]]: r },
379
379
  u
380
380
  ),
381
381
  style: m,
382
382
  ...h,
383
383
  children: [
384
- /* @__PURE__ */ c("div", { className: B["status-legend__label-wrap"], children: [
384
+ /* @__PURE__ */ c("div", { className: E["status-legend__label-wrap"], children: [
385
385
  /* @__PURE__ */ e(
386
386
  "span",
387
387
  {
388
- className: g(B["status-legend__color"], B[`color-${t}`]),
388
+ className: g(E["status-legend__color"], E[`color-${t}`]),
389
389
  "aria-hidden": "true"
390
390
  }
391
391
  ),
392
- /* @__PURE__ */ e("span", { className: B["status-legend__label"], children: a })
392
+ /* @__PURE__ */ e("span", { className: E["status-legend__label"], children: a })
393
393
  ] }),
394
- /* @__PURE__ */ e("span", { className: B["status-legend__count"], children: n })
394
+ /* @__PURE__ */ e("span", { className: E["status-legend__count"], children: n })
395
395
  ]
396
396
  }
397
397
  );
398
398
  }
399
399
  );
400
400
  Ce.displayName = "StatusLegendItem";
401
- const T = {
401
+ const P = {
402
402
  "status-overview__chart-container": "_status-overview__chart-container_6nwc9_3",
403
403
  "status-chart-svg": "_status-chart-svg_6nwc9_13",
404
404
  "status-chart__segment": "_status-chart__segment_6nwc9_23",
@@ -409,19 +409,19 @@ const T = {
409
409
  "status-chart__total-label": "_status-chart__total-label_6nwc9_63"
410
410
  }, xe = p.forwardRef(
411
411
  ({ data: t, totalLabel: a = "Gesamt", onSegmentClick: n, className: r, ...i }, u) => {
412
- const [l, h] = A(null), _ = t.reduce((k, v) => k + v.value, 0), m = 240, o = m / 2, w = 100, x = 40, C = w - x / 2, f = C * 2 * Math.PI;
412
+ const [l, h] = j(null), _ = t.reduce((k, v) => k + v.value, 0), m = 240, o = m / 2, w = 100, x = 40, C = w - x / 2, f = C * 2 * Math.PI;
413
413
  return /* @__PURE__ */ c(
414
414
  "div",
415
415
  {
416
416
  ref: u,
417
- className: g(T["status-overview__chart-container"], r),
417
+ className: g(P["status-overview__chart-container"], r),
418
418
  ...i,
419
419
  children: [
420
420
  /* @__PURE__ */ e(
421
421
  "svg",
422
422
  {
423
423
  viewBox: `0 0 ${m} ${m}`,
424
- className: T["status-chart-svg"],
424
+ className: P["status-chart-svg"],
425
425
  role: "img",
426
426
  "aria-label": "Kreisdiagramm der Projektstatus-Verteilung",
427
427
  overflow: "visible",
@@ -452,9 +452,9 @@ const T = {
452
452
  strokeDasharray: `${b} ${f}`,
453
453
  strokeDashoffset: -s,
454
454
  transform: `rotate(-90 ${o} ${o})`,
455
- className: g(T["status-chart__segment"], {
456
- [T["status-chart__segment--hovered"]]: l === v.status,
457
- [T["status-chart__segment--dimmed"]]: l && l !== v.status
455
+ className: g(P["status-chart__segment"], {
456
+ [P["status-chart__segment--hovered"]]: l === v.status,
457
+ [P["status-chart__segment--dimmed"]]: l && l !== v.status
458
458
  }),
459
459
  onClick: () => n?.(v.status),
460
460
  onMouseEnter: () => h(v.status),
@@ -468,9 +468,9 @@ const T = {
468
468
  })()
469
469
  }
470
470
  ),
471
- /* @__PURE__ */ c("div", { className: T["status-chart__hole"], children: [
472
- /* @__PURE__ */ e("span", { className: T["status-chart__total-value"], children: _ }),
473
- /* @__PURE__ */ e("span", { className: T["status-chart__total-label"], children: a })
471
+ /* @__PURE__ */ c("div", { className: P["status-chart__hole"], children: [
472
+ /* @__PURE__ */ e("span", { className: P["status-chart__total-value"], children: _ }),
473
+ /* @__PURE__ */ e("span", { className: P["status-chart__total-label"], children: a })
474
474
  ] })
475
475
  ]
476
476
  }
@@ -494,15 +494,15 @@ function ve(t) {
494
494
  const h = Math.floor(i / 365);
495
495
  return h === 1 ? "vor einem Jahr" : `vor ${h} Jahren`;
496
496
  }
497
- const tt = "_nameCell_1n6hv_4", at = "_favorite_1n6hv_10", st = "_nameWrapper_1n6hv_14", lt = "_name_1n6hv_4", nt = "_secondary_1n6hv_31", it = "_client_1n6hv_41", rt = "_dateMain_1n6hv_51", D = {
498
- nameCell: tt,
499
- favorite: at,
500
- nameWrapper: st,
501
- name: lt,
502
- secondary: nt,
503
- client: it,
504
- dateMain: rt
505
- }, ot = [
497
+ const st = "_nameCell_1n6hv_4", lt = "_favorite_1n6hv_10", nt = "_nameWrapper_1n6hv_14", it = "_name_1n6hv_4", rt = "_secondary_1n6hv_31", ot = "_client_1n6hv_41", ct = "_dateMain_1n6hv_51", T = {
498
+ nameCell: st,
499
+ favorite: lt,
500
+ nameWrapper: nt,
501
+ name: it,
502
+ secondary: rt,
503
+ client: ot,
504
+ dateMain: ct
505
+ }, dt = [
506
506
  { key: "name", label: "Projekt / Applikation" },
507
507
  { key: "client", label: "Kunde", width: "20%" },
508
508
  { key: "status", label: "Status", width: 150 },
@@ -512,13 +512,13 @@ const tt = "_nameCell_1n6hv_4", at = "_favorite_1n6hv_10", st = "_nameWrapper_1n
512
512
  we,
513
513
  {
514
514
  ref: i,
515
- columns: ot,
515
+ columns: dt,
516
516
  rows: t,
517
517
  rowKey: (l) => l.id,
518
518
  renderCell: (l, h) => {
519
519
  switch (h.key) {
520
520
  case "name":
521
- return /* @__PURE__ */ c("div", { className: D.nameCell, children: [
521
+ return /* @__PURE__ */ c("div", { className: T.nameCell, children: [
522
522
  /* @__PURE__ */ e(
523
523
  ye,
524
524
  {
@@ -526,24 +526,24 @@ const tt = "_nameCell_1n6hv_4", at = "_favorite_1n6hv_10", st = "_nameWrapper_1n
526
526
  projectName: l.name,
527
527
  size: "sm",
528
528
  onToggle: (_) => a?.(l.id, _),
529
- className: D.favorite
529
+ className: T.favorite
530
530
  }
531
531
  ),
532
- /* @__PURE__ */ c("div", { className: D.nameWrapper, title: `${l.name}
532
+ /* @__PURE__ */ c("div", { className: T.nameWrapper, title: `${l.name}
533
533
  ${l.app}`, children: [
534
- /* @__PURE__ */ e("div", { className: D.name, children: l.name }),
535
- /* @__PURE__ */ e("div", { className: D.secondary, children: l.app })
534
+ /* @__PURE__ */ e("div", { className: T.name, children: l.name }),
535
+ /* @__PURE__ */ e("div", { className: T.secondary, children: l.app })
536
536
  ] })
537
537
  ] });
538
538
  case "client":
539
- return /* @__PURE__ */ e("span", { className: D.client, title: l.client, children: l.client });
539
+ return /* @__PURE__ */ e("span", { className: T.client, title: l.client, children: l.client });
540
540
  case "status":
541
541
  return /* @__PURE__ */ e(ke, { status: l.status });
542
542
  case "activity":
543
543
  return /* @__PURE__ */ c("div", { title: `Geändert: ${ve(l.updatedAt)}
544
544
  Erstellt: ${l.createdAt}`, children: [
545
- /* @__PURE__ */ e("div", { className: D.dateMain, children: ve(l.updatedAt) }),
546
- /* @__PURE__ */ c("div", { className: D.secondary, children: [
545
+ /* @__PURE__ */ e("div", { className: T.dateMain, children: ve(l.updatedAt) }),
546
+ /* @__PURE__ */ c("div", { className: T.secondary, children: [
547
547
  "Erstellt: ",
548
548
  l.createdAt
549
549
  ] })
@@ -559,11 +559,11 @@ Erstellt: ${l.createdAt}`, children: [
559
559
  )
560
560
  );
561
561
  Ie.displayName = "ProjectTable";
562
- const ct = "_avatar_17ic7_3", ne = {
563
- avatar: ct,
562
+ const _t = "_avatar_17ic7_3", ne = {
563
+ avatar: _t,
564
564
  "avatar-group": "_avatar-group_17ic7_18",
565
565
  "group-member": "_group-member_17ic7_23"
566
- }, V = p.forwardRef(
566
+ }, q = p.forwardRef(
567
567
  ({ initials: t, name: a, className: n, ...r }, i) => /* @__PURE__ */ e(
568
568
  "div",
569
569
  {
@@ -576,7 +576,7 @@ const ct = "_avatar_17ic7_3", ne = {
576
576
  }
577
577
  )
578
578
  );
579
- V.displayName = "Avatar";
579
+ q.displayName = "Avatar";
580
580
  const de = p.forwardRef(
581
581
  ({ children: t, className: a, ...n }, r) => /* @__PURE__ */ e(
582
582
  "div",
@@ -591,8 +591,8 @@ const de = p.forwardRef(
591
591
  )
592
592
  );
593
593
  de.displayName = "AvatarGroup";
594
- const dt = "_btn_7bh63_3", Y = {
595
- btn: dt,
594
+ const ut = "_btn_7bh63_3", Y = {
595
+ btn: ut,
596
596
  "btn--primary": "_btn--primary_7bh63_27",
597
597
  "btn--outline": "_btn--outline_7bh63_39",
598
598
  "btn--ghost": "_btn--ghost_7bh63_52",
@@ -616,24 +616,24 @@ const dt = "_btn_7bh63_3", Y = {
616
616
  )
617
617
  );
618
618
  R.displayName = "Button";
619
- const _t = "_badge_1e35x_3", ee = {
620
- badge: _t,
619
+ const mt = "_badge_1e35x_3", ee = {
620
+ badge: mt,
621
621
  "badge--high": "_badge--high_1e35x_12",
622
622
  "badge--medium": "_badge--medium_1e35x_18",
623
623
  "badge--low": "_badge--low_1e35x_24",
624
624
  "badge--size-small": "_badge--size-small_1e35x_30",
625
625
  "badge--size-large": "_badge--size-large_1e35x_37"
626
- }, ut = {
626
+ }, ht = {
627
627
  high: "!!",
628
628
  medium: "!",
629
629
  low: "-"
630
- }, mt = {
630
+ }, vt = {
631
631
  high: "Hohe Priorität",
632
632
  medium: "Mittlere Priorität",
633
633
  low: "Niedrige Priorität"
634
634
  }, _e = p.forwardRef(
635
635
  ({ level: t, size: a = "small", className: n, "aria-label": r, ...i }, u) => {
636
- const l = mt[t];
636
+ const l = vt[t];
637
637
  return /* @__PURE__ */ e(
638
638
  "span",
639
639
  {
@@ -646,38 +646,38 @@ const _t = "_badge_1e35x_3", ee = {
646
646
  ),
647
647
  "aria-label": r || l,
648
648
  ...i,
649
- children: ut[t]
649
+ children: ht[t]
650
650
  }
651
651
  );
652
652
  }
653
653
  );
654
654
  _e.displayName = "PriorityBadge";
655
- const ht = "_badge_1j9lv_3", vt = {
656
- badge: ht
655
+ const gt = "_badge_1j9lv_3", bt = {
656
+ badge: gt
657
657
  }, ie = p.forwardRef(
658
658
  ({ className: t, children: a, ...n }, r) => /* @__PURE__ */ e(
659
659
  "span",
660
660
  {
661
661
  ref: r,
662
- className: g(vt.badge, t),
662
+ className: g(bt.badge, t),
663
663
  ...n,
664
664
  children: a
665
665
  }
666
666
  )
667
667
  );
668
668
  ie.displayName = "Badge";
669
- const gt = "_icon_15zae_56", P = {
669
+ const ft = "_icon_15zae_56", D = {
670
670
  "status-dropdown": "_status-dropdown_15zae_3",
671
671
  "status-trigger": "_status-trigger_15zae_9",
672
672
  "status-menu": "_status-menu_15zae_14",
673
673
  "is-open": "_is-open_15zae_31",
674
674
  "status-menu-item": "_status-menu-item_15zae_35",
675
675
  "is-active": "_is-active_15zae_52",
676
- icon: gt,
676
+ icon: ft,
677
677
  "icon-sm": "_icon-sm_15zae_65"
678
678
  }, Se = p.forwardRef(
679
679
  ({ value: t, onChange: a, options: n, className: r, "aria-label": i, ...u }, l) => {
680
- const [h, _] = A(!1), m = Re(null), o = (f) => {
680
+ const [h, _] = j(!1), m = Te(null), o = (f) => {
681
681
  typeof l == "function" ? l(f) : l && (l.current = f), m.current = f;
682
682
  }, w = n.find((f) => f.value === t) || n[0];
683
683
  le(() => {
@@ -695,7 +695,7 @@ const gt = "_icon_15zae_56", P = {
695
695
  "div",
696
696
  {
697
697
  ref: o,
698
- className: g(P["status-dropdown"], r),
698
+ className: g(D["status-dropdown"], r),
699
699
  ...u,
700
700
  children: [
701
701
  /* @__PURE__ */ c(
@@ -703,27 +703,27 @@ const gt = "_icon_15zae_56", P = {
703
703
  {
704
704
  variant: "outline",
705
705
  size: "sm",
706
- className: P["status-trigger"],
706
+ className: D["status-trigger"],
707
707
  onClick: x,
708
708
  "aria-haspopup": "listbox",
709
709
  "aria-expanded": h,
710
710
  "aria-label": i,
711
711
  children: [
712
712
  w?.label,
713
- /* @__PURE__ */ e("svg", { className: g(P.icon, P["icon-sm"]), viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", children: /* @__PURE__ */ e("path", { d: "m6 9 6 6 6-6" }) })
713
+ /* @__PURE__ */ e("svg", { className: g(D.icon, D["icon-sm"]), viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", children: /* @__PURE__ */ e("path", { d: "m6 9 6 6 6-6" }) })
714
714
  ]
715
715
  }
716
716
  ),
717
717
  /* @__PURE__ */ e(
718
718
  "div",
719
719
  {
720
- className: g(P["status-menu"], { [P["is-open"]]: h }),
720
+ className: g(D["status-menu"], { [D["is-open"]]: h }),
721
721
  role: "listbox",
722
722
  children: n.map((f) => /* @__PURE__ */ e(
723
723
  "button",
724
724
  {
725
- className: g(P["status-menu-item"], {
726
- [P["is-active"]]: f.value === w?.value
725
+ className: g(D["status-menu-item"], {
726
+ [D["is-active"]]: f.value === w?.value
727
727
  }),
728
728
  role: "option",
729
729
  "aria-selected": f.value === w?.value,
@@ -740,12 +740,12 @@ const gt = "_icon_15zae_56", P = {
740
740
  }
741
741
  );
742
742
  Se.displayName = "StatusDropdown";
743
- const bt = "_checklist_1iobh_3", ft = "_checkItem_1iobh_7", pt = "_formControl_1iobh_39", q = {
744
- checklist: bt,
745
- checkItem: ft,
743
+ const pt = "_checklist_1iobh_3", wt = "_checkItem_1iobh_7", Nt = "_formControl_1iobh_39", O = {
744
+ checklist: pt,
745
+ checkItem: wt,
746
746
  "is-done": "_is-done_1iobh_26",
747
747
  "checklist--readonly": "_checklist--readonly_1iobh_31",
748
- formControl: pt
748
+ formControl: Nt
749
749
  }, re = p.forwardRef(
750
750
  ({ items: t, onChange: a, editable: n = !1, className: r, ...i }, u) => {
751
751
  const l = (_, m) => {
@@ -757,9 +757,9 @@ const bt = "_checklist_1iobh_3", ft = "_checkItem_1iobh_7", pt = "_formControl_1
757
757
  ce,
758
758
  {
759
759
  ref: u,
760
- className: g(q.checklist, { [q["checklist--readonly"]]: !n }, r),
760
+ className: g(O.checklist, { [O["checklist--readonly"]]: !n }, r),
761
761
  ...i,
762
- children: t.map((_) => /* @__PURE__ */ c("div", { role: "listitem", className: g(q.checkItem, { [q["is-done"]]: _.checked }), children: [
762
+ children: t.map((_) => /* @__PURE__ */ c("div", { role: "listitem", className: g(O.checkItem, { [O["is-done"]]: _.checked }), children: [
763
763
  /* @__PURE__ */ e(
764
764
  "input",
765
765
  {
@@ -773,7 +773,7 @@ const bt = "_checklist_1iobh_3", ft = "_checkItem_1iobh_7", pt = "_formControl_1
773
773
  "input",
774
774
  {
775
775
  type: "text",
776
- className: q.formControl,
776
+ className: O.formControl,
777
777
  value: _.text,
778
778
  onChange: (m) => h(_.id, m.target.value),
779
779
  placeholder: "Was ist zu tun?",
@@ -786,11 +786,11 @@ const bt = "_checklist_1iobh_3", ft = "_checkItem_1iobh_7", pt = "_formControl_1
786
786
  }
787
787
  );
788
788
  re.displayName = "Checklist";
789
- const wt = "_searchInput_16e7c_3", Nt = "_icon_16e7c_20", kt = "_field_16e7c_27", te = {
790
- searchInput: wt,
791
- icon: Nt,
792
- field: kt
793
- }, yt = p.forwardRef(
789
+ const kt = "_searchInput_16e7c_3", yt = "_icon_16e7c_20", Ct = "_field_16e7c_27", te = {
790
+ searchInput: kt,
791
+ icon: yt,
792
+ field: Ct
793
+ }, $e = p.forwardRef(
794
794
  ({
795
795
  value: t,
796
796
  placeholder: a = "Suche...",
@@ -831,12 +831,12 @@ const wt = "_searchInput_16e7c_3", Nt = "_icon_16e7c_20", kt = "_field_16e7c_27"
831
831
  )
832
832
  ] })
833
833
  );
834
- yt.displayName = "SearchInput";
835
- const Ct = "_btn_6gx9b_3", xt = "_chevron_6gx9b_30", ae = {
836
- btn: Ct,
837
- chevron: xt,
834
+ $e.displayName = "SearchInput";
835
+ const xt = "_btn_6gx9b_3", It = "_chevron_6gx9b_30", ae = {
836
+ btn: xt,
837
+ chevron: It,
838
838
  "btn--open": "_btn--open_6gx9b_37"
839
- }, It = p.forwardRef(
839
+ }, St = p.forwardRef(
840
840
  ({
841
841
  expanded: t = !1,
842
842
  count: a,
@@ -875,18 +875,18 @@ const Ct = "_btn_6gx9b_3", xt = "_chevron_6gx9b_30", ae = {
875
875
  );
876
876
  }
877
877
  );
878
- It.displayName = "ExpandButton";
879
- const St = "_circle_gvt69_3", jt = "_svg_gvt69_12", $t = "_track_gvt69_18", At = "_fill_gvt69_24", Lt = "_label_gvt69_31", W = {
880
- circle: St,
881
- svg: jt,
882
- track: $t,
883
- fill: At,
884
- label: Lt
878
+ St.displayName = "ExpandButton";
879
+ const $t = "_circle_gvt69_3", At = "_svg_gvt69_12", jt = "_track_gvt69_18", Lt = "_fill_gvt69_24", zt = "_label_gvt69_31", W = {
880
+ circle: $t,
881
+ svg: At,
882
+ track: jt,
883
+ fill: Lt,
884
+ label: zt
885
885
  }, oe = 14, se = 2 * Math.PI * oe;
886
- function zt(t) {
886
+ function Rt(t) {
887
887
  return t >= 75 ? "var(--color-success)" : t >= 50 ? "var(--color-warning)" : "var(--error)";
888
888
  }
889
- const Rt = p.forwardRef(
889
+ const Pt = p.forwardRef(
890
890
  ({ value: t, className: a }, n) => {
891
891
  const r = Math.max(0, Math.min(100, t)), i = se - r / 100 * se;
892
892
  return /* @__PURE__ */ c("div", { ref: n, className: g(W.circle, a), role: "meter", "aria-valuenow": r, "aria-valuemin": 0, "aria-valuemax": 100, "aria-label": `${r}%`, children: [
@@ -899,7 +899,7 @@ const Rt = p.forwardRef(
899
899
  cx: "18",
900
900
  cy: "18",
901
901
  r: oe,
902
- stroke: zt(r),
902
+ stroke: Rt(r),
903
903
  strokeDasharray: se,
904
904
  strokeDashoffset: i
905
905
  }
@@ -912,13 +912,13 @@ const Rt = p.forwardRef(
912
912
  ] });
913
913
  }
914
914
  );
915
- Rt.displayName = "ProgressCircle";
916
- const Tt = "_bar_l0q8t_3", Dt = "_track_l0q8t_9", Pt = "_fill_l0q8t_17", Mt = "_value_l0q8t_23", H = {
915
+ Pt.displayName = "ProgressCircle";
916
+ const Tt = "_bar_l0q8t_3", Dt = "_track_l0q8t_9", Mt = "_fill_l0q8t_17", Et = "_value_l0q8t_23", H = {
917
917
  bar: Tt,
918
918
  track: Dt,
919
- fill: Pt,
920
- value: Mt
921
- }, Et = p.forwardRef(
919
+ fill: Mt,
920
+ value: Et
921
+ }, Bt = p.forwardRef(
922
922
  ({ value: t, className: a }, n) => {
923
923
  const r = typeof t == "number" && t <= 1 ? t * 100 : t, i = Math.round(r);
924
924
  return /* @__PURE__ */ c("div", { ref: n, className: g(H.bar, a), role: "meter", "aria-valuenow": i, "aria-valuemin": 0, "aria-valuemax": 100, "aria-label": `${i}%`, children: [
@@ -930,22 +930,22 @@ const Tt = "_bar_l0q8t_3", Dt = "_track_l0q8t_9", Pt = "_fill_l0q8t_17", Mt = "_
930
930
  ] });
931
931
  }
932
932
  );
933
- Et.displayName = "ScoreBar";
934
- const Bt = "_empty_26icj_3", Ft = "_icon_26icj_12", Ot = "_title_26icj_19", qt = "_text_26icj_27", G = {
935
- empty: Bt,
936
- icon: Ft,
937
- title: Ot,
938
- text: qt
939
- }, Wt = p.forwardRef(
933
+ Bt.displayName = "ScoreBar";
934
+ const Ft = "_empty_26icj_3", Ot = "_icon_26icj_12", Wt = "_title_26icj_19", Vt = "_text_26icj_27", G = {
935
+ empty: Ft,
936
+ icon: Ot,
937
+ title: Wt,
938
+ text: Vt
939
+ }, Ae = p.forwardRef(
940
940
  ({ title: t, text: a, icon: n, className: r }, i) => /* @__PURE__ */ c("div", { ref: i, className: g(G.empty, r), role: "status", children: [
941
941
  n && /* @__PURE__ */ e("div", { className: G.icon, "aria-hidden": "true", children: n }),
942
942
  /* @__PURE__ */ e("div", { className: G.title, children: t }),
943
943
  a && /* @__PURE__ */ e("div", { className: G.text, children: a })
944
944
  ] })
945
945
  );
946
- Wt.displayName = "EmptyState";
947
- const Vt = "_toggle_176y2_3", Ht = "_btn_176y2_11", Gt = "_icon_176y2_43", K = {
948
- toggle: Vt,
946
+ Ae.displayName = "EmptyState";
947
+ const qt = "_toggle_176y2_3", Ht = "_btn_176y2_11", Gt = "_icon_176y2_43", K = {
948
+ toggle: qt,
949
949
  btn: Ht,
950
950
  "btn--active": "_btn--active_176y2_37",
951
951
  icon: Gt
@@ -988,13 +988,12 @@ const Vt = "_toggle_176y2_3", Ht = "_btn_176y2_11", Gt = "_icon_176y2_43", K = {
988
988
  }
989
989
  );
990
990
  Kt.displayName = "SegmentedControl";
991
- const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLegend_wq6z7_27", Zt = "_projectFilters_wq6z7_34", Xt = "_projectFilters__search_wq6z7_48", M = {
991
+ const Ut = "_dashboard_avuww_4", Qt = "_sectionTitle_avuww_18", Jt = "_statusLegend_avuww_27", Zt = "_projectList_avuww_34", V = {
992
992
  dashboard: Ut,
993
993
  sectionTitle: Qt,
994
994
  statusLegend: Jt,
995
- projectFilters: Zt,
996
- projectFilters__search: Xt
997
- }, Yt = [
995
+ projectList: Zt
996
+ }, Xt = [
998
997
  { id: "1", name: "E-Commerce Relaunch", client: "Müller GmbH", app: "Shopify CMS", status: "neu", favorite: !1, createdAt: "12.02.2026", updatedAt: (/* @__PURE__ */ new Date()).toISOString() },
999
998
  { id: "2", name: "CRM Integration MVP", client: "TechCorp Inc.", app: "Salesforce API", status: "offen", favorite: !0, createdAt: "15.01.2026", updatedAt: new Date(Date.now() - 2880 * 60 * 1e3).toISOString() },
1000
999
  { id: "3", name: "Data Analytics Dashboard", client: "DataViz AG", app: "React / Supabase", status: "in-prufung", favorite: !1, createdAt: "20.02.2026", updatedAt: new Date(Date.now() - 10080 * 60 * 1e3).toISOString() },
@@ -1021,22 +1020,22 @@ const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLeg
1021
1020
  createdAt: "05.01.2026",
1022
1021
  updatedAt: (/* @__PURE__ */ new Date()).toISOString()
1023
1022
  }
1024
- ], ea = [
1023
+ ], Yt = [
1025
1024
  { status: "alle", label: "Alle" },
1026
1025
  { status: "neu", label: "Neu" },
1027
1026
  { status: "offen", label: "Offen" },
1028
1027
  { status: "in-prufung", label: "In Prüfung" },
1029
1028
  { status: "validierung", label: "Validierung" },
1030
1029
  { status: "abgeschlossen", label: "Abgeschlossen" }
1031
- ], ta = {
1030
+ ], ea = {
1032
1031
  neu: "Neu",
1033
1032
  offen: "Offen",
1034
1033
  "in-prufung": "In Prüfung",
1035
1034
  validierung: "Validierung",
1036
1035
  abgeschlossen: "Abgeschlossen"
1037
- }, aa = p.forwardRef(
1038
- ({ initialRows: t = Yt, className: a, ...n }, r) => {
1039
- const [i, u] = A(t), [l, h] = A("alle"), [_, m] = A(""), o = Z(() => {
1036
+ }, ta = p.forwardRef(
1037
+ ({ initialRows: t = Xt, className: a, ...n }, r) => {
1038
+ const [i, u] = j(t), [l, h] = j("alle"), [_, m] = j(""), o = Z(() => {
1040
1039
  const v = {
1041
1040
  alle: i.length,
1042
1041
  neu: 0,
@@ -1057,14 +1056,14 @@ const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLeg
1057
1056
  );
1058
1057
  }
1059
1058
  return l === "alle" && (v = [...v].sort((y, b) => Number(b.favorite) - Number(y.favorite))), v;
1060
- }, [i, l, _]), x = l === "alle" ? "Alle Projekte" : `Projekte: ${ta[l]}`, C = (v, y) => {
1059
+ }, [i, l, _]), x = l === "alle" ? "Alle Projekte" : `Projekte: ${ea[l]}`, C = (v, y) => {
1061
1060
  u((b) => b.map((s) => s.id === v ? { ...s, favorite: y } : s));
1062
1061
  }, f = Z(() => [
1063
- { status: "neu", label: "Neu", value: o.neu, color: "hsl(var(--status-neu))" },
1064
- { status: "offen", label: "Offen", value: o.offen, color: "hsl(var(--status-offen))" },
1065
- { status: "in-prufung", label: "In Prüfung", value: o["in-prufung"], color: "hsl(var(--status-in-prufung))" },
1066
- { status: "validierung", label: "Validierung", value: o.validierung, color: "hsl(var(--status-validierung))" },
1067
- { status: "abgeschlossen", label: "Abgeschlossen", value: o.abgeschlossen, color: "hsl(var(--status-abgeschlossen))" }
1062
+ { status: "neu", label: "Neu", value: o.neu, color: "var(--status-neu)" },
1063
+ { status: "offen", label: "Offen", value: o.offen, color: "var(--status-offen)" },
1064
+ { status: "in-prufung", label: "In Prüfung", value: o["in-prufung"], color: "var(--status-in-prufung)" },
1065
+ { status: "validierung", label: "Validierung", value: o.validierung, color: "var(--status-validierung)" },
1066
+ { status: "abgeschlossen", label: "Abgeschlossen", value: o.abgeschlossen, color: "var(--status-abgeschlossen)" }
1068
1067
  ], [o]), k = (v) => {
1069
1068
  h(v);
1070
1069
  };
@@ -1072,7 +1071,7 @@ const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLeg
1072
1071
  "main",
1073
1072
  {
1074
1073
  ref: r,
1075
- className: g(M.dashboard, a),
1074
+ className: g(V.dashboard, a),
1076
1075
  ...n,
1077
1076
  children: [
1078
1077
  /* @__PURE__ */ c(
@@ -1082,9 +1081,9 @@ const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLeg
1082
1081
  variant: "full",
1083
1082
  padded: !0,
1084
1083
  "aria-label": "Projektstatus Übersicht",
1085
- className: M.statusOverview,
1084
+ className: V.statusOverview,
1086
1085
  children: [
1087
- /* @__PURE__ */ e("h1", { className: M.sectionTitle, children: "Projekte" }),
1086
+ /* @__PURE__ */ e("h1", { className: V.sectionTitle, children: "Projekte" }),
1088
1087
  /* @__PURE__ */ e(
1089
1088
  xe,
1090
1089
  {
@@ -1095,10 +1094,10 @@ const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLeg
1095
1094
  /* @__PURE__ */ e(
1096
1095
  "div",
1097
1096
  {
1098
- className: M.statusLegend,
1097
+ className: V.statusLegend,
1099
1098
  role: "listbox",
1100
1099
  "aria-label": "Nach Status filtern",
1101
- children: ea.map(({ status: v, label: y }) => /* @__PURE__ */ e(
1100
+ children: Yt.map(({ status: v, label: y }) => /* @__PURE__ */ e(
1102
1101
  Ce,
1103
1102
  {
1104
1103
  status: v,
@@ -1114,30 +1113,30 @@ const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLeg
1114
1113
  ]
1115
1114
  }
1116
1115
  ),
1117
- /* @__PURE__ */ c(
1116
+ /* @__PURE__ */ e(
1118
1117
  U,
1119
1118
  {
1120
1119
  as: "section",
1121
1120
  variant: "full",
1122
1121
  "aria-label": "Projektliste",
1123
- className: M.projectList,
1124
- children: [
1125
- /* @__PURE__ */ c("div", { className: M.projectFilters, children: [
1126
- /* @__PURE__ */ e("h2", { className: M.sectionTitle, children: x }),
1127
- /* @__PURE__ */ e(
1128
- "input",
1129
- {
1130
- type: "search",
1131
- className: M.projectFilters__search,
1132
- "aria-label": "Projekte durchsuchen",
1133
- placeholder: "Suchen...",
1134
- value: _,
1135
- onChange: (v) => m(v.target.value)
1136
- }
1137
- )
1138
- ] }),
1139
- /* @__PURE__ */ e(Ie, { rows: w, onToggleFavorite: C })
1140
- ]
1122
+ className: V.projectList,
1123
+ title: x,
1124
+ headerAction: /* @__PURE__ */ e(
1125
+ $e,
1126
+ {
1127
+ value: _,
1128
+ onChange: m,
1129
+ placeholder: "Projekte durchsuchen...",
1130
+ "aria-label": "Projekte durchsuchen"
1131
+ }
1132
+ ),
1133
+ children: w.length > 0 ? /* @__PURE__ */ e(Ie, { rows: w, onToggleFavorite: C }) : /* @__PURE__ */ e(
1134
+ Ae,
1135
+ {
1136
+ title: "Keine Projekte gefunden",
1137
+ text: _ ? `Keine Ergebnisse für „${_}"` : void 0
1138
+ }
1139
+ )
1141
1140
  }
1142
1141
  )
1143
1142
  ]
@@ -1145,21 +1144,21 @@ const Ut = "_dashboard_wq6z7_4", Qt = "_sectionTitle_wq6z7_18", Jt = "_statusLeg
1145
1144
  );
1146
1145
  }
1147
1146
  );
1148
- aa.displayName = "DashboardPage";
1149
- const sa = "_taskItem_77jzk_4", la = "_taskItem__content_77jzk_14", na = "_taskItem__titleGroup_77jzk_21", ia = "_taskItem__title_77jzk_21", ra = "_taskItem__meta_77jzk_41", oa = "_metaUser_77jzk_52", ca = "_metaProject_77jzk_58", da = "_taskItem__deadline_77jzk_76", _a = "_taskItem__actions_77jzk_95", $ = {
1150
- taskItem: sa,
1151
- taskItem__content: la,
1152
- taskItem__titleGroup: na,
1153
- taskItem__title: ia,
1154
- taskItem__meta: ra,
1155
- metaUser: oa,
1156
- metaProject: ca,
1147
+ ta.displayName = "DashboardPage";
1148
+ const aa = "_taskItem_77jzk_4", sa = "_taskItem__content_77jzk_14", la = "_taskItem__titleGroup_77jzk_21", na = "_taskItem__title_77jzk_21", ia = "_taskItem__meta_77jzk_41", ra = "_metaUser_77jzk_52", oa = "_metaProject_77jzk_58", ca = "_taskItem__deadline_77jzk_76", da = "_taskItem__actions_77jzk_95", A = {
1149
+ taskItem: aa,
1150
+ taskItem__content: sa,
1151
+ taskItem__titleGroup: la,
1152
+ taskItem__title: na,
1153
+ taskItem__meta: ia,
1154
+ metaUser: ra,
1155
+ metaProject: oa,
1157
1156
  "icon-sm": "_icon-sm_77jzk_71",
1158
- taskItem__deadline: da,
1157
+ taskItem__deadline: ca,
1159
1158
  "deadline-urgent": "_deadline-urgent_77jzk_85",
1160
1159
  "deadline-normal": "_deadline-normal_77jzk_90",
1161
- taskItem__actions: _a
1162
- }, ua = [
1160
+ taskItem__actions: da
1161
+ }, _a = [
1163
1162
  { value: "Offen", label: "Offen" },
1164
1163
  { value: "In Arbeit", label: "In Arbeit" },
1165
1164
  { value: "Erledigt", label: "Erledigt" }
@@ -1174,25 +1173,25 @@ const sa = "_taskItem_77jzk_4", la = "_taskItem__content_77jzk_14", na = "_taskI
1174
1173
  ref: C,
1175
1174
  as: "article",
1176
1175
  onClick: m,
1177
- className: g($.taskItem, w),
1176
+ className: g(A.taskItem, w),
1178
1177
  ...x,
1179
1178
  children: [
1180
- /* @__PURE__ */ c("div", { className: $.taskItem__content, children: [
1181
- /* @__PURE__ */ e("div", { className: $.taskItem__titleGroup, children: /* @__PURE__ */ e("h3", { className: $.taskItem__title, children: t }) }),
1182
- /* @__PURE__ */ c("div", { className: $.taskItem__meta, children: [
1183
- h.length > 0 && /* @__PURE__ */ e("div", { className: $.metaUser, children: /* @__PURE__ */ e(de, { children: h.map((k, v) => /* @__PURE__ */ e(V, { initials: k.initials, name: k.name }, v)) }) }),
1184
- /* @__PURE__ */ c("div", { className: $.metaProject, "aria-label": `Projekt: ${n || a}`, children: [
1185
- /* @__PURE__ */ e("svg", { className: $["icon-sm"], viewBox: "0 0 24 24", children: /* @__PURE__ */ e("path", { d: "M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z" }) }),
1179
+ /* @__PURE__ */ c("div", { className: A.taskItem__content, children: [
1180
+ /* @__PURE__ */ e("div", { className: A.taskItem__titleGroup, children: /* @__PURE__ */ e("h3", { className: A.taskItem__title, children: t }) }),
1181
+ /* @__PURE__ */ c("div", { className: A.taskItem__meta, children: [
1182
+ h.length > 0 && /* @__PURE__ */ e("div", { className: A.metaUser, children: /* @__PURE__ */ e(de, { children: h.map((k, v) => /* @__PURE__ */ e(q, { initials: k.initials, name: k.name }, v)) }) }),
1183
+ /* @__PURE__ */ c("div", { className: A.metaProject, "aria-label": `Projekt: ${n || a}`, children: [
1184
+ /* @__PURE__ */ e("svg", { className: A["icon-sm"], viewBox: "0 0 24 24", children: /* @__PURE__ */ e("path", { d: "M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z" }) }),
1186
1185
  n || a
1187
1186
  ] }),
1188
1187
  l && l !== "low" && /* @__PURE__ */ e(_e, { level: l, size: "small" })
1189
1188
  ] })
1190
1189
  ] }),
1191
- /* @__PURE__ */ e("div", { className: g($.taskItem__deadline, $[`deadline-${u}`]), children: i }),
1192
- /* @__PURE__ */ e("div", { className: $.taskItem__actions, onClick: f, children: /* @__PURE__ */ e(
1190
+ /* @__PURE__ */ e("div", { className: g(A.taskItem__deadline, A[`deadline-${u}`]), children: i }),
1191
+ /* @__PURE__ */ e("div", { className: A.taskItem__actions, onClick: f, children: /* @__PURE__ */ e(
1193
1192
  Se,
1194
1193
  {
1195
- options: ua,
1194
+ options: _a,
1196
1195
  value: r,
1197
1196
  onChange: o
1198
1197
  }
@@ -1203,7 +1202,7 @@ const sa = "_taskItem_77jzk_4", la = "_taskItem__content_77jzk_14", na = "_taskI
1203
1202
  }
1204
1203
  );
1205
1204
  je.displayName = "TaskItem";
1206
- const ma = "_textarea_m18cx_191", ha = "_icon_m18cx_197", d = {
1205
+ const ua = "_textarea_m18cx_191", ma = "_icon_m18cx_197", d = {
1207
1206
  "modal-overlay": "_modal-overlay_m18cx_4",
1208
1207
  "is-active": "_is-active_m18cx_19",
1209
1208
  "modal-content": "_modal-content_m18cx_25",
@@ -1222,8 +1221,8 @@ const ma = "_textarea_m18cx_191", ha = "_icon_m18cx_197", d = {
1222
1221
  "form-row": "_form-row_m18cx_154",
1223
1222
  "form-label": "_form-label_m18cx_160",
1224
1223
  "form-control": "_form-control_m18cx_170",
1225
- textarea: ma,
1226
- icon: ha,
1224
+ textarea: ua,
1225
+ icon: ma,
1227
1226
  "icon-pencil": "_icon-pencil_m18cx_207"
1228
1227
  }, ge = [
1229
1228
  { value: "Q1", label: "Q1 Roadmap" },
@@ -1233,9 +1232,9 @@ const ma = "_textarea_m18cx_191", ha = "_icon_m18cx_197", d = {
1233
1232
  { initials: "FV", name: "Fabian Venmann" },
1234
1233
  { initials: "LV", name: "Luca Vitiello" },
1235
1234
  { initials: "AS", name: "Anna Schmidt" }
1236
- ], $e = p.forwardRef(
1235
+ ], Le = p.forwardRef(
1237
1236
  ({ isOpen: t, onClose: a, task: n, onSave: r, initialMode: i = "view", className: u, ...l }, h) => {
1238
- const [_, m] = A(i), [o, w] = A(null);
1237
+ const [_, m] = j(i), [o, w] = j(null);
1239
1238
  if (le(() => {
1240
1239
  t && n && (w({ ...n, checklist: [...n.checklist] }), m(i));
1241
1240
  }, [t, n, i]), le(() => {
@@ -1296,7 +1295,7 @@ const ma = "_textarea_m18cx_191", ha = "_icon_m18cx_197", d = {
1296
1295
  /* @__PURE__ */ c("div", { className: d["view-badge-row"], children: [
1297
1296
  /* @__PURE__ */ c("div", { className: d["view-group"], children: [
1298
1297
  /* @__PURE__ */ e("span", { className: d["view-label"], children: "Verantwortlich" }),
1299
- o.assignees.length > 0 ? /* @__PURE__ */ e(de, { children: o.assignees.map((s, N) => /* @__PURE__ */ e(V, { initials: s.initials, name: s.name }, N)) }) : /* @__PURE__ */ e(V, { initials: "?", name: "Nicht zugewiesen" })
1298
+ o.assignees.length > 0 ? /* @__PURE__ */ e(de, { children: o.assignees.map((s, N) => /* @__PURE__ */ e(q, { initials: s.initials, name: s.name }, N)) }) : /* @__PURE__ */ e(q, { initials: "?", name: "Nicht zugewiesen" })
1300
1299
  ] }),
1301
1300
  /* @__PURE__ */ c("div", { className: d["view-group"], children: [
1302
1301
  /* @__PURE__ */ e("span", { className: d["view-label"], children: "Projekt" }),
@@ -1408,7 +1407,7 @@ const ma = "_textarea_m18cx_191", ha = "_icon_m18cx_197", d = {
1408
1407
  /* @__PURE__ */ c("div", { className: d["form-group"], children: [
1409
1408
  /* @__PURE__ */ e("label", { className: d["form-label"], htmlFor: "taskAssignee", children: "Verantwortlich" }),
1410
1409
  /* @__PURE__ */ c("div", { style: { display: "flex", alignItems: "center", gap: "0.75rem" }, children: [
1411
- /* @__PURE__ */ e(V, { initials: o.assignees[0]?.initials || "?" }),
1410
+ /* @__PURE__ */ e(q, { initials: o.assignees[0]?.initials || "?" }),
1412
1411
  /* @__PURE__ */ e(
1413
1412
  "select",
1414
1413
  {
@@ -1464,13 +1463,13 @@ const ma = "_textarea_m18cx_191", ha = "_icon_m18cx_197", d = {
1464
1463
  );
1465
1464
  }
1466
1465
  );
1467
- $e.displayName = "TaskDetailModal";
1468
- const va = "_icon_1rthp_4", fe = {
1469
- icon: va,
1466
+ Le.displayName = "TaskDetailModal";
1467
+ const ha = "_icon_1rthp_4", fe = {
1468
+ icon: ha,
1470
1469
  "icon-sm": "_icon-sm_1rthp_14"
1471
- }, ga = p.forwardRef(
1470
+ }, va = p.forwardRef(
1472
1471
  ({ tasks: t, onTaskUpdate: a, onTaskAdd: n, className: r, ...i }, u) => {
1473
- const [l, h] = A(t), [_, m] = A(!1), [o, w] = A(null), [x, C] = A("view"), f = (b) => {
1472
+ const [l, h] = j(t), [_, m] = j(!1), [o, w] = j(null), [x, C] = j("view"), f = (b) => {
1474
1473
  w(b), C("view"), m(!0);
1475
1474
  }, k = () => {
1476
1475
  const b = {
@@ -1536,7 +1535,7 @@ const va = "_icon_1rthp_4", fe = {
1536
1535
  b.id
1537
1536
  )) }),
1538
1537
  /* @__PURE__ */ e(
1539
- $e,
1538
+ Le,
1540
1539
  {
1541
1540
  isOpen: _,
1542
1541
  onClose: () => m(!1),
@@ -1550,33 +1549,33 @@ const va = "_icon_1rthp_4", fe = {
1550
1549
  );
1551
1550
  }
1552
1551
  );
1553
- ga.displayName = "TaskWidget";
1552
+ va.displayName = "TaskWidget";
1554
1553
  export {
1555
- V as Avatar,
1554
+ q as Avatar,
1556
1555
  de as AvatarGroup,
1557
1556
  ie as Badge,
1558
1557
  ce as BaseList,
1559
1558
  we as BaseTable,
1560
1559
  R as Button,
1561
1560
  re as Checklist,
1562
- aa as DashboardPage,
1563
- Ue as DataCard,
1564
- Wt as EmptyState,
1565
- It as ExpandButton,
1561
+ ta as DashboardPage,
1562
+ Je as DataCard,
1563
+ Ae as EmptyState,
1564
+ St as ExpandButton,
1566
1565
  ye as FavoriteButton,
1567
1566
  Ne as ListItem,
1568
1567
  _e as PriorityBadge,
1569
- Rt as ProgressCircle,
1568
+ Pt as ProgressCircle,
1570
1569
  Ie as ProjectTable,
1571
- Et as ScoreBar,
1572
- yt as SearchInput,
1570
+ Bt as ScoreBar,
1571
+ $e as SearchInput,
1573
1572
  Kt as SegmentedControl,
1574
1573
  ke as StatusBadge,
1575
1574
  xe as StatusChart,
1576
1575
  Se as StatusDropdown,
1577
1576
  Ce as StatusLegendItem,
1578
- $e as TaskDetailModal,
1577
+ Le as TaskDetailModal,
1579
1578
  je as TaskItem,
1580
- ga as TaskWidget,
1579
+ va as TaskWidget,
1581
1580
  U as WidgetCard
1582
1581
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fastnd/components",
3
- "version": "1.0.13",
3
+ "version": "1.0.14",
4
4
  "type": "module",
5
5
  "main": "./dist/components.js",
6
6
  "types": "./dist/index.d.ts",