@xfilecom/front-core 0.1.0 → 0.2.5

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 (49) hide show
  1. package/dist/base.css +518 -0
  2. package/dist/components/Badge.d.ts +6 -0
  3. package/dist/components/Badge.js +8 -0
  4. package/dist/components/Box.d.ts +6 -0
  5. package/dist/components/Box.js +9 -0
  6. package/dist/components/Button.d.ts +5 -0
  7. package/dist/components/Button.js +8 -0
  8. package/dist/components/Card.d.ts +5 -0
  9. package/dist/components/Card.js +8 -0
  10. package/dist/components/InlineErrorList.d.ts +12 -0
  11. package/dist/components/InlineErrorList.js +11 -0
  12. package/dist/components/Input.d.ts +3 -0
  13. package/dist/components/Input.js +9 -0
  14. package/dist/components/LoadingOverlay.d.ts +8 -0
  15. package/dist/components/LoadingOverlay.js +11 -0
  16. package/dist/components/Stack.d.ts +8 -0
  17. package/dist/components/Stack.js +16 -0
  18. package/dist/components/Text.d.ts +22 -0
  19. package/dist/components/Text.js +20 -0
  20. package/dist/components/Toast.d.ts +25 -0
  21. package/dist/components/Toast.js +42 -0
  22. package/dist/components/atoms/Badge.d.ts +6 -0
  23. package/dist/components/atoms/Badge.js +8 -0
  24. package/dist/components/atoms/Box.d.ts +6 -0
  25. package/dist/components/atoms/Box.js +9 -0
  26. package/dist/components/atoms/Button.d.ts +5 -0
  27. package/dist/components/atoms/Button.js +8 -0
  28. package/dist/components/atoms/Card.d.ts +5 -0
  29. package/dist/components/atoms/Card.js +8 -0
  30. package/dist/components/atoms/InlineErrorList.d.ts +12 -0
  31. package/dist/components/atoms/InlineErrorList.js +11 -0
  32. package/dist/components/atoms/Input.d.ts +3 -0
  33. package/dist/components/atoms/Input.js +9 -0
  34. package/dist/components/atoms/LoadingOverlay.d.ts +8 -0
  35. package/dist/components/atoms/LoadingOverlay.js +11 -0
  36. package/dist/components/atoms/Stack.d.ts +8 -0
  37. package/dist/components/atoms/Stack.js +16 -0
  38. package/dist/components/atoms/Text.d.ts +22 -0
  39. package/dist/components/atoms/Text.js +20 -0
  40. package/dist/components/atoms/Toast.d.ts +25 -0
  41. package/dist/components/atoms/Toast.js +42 -0
  42. package/dist/components/atoms/index.d.ts +14 -0
  43. package/dist/components/atoms/index.js +29 -0
  44. package/dist/components/index.d.ts +1 -0
  45. package/dist/components/index.js +17 -0
  46. package/dist/index.d.ts +37 -3
  47. package/dist/index.js +50 -4
  48. package/dist/tokens.css +80 -4
  49. package/package.json +18 -7
package/dist/tokens.css CHANGED
@@ -1,7 +1,83 @@
1
+ /**
2
+ * Design tokens — `xframe/html/html` (business-promotion Figma export) 기준.
3
+ * 참고: main.html, navi_default.html, login_01.html 등 인라인 스타일에서 추출.
4
+ */
1
5
  :root {
2
- --xfc-bg: #0f1419;
3
- --xfc-fg: #e7ecf3;
4
- --xfc-accent: #3b82f6;
5
- --xfc-radius-sm: 6px;
6
+ /* Surfaces */
7
+ --xfc-bg: #ffffff;
8
+ --xfc-bg-elevated: #ffffff;
9
+ --xfc-bg-muted: #f8f8f8;
10
+ --xfc-bg-disabled: #eaeaea;
11
+
12
+ /* Text */
13
+ --xfc-fg: #1c252f;
14
+ --xfc-fg-strong: #000000;
15
+ --xfc-fg-label: #1d2125;
16
+ --xfc-fg-muted: #777777;
17
+ --xfc-fg-placeholder: #c7c7c7;
18
+ --xfc-fg-icon: #464c50;
19
+
20
+ /* Lines */
21
+ --xfc-border: #ededed;
22
+ --xfc-border-strong: #d4d4d4;
23
+ --xfc-border-header: #e9e8e6;
24
+
25
+ /* Brand */
26
+ --xfc-accent: #2a5bff;
27
+ --xfc-accent-hover: #2248e6;
28
+ --xfc-accent-fg: #ffffff;
29
+
30
+ /* Status */
31
+ --xfc-danger: #f43b3c;
32
+ --xfc-success: #059669;
33
+ --xfc-success-bg: #d1fae5;
34
+ --xfc-warning: #d97706;
35
+ --xfc-warning-bg: #fef3c7;
36
+
37
+ /* Toasts (business-promotion client index.css 와 동일 톤) */
38
+ --xfc-toast-info-bg: #1c252f;
39
+ --xfc-toast-success-bg: #19af66;
40
+ --xfc-toast-warn-bg: #e8a317;
41
+ --xfc-toast-error-bg: #f43b3c;
42
+ --xfc-toast-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
43
+ --xfc-toast-radius: 6px;
44
+
45
+ /* Effects */
46
+ --xfc-input-shadow: 0 7px 64px rgba(0, 0, 0, 0.07);
47
+ --xfc-card-shadow: 0 1px 2px rgba(28, 37, 47, 0.06);
48
+
49
+ /* Radius (px 그대로 — 디자인 5 / 10 / pill) */
50
+ --xfc-radius-xs: 5px;
51
+ --xfc-radius-sm: 5px;
52
+ --xfc-radius-md: 10px;
53
+ --xfc-radius-lg: 10px;
54
+ --xfc-radius-full: 9999px;
55
+
56
+ /* Space */
57
+ --xfc-space-xs: 4px;
58
+ --xfc-space-sm: 8px;
6
59
  --xfc-space-md: 12px;
60
+ --xfc-space-lg: 16px;
61
+ --xfc-space-xl: 24px;
62
+ --xfc-space-2xl: 32px;
63
+
64
+ /* Typography — Pretendard Variable (+ 로고용 Poppins 는 앱에서 별도) */
65
+ --xfc-font-sans: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, system-ui,
66
+ Roboto, 'Noto Sans KR', 'Apple SD Gothic Neo', sans-serif;
67
+ --xfc-font-mono: ui-monospace, 'Cascadia Code', 'SF Mono', Menlo, monospace;
68
+
69
+ --xfc-text-display: 2.5rem;
70
+ --xfc-text-appbar: 1.375rem;
71
+ --xfc-text-section: 1.125rem;
72
+ --xfc-text-body: 1rem;
73
+ --xfc-text-small: 0.875rem;
74
+ --xfc-text-input: 0.9375rem;
75
+
76
+ --xfc-leading-tight: 1.25;
77
+ --xfc-leading-normal: 1.5;
78
+ --xfc-leading-label: 22px;
79
+ --xfc-leading-menu: 50px;
80
+
81
+ /* Focus */
82
+ --xfc-focus-ring: 0 0 0 3px color-mix(in srgb, var(--xfc-accent) 35%, transparent);
7
83
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@xfilecom/front-core",
3
- "version": "0.1.0",
4
- "description": "Shared React tokens (browser-only; no Nest dependency)",
3
+ "version": "0.2.5",
4
+ "description": "Shared design tokens, base CSS, and atomic React components (browser-only; no Nest dependency)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "exports": {
@@ -9,22 +9,33 @@
9
9
  "types": "./dist/index.d.ts",
10
10
  "default": "./dist/index.js"
11
11
  },
12
- "./tokens.css": "./dist/tokens.css"
12
+ "./tokens.css": "./dist/tokens.css",
13
+ "./base.css": "./dist/base.css",
14
+ "./atoms": {
15
+ "types": "./dist/components/atoms/index.d.ts",
16
+ "default": "./dist/components/atoms/index.js"
17
+ }
13
18
  },
14
- "files": ["dist"],
19
+ "files": [
20
+ "dist"
21
+ ],
15
22
  "scripts": {
16
23
  "prepublishOnly": "npm run build",
17
24
  "build": "npm run build:ts && npm run build:css",
18
25
  "build:ts": "tsc",
19
- "build:css": "cp src/tokens.css dist/tokens.css"
26
+ "build:css": "cp src/tokens.css dist/tokens.css && cp src/base.css dist/base.css"
20
27
  },
21
28
  "peerDependencies": {
22
29
  "react": ">=18.0.0",
23
30
  "react-dom": ">=18.0.0"
24
31
  },
25
32
  "peerDependenciesMeta": {
26
- "react": { "optional": true },
27
- "react-dom": { "optional": true }
33
+ "react": {
34
+ "optional": true
35
+ },
36
+ "react-dom": {
37
+ "optional": true
38
+ }
28
39
  },
29
40
  "devDependencies": {
30
41
  "@types/react": "^18.2.0",