@transcodes/ui-components 0.3.5 → 0.4.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 (114) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +8 -22
  3. package/dist/controllers/index.d.ts +0 -2
  4. package/dist/controllers/index.d.ts.map +1 -1
  5. package/dist/controllers/index.js +10 -12
  6. package/dist/index.d.ts +1 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +48 -64
  9. package/dist/primitives/index.d.ts +1 -0
  10. package/dist/primitives/index.d.ts.map +1 -1
  11. package/dist/primitives/index.js +18 -16
  12. package/dist/primitives/tc-box.d.ts +2 -1
  13. package/dist/primitives/tc-box.d.ts.map +1 -1
  14. package/dist/primitives/tc-box.js +4 -4
  15. package/dist/primitives/tc-button.d.ts +2 -1
  16. package/dist/primitives/tc-button.d.ts.map +1 -1
  17. package/dist/primitives/tc-button.js +21 -20
  18. package/dist/primitives/tc-callout.d.ts +2 -0
  19. package/dist/primitives/tc-callout.d.ts.map +1 -1
  20. package/dist/primitives/tc-callout.js +22 -17
  21. package/dist/primitives/tc-card.d.ts +2 -1
  22. package/dist/primitives/tc-card.d.ts.map +1 -1
  23. package/dist/primitives/tc-card.js +11 -10
  24. package/dist/primitives/tc-chip.d.ts +2 -0
  25. package/dist/primitives/tc-chip.d.ts.map +1 -1
  26. package/dist/primitives/tc-chip.js +26 -16
  27. package/dist/primitives/tc-container.d.ts +2 -1
  28. package/dist/primitives/tc-container.d.ts.map +1 -1
  29. package/dist/primitives/tc-container.js +12 -10
  30. package/dist/primitives/tc-divider.d.ts +2 -2
  31. package/dist/primitives/tc-divider.d.ts.map +1 -1
  32. package/dist/primitives/tc-divider.js +25 -23
  33. package/dist/primitives/tc-error-message.d.ts +2 -0
  34. package/dist/primitives/tc-error-message.d.ts.map +1 -1
  35. package/dist/primitives/tc-error-message.js +23 -16
  36. package/dist/primitives/tc-form-header.d.ts +2 -1
  37. package/dist/primitives/tc-form-header.d.ts.map +1 -1
  38. package/dist/primitives/tc-form-header.js +9 -7
  39. package/dist/primitives/tc-icon.d.ts +2 -2
  40. package/dist/primitives/tc-icon.d.ts.map +1 -1
  41. package/dist/primitives/tc-icon.js +61 -61
  42. package/dist/primitives/tc-input-with-chip.d.ts +2 -0
  43. package/dist/primitives/tc-input-with-chip.d.ts.map +1 -1
  44. package/dist/primitives/tc-input-with-chip.js +26 -18
  45. package/dist/primitives/tc-input.d.ts +2 -1
  46. package/dist/primitives/tc-input.d.ts.map +1 -1
  47. package/dist/primitives/tc-input.js +11 -9
  48. package/dist/primitives/tc-item-button.d.ts +2 -3
  49. package/dist/primitives/tc-item-button.d.ts.map +1 -1
  50. package/dist/primitives/tc-item-button.js +31 -36
  51. package/dist/primitives/tc-item.d.ts +2 -3
  52. package/dist/primitives/tc-item.d.ts.map +1 -1
  53. package/dist/primitives/tc-item.js +21 -26
  54. package/dist/primitives/tc-otp-input.d.ts +2 -0
  55. package/dist/primitives/tc-otp-input.d.ts.map +1 -1
  56. package/dist/primitives/tc-otp-input.js +17 -11
  57. package/dist/{widgets → primitives}/tc-page-decoration.d.ts +2 -0
  58. package/dist/primitives/tc-page-decoration.d.ts.map +1 -0
  59. package/dist/{widgets → primitives}/tc-page-decoration.js +29 -25
  60. package/dist/primitives/tc-section.d.ts +2 -2
  61. package/dist/primitives/tc-section.d.ts.map +1 -1
  62. package/dist/primitives/tc-section.js +23 -24
  63. package/dist/primitives/tc-spinner.d.ts +2 -1
  64. package/dist/primitives/tc-spinner.d.ts.map +1 -1
  65. package/dist/primitives/tc-spinner.js +32 -29
  66. package/dist/primitives/tc-symbol.d.ts +2 -3
  67. package/dist/primitives/tc-symbol.d.ts.map +1 -1
  68. package/dist/primitives/tc-symbol.js +26 -28
  69. package/dist/primitives/tc-text.d.ts +2 -1
  70. package/dist/primitives/tc-text.d.ts.map +1 -1
  71. package/dist/primitives/tc-text.js +3 -3
  72. package/dist/primitives/tc-toast.d.ts +2 -0
  73. package/dist/primitives/tc-toast.d.ts.map +1 -1
  74. package/dist/primitives/tc-toast.js +35 -25
  75. package/dist/screens/tc-error-screen.d.ts +8 -1
  76. package/dist/screens/tc-error-screen.d.ts.map +1 -1
  77. package/dist/screens/tc-error-screen.js +91 -32
  78. package/dist/screens/tc-loading-screen.d.ts +3 -1
  79. package/dist/screens/tc-loading-screen.d.ts.map +1 -1
  80. package/dist/screens/tc-loading-screen.js +28 -19
  81. package/dist/screens/tc-success-screen.d.ts +2 -0
  82. package/dist/screens/tc-success-screen.d.ts.map +1 -1
  83. package/dist/screens/tc-success-screen.js +41 -31
  84. package/dist/types.d.ts +34 -0
  85. package/dist/types.d.ts.map +1 -0
  86. package/package.json +13 -13
  87. package/dist/controllers/form-validation.controller.d.ts +0 -48
  88. package/dist/controllers/form-validation.controller.d.ts.map +0 -1
  89. package/dist/controllers/form-validation.controller.js +0 -49
  90. package/dist/widgets/index.d.ts +0 -9
  91. package/dist/widgets/index.d.ts.map +0 -1
  92. package/dist/widgets/index.js +0 -18
  93. package/dist/widgets/tc-authenticator-card.d.ts +0 -35
  94. package/dist/widgets/tc-authenticator-card.d.ts.map +0 -1
  95. package/dist/widgets/tc-authenticator-card.js +0 -213
  96. package/dist/widgets/tc-floating-button.d.ts +0 -25
  97. package/dist/widgets/tc-floating-button.d.ts.map +0 -1
  98. package/dist/widgets/tc-floating-button.js +0 -132
  99. package/dist/widgets/tc-iframe-modal.d.ts +0 -43
  100. package/dist/widgets/tc-iframe-modal.d.ts.map +0 -1
  101. package/dist/widgets/tc-iframe-modal.js +0 -263
  102. package/dist/widgets/tc-installation-banner.d.ts +0 -42
  103. package/dist/widgets/tc-installation-banner.d.ts.map +0 -1
  104. package/dist/widgets/tc-installation-banner.js +0 -234
  105. package/dist/widgets/tc-ios-installation-guide.d.ts +0 -34
  106. package/dist/widgets/tc-ios-installation-guide.d.ts.map +0 -1
  107. package/dist/widgets/tc-ios-installation-guide.js +0 -240
  108. package/dist/widgets/tc-notification-modal.d.ts +0 -42
  109. package/dist/widgets/tc-notification-modal.d.ts.map +0 -1
  110. package/dist/widgets/tc-notification-modal.js +0 -230
  111. package/dist/widgets/tc-offline-modal.d.ts +0 -39
  112. package/dist/widgets/tc-offline-modal.d.ts.map +0 -1
  113. package/dist/widgets/tc-offline-modal.js +0 -202
  114. package/dist/widgets/tc-page-decoration.d.ts.map +0 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,60 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.4.0] - 2025-12-17
9
+
10
+ ### Changed
11
+
12
+ - **인터페이스 통합**: 모든 컴포넌트의 스타일 커스터마이징을 `sx` prop으로 일원화
13
+ - Raw CSS props 제거 (tc-box, tc-container, tc-icon 등)
14
+ - SxProps 타입의 일관된 적용
15
+ - 문서 간소화 및 API Reference 강화
16
+
17
+ ### Removed
18
+
19
+ - **Raw CSS props 제거** (Breaking Change):
20
+ - tc-box: `width`, `height`, `padding`, `margin`, `background`, `border-radius`, `box-shadow`, `display`, `flex-direction`, `align-items`, `justify-content`, `gap`
21
+ - tc-container: `padding`
22
+ - tc-icon: `size`, `color`
23
+ - tc-section: `gap`
24
+ - tc-divider: `color`, `thickness`, `margin`
25
+
26
+ **Migration**: Raw CSS props를 사용하던 코드는 `.sx` prop으로 변경하세요.
27
+ ```typescript
28
+ // Before
29
+ <tc-box padding="2rem" background="var(--paper-warm)">
30
+
31
+ // After
32
+ <tc-box .sx=${{ padding: '2rem', background: 'var(--paper-warm)' }}>
33
+ ```
34
+
35
+ ## [0.3.6] - 2025-12-17
36
+
37
+ ### Changed
38
+
39
+ - CSS 토큰 활용 강화: 하드코딩된 값을 design-tokens CSS 변수로 교체
40
+ - tc-error-screen, tc-success-screen: 애니메이션 오프셋 토큰화
41
+ - tc-input, tc-input-with-chip: focus ring, slideDown 애니메이션 토큰화
42
+ - tc-item-button, tc-error-message: 아이콘 크기 토큰화
43
+ - tc-page-decoration, tc-spinner: `border-radius: 50%` → `var(--radius-full)`
44
+ - `:host` 스타일 일관성 통일 및 reset.css 통합
45
+ - Storybook 설정 역할 분리 및 중복 제거
46
+
47
+ ### Removed
48
+
49
+ - **widgets 레이어 제거**: 미사용 복합 컴포넌트 삭제
50
+ - tc-authenticator-card, tc-floating-button, tc-iframe-modal
51
+ - tc-installation-banner, tc-ios-installation-guide
52
+ - tc-notification-modal, tc-offline-modal
53
+ - FormValidationController 제거 (미사용)
54
+ - 컨트롤러 Storybook 스토리 제거 (내부 구현 세부사항)
55
+
56
+ ### Fixed
57
+
58
+ - Storybook: sideEffects, storybookAliases, isStorybook 감지 로직 수정
59
+
60
+ **Note**: 이 버전은 `@transcodes/design-tokens@^0.3.6`과 함께 사용해야 합니다.
61
+
8
62
  ## [0.3.5] - 2025-12-11
9
63
 
10
64
  ### Fixed
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @transcodes/ui-components
2
2
 
3
- A modern web component library built with [Lit 3.x](https://lit.dev/). Features a comprehensive set of UI primitives, complex widgets, full-screen components, and reusable Reactive Controllers.
3
+ A modern web component library built with [Lit 3.x](https://lit.dev/). Features a comprehensive set of UI primitives, full-screen components, and reusable Reactive Controllers.
4
4
 
5
5
  [![npm version](https://img.shields.io/npm/v/@transcodes/ui-components.svg)](https://www.npmjs.com/package/@transcodes/ui-components)
6
6
  [![license](https://img.shields.io/npm/l/@transcodes/ui-components.svg)](https://github.com/transcodings/transcodes-ui/blob/main/packages/ui-components/LICENSE)
@@ -57,7 +57,7 @@ import '@transcodes/design-tokens';
57
57
 
58
58
  // Import specific component categories
59
59
  import { TcButton, TcInput } from '@transcodes/ui-components/primitives';
60
- import { TcModal } from '@transcodes/ui-components/widgets';
60
+ import { TcLoadingScreen } from '@transcodes/ui-components/screens';
61
61
  import { LoadingController } from '@transcodes/ui-components/controllers';
62
62
  ```
63
63
 
@@ -69,7 +69,7 @@ import { LoadingController } from '@transcodes/ui-components/controllers';
69
69
 
70
70
  ## Components
71
71
 
72
- ### Primitives (19)
72
+ ### Primitives (22)
73
73
 
74
74
  Core UI building blocks with consistent styling and behavior.
75
75
 
@@ -85,31 +85,18 @@ Core UI building blocks with consistent styling and behavior.
85
85
  | `<tc-spinner>` | Loading indicator |
86
86
  | `<tc-toast>` | Toast notification |
87
87
  | `<tc-callout>` | Alert/info box with icon slot |
88
+ | `<tc-error-message>` | Error/warning/info message (callout wrapper) |
88
89
  | `<tc-divider>` | Visual separator with optional text |
89
90
  | `<tc-card>` | Card container |
90
91
  | `<tc-box>` | Flexible box wrapper |
91
92
  | `<tc-container>` | Layout container |
92
93
  | `<tc-section>` | Page section |
94
+ | `<tc-layout>` | Flex/grid layout wrapper |
93
95
  | `<tc-item>` | List item |
94
96
  | `<tc-item-button>` | Clickable list item |
95
97
  | `<tc-symbol>` | Symbol/logo display |
96
98
  | `<tc-form-header>` | Form header with title and description |
97
- | `<tc-error-message>` | Error/warning/info message (callout wrapper) |
98
-
99
- ### Widgets (8)
100
-
101
- Complex components composed of primitives.
102
-
103
- | Component | Description |
104
- |-----------|-------------|
105
- | `<tc-notification-modal>` | Modal dialog for notifications |
106
- | `<tc-offline-modal>` | Offline state indicator modal |
107
- | `<tc-iframe-modal>` | Modal with embedded iframe |
108
- | `<tc-floating-button>` | Floating action button |
109
- | `<tc-installation-banner>` | PWA installation prompt |
110
- | `<tc-ios-installation-guide>` | iOS PWA installation guide |
111
- | `<tc-page-decoration>` | Page background decoration |
112
- | `<tc-authenticator-card>` | Authenticator info card (passkey, TOTP, USB) |
99
+ | `<tc-page-decoration>` | Page background decoration (gradient, dots, grid) |
113
100
 
114
101
  ### Screens (3)
115
102
 
@@ -198,9 +185,8 @@ All components accept an `sx` prop for inline style overrides:
198
185
 
199
186
  | Path | Description | Bundle Impact |
200
187
  |------|-------------|---------------|
201
- | `@transcodes/ui-components` | All components | ~252 KB |
202
- | `@transcodes/ui-components/primitives` | Primitive components only | ~120 KB |
203
- | `@transcodes/ui-components/widgets` | Widget components only | ~50 KB |
188
+ | `@transcodes/ui-components` | All components | ~80 KB |
189
+ | `@transcodes/ui-components/primitives` | Primitive components only | ~65 KB |
204
190
  | `@transcodes/ui-components/screens` | Screen components only | ~10 KB |
205
191
  | `@transcodes/ui-components/controllers` | Reactive Controllers | ~7 KB |
206
192
 
@@ -1,8 +1,6 @@
1
1
  export type { AnimationControllerOptions, AnimationState, } from './animation.controller.js';
2
2
  export { AnimationController } from './animation.controller.js';
3
3
  export { BaseController } from './base.controller.js';
4
- export type { ValidationRule, ValidationType, } from './form-validation.controller.js';
5
- export { FormValidationController } from './form-validation.controller.js';
6
4
  export { HistoryController } from './history.controller.js';
7
5
  export { LoadingController } from './loading.controller.js';
8
6
  export { MatchMediaController } from './match-media.controller.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,0BAA0B,EAC1B,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EACV,cAAc,EACd,cAAc,GACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,0BAA0B,EAC1B,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,18 +1,16 @@
1
1
  import { AnimationController as e } from "./animation.controller.js";
2
2
  import { BaseController as l } from "./base.controller.js";
3
- import { FormValidationController as m } from "./form-validation.controller.js";
4
- import { HistoryController as f } from "./history.controller.js";
5
- import { LoadingController as x } from "./loading.controller.js";
6
- import { MatchMediaController as i } from "./match-media.controller.js";
7
- import { MessageBusController as d } from "./message-bus.controller.js";
8
- import { StorageController as M } from "./storage.controller.js";
3
+ import { HistoryController as m } from "./history.controller.js";
4
+ import { LoadingController as f } from "./loading.controller.js";
5
+ import { MatchMediaController as x } from "./match-media.controller.js";
6
+ import { MessageBusController as i } from "./message-bus.controller.js";
7
+ import { StorageController as g } from "./storage.controller.js";
9
8
  export {
10
9
  e as AnimationController,
11
10
  l as BaseController,
12
- m as FormValidationController,
13
- f as HistoryController,
14
- x as LoadingController,
15
- i as MatchMediaController,
16
- d as MessageBusController,
17
- M as StorageController
11
+ m as HistoryController,
12
+ f as LoadingController,
13
+ x as MatchMediaController,
14
+ i as MessageBusController,
15
+ g as StorageController
18
16
  };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from './controllers/index.js';
2
2
  export * from './primitives/index.js';
3
3
  export * from './screens/index.js';
4
- export * from './widgets/index.js';
4
+ export * from './types.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,wBAAwB,CAAC;AAGvC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,wBAAwB,CAAC;AAEvC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,80 +1,64 @@
1
- import { AnimationController as t } from "./controllers/animation.controller.js";
2
- import { BaseController as m } from "./controllers/base.controller.js";
3
- import { FormValidationController as f } from "./controllers/form-validation.controller.js";
4
- import { HistoryController as x } from "./controllers/history.controller.js";
5
- import { LoadingController as T } from "./controllers/loading.controller.js";
6
- import { MatchMediaController as l } from "./controllers/match-media.controller.js";
7
- import { MessageBusController as C } from "./controllers/message-bus.controller.js";
8
- import { StorageController as d } from "./controllers/storage.controller.js";
9
- import { TcBox as I } from "./primitives/tc-box.js";
10
- import { TcButton as g } from "./primitives/tc-button.js";
11
- import { TcCallout as M } from "./primitives/tc-callout.js";
12
- import { TcCard as F } from "./primitives/tc-card.js";
13
- import { TcChip as A } from "./primitives/tc-chip.js";
1
+ import { AnimationController as e } from "./controllers/animation.controller.js";
2
+ import { BaseController as p } from "./controllers/base.controller.js";
3
+ import { HistoryController as c } from "./controllers/history.controller.js";
4
+ import { LoadingController as f } from "./controllers/loading.controller.js";
5
+ import { MatchMediaController as T } from "./controllers/match-media.controller.js";
6
+ import { MessageBusController as a } from "./controllers/message-bus.controller.js";
7
+ import { StorageController as C } from "./controllers/storage.controller.js";
8
+ import { TcBox as u } from "./primitives/tc-box.js";
9
+ import { TcButton as d } from "./primitives/tc-button.js";
10
+ import { TcCallout as I } from "./primitives/tc-callout.js";
11
+ import { TcCard as h } from "./primitives/tc-card.js";
12
+ import { TcChip as y } from "./primitives/tc-chip.js";
14
13
  import { TcContainer as E } from "./primitives/tc-container.js";
15
14
  import { TcDivider as L } from "./primitives/tc-divider.js";
16
- import { TcErrorMessage as b } from "./primitives/tc-error-message.js";
17
- import { TcFormHeader as G } from "./primitives/tc-form-header.js";
15
+ import { TcErrorMessage as v } from "./primitives/tc-error-message.js";
16
+ import { TcFormHeader as F } from "./primitives/tc-form-header.js";
18
17
  import { TcIcon as P } from "./primitives/tc-icon.js";
19
- import { TcInput as W } from "./primitives/tc-input.js";
20
- import { TcInputWithChip as k } from "./primitives/tc-input-with-chip.js";
21
- import { TcItem as w } from "./primitives/tc-item.js";
18
+ import { TcInput as j } from "./primitives/tc-input.js";
19
+ import { TcInputWithChip as q } from "./primitives/tc-input-with-chip.js";
20
+ import { TcItem as z } from "./primitives/tc-item.js";
22
21
  import { TcItemButton as J } from "./primitives/tc-item-button.js";
23
- import { TcOtpInput as Q } from "./primitives/tc-otp-input.js";
24
- import { TcSection as U } from "./primitives/tc-section.js";
22
+ import { TcOtpInput as N } from "./primitives/tc-otp-input.js";
23
+ import { TcPageDecoration as R } from "./primitives/tc-page-decoration.js";
24
+ import { TcSection as V } from "./primitives/tc-section.js";
25
25
  import { TcSpinner as Y } from "./primitives/tc-spinner.js";
26
26
  import { TcSymbol as _ } from "./primitives/tc-symbol.js";
27
27
  import { TcText as oo } from "./primitives/tc-text.js";
28
- import { TcToast as to } from "./primitives/tc-toast.js";
29
- import { TcErrorScreen as mo } from "./screens/tc-error-screen.js";
30
- import { TcLoadingScreen as fo } from "./screens/tc-loading-screen.js";
31
- import { TcSuccessScreen as xo } from "./screens/tc-success-screen.js";
32
- import { TcAuthenticatorCard as To } from "./widgets/tc-authenticator-card.js";
33
- import { TcFloatingButton as lo } from "./widgets/tc-floating-button.js";
34
- import { TcIframeModal as Co } from "./widgets/tc-iframe-modal.js";
35
- import { TcInstallationBanner as uo } from "./widgets/tc-installation-banner.js";
36
- import { TcIosInstallationGuide as So } from "./widgets/tc-ios-installation-guide.js";
37
- import { TcNotificationModal as Bo } from "./widgets/tc-notification-modal.js";
38
- import { TcOfflineModal as ho } from "./widgets/tc-offline-modal.js";
39
- import { TcPageDecoration as yo } from "./widgets/tc-page-decoration.js";
28
+ import { TcToast as eo } from "./primitives/tc-toast.js";
29
+ import { TcErrorScreen as po } from "./screens/tc-error-screen.js";
30
+ import { TcLoadingScreen as co } from "./screens/tc-loading-screen.js";
31
+ import { TcSuccessScreen as fo } from "./screens/tc-success-screen.js";
40
32
  export {
41
- t as AnimationController,
42
- m as BaseController,
43
- f as FormValidationController,
44
- x as HistoryController,
45
- T as LoadingController,
46
- l as MatchMediaController,
47
- C as MessageBusController,
48
- d as StorageController,
49
- To as TcAuthenticatorCard,
50
- I as TcBox,
51
- g as TcButton,
52
- M as TcCallout,
53
- F as TcCard,
54
- A as TcChip,
33
+ e as AnimationController,
34
+ p as BaseController,
35
+ c as HistoryController,
36
+ f as LoadingController,
37
+ T as MatchMediaController,
38
+ a as MessageBusController,
39
+ C as StorageController,
40
+ u as TcBox,
41
+ d as TcButton,
42
+ I as TcCallout,
43
+ h as TcCard,
44
+ y as TcChip,
55
45
  E as TcContainer,
56
46
  L as TcDivider,
57
- b as TcErrorMessage,
58
- mo as TcErrorScreen,
59
- lo as TcFloatingButton,
60
- G as TcFormHeader,
47
+ v as TcErrorMessage,
48
+ po as TcErrorScreen,
49
+ F as TcFormHeader,
61
50
  P as TcIcon,
62
- Co as TcIframeModal,
63
- W as TcInput,
64
- k as TcInputWithChip,
65
- uo as TcInstallationBanner,
66
- So as TcIosInstallationGuide,
67
- w as TcItem,
51
+ j as TcInput,
52
+ q as TcInputWithChip,
53
+ z as TcItem,
68
54
  J as TcItemButton,
69
- fo as TcLoadingScreen,
70
- Bo as TcNotificationModal,
71
- ho as TcOfflineModal,
72
- Q as TcOtpInput,
73
- yo as TcPageDecoration,
74
- U as TcSection,
55
+ co as TcLoadingScreen,
56
+ N as TcOtpInput,
57
+ R as TcPageDecoration,
58
+ V as TcSection,
75
59
  Y as TcSpinner,
76
- xo as TcSuccessScreen,
60
+ fo as TcSuccessScreen,
77
61
  _ as TcSymbol,
78
62
  oo as TcText,
79
- to as TcToast
63
+ eo as TcToast
80
64
  };
@@ -13,6 +13,7 @@ export { TcInputWithChip } from './tc-input-with-chip.js';
13
13
  export { TcItem } from './tc-item.js';
14
14
  export { TcItemButton } from './tc-item-button.js';
15
15
  export { TcOtpInput } from './tc-otp-input.js';
16
+ export { TcPageDecoration } from './tc-page-decoration.js';
16
17
  export { TcSection } from './tc-section.js';
17
18
  export { TcSpinner } from './tc-spinner.js';
18
19
  export { TcSymbol } from './tc-symbol.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
@@ -8,16 +8,17 @@ import { TcDivider as I } from "./tc-divider.js";
8
8
  import { TcErrorMessage as d } from "./tc-error-message.js";
9
9
  import { TcFormHeader as l } from "./tc-form-header.js";
10
10
  import { TcIcon as B } from "./tc-icon.js";
11
- import { TcInput as b } from "./tc-input.js";
12
- import { TcInputWithChip as v } from "./tc-input-with-chip.js";
13
- import { TcItem as D } from "./tc-item.js";
11
+ import { TcInput as g } from "./tc-input.js";
12
+ import { TcInputWithChip as b } from "./tc-input-with-chip.js";
13
+ import { TcItem as y } from "./tc-item.js";
14
14
  import { TcItemButton as F } from "./tc-item-button.js";
15
15
  import { TcOtpInput as M } from "./tc-otp-input.js";
16
- import { TcSection as W } from "./tc-section.js";
17
- import { TcSpinner as k } from "./tc-spinner.js";
18
- import { TcSymbol as w } from "./tc-symbol.js";
19
- import { TcText as A } from "./tc-text.js";
20
- import { TcToast as J } from "./tc-toast.js";
16
+ import { TcPageDecoration as P } from "./tc-page-decoration.js";
17
+ import { TcSection as j } from "./tc-section.js";
18
+ import { TcSpinner as q } from "./tc-spinner.js";
19
+ import { TcSymbol as z } from "./tc-symbol.js";
20
+ import { TcText as G } from "./tc-text.js";
21
+ import { TcToast as K } from "./tc-toast.js";
21
22
  export {
22
23
  t as TcBox,
23
24
  p as TcButton,
@@ -29,14 +30,15 @@ export {
29
30
  d as TcErrorMessage,
30
31
  l as TcFormHeader,
31
32
  B as TcIcon,
32
- b as TcInput,
33
- v as TcInputWithChip,
34
- D as TcItem,
33
+ g as TcInput,
34
+ b as TcInputWithChip,
35
+ y as TcItem,
35
36
  F as TcItemButton,
36
37
  M as TcOtpInput,
37
- W as TcSection,
38
- k as TcSpinner,
39
- w as TcSymbol,
40
- A as TcText,
41
- J as TcToast
38
+ P as TcPageDecoration,
39
+ j as TcSection,
40
+ q as TcSpinner,
41
+ z as TcSymbol,
42
+ G as TcText,
43
+ K as TcToast
42
44
  };
@@ -1,4 +1,5 @@
1
1
  import { LitElement } from 'lit';
2
+ import { SxProps } from '../types.js';
2
3
  /**
3
4
  * A simple container component without default flex layout.
4
5
  * Use for wrapping content with custom styles.
@@ -7,7 +8,7 @@ import { LitElement } from 'lit';
7
8
  * @csspart box - The container element
8
9
  */
9
10
  export declare class TcBox extends LitElement {
10
- sx: Record<string, string | number>;
11
+ sx: SxProps;
11
12
  static styles: import('lit').CSSResult;
12
13
  render(): import('lit').TemplateResult<1>;
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tc-box.d.ts","sourceRoot":"","sources":["../../src/primitives/tc-box.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAI5C;;;;;;GAMG;AACH,qBACa,KAAM,SAAQ,UAAU;IACP,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAM;IAErE,OAAgB,MAAM,0BAQpB;IAEO,MAAM;CAOhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,QAAQ,EAAE,KAAK,CAAC;KACjB;CACF"}
1
+ {"version":3,"file":"tc-box.d.ts","sourceRoot":"","sources":["../../src/primitives/tc-box.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAG5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;;;GAMG;AACH,qBACa,KAAM,SAAQ,UAAU;IACP,EAAE,EAAE,OAAO,CAAM;IAE7C,OAAgB,MAAM,0BAQpB;IAEO,MAAM;CAOhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,QAAQ,EAAE,KAAK,CAAC;KACjB;CACF"}
@@ -1,4 +1,4 @@
1
- import { LitElement as n, html as i, css as x } from "lit";
1
+ import { css as n, LitElement as i, html as x } from "lit";
2
2
  import { property as a, customElement as b } from "lit/decorators.js";
3
3
  import { styleMap as f } from "lit/directives/style-map.js";
4
4
  var v = Object.defineProperty, y = Object.getOwnPropertyDescriptor, m = (c, s, o, e) => {
@@ -6,19 +6,19 @@ var v = Object.defineProperty, y = Object.getOwnPropertyDescriptor, m = (c, s, o
6
6
  (l = c[p]) && (t = (e ? l(s, o, t) : l(t)) || t);
7
7
  return e && t && v(s, o, t), t;
8
8
  };
9
- let r = class extends n {
9
+ let r = class extends i {
10
10
  constructor() {
11
11
  super(...arguments), this.sx = {};
12
12
  }
13
13
  render() {
14
- return i`
14
+ return x`
15
15
  <div part="box" class="box" style=${f(this.sx)}>
16
16
  <slot></slot>
17
17
  </div>
18
18
  `;
19
19
  }
20
20
  };
21
- r.styles = x`
21
+ r.styles = n`
22
22
  :host {
23
23
  display: contents;
24
24
  }
@@ -1,4 +1,5 @@
1
1
  import { LitElement } from 'lit';
2
+ import { SxProps } from '../types.js';
2
3
  /**
3
4
  * Primary button component with loading states.
4
5
  * Uses design-tokens component classes (.button, .button-primary, etc.)
@@ -12,7 +13,7 @@ export declare class TcButton extends LitElement {
12
13
  disabled: boolean;
13
14
  loading: boolean;
14
15
  variant: 'primary' | 'secondary' | 'success';
15
- sx: Record<string, string | number>;
16
+ sx: SxProps;
16
17
  static styles: import('lit').CSSResult[];
17
18
  render(): import('lit').TemplateResult<1>;
18
19
  private handleClick;
@@ -1 +1 @@
1
- {"version":3,"file":"tc-button.d.ts","sourceRoot":"","sources":["../../src/primitives/tc-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAM5C;;;;;;;;GAQG;AACH,qBACa,QAAS,SAAQ,UAAU;IACT,QAAQ,UAAS;IACjB,OAAO,UAAS;IACjB,OAAO,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAC5D;IACgB,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAM;IAErE,OAAgB,MAAM,4BAmGpB;IAEO,MAAM;IA4Bf,OAAO,CAAC,WAAW;CAWpB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}
1
+ {"version":3,"file":"tc-button.d.ts","sourceRoot":"","sources":["../../src/primitives/tc-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAK5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;;;;;GAQG;AACH,qBACa,QAAS,SAAQ,UAAU;IACT,QAAQ,UAAS;IACjB,OAAO,UAAS;IACjB,OAAO,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAC5D;IACgB,EAAE,EAAE,OAAO,CAAM;IAE7C,OAAgB,MAAM,4BAoGpB;IAEO,MAAM;IA4Bf,OAAO,CAAC,WAAW;CAWpB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}
@@ -1,19 +1,19 @@
1
- import { LitElement as p, html as l, css as u } from "lit";
1
+ import { css as p, LitElement as u, html as l } from "lit";
2
2
  import { property as r, customElement as b } from "lit/decorators.js";
3
- import { classMap as v } from "lit/directives/class-map.js";
4
- import { styleMap as y } from "lit/directives/style-map.js";
5
- import { sharedStyles as m } from "../styles/shared.js";
6
- var h = Object.defineProperty, f = Object.getOwnPropertyDescriptor, n = (o, i, s, a) => {
7
- for (var t = a > 1 ? void 0 : a ? f(i, s) : i, d = o.length - 1, c; d >= 0; d--)
8
- (c = o[d]) && (t = (a ? c(i, s, t) : c(t)) || t);
3
+ import { classMap as m } from "lit/directives/class-map.js";
4
+ import { styleMap as v } from "lit/directives/style-map.js";
5
+ import { sharedStyles as y } from "../styles/shared.js";
6
+ var h = Object.defineProperty, f = Object.getOwnPropertyDescriptor, o = (n, i, s, a) => {
7
+ for (var t = a > 1 ? void 0 : a ? f(i, s) : i, d = n.length - 1, c; d >= 0; d--)
8
+ (c = n[d]) && (t = (a ? c(i, s, t) : c(t)) || t);
9
9
  return a && t && h(i, s, t), t;
10
10
  };
11
- let e = class extends p {
11
+ let e = class extends u {
12
12
  constructor() {
13
13
  super(...arguments), this.disabled = !1, this.loading = !1, this.variant = "primary", this.sx = {};
14
14
  }
15
15
  render() {
16
- const o = {
16
+ const n = {
17
17
  button: !0,
18
18
  "button-ink": this.variant !== "secondary",
19
19
  "button-primary": this.variant === "primary",
@@ -24,8 +24,8 @@ let e = class extends p {
24
24
  return l`
25
25
  <button
26
26
  part="button"
27
- class=${v(o)}
28
- style=${y(this.sx)}
27
+ class=${m(n)}
28
+ style=${v(this.sx)}
29
29
  ?disabled=${this.disabled || this.loading}
30
30
  type="button"
31
31
  @click=${this.handleClick}
@@ -37,22 +37,23 @@ let e = class extends p {
37
37
  </button>
38
38
  `;
39
39
  }
40
- handleClick(o) {
40
+ handleClick(n) {
41
41
  this.disabled || this.loading || this.dispatchEvent(
42
42
  new CustomEvent("tc-click", {
43
43
  bubbles: !0,
44
44
  composed: !0,
45
- detail: { originalEvent: o }
45
+ detail: { originalEvent: n }
46
46
  })
47
47
  );
48
48
  }
49
49
  };
50
50
  e.styles = [
51
- m,
52
- u`
51
+ y,
52
+ p`
53
53
  :host {
54
54
  display: block;
55
55
  width: 100%;
56
+ min-width: 0;
56
57
  }
57
58
 
58
59
  /* Extend base .button from design-tokens */
@@ -147,19 +148,19 @@ e.styles = [
147
148
  }
148
149
  `
149
150
  ];
150
- n([
151
+ o([
151
152
  r({ type: Boolean })
152
153
  ], e.prototype, "disabled", 2);
153
- n([
154
+ o([
154
155
  r({ type: Boolean })
155
156
  ], e.prototype, "loading", 2);
156
- n([
157
+ o([
157
158
  r({ type: String })
158
159
  ], e.prototype, "variant", 2);
159
- n([
160
+ o([
160
161
  r({ type: Object })
161
162
  ], e.prototype, "sx", 2);
162
- e = n([
163
+ e = o([
163
164
  b("tc-button")
164
165
  ], e);
165
166
  export {
@@ -1,4 +1,5 @@
1
1
  import { LitElement } from 'lit';
2
+ import { SxProps } from '../types.js';
2
3
  /**
3
4
  * A callout/alert component for messages and notices.
4
5
  * Uses design-tokens notice classes (.notice, .notice-info, .notice-success, etc.)
@@ -11,6 +12,7 @@ import { LitElement } from 'lit';
11
12
  */
12
13
  export declare class TcCallout extends LitElement {
13
14
  variant: 'info' | 'success' | 'warning' | 'error';
15
+ sx: SxProps;
14
16
  static styles: import('lit').CSSResult[];
15
17
  render(): import('lit').TemplateResult<1>;
16
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tc-callout.d.ts","sourceRoot":"","sources":["../../src/primitives/tc-callout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAK5C;;;;;;;;;GASG;AACH,qBACa,SAAU,SAAQ,UAAU;IACX,OAAO,EAC/B,MAAM,GACN,SAAS,GACT,SAAS,GACT,OAAO,CAAU;IAErB,OAAgB,MAAM,4BAyCpB;IAEO,MAAM;CAyBhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
1
+ {"version":3,"file":"tc-callout.d.ts","sourceRoot":"","sources":["../../src/primitives/tc-callout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAK5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;;;;;;GASG;AACH,qBACa,SAAU,SAAQ,UAAU;IACX,OAAO,EAC/B,MAAM,GACN,SAAS,GACT,SAAS,GACT,OAAO,CAAU;IACO,EAAE,EAAE,OAAO,CAAM;IAE7C,OAAgB,MAAM,4BA0CpB;IAEO,MAAM;CAyBhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}