@ranixxd/saju-design-system 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/README.md +73 -0
  2. package/dist/index.cjs +1 -0
  3. package/dist/index.mjs +1157 -0
  4. package/dist/style.css +1 -0
  5. package/dist/types/components/Avatar/Avatar.d.ts +10 -0
  6. package/dist/types/components/Avatar/index.d.ts +2 -0
  7. package/dist/types/components/Badge/Badge.d.ts +11 -0
  8. package/dist/types/components/Badge/index.d.ts +2 -0
  9. package/dist/types/components/Button/Button.d.ts +12 -0
  10. package/dist/types/components/Button/index.d.ts +2 -0
  11. package/dist/types/components/Card/Card.d.ts +11 -0
  12. package/dist/types/components/Card/index.d.ts +2 -0
  13. package/dist/types/components/Checkbox/Checkbox.d.ts +9 -0
  14. package/dist/types/components/Checkbox/index.d.ts +2 -0
  15. package/dist/types/components/Divider/Divider.d.ts +8 -0
  16. package/dist/types/components/Divider/index.d.ts +2 -0
  17. package/dist/types/components/Input/Input.d.ts +14 -0
  18. package/dist/types/components/Input/index.d.ts +2 -0
  19. package/dist/types/components/Modal/Modal.d.ts +14 -0
  20. package/dist/types/components/Modal/index.d.ts +2 -0
  21. package/dist/types/components/Radio/Radio.d.ts +21 -0
  22. package/dist/types/components/Radio/index.d.ts +2 -0
  23. package/dist/types/components/Select/Select.d.ts +18 -0
  24. package/dist/types/components/Select/index.d.ts +2 -0
  25. package/dist/types/components/Spinner/Spinner.d.ts +10 -0
  26. package/dist/types/components/Spinner/index.d.ts +2 -0
  27. package/dist/types/components/Tag/Tag.d.ts +9 -0
  28. package/dist/types/components/Tag/index.d.ts +2 -0
  29. package/dist/types/components/Textarea/Textarea.d.ts +10 -0
  30. package/dist/types/components/Textarea/index.d.ts +2 -0
  31. package/dist/types/components/Toast/Toast.d.ts +22 -0
  32. package/dist/types/components/Toast/index.d.ts +2 -0
  33. package/dist/types/components/Toggle/Toggle.d.ts +8 -0
  34. package/dist/types/components/Toggle/index.d.ts +2 -0
  35. package/dist/types/components/Tooltip/Tooltip.d.ts +10 -0
  36. package/dist/types/components/Tooltip/index.d.ts +2 -0
  37. package/dist/types/components/Typography/Typography.d.ts +17 -0
  38. package/dist/types/components/Typography/index.d.ts +2 -0
  39. package/dist/types/components/index.d.ts +17 -0
  40. package/dist/types/foundations/breakpoints.d.ts +19 -0
  41. package/dist/types/foundations/colors.d.ts +116 -0
  42. package/dist/types/foundations/index.d.ts +5 -0
  43. package/dist/types/foundations/shadows.d.ts +11 -0
  44. package/dist/types/foundations/spacing.d.ts +33 -0
  45. package/dist/types/foundations/typography.d.ts +37 -0
  46. package/dist/types/index.d.ts +2 -0
  47. package/package.json +75 -0
package/dist/style.css ADDED
@@ -0,0 +1 @@
1
+ ._button_1sr1u_1{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:var(--font-medium);border-radius:var(--radius-lg);border:1px solid transparent;cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base);white-space:nowrap;text-decoration:none;outline:none;position:relative;-webkit-user-select:none;user-select:none}._button_1sr1u_1:focus-visible{box-shadow:var(--shadow-focus)}._button_1sr1u_1:disabled{cursor:not-allowed;opacity:.5}._sm_1sr1u_31{padding:var(--space-1) var(--space-3);font-size:var(--text-sm);line-height:1.5;min-height:32px}._md_1sr1u_38{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);line-height:1.5;min-height:40px}._lg_1sr1u_45{padding:var(--space-3) var(--space-6);font-size:var(--text-md);line-height:1.5;min-height:48px}._primary_1sr1u_53{background-color:var(--color-primary-600);color:var(--color-white);border-color:var(--color-primary-600)}._primary_1sr1u_53:hover:not(:disabled){background-color:var(--color-primary-700);border-color:var(--color-primary-700)}._primary_1sr1u_53:active:not(:disabled){background-color:var(--color-primary-800);border-color:var(--color-primary-800)}._secondary_1sr1u_67{background-color:var(--color-neutral-100);color:var(--color-neutral-800);border-color:var(--color-neutral-200)}._secondary_1sr1u_67:hover:not(:disabled){background-color:var(--color-neutral-200);border-color:var(--color-neutral-300)}._secondary_1sr1u_67:active:not(:disabled){background-color:var(--color-neutral-300)}._outline_1sr1u_80{background-color:transparent;color:var(--color-primary-600);border-color:var(--color-primary-600)}._outline_1sr1u_80:hover:not(:disabled){background-color:var(--color-primary-50)}._outline_1sr1u_80:active:not(:disabled){background-color:var(--color-primary-100)}._ghost_1sr1u_92{background-color:transparent;color:var(--color-neutral-700);border-color:transparent}._ghost_1sr1u_92:hover:not(:disabled){background-color:var(--color-neutral-100)}._ghost_1sr1u_92:active:not(:disabled){background-color:var(--color-neutral-200)}._danger_1sr1u_104{background-color:var(--color-danger-600);color:var(--color-white);border-color:var(--color-danger-600)}._danger_1sr1u_104:hover:not(:disabled){background-color:var(--color-danger-700, #be123c)}._danger_1sr1u_104:active:not(:disabled){background-color:var(--color-danger-800, #9f1239)}._danger_1sr1u_104:focus-visible{box-shadow:var(--shadow-focus-danger)}._fullWidth_1sr1u_120{width:100%}._loading_1sr1u_125{cursor:wait}._icon_1sr1u_130{display:inline-flex;align-items:center;flex-shrink:0}._label_1sr1u_136{display:inline-flex;align-items:center}._spinner_1sr1u_142{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:_spin_1sr1u_142 .6s linear infinite;flex-shrink:0}@keyframes _spin_1sr1u_142{to{transform:rotate(360deg)}}._wrapper_1g7vq_1{display:inline-flex;flex-direction:column;gap:var(--space-1)}._fullWidth_1g7vq_7{width:100%}._label_1g7vq_11{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);line-height:1.5}._inputWrapper_1g7vq_18{display:flex;align-items:center;background-color:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);transition:border-color var(--transition-base),box-shadow var(--transition-base);overflow:hidden}._inputWrapper_1g7vq_18:focus-within{border-color:var(--border-focus);box-shadow:var(--shadow-focus)}._inputWrapper_1g7vq_18._error_1g7vq_33{border-color:var(--color-danger-500)}._inputWrapper_1g7vq_18._error_1g7vq_33:focus-within{box-shadow:var(--shadow-focus-danger)}._inputWrapper_1g7vq_18._success_1g7vq_41{border-color:var(--color-success-500)}._inputWrapper_1g7vq_18._disabled_1g7vq_45{background-color:var(--bg-tertiary);cursor:not-allowed}._sm_1g7vq_51 ._input_1g7vq_18,._sm_1g7vq_51._inputWrapper_1g7vq_18{min-height:32px}._sm_1g7vq_51 ._input_1g7vq_18{padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}._md_1g7vq_60 ._input_1g7vq_18,._md_1g7vq_60._inputWrapper_1g7vq_18{min-height:40px}._md_1g7vq_60 ._input_1g7vq_18{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}._lg_1g7vq_69 ._input_1g7vq_18,._lg_1g7vq_69._inputWrapper_1g7vq_18{min-height:48px}._lg_1g7vq_69 ._input_1g7vq_18{padding:var(--space-3) var(--space-4);font-size:var(--text-md)}._input_1g7vq_18{flex:1;width:100%;border:none;outline:none;background:transparent;font-family:var(--font-sans);color:var(--text-primary);line-height:1.5}._input_1g7vq_18::placeholder{color:var(--text-tertiary)}._input_1g7vq_18:disabled{cursor:not-allowed;color:var(--text-disabled)}._addon_1g7vq_98{display:inline-flex;align-items:center;padding:0 var(--space-3);color:var(--text-secondary);flex-shrink:0}._helperText_1g7vq_106{margin:0;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5}._errorText_1g7vq_113{margin:0;font-size:var(--text-xs);color:var(--color-danger-600);line-height:1.5}._wrapper_19m1u_1{display:inline-flex;flex-direction:column;gap:var(--space-1)}._fullWidth_19m1u_7,._fullWidth_19m1u_7 ._textarea_19m1u_10{width:100%}._label_19m1u_14{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);line-height:1.5}._textarea_19m1u_10{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);background-color:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);line-height:1.5;min-height:100px;outline:none;transition:border-color var(--transition-base),box-shadow var(--transition-base)}._textarea_19m1u_10:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus)}._textarea_19m1u_10::placeholder{color:var(--text-tertiary)}._textarea_19m1u_10._error_19m1u_44{border-color:var(--color-danger-500)}._textarea_19m1u_10._error_19m1u_44:focus{box-shadow:var(--shadow-focus-danger)}._textarea_19m1u_10._disabled_19m1u_51{background-color:var(--bg-tertiary);cursor:not-allowed;color:var(--text-disabled)}._helperText_19m1u_57{margin:0;font-size:var(--text-xs);color:var(--text-secondary)}._errorText_19m1u_63{margin:0;font-size:var(--text-xs);color:var(--color-danger-600)}._wrapper_15dy7_1{display:inline-flex;flex-direction:column;gap:var(--space-1)}._fullWidth_15dy7_7,._fullWidth_15dy7_7 ._selectWrapper_15dy7_10{width:100%}._label_15dy7_14{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);line-height:1.5}._selectWrapper_15dy7_10{position:relative;display:inline-flex;align-items:center;background-color:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);transition:border-color var(--transition-base),box-shadow var(--transition-base)}._selectWrapper_15dy7_10:focus-within{border-color:var(--border-focus);box-shadow:var(--shadow-focus)}._selectWrapper_15dy7_10._error_15dy7_36{border-color:var(--color-danger-500)}._selectWrapper_15dy7_10._error_15dy7_36:focus-within{box-shadow:var(--shadow-focus-danger)}._selectWrapper_15dy7_10._disabled_15dy7_43{background-color:var(--bg-tertiary);cursor:not-allowed}._sm_15dy7_49 ._select_15dy7_10{padding:var(--space-1) var(--space-8) var(--space-1) var(--space-3);font-size:var(--text-sm);min-height:32px}._md_15dy7_50 ._select_15dy7_10{padding:var(--space-2) var(--space-8) var(--space-2) var(--space-3);font-size:var(--text-sm);min-height:40px}._lg_15dy7_51 ._select_15dy7_10{padding:var(--space-3) var(--space-10) var(--space-3) var(--space-4);font-size:var(--text-md);min-height:48px}._select_15dy7_10{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;border:none;outline:none;background:transparent;font-family:var(--font-sans);color:var(--text-primary);cursor:pointer;line-height:1.5}._select_15dy7_10:disabled{cursor:not-allowed;color:var(--text-disabled)}._chevron_15dy7_71{position:absolute;right:var(--space-3);display:flex;align-items:center;color:var(--text-secondary);pointer-events:none}._helperText_15dy7_80{margin:0;font-size:var(--text-xs);color:var(--text-secondary)}._errorText_15dy7_86{margin:0;font-size:var(--text-xs);color:var(--color-danger-600)}._wrapper_19mpw_1{display:inline-flex;flex-direction:column;gap:var(--space-1)}._label_19mpw_7{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none}._label_19mpw_7._disabled_19mpw_15{cursor:not-allowed;opacity:.5}._input_19mpw_20{position:absolute;opacity:0;width:0;height:0}._checkmark_19mpw_27{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border:2px solid var(--border-strong);border-radius:var(--radius-md);background-color:var(--bg-primary);transition:background-color var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}._input_19mpw_20:checked+._checkmark_19mpw_27,._input_19mpw_20:indeterminate+._checkmark_19mpw_27{background-color:var(--color-primary-600);border-color:var(--color-primary-600)}._input_19mpw_20:checked+._checkmark_19mpw_27:after{content:"";position:absolute;width:5px;height:9px;border:2px solid white;border-top:none;border-left:none;transform:rotate(45deg) translate(-1px,-1px)}._input_19mpw_20:indeterminate+._checkmark_19mpw_27:after{content:"";position:absolute;width:8px;height:2px;background-color:#fff;border-radius:1px}._input_19mpw_20:focus-visible+._checkmark_19mpw_27{box-shadow:var(--shadow-focus)}._input_19mpw_20._error_19mpw_71+._checkmark_19mpw_27{border-color:var(--color-danger-500)}._labelText_19mpw_75{font-size:var(--text-sm);color:var(--text-primary);line-height:1.5}._helperText_19mpw_81{margin:0 0 0 26px;font-size:var(--text-xs);color:var(--text-secondary)}._errorText_19mpw_88{margin:0 0 0 26px;font-size:var(--text-xs);color:var(--color-danger-600)}._wrapper_t377s_1{display:inline-flex;flex-direction:column;gap:var(--space-1)}._label_t377s_7{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none}._label_t377s_7._disabled_t377s_15{cursor:not-allowed;opacity:.5}._input_t377s_20{position:absolute;opacity:0;width:0;height:0}._dot_t377s_27{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border:2px solid var(--border-strong);border-radius:var(--radius-full);background-color:var(--bg-primary);transition:border-color var(--transition-base),box-shadow var(--transition-base)}._input_t377s_20:checked+._dot_t377s_27{border-color:var(--color-primary-600)}._input_t377s_20:checked+._dot_t377s_27:after{content:"";position:absolute;width:8px;height:8px;background-color:var(--color-primary-600);border-radius:var(--radius-full)}._input_t377s_20:focus-visible+._dot_t377s_27{box-shadow:var(--shadow-focus)}._input_t377s_20._error_t377s_58+._dot_t377s_27{border-color:var(--color-danger-500)}._labelText_t377s_62{font-size:var(--text-sm);color:var(--text-primary);line-height:1.5}._helperText_t377s_68{margin:0 0 0 26px;font-size:var(--text-xs);color:var(--text-secondary)}._group_t377s_76{border:none;padding:0;margin:0;display:inline-flex;flex-direction:column;gap:var(--space-1)}._groupLabel_t377s_85{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2)}._options_t377s_92{display:flex;flex-direction:column;gap:var(--space-2)}._errorText_t377s_98{margin:0;font-size:var(--text-xs);color:var(--color-danger-600)}._wrapper_dgzcf_1{display:inline-flex;flex-direction:column;gap:var(--space-1)}._label_dgzcf_7{display:inline-flex;align-items:center;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none}._label_dgzcf_7._disabled_dgzcf_15{cursor:not-allowed;opacity:.5}._input_dgzcf_20{position:absolute;opacity:0;width:0;height:0}._track_dgzcf_27{position:relative;display:inline-flex;align-items:center;flex-shrink:0;background-color:var(--color-neutral-300);border-radius:var(--radius-full);transition:background-color var(--transition-base)}._sm_dgzcf_38{width:32px;height:18px;padding:2px}._md_dgzcf_39{width:44px;height:24px;padding:3px}._lg_dgzcf_40{width:56px;height:30px;padding:3px}._thumb_dgzcf_42{display:block;background-color:#fff;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);transition:transform var(--transition-base)}._sm_dgzcf_38 ._thumb_dgzcf_42{width:14px;height:14px}._md_dgzcf_39 ._thumb_dgzcf_42{width:18px;height:18px}._lg_dgzcf_40 ._thumb_dgzcf_42{width:24px;height:24px}._input_dgzcf_20:checked+._track_dgzcf_27{background-color:var(--color-primary-600)}._input_dgzcf_20:checked+._sm_dgzcf_38 ._thumb_dgzcf_42{transform:translate(14px)}._input_dgzcf_20:checked+._md_dgzcf_39 ._thumb_dgzcf_42{transform:translate(20px)}._input_dgzcf_20:checked+._lg_dgzcf_40 ._thumb_dgzcf_42{transform:translate(26px)}._sm_dgzcf_38 ._thumb_dgzcf_42{--checked-offset: 14px}._md_dgzcf_39 ._thumb_dgzcf_42{--checked-offset: 20px}._lg_dgzcf_40 ._thumb_dgzcf_42{--checked-offset: 26px}._input_dgzcf_20:checked~* ._thumb_dgzcf_42,._input_dgzcf_20:checked+._track_dgzcf_27 ._thumb_dgzcf_42{transform:translate(var(--checked-offset, 20px))}._input_dgzcf_20:focus-visible+._track_dgzcf_27{box-shadow:var(--shadow-focus)}._labelText_dgzcf_75{font-size:var(--text-sm);color:var(--text-primary);line-height:1.5}._helperText_dgzcf_81{margin:0;font-size:var(--text-xs);color:var(--text-secondary)}._badge_1mczn_1{display:inline-flex;align-items:center;gap:var(--space-1);font-weight:var(--font-medium);border-radius:var(--radius-full);white-space:nowrap}._sm_1mczn_11{padding:0 var(--space-2);font-size:var(--text-xs);line-height:20px}._md_1mczn_12{padding:2px var(--space-2);font-size:var(--text-xs);line-height:20px}._neutral_1mczn_15{background-color:var(--color-neutral-100);color:var(--color-neutral-700)}._primary_1mczn_16{background-color:var(--color-primary-100);color:var(--color-primary-700)}._success_1mczn_17{background-color:var(--color-success-50);color:var(--color-success-700)}._warning_1mczn_18{background-color:var(--color-warning-50);color:var(--color-warning-600)}._danger_1mczn_19{background-color:var(--color-danger-50);color:var(--color-danger-600)}._info_1mczn_20{background-color:var(--color-info-50);color:var(--color-info-600)}._dotIndicator_1mczn_23{display:inline-block;width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0}._neutral_1mczn_15 ._dotIndicator_1mczn_23{background-color:var(--color-neutral-500)}._primary_1mczn_16 ._dotIndicator_1mczn_23{background-color:var(--color-primary-600)}._success_1mczn_17 ._dotIndicator_1mczn_23{background-color:var(--color-success-500)}._warning_1mczn_18 ._dotIndicator_1mczn_23{background-color:var(--color-warning-500)}._danger_1mczn_19 ._dotIndicator_1mczn_23{background-color:var(--color-danger-500)}._info_1mczn_20 ._dotIndicator_1mczn_23{background-color:var(--color-info-500)}._tag_2pfl6_1{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium);line-height:1.5;border:1px solid transparent}._default_2pfl6_13{background-color:var(--color-neutral-100);color:var(--color-neutral-700);border-color:var(--color-neutral-200)}._primary_2pfl6_14{background-color:var(--color-primary-50);color:var(--color-primary-700);border-color:var(--color-primary-200)}._success_2pfl6_15{background-color:var(--color-success-50);color:var(--color-success-700);border-color:var(--color-success-200, #bbf7d0)}._warning_2pfl6_16{background-color:var(--color-warning-50);color:var(--color-warning-600);border-color:var(--color-warning-200, #fde68a)}._danger_2pfl6_17{background-color:var(--color-danger-50);color:var(--color-danger-600);border-color:var(--color-danger-200, #fecdd3)}._label_2pfl6_19{line-height:1}._removeBtn_2pfl6_21{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:none;cursor:pointer;color:inherit;opacity:.6;transition:opacity var(--transition-fast);border-radius:var(--radius-sm)}._removeBtn_2pfl6_21:hover{opacity:1}._avatar_1ggx9_1{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);overflow:hidden;flex-shrink:0;font-weight:var(--font-semibold);color:#fff;-webkit-user-select:none;user-select:none}._xs_1ggx9_14{width:24px;height:24px;font-size:10px}._sm_1ggx9_15{width:32px;height:32px;font-size:var(--text-xs)}._md_1ggx9_16{width:40px;height:40px;font-size:var(--text-sm)}._lg_1ggx9_17{width:48px;height:48px;font-size:var(--text-md)}._xl_1ggx9_18{width:64px;height:64px;font-size:var(--text-xl)}._img_1ggx9_20{width:100%;height:100%;object-fit:cover}._initials_1ggx9_26{line-height:1}._card_tmi9g_1{background-color:var(--bg-primary);border-radius:var(--radius-xl);overflow:hidden}._padding_none_tmi9g_8{padding:0}._padding_sm_tmi9g_9{padding:var(--space-3)}._padding_md_tmi9g_10{padding:var(--space-5)}._padding_lg_tmi9g_11{padding:var(--space-8)}._shadow_none_tmi9g_14{box-shadow:none}._shadow_sm_tmi9g_15{box-shadow:var(--shadow-sm)}._shadow_md_tmi9g_16{box-shadow:var(--shadow-md)}._shadow_lg_tmi9g_17{box-shadow:var(--shadow-lg)}._bordered_tmi9g_20{border:1px solid var(--border-default)}._hoverable_tmi9g_25{cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base)}._hoverable_tmi9g_25:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}._header_tmi9g_35{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-default);font-weight:var(--font-semibold)}._body_tmi9g_41{padding:var(--space-5)}._footer_tmi9g_45{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-default);background-color:var(--bg-secondary)}._overlay_1eqx2_1{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);animation:_fadeIn_1eqx2_1 .15s ease}._modal_1eqx2_13{background-color:var(--bg-primary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:calc(100vh - var(--space-8));overflow:hidden;animation:_slideUp_1eqx2_1 .15s ease;width:100%}._sm_1eqx2_26{max-width:400px}._md_1eqx2_27{max-width:560px}._lg_1eqx2_28{max-width:720px}._xl_1eqx2_29{max-width:960px}._full_1eqx2_30{max-width:calc(100vw - var(--space-8));height:calc(100vh - var(--space-8))}._header_1eqx2_32{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-default);flex-shrink:0}._title_1eqx2_41{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}._closeBtn_1eqx2_48{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-lg);transition:background-color var(--transition-fast),color var(--transition-fast);flex-shrink:0}._closeBtn_1eqx2_48:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}._body_1eqx2_68{padding:var(--space-6);overflow-y:auto;flex:1}._footer_1eqx2_74{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-default);display:flex;gap:var(--space-3);justify-content:flex-end;flex-shrink:0;background-color:var(--bg-secondary)}@keyframes _fadeIn_1eqx2_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUp_1eqx2_1{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}._container_7pb5x_1{position:fixed;bottom:var(--space-6);right:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);z-index:var(--z-toast);pointer-events:none}._toast_7pb5x_12{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);min-width:300px;max-width:420px;pointer-events:auto;animation:_slideInRight_7pb5x_1 .2s ease;border-left:3px solid transparent;background-color:var(--bg-primary)}._info_7pb5x_28{border-left-color:var(--color-info-500)}._success_7pb5x_29{border-left-color:var(--color-success-500)}._warning_7pb5x_30{border-left-color:var(--color-warning-500)}._danger_7pb5x_31{border-left-color:var(--color-danger-500)}._icon_7pb5x_33{display:flex;align-items:center;flex-shrink:0;margin-top:1px}._info_7pb5x_28 ._icon_7pb5x_33{color:var(--color-info-500)}._success_7pb5x_29 ._icon_7pb5x_33{color:var(--color-success-500)}._warning_7pb5x_30 ._icon_7pb5x_33{color:var(--color-warning-500)}._danger_7pb5x_31 ._icon_7pb5x_33{color:var(--color-danger-500)}._content_7pb5x_45{flex:1;min-width:0}._title_7pb5x_50{margin:0 0 var(--space-1);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}._message_7pb5x_57{margin:0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.4}._closeBtn_7pb5x_64{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;cursor:pointer;color:var(--text-tertiary);border-radius:var(--radius-md);flex-shrink:0;transition:color var(--transition-fast),background-color var(--transition-fast)}._closeBtn_7pb5x_64:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}@keyframes _slideInRight_7pb5x_1{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}._wrapper_mtqtk_1{position:relative;display:inline-flex}._tooltip_mtqtk_6{position:absolute;z-index:var(--z-tooltip);background-color:var(--color-neutral-900);color:var(--color-white);font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);white-space:nowrap;pointer-events:none;animation:_fadeIn_mtqtk_1 .1s ease;max-width:200px;white-space:normal;text-align:center;line-height:1.4}._top_mtqtk_25{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}._bottom_mtqtk_26{top:calc(100% + 8px);left:50%;transform:translate(-50%)}._left_mtqtk_27{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}._right_mtqtk_28{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}._arrow_mtqtk_31{position:absolute;width:6px;height:6px;background-color:var(--color-neutral-900);transform:rotate(45deg)}._top_mtqtk_25 ._arrow_mtqtk_31{top:100%;left:50%;translate:-50% -50%}._bottom_mtqtk_26 ._arrow_mtqtk_31{bottom:100%;left:50%;translate:-50% 50%}._left_mtqtk_27 ._arrow_mtqtk_31{left:100%;top:50%;translate:-50% -50%}._right_mtqtk_28 ._arrow_mtqtk_31{right:100%;top:50%;translate:50% -50%}@keyframes _fadeIn_mtqtk_1{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}._spinner_zltzo_1{display:inline-block;border-radius:var(--radius-full);border-style:solid;animation:_spin_zltzo_1 .65s linear infinite;flex-shrink:0}._sm_zltzo_10{width:16px;height:16px;border-width:2px}._md_zltzo_11{width:24px;height:24px;border-width:2.5px}._lg_zltzo_12{width:32px;height:32px;border-width:3px}._xl_zltzo_13{width:48px;height:48px;border-width:4px}._primary_zltzo_16{border-color:var(--color-primary-200);border-top-color:var(--color-primary-600)}._white_zltzo_17{border-color:#ffffff4d;border-top-color:#fff}._neutral_zltzo_18{border-color:var(--color-neutral-200);border-top-color:var(--color-neutral-600)}@keyframes _spin_zltzo_1{to{transform:rotate(360deg)}}._h1_7jlcq_2{font-size:var(--text-5xl);font-weight:var(--font-bold);line-height:1.1;letter-spacing:-.025em;margin:0}._h2_7jlcq_3{font-size:var(--text-4xl);font-weight:var(--font-bold);line-height:1.2;letter-spacing:-.02em;margin:0}._h3_7jlcq_4{font-size:var(--text-3xl);font-weight:var(--font-semibold);line-height:1.25;margin:0}._h4_7jlcq_5{font-size:var(--text-2xl);font-weight:var(--font-semibold);line-height:1.3;margin:0}._h5_7jlcq_6{font-size:var(--text-xl);font-weight:var(--font-semibold);line-height:1.35;margin:0}._h6_7jlcq_7{font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:1.4;margin:0}._text_7jlcq_10{margin:0}._body_7jlcq_11{font-size:var(--text-md);line-height:1.6}._body_sm_7jlcq_12{font-size:var(--text-sm);line-height:1.5}._caption_7jlcq_13{font-size:var(--text-xs);line-height:1.4}._overline_7jlcq_14{font-size:var(--text-xs);line-height:1.4;letter-spacing:.08em;text-transform:uppercase;font-weight:var(--font-semibold)}._color_primary_7jlcq_17{color:var(--text-primary)}._color_secondary_7jlcq_18{color:var(--text-secondary)}._color_tertiary_7jlcq_19{color:var(--text-tertiary)}._color_inverse_7jlcq_20{color:var(--text-inverse)}._color_danger_7jlcq_21{color:var(--color-danger-600)}._color_success_7jlcq_22{color:var(--color-success-600)}._weight_regular_7jlcq_25{font-weight:var(--font-regular)}._weight_medium_7jlcq_26{font-weight:var(--font-medium)}._weight_semibold_7jlcq_27{font-weight:var(--font-semibold)}._weight_bold_7jlcq_28{font-weight:var(--font-bold)}._truncate_7jlcq_31{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}._horizontal_190o0_1{border:none;border-top:1px solid var(--border-default);margin:0;width:100%}._vertical_190o0_8{display:inline-block;width:1px;height:1em;background-color:var(--border-default);vertical-align:middle;margin:0 var(--space-2)}._withLabel_190o0_17{display:flex;align-items:center;gap:var(--space-3)}._line_190o0_23{flex:1;height:1px;background-color:var(--border-default)}._labelText_190o0_29{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-tertiary);white-space:nowrap}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ export type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
3
+ export interface AvatarProps {
4
+ src?: string;
5
+ alt?: string;
6
+ name?: string;
7
+ size?: AvatarSize;
8
+ className?: string;
9
+ }
10
+ export declare const Avatar: React.FC<AvatarProps>;
@@ -0,0 +1,2 @@
1
+ export { Avatar } from './Avatar';
2
+ export type { AvatarProps, AvatarSize } from './Avatar';
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export type BadgeVariant = 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'neutral';
3
+ export type BadgeSize = 'sm' | 'md';
4
+ export interface BadgeProps {
5
+ variant?: BadgeVariant;
6
+ size?: BadgeSize;
7
+ dot?: boolean;
8
+ children: React.ReactNode;
9
+ className?: string;
10
+ }
11
+ export declare const Badge: React.FC<BadgeProps>;
@@ -0,0 +1,2 @@
1
+ export { Badge } from './Badge';
2
+ export type { BadgeProps, BadgeVariant, BadgeSize } from './Badge';
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ export type ButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger';
3
+ export type ButtonSize = 'sm' | 'md' | 'lg';
4
+ export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
5
+ variant?: ButtonVariant;
6
+ size?: ButtonSize;
7
+ loading?: boolean;
8
+ leftIcon?: React.ReactNode;
9
+ rightIcon?: React.ReactNode;
10
+ fullWidth?: boolean;
11
+ }
12
+ export declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export { Button } from './Button';
2
+ export type { ButtonProps, ButtonVariant, ButtonSize } from './Button';
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
3
+ padding?: 'none' | 'sm' | 'md' | 'lg';
4
+ shadow?: 'none' | 'sm' | 'md' | 'lg';
5
+ bordered?: boolean;
6
+ hoverable?: boolean;
7
+ }
8
+ export declare const Card: React.FC<CardProps>;
9
+ export declare const CardHeader: React.FC<React.HTMLAttributes<HTMLDivElement>>;
10
+ export declare const CardBody: React.FC<React.HTMLAttributes<HTMLDivElement>>;
11
+ export declare const CardFooter: React.FC<React.HTMLAttributes<HTMLDivElement>>;
@@ -0,0 +1,2 @@
1
+ export { Card, CardHeader, CardBody, CardFooter } from './Card';
2
+ export type { CardProps } from './Card';
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export interface CheckboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
3
+ label?: string;
4
+ helperText?: string;
5
+ errorMessage?: string;
6
+ isError?: boolean;
7
+ indeterminate?: boolean;
8
+ }
9
+ export declare const Checkbox: React.ForwardRefExoticComponent<CheckboxProps & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,2 @@
1
+ export { Checkbox } from './Checkbox';
2
+ export type { CheckboxProps } from './Checkbox';
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export type DividerOrientation = 'horizontal' | 'vertical';
3
+ export interface DividerProps {
4
+ orientation?: DividerOrientation;
5
+ label?: string;
6
+ className?: string;
7
+ }
8
+ export declare const Divider: React.FC<DividerProps>;
@@ -0,0 +1,2 @@
1
+ export { Divider } from './Divider';
2
+ export type { DividerProps, DividerOrientation } from './Divider';
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ export type InputSize = 'sm' | 'md' | 'lg';
3
+ export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'> {
4
+ size?: InputSize;
5
+ label?: string;
6
+ helperText?: string;
7
+ errorMessage?: string;
8
+ leftAddon?: React.ReactNode;
9
+ rightAddon?: React.ReactNode;
10
+ isError?: boolean;
11
+ isSuccess?: boolean;
12
+ fullWidth?: boolean;
13
+ }
14
+ export declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,2 @@
1
+ export { Input } from './Input';
2
+ export type { InputProps, InputSize } from './Input';
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ export type ModalSize = 'sm' | 'md' | 'lg' | 'xl' | 'full';
3
+ export interface ModalProps {
4
+ isOpen: boolean;
5
+ onClose: () => void;
6
+ title?: string;
7
+ size?: ModalSize;
8
+ closeOnOverlayClick?: boolean;
9
+ closeOnEscape?: boolean;
10
+ children: React.ReactNode;
11
+ footer?: React.ReactNode;
12
+ className?: string;
13
+ }
14
+ export declare const Modal: React.FC<ModalProps>;
@@ -0,0 +1,2 @@
1
+ export { Modal } from './Modal';
2
+ export type { ModalProps, ModalSize } from './Modal';
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ export interface RadioProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
3
+ label?: string;
4
+ helperText?: string;
5
+ isError?: boolean;
6
+ }
7
+ export declare const Radio: React.ForwardRefExoticComponent<RadioProps & React.RefAttributes<HTMLInputElement>>;
8
+ export interface RadioGroupProps {
9
+ name: string;
10
+ label?: string;
11
+ options: {
12
+ label: string;
13
+ value: string;
14
+ disabled?: boolean;
15
+ }[];
16
+ value?: string;
17
+ onChange?: (value: string) => void;
18
+ isError?: boolean;
19
+ errorMessage?: string;
20
+ }
21
+ export declare const RadioGroup: React.FC<RadioGroupProps>;
@@ -0,0 +1,2 @@
1
+ export { Radio, RadioGroup } from './Radio';
2
+ export type { RadioProps, RadioGroupProps } from './Radio';
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ export type SelectSize = 'sm' | 'md' | 'lg';
3
+ export interface SelectOption {
4
+ label: string;
5
+ value: string;
6
+ disabled?: boolean;
7
+ }
8
+ export interface SelectProps extends Omit<React.SelectHTMLAttributes<HTMLSelectElement>, 'size'> {
9
+ size?: SelectSize;
10
+ label?: string;
11
+ helperText?: string;
12
+ errorMessage?: string;
13
+ isError?: boolean;
14
+ fullWidth?: boolean;
15
+ options?: SelectOption[];
16
+ placeholder?: string;
17
+ }
18
+ export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
@@ -0,0 +1,2 @@
1
+ export { Select } from './Select';
2
+ export type { SelectProps, SelectSize, SelectOption } from './Select';
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ export type SpinnerSize = 'sm' | 'md' | 'lg' | 'xl';
3
+ export type SpinnerVariant = 'primary' | 'white' | 'neutral';
4
+ export interface SpinnerProps {
5
+ size?: SpinnerSize;
6
+ variant?: SpinnerVariant;
7
+ label?: string;
8
+ className?: string;
9
+ }
10
+ export declare const Spinner: React.FC<SpinnerProps>;
@@ -0,0 +1,2 @@
1
+ export { Spinner } from './Spinner';
2
+ export type { SpinnerProps, SpinnerSize, SpinnerVariant } from './Spinner';
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export type TagVariant = 'default' | 'primary' | 'success' | 'warning' | 'danger';
3
+ export interface TagProps {
4
+ variant?: TagVariant;
5
+ onRemove?: () => void;
6
+ children: React.ReactNode;
7
+ className?: string;
8
+ }
9
+ export declare const Tag: React.FC<TagProps>;
@@ -0,0 +1,2 @@
1
+ export { Tag } from './Tag';
2
+ export type { TagProps, TagVariant } from './Tag';
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ export interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
3
+ label?: string;
4
+ helperText?: string;
5
+ errorMessage?: string;
6
+ isError?: boolean;
7
+ fullWidth?: boolean;
8
+ resize?: 'none' | 'vertical' | 'horizontal' | 'both';
9
+ }
10
+ export declare const Textarea: React.ForwardRefExoticComponent<TextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
@@ -0,0 +1,2 @@
1
+ export { Textarea } from './Textarea';
2
+ export type { TextareaProps } from './Textarea';
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ export type ToastVariant = 'info' | 'success' | 'warning' | 'danger';
3
+ export interface ToastItem {
4
+ id: string;
5
+ variant?: ToastVariant;
6
+ title?: string;
7
+ message: string;
8
+ duration?: number;
9
+ }
10
+ export interface ToastProps extends ToastItem {
11
+ onDismiss: (id: string) => void;
12
+ }
13
+ export declare const Toast: React.FC<ToastProps>;
14
+ interface ToastContextValue {
15
+ addToast: (toast: Omit<ToastItem, 'id'>) => void;
16
+ removeToast: (id: string) => void;
17
+ }
18
+ export declare const ToastProvider: React.FC<{
19
+ children: React.ReactNode;
20
+ }>;
21
+ export declare function useToast(): ToastContextValue;
22
+ export {};
@@ -0,0 +1,2 @@
1
+ export { Toast, ToastProvider, useToast } from './Toast';
2
+ export type { ToastProps, ToastItem, ToastVariant } from './Toast';
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export type ToggleSize = 'sm' | 'md' | 'lg';
3
+ export interface ToggleProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'> {
4
+ size?: ToggleSize;
5
+ label?: string;
6
+ helperText?: string;
7
+ }
8
+ export declare const Toggle: React.ForwardRefExoticComponent<ToggleProps & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,2 @@
1
+ export { Toggle } from './Toggle';
2
+ export type { ToggleProps, ToggleSize } from './Toggle';
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ export type TooltipPlacement = 'top' | 'bottom' | 'left' | 'right';
3
+ export interface TooltipProps {
4
+ content: React.ReactNode;
5
+ placement?: TooltipPlacement;
6
+ delay?: number;
7
+ children: React.ReactElement;
8
+ className?: string;
9
+ }
10
+ export declare const Tooltip: React.FC<TooltipProps>;
@@ -0,0 +1,2 @@
1
+ export { Tooltip } from './Tooltip';
2
+ export type { TooltipProps, TooltipPlacement } from './Tooltip';
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ export type HeadingLevel = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
3
+ export interface HeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
4
+ as?: HeadingLevel;
5
+ level?: HeadingLevel;
6
+ }
7
+ export declare const Heading: React.FC<HeadingProps>;
8
+ export type TextVariant = 'body' | 'body-sm' | 'caption' | 'overline';
9
+ export type TextColor = 'primary' | 'secondary' | 'tertiary' | 'inverse' | 'danger' | 'success';
10
+ export interface TextProps extends React.HTMLAttributes<HTMLElement> {
11
+ as?: keyof React.JSX.IntrinsicElements;
12
+ variant?: TextVariant;
13
+ color?: TextColor;
14
+ weight?: 'regular' | 'medium' | 'semibold' | 'bold';
15
+ truncate?: boolean;
16
+ }
17
+ export declare const Text: React.FC<TextProps>;
@@ -0,0 +1,2 @@
1
+ export { Heading, Text } from './Typography';
2
+ export type { HeadingProps, HeadingLevel, TextProps, TextVariant, TextColor } from './Typography';
@@ -0,0 +1,17 @@
1
+ export * from './Button';
2
+ export * from './Input';
3
+ export * from './Textarea';
4
+ export * from './Select';
5
+ export * from './Checkbox';
6
+ export * from './Radio';
7
+ export * from './Toggle';
8
+ export * from './Badge';
9
+ export * from './Tag';
10
+ export * from './Avatar';
11
+ export * from './Card';
12
+ export * from './Modal';
13
+ export * from './Toast';
14
+ export * from './Tooltip';
15
+ export * from './Spinner';
16
+ export * from './Typography';
17
+ export * from './Divider';
@@ -0,0 +1,19 @@
1
+ export declare const breakpoints: {
2
+ readonly sm: "640px";
3
+ readonly md: "768px";
4
+ readonly lg: "1024px";
5
+ readonly xl: "1280px";
6
+ readonly '2xl': "1536px";
7
+ };
8
+ export declare const zIndex: {
9
+ readonly hide: -1;
10
+ readonly base: 0;
11
+ readonly raised: 1;
12
+ readonly dropdown: 1000;
13
+ readonly sticky: 1100;
14
+ readonly overlay: 1200;
15
+ readonly modal: 1300;
16
+ readonly popover: 1400;
17
+ readonly toast: 1500;
18
+ readonly tooltip: 1600;
19
+ };
@@ -0,0 +1,116 @@
1
+ export declare const palette: {
2
+ readonly white: "#FFFFFF";
3
+ readonly black: "#000000";
4
+ readonly neutral: {
5
+ readonly 50: "#F9FAFB";
6
+ readonly 100: "#F3F4F6";
7
+ readonly 200: "#E5E7EB";
8
+ readonly 300: "#D1D5DB";
9
+ readonly 400: "#9CA3AF";
10
+ readonly 500: "#6B7280";
11
+ readonly 600: "#4B5563";
12
+ readonly 700: "#374151";
13
+ readonly 800: "#1F2937";
14
+ readonly 900: "#111827";
15
+ readonly 950: "#030712";
16
+ };
17
+ readonly primary: {
18
+ readonly 50: "#EFF6FF";
19
+ readonly 100: "#DBEAFE";
20
+ readonly 200: "#BFDBFE";
21
+ readonly 300: "#93C5FD";
22
+ readonly 400: "#60A5FA";
23
+ readonly 500: "#3B82F6";
24
+ readonly 600: "#2563EB";
25
+ readonly 700: "#1D4ED8";
26
+ readonly 800: "#1E40AF";
27
+ readonly 900: "#1E3A8A";
28
+ };
29
+ readonly success: {
30
+ readonly 50: "#F0FDF4";
31
+ readonly 100: "#DCFCE7";
32
+ readonly 200: "#BBF7D0";
33
+ readonly 300: "#86EFAC";
34
+ readonly 400: "#4ADE80";
35
+ readonly 500: "#22C55E";
36
+ readonly 600: "#16A34A";
37
+ readonly 700: "#15803D";
38
+ readonly 800: "#166534";
39
+ readonly 900: "#14532D";
40
+ };
41
+ readonly warning: {
42
+ readonly 50: "#FFFBEB";
43
+ readonly 100: "#FEF3C7";
44
+ readonly 200: "#FDE68A";
45
+ readonly 300: "#FCD34D";
46
+ readonly 400: "#FBBF24";
47
+ readonly 500: "#F59E0B";
48
+ readonly 600: "#D97706";
49
+ readonly 700: "#B45309";
50
+ readonly 800: "#92400E";
51
+ readonly 900: "#78350F";
52
+ };
53
+ readonly danger: {
54
+ readonly 50: "#FFF1F2";
55
+ readonly 100: "#FFE4E6";
56
+ readonly 200: "#FECDD3";
57
+ readonly 300: "#FDA4AF";
58
+ readonly 400: "#FB7185";
59
+ readonly 500: "#F43F5E";
60
+ readonly 600: "#E11D48";
61
+ readonly 700: "#BE123C";
62
+ readonly 800: "#9F1239";
63
+ readonly 900: "#881337";
64
+ };
65
+ readonly info: {
66
+ readonly 50: "#ECFEFF";
67
+ readonly 100: "#CFFAFE";
68
+ readonly 200: "#A5F3FC";
69
+ readonly 300: "#67E8F9";
70
+ readonly 400: "#22D3EE";
71
+ readonly 500: "#06B6D4";
72
+ readonly 600: "#0891B2";
73
+ readonly 700: "#0E7490";
74
+ readonly 800: "#155E75";
75
+ readonly 900: "#164E63";
76
+ };
77
+ };
78
+ export declare const semanticColors: {
79
+ readonly text: {
80
+ readonly primary: "#111827";
81
+ readonly secondary: "#4B5563";
82
+ readonly tertiary: "#9CA3AF";
83
+ readonly disabled: "#D1D5DB";
84
+ readonly inverse: "#FFFFFF";
85
+ readonly link: "#2563EB";
86
+ readonly linkHover: "#1D4ED8";
87
+ };
88
+ readonly background: {
89
+ readonly primary: "#FFFFFF";
90
+ readonly secondary: "#F9FAFB";
91
+ readonly tertiary: "#F3F4F6";
92
+ readonly overlay: "rgba(0, 0, 0, 0.5)";
93
+ readonly inverse: "#111827";
94
+ };
95
+ readonly border: {
96
+ readonly default: "#E5E7EB";
97
+ readonly strong: "#D1D5DB";
98
+ readonly focus: "#3B82F6";
99
+ };
100
+ readonly action: {
101
+ readonly primary: "#2563EB";
102
+ readonly primaryHover: "#1D4ED8";
103
+ readonly primaryActive: "#1E40AF";
104
+ readonly primaryDisabled: "#BFDBFE";
105
+ };
106
+ readonly status: {
107
+ readonly success: "#22C55E";
108
+ readonly successBg: "#F0FDF4";
109
+ readonly warning: "#F59E0B";
110
+ readonly warningBg: "#FFFBEB";
111
+ readonly danger: "#F43F5E";
112
+ readonly dangerBg: "#FFF1F2";
113
+ readonly info: "#06B6D4";
114
+ readonly infoBg: "#ECFEFF";
115
+ };
116
+ };
@@ -0,0 +1,5 @@
1
+ export * from './colors';
2
+ export * from './typography';
3
+ export * from './spacing';
4
+ export * from './shadows';
5
+ export * from './breakpoints';
@@ -0,0 +1,11 @@
1
+ export declare const shadows: {
2
+ readonly none: "none";
3
+ readonly sm: "0 1px 2px 0 rgba(0, 0, 0, 0.05)";
4
+ readonly md: "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)";
5
+ readonly lg: "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)";
6
+ readonly xl: "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)";
7
+ readonly '2xl': "0 25px 50px -12px rgba(0, 0, 0, 0.25)";
8
+ readonly inner: "inset 0 2px 4px 0 rgba(0, 0, 0, 0.05)";
9
+ readonly focus: "0 0 0 3px rgba(59, 130, 246, 0.4)";
10
+ readonly focusDanger: "0 0 0 3px rgba(244, 63, 94, 0.4)";
11
+ };
@@ -0,0 +1,33 @@
1
+ export declare const spacing: {
2
+ readonly 0: "0px";
3
+ readonly 0.5: "0.125rem";
4
+ readonly 1: "0.25rem";
5
+ readonly 1.5: "0.375rem";
6
+ readonly 2: "0.5rem";
7
+ readonly 2.5: "0.625rem";
8
+ readonly 3: "0.75rem";
9
+ readonly 3.5: "0.875rem";
10
+ readonly 4: "1rem";
11
+ readonly 5: "1.25rem";
12
+ readonly 6: "1.5rem";
13
+ readonly 7: "1.75rem";
14
+ readonly 8: "2rem";
15
+ readonly 9: "2.25rem";
16
+ readonly 10: "2.5rem";
17
+ readonly 12: "3rem";
18
+ readonly 14: "3.5rem";
19
+ readonly 16: "4rem";
20
+ readonly 20: "5rem";
21
+ readonly 24: "6rem";
22
+ readonly 32: "8rem";
23
+ };
24
+ export declare const borderRadius: {
25
+ readonly none: "0px";
26
+ readonly sm: "0.125rem";
27
+ readonly md: "0.375rem";
28
+ readonly lg: "0.5rem";
29
+ readonly xl: "0.75rem";
30
+ readonly '2xl': "1rem";
31
+ readonly '3xl': "1.5rem";
32
+ readonly full: "9999px";
33
+ };
@@ -0,0 +1,37 @@
1
+ export declare const fontFamily: {
2
+ readonly sans: string;
3
+ readonly mono: string;
4
+ };
5
+ export declare const fontSize: {
6
+ readonly xs: "0.75rem";
7
+ readonly sm: "0.875rem";
8
+ readonly md: "1rem";
9
+ readonly lg: "1.125rem";
10
+ readonly xl: "1.25rem";
11
+ readonly '2xl': "1.5rem";
12
+ readonly '3xl': "1.875rem";
13
+ readonly '4xl': "2.25rem";
14
+ readonly '5xl': "3rem";
15
+ };
16
+ export declare const fontWeight: {
17
+ readonly regular: 400;
18
+ readonly medium: 500;
19
+ readonly semibold: 600;
20
+ readonly bold: 700;
21
+ };
22
+ export declare const lineHeight: {
23
+ readonly none: 1;
24
+ readonly tight: 1.25;
25
+ readonly snug: 1.375;
26
+ readonly normal: 1.5;
27
+ readonly relaxed: 1.625;
28
+ readonly loose: 2;
29
+ };
30
+ export declare const letterSpacing: {
31
+ readonly tighter: "-0.05em";
32
+ readonly tight: "-0.025em";
33
+ readonly normal: "0em";
34
+ readonly wide: "0.025em";
35
+ readonly wider: "0.05em";
36
+ readonly widest: "0.1em";
37
+ };
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ export * from './foundations';